Joshua Haberman
b75a49f9e0
GC secondary map periodically.
2021-03-25 11:54:50 -07:00
Adam Cozzette
fd8aabf32d
Update protobuf version
2021-03-03 11:37:48 -08:00
Adam Cozzette
e5c067f81b
Updated CHANGES.txt and PHP changelog for 3.15.4 release
2021-03-03 11:37:48 -08:00
Antony Dovgal
aa41d9005b
read_property() handler is not supposed to return NULL
...
NULL is never expected as a result of read_property() handler,
it should return &EG(uninitialized_zval) if there is no such property in
the object
2021-03-03 11:32:58 -08:00
Joshua Haberman
cf7d81f88c
Merge pull request #8363 from haberman/ruby-nil-fix
...
Fixed SEGV when users pass nil messages. This also disallows `nil` in RepeatedField or Map.
2021-03-02 17:26:46 -08:00
Joshua Haberman
7d63b996e1
Removed compatibility test that tries to append "nil" to repeated field.
2021-03-02 15:20:06 -08:00
Florian Simon
1add7a7bd6
Create a CMake option to control whether or not RTTI is enabled
...
This is useful for Conan recipes that build Protobuf, in which
whatever we want to enable has to be enabled in the initial command line.
Without this, the people maintaining the recipe have to patch the CMake
setup of Protobuf before building the binaries.
Closes #5541
2021-03-02 13:47:05 -08:00
Joshua Haberman
dfa54577d6
[Ruby] Fixed SEGV when users pass nil messages.
2021-03-02 12:44:16 -08:00
Adam Cozzette
983d115bd9
Update protobuf version
2021-02-25 09:20:20 -08:00
Adam Cozzette
eb542e606b
Updated CHANGES.txt for 3.15.3 release
2021-02-25 09:19:24 -08:00
Joshua Haberman
80ec787928
Merge pull request #8341 from haberman/ruby-2.5-gc
...
Ruby <2.7now uses WeakMap too, which prevents memory leaks.
2021-02-24 17:49:02 -08:00
Joshua Haberman
9879f423ff
Ruby <2.7now uses WeakMap too, which prevents memory leaks.
...
Ruby <2.7 does not allow non-finalizable objects to be WeakMap
keys: https://bugs.ruby-lang.org/issues/16035
We work around this by using a secondary map for Ruby <2.7 which
maps the non-finalizable integer to a distinct object.
For now we accept that the entries in the secondary map wil never
be collected. If this becomes a problem we can perform a GC pass
every so often that looks at the contents of the object cache to
decide what can be deleted from the secondary map.
2021-02-24 16:41:35 -08:00
Adam Cozzette
d7e943b8d2
Update protobuf version
2021-02-23 13:21:42 -08:00
Adam Cozzette
1af4657b80
Updated CHANGES.txt
2021-02-23 13:21:42 -08:00
Yuriy Chernyshov
09f94e7311
Fix PROTOBUF_CONSTINIT macro redifinition
...
The #ifdef block is duplicated with the above (which was fixed in 3.15.1).
It would be great to have this fix backported to 3.15.1 (and released as 3.15.2).
2021-02-23 13:21:27 -08:00
Joshua Haberman
2ff31d34aa
Merge pull request #8330 from haberman/rubyfix
...
[Ruby] Fix for FieldDescriptor.get(msg).
2021-02-22 18:19:44 -08:00
Joshua Haberman
4e3ea74e42
[Ruby] Fix for FieldDescriptor.get(msg).
...
This fix is similar to the previous bug found in
Message.[]. The fix is the same: we need to handle
arrays and maps properly.
Fixes: https://github.com/protocolbuffers/protobuf/issues/8325
2021-02-22 17:14:46 -08:00
Adam Cozzette
052dc799d2
Update protobuf version
2021-02-19 15:12:24 -08:00
Adam Cozzette
24d8a554ea
Updated CHANGES.txt
2021-02-19 15:12:24 -08:00
Adam Cozzette
d721e36ecc
Made some small fixes for MinGW and for C++20 with GCC
...
Our use of constinit does not seem to work with GCC yet (see
https://github.com/protocolbuffers/protobuf/issues/8310 ), so this
commit disables it on GCC for now.
This commit also updates mutex.h to work around the fact that MinGW's
std::mutex apparently does not have a constexpr constructor. We already
have this kind of workaround for MSVC, so we can just use the same
workaround.
2021-02-19 15:11:34 -08:00
Joshua Haberman
b12ab0cf53
Merge pull request #8320 from haberman/ruby-duration-fix
...
[Ruby] Fix for truncating behavior when converting Float to Duration.
2021-02-19 15:03:42 -08:00
Joshua Haberman
3b3aac95a6
[Ruby] Fix for truncating behavior when converting Float to Duration.
2021-02-19 13:58:19 -08:00
Joshua Haberman
4f961c8a70
Merge pull request #8313 from haberman/ruby-crash-fix
...
[Ruby] Bugfix for Message.[] for repeated or map fields.
2021-02-19 10:15:59 -08:00
Joshua Haberman
256f1327ea
[Ruby] Bugfix for Message.[] for repeated or map fields.
2021-02-19 09:29:06 -08:00
Adam Cozzette
ae50d9b990
Update protobuf version
2021-02-18 11:50:15 -08:00
Adam Cozzette
8260126500
Update protobuf version
2021-02-17 10:51:33 -08:00
Yuhanun Citgez
c741c46604
Resovled issue in the .pb.cc files
2021-02-17 10:51:21 -08:00
Yuhanun Citgez
eef276412e
Resolved an issue where NO_DESTROY and CONSTINIT were in incorrect order
2021-02-17 10:51:21 -08:00
Adam Cozzette
0040102e6f
Updated collect_all_artifacts.sh for Ubuntu Xenial
2021-02-17 09:44:48 -08:00
Adam Cozzette
26cb6a7a6d
Delete root-owned files in Kokoro builds
...
Some of our Kokoro builds have been failing because Kokoro is unable to
copy root-owned files when the build is complete. This commit fixes the
problem by deleting these files at the end.
2021-02-16 16:06:53 -08:00
Brecht Sanders
1e924efa90
Update port_def.inc
...
Fix for Windows build with MinGW-w64 compiler which has __has_attribute but has issues with __attribute__((weak)).
2021-02-11 20:25:25 -08:00
Brecht Sanders
9a80cf1225
Update coded_stream.h
...
Fix for Windows build with MinGW-w64 compiler. Windows is assumed to always be little endian.
2021-02-11 20:25:25 -08:00
Joshua Haberman
a97c4f4f2c
Merge pull request #8276 from haberman/php-warning
...
Added more information to "file already loaded" warning.
2021-02-10 16:04:22 -08:00
Joshua Haberman
44cd75d215
Merge pull request #8282 from haberman/changelog
...
Added to the changelog entries for Ruby & PHP.
2021-02-10 15:13:01 -08:00
Joshua Haberman
c59e7f1c0c
Added to the changelog entries for Ruby & PHP.
2021-02-10 15:06:29 -08:00
Adam Cozzette
d777155d81
Updated collect_all_artifacts.sh to avoid installing apt-transport-https
...
The installation of apt-transport-https is failing and causing this
script to exit early. I suspect the package is no longer needed since
recent versions have moved it into the apt package, so this change
updates the script to stop trying to install apt-transport-https.
2021-02-10 13:08:02 -08:00
Joshua Haberman
db66c95eaf
Added more information to "file already loaded" warning.
...
Also changed it to zend_error() so it is more easily suppressed.
2021-02-09 17:44:30 -08:00
Adam Cozzette
66e5185780
Added PHP changes for 3.15.0 into package.xml
2021-02-09 14:20:19 -08:00
Adam Cozzette
42fea44a9c
Updated CHANGES.txt for the 3.15.0 release
2021-02-08 10:52:37 -08:00
Adam Cozzette
e9f2ef308c
Update protobuf version
2021-02-05 15:37:10 -08:00
Paul MARS
59b3d97f6d
Reserve extension id for protoc-gen-psql & protoc-gen-sanitize
2021-02-05 10:34:04 -08:00
Joshua Haberman
a530dbe50c
Merge pull request #8262 from haberman/sync-stage
...
Integrate from Piper for C++, Java, and Python
2021-02-04 19:02:16 -08:00
Joshua Haberman
e8aa635397
Tweak our JavaScript rewrites a bit to handle jspb.* imports.
2021-02-04 17:04:17 -08:00
Joshua Haberman
beb70bb83e
Change is_trivially_copy_assignable -> is_trivial too.
2021-02-04 15:04:17 -08:00
Joshua Haberman
fc1cfb0174
Also change is_trivially_copy_constructible to std::is_trivial.
2021-02-04 14:42:12 -08:00
Joshua Haberman
fae6773539
Fixed misspelling.
2021-02-04 14:34:26 -08:00
Joshua Haberman
b74892e9c3
Replace is_trivially_default_constructible with is_trivial for old libstdc++.
2021-02-04 14:33:20 -08:00
Joshua Haberman
7a92a5ab24
Added another missing CHANGES.txt entry.
2021-02-04 14:26:30 -08:00
Joshua Haberman
84320bf8e8
Added missing changelog entry.
2021-02-04 14:17:08 -08:00
Joshua Haberman
9194426bce
Added CHANGES.txt entries.
2021-02-04 14:13:45 -08:00