Commit Graph

7593 Commits

Author SHA1 Message Date
Paul Yang
93d8e89374
Fix version number in php macro (#7822)
Fixes #7812
2020-08-17 12:58:35 -07:00
Adam Cozzette
fde7cf7358 Update protobuf version 2020-08-14 15:20:53 -07:00
Jie Luo
0710535089 Fix segment fault for proto3 optional (#7805)
* Fix segment fault for proto3 optional

 Fixes #7801
2020-08-14 12:57:13 -07:00
Adam Cozzette
2ad43bfd3d Fixed tests for Python 2 in python/release.sh
Setuptools 45.0 removed support for Python 2, so to keep these tests
working for Python 2 I updated the script to install an older setuptools
version.
2020-08-14 09:50:38 -07:00
Adam Cozzette
14982862f5 Removed conflicting C# version line
Somehow we ended up with two conflicting versions listed for C#, so this
commit removes the incorrect one (the correct one is 3.13.0-rc3).
2020-08-14 09:21:30 -07:00
Adam Cozzette
98c2e69f8c Update protobuf version 2020-08-12 14:49:20 -07:00
Paul Yang
5ce6232605
No need to generate addtional has method for proto2 (#7802)
* No need to generate addtional has method for proto2

* Also remove has property
2020-08-12 13:18:28 -07:00
Paul Yang
d4ca92962c
Port php c extension to php8 (#7793)
* Only ported c extension to php8.
* Didn't fixed the issue of throwing warnings for missing arginfo in bundled files.
* Tests not fixed, because syntax of phpunit (<7 vs >9.3) are not compatible.
* In next release, needs to drop php5 and php7.0 support (in order to use phpunit > 7)
2020-08-11 19:30:46 -07:00
Paul Yang
008c72146f
Add docker file for php8.0 (#7790) 2020-08-10 14:35:18 -07:00
Bo Yang
8947701be5 Add docker file for php8.0 2020-08-10 13:51:06 -07:00
Joshua Haberman
610bbd0b95 Fixed compile_extension.sh --release to actually enable optimization. (#7766) 2020-08-07 14:44:49 -07:00
Paul Yang
0929596575 Check realoneof in json parsing (#7763)
* Check realoneof in json parsing

* Fix whichoneof to also work for synthetic oneof
2020-08-07 14:44:49 -07:00
Roberto Cosenza
02ade8bc32 Adding forgotten duration.proto to the lite library 2020-08-07 14:44:49 -07:00
Adam Cozzette
1c587a8059 Updated version to 3.13.0-rc2 2020-08-07 14:44:49 -07:00
Paul Yang
69c4bc5674 Updated upb to pick up several bugfixes (#7740)
* Updated upb to pick up several bugfixes. This fixes most conformance failures.

* Updated golden file, now that we are serializing as packed by default.

* Set "packed" properly: it is on by default for packable fields in proto3.

* Updated failure list for PHP now that we properly respect "packed".

* Temporarily disable encode_decode_test

Co-authored-by: Joshua Haberman <jhaberman@gmail.com>
2020-08-07 14:44:49 -07:00
Joshua Haberman
a28af654fa Removed obsolete TSRMLS_* usage. (#7731) 2020-08-07 14:44:49 -07:00
Joshua Haberman
5f32d484c1 Updated minimum required version for C extension to 7.0. (#7730) 2020-08-07 14:44:49 -07:00
Joshua Haberman
ad5a215359 Added proto3 presence support for PHP (#7724)
* WIP.

* Added proto3 presence support for PHP.

* Added compatibility code for old generated code.
2020-08-07 14:44:49 -07:00
Jon Skeet
0d90ff3d72 Fix C# optional field reflection when there are regular fields too
Previous tests didn't spot this as each message was either "all
optional" or "all non-optional", at which point there isn't a problem.
2020-08-07 14:44:49 -07:00
Adam Cozzette
ff92cee10b Fixed release.sh and setup.py for Python
Newer versions of virtualenv lack the --no-site-packages option, so I
had to remove it to keep the release.sh script working. I read that this
option has already been the default for a long time, so removing it
shouldn't chany any behavior.

For the setup.py script, I was getting some errors about the bdist_wheel
argument to setup.py, but I was able to fix that by adding 'wheel' to
setup_requires.
2020-08-07 14:44:49 -07:00
Adam Cozzette
6b3a834f33 Temporarily disabled ExtensionRegistryFactoryTest
This test has started failing, and I believe the cause is a change in
class loading behavior in Java 11. As far as I know, that breaks the
test logic but there is nothing wrong with the non-test code. This
change temporarily disables the test so that we can unblock the 4.0
release while I work on a more permanent fix.
2020-08-07 14:44:49 -07:00
Joshua Haberman
0a5b969733 Updated CHANGES.txt to reference the new version 3.13.0-rc1. 2020-08-07 14:44:49 -07:00
Jan Tattermusch
79b118235d Update CHANGES.txt with the C# parsing / serialization overhaul (#7710) 2020-08-07 14:44:49 -07:00
David L. Jones
0f9ae07fe0 Override pip and virtualenv installation for macOS. (#7704)
This commit cleans up our environment setup for macOS builds.

-  Always use `python -m {pip | virtualenv}` form of commands.
-  Only upgrade in-place, and never use `--ignore-installed`.
-  Use latest tox on macos, and test 3.6 on macos presubmit.

These changes ensure that multibuilder won't break the system-installed Python on the Kokoro macOS builder, and thus won't resolve the ancient system version. For Tox, make sure we test with Python 3.6 (the version of Python in current macOS).
2020-08-07 14:44:49 -07:00
Adam Cozzette
8940150706 Updated version to 3.13.0-rc1. 2020-08-07 14:44:49 -07:00
Joshua Haberman
ffb2b53834
Remove old PHP extension (#7695)
* Removed references to legacy class names from generated code.

* Removed old PHP extension in favor of new extension. This drops PHP5 compat.

* Updated failure lists for things fixed by the new extension.

* Updated Makefile.am for new file list.

* Fix distcheck.
2020-07-09 11:06:24 -07:00
David Grayston
c02ded7a57
Fix GPBUtil::getFullClassName() argument order (#7629) 2020-07-07 13:37:46 -07:00
Jan Tattermusch
96a62f7cc7
Merge pull request #7644 from JamesNK/jamesnk/parsestring-multisegment
Optimize reading strings across segments
2020-07-07 10:44:07 +02:00
Yuriy Chernyshov
c535d54da3 Do not use ADL when transforming string to lowercase 2020-07-06 16:41:21 -07:00
3ks
86b3ccf28c change go's runtime 2020-07-01 16:46:14 -07:00
Yannic
cdc7fe8f05 [bazel] Use proto_library targets to exclude WKPs from code-gen
This prepares protobuf for a future release of Bazel which will make
`ProtoInfo` mandatory for `proto_lang_toolchain.blacklisted_protos`.
2020-07-01 13:46:50 -07:00
James Newton-King
e36163deed
PR feedback 2020-07-01 20:32:29 +12:00
James Newton-King
d4abad8731
Optimize reading strings across segments 2020-07-01 20:32:29 +12:00
Jan Tattermusch
62cf7c6096
Merge pull request #7658 from jtattermusch/csharp_benchmark_improvements
C# write benchmark improvements
2020-07-01 09:02:07 +02:00
Jan Tattermusch
45c8850389 use BinaryPrimitives.WriteUInt64LittleEndian 2020-07-01 07:52:02 +02:00
Jan Tattermusch
1cf4df00cf C# benchmark improvements 2020-07-01 07:52:02 +02:00
Jan Tattermusch
93b38972fb
Merge pull request #7669 from jtattermusch/csharp_sdk_31
upgrade dotnet SDK in the CI to 3.1
2020-07-01 07:49:21 +02:00
Jan Tattermusch
fed7e18193 upgrade dotnet SDK in the CI to 3.1 2020-06-30 08:53:31 -04:00
Jan Tattermusch
d4c5992352
Merge pull request #7666 from jskeet/fix-csharp-build
Fix C# build by regenerating test protos
2020-06-30 08:33:46 +02:00
Jon Skeet
13d712533e Fix C# build by regenerating test protos 2020-06-30 06:52:58 +01:00
Joshua Haberman
aaf84cb10f
Bugfix for when message constructor has no argument. (#7660)
This fixes the user issue: https://github.com/protocolbuffers/protobuf/issues/7611#issuecomment-647025031
2020-06-29 10:31:20 -07:00
Jon Skeet
2c1a46101b Add tests for NullValue not appearing in a oneof at all 2020-06-29 09:30:20 +01:00
Jon Skeet
0dd5fffba3 Fix JSON parsing and formatting of NullValue in C#
The NullValue enum is typically used as part of the Value well-known type, but can be used elsewhere. In previous code, a NullValue field (other than in Value) would result in a JSON value of the string "NULL_VALUE"; it should instead be the null literal.
When parsing, we still accept "NULL_VALUE" as a valid value for NullValue - this new code being unable to parse old data, and comes for free anyway.
2020-06-29 09:30:20 +01:00
Jan Tattermusch
206b973afd
Merge pull request #7576 from jtattermusch/protobuf_buffer_serialization
New Span-based serialization logic (followup for #7351)
2020-06-29 09:26:25 +02:00
Joshua Haberman
093faebcdb
New PHP C Extension based on upb_msg (#7614)
* Added code for the new PHP extension.

* Removed a bunch of unused variables shown by compiler warnings.

* Test protobuf2 in the tests.

* Updated upb version to fix a goldenfile test.

* Added pure-PHP changes. Extension now passes all tests.

* Enabled protobuf2 for all C extension tests.

* Fixed pure=PHP lib: full names no longer start with '.'.

* Added files for new extension to Makefile.am.

* Downgraded make-preload.py to python 2, since python3 isn't available in the php_all Kokoro image.

* Disable tests of new C extension with PHP 5.x.

* Also do not compile the extension for PHP5.

* Accept version 5.*.*, and use /usr/bin/python.

* Addressed PR comments.

* Addressed PR comments.

* Added "const" to a parameter and fixed a memory leak seen in Valgrind.

* Stop testing the C extension for PHP5.

The next release of protobuf will deprecate the C extension
for PHP5, see:
https://github.com/protocolbuffers/protobuf/issues/7525

* Made the PHP5.6 Mac test only exercise pure-PHP.

* Build protoc for PHP 5.6 test.

* Rewrote bundling script in PHP to avoid dependency on Python.

* A few more fixes.

* Fixed int32/int64 behavior for 32-bit builds.

* Match more PHP versions in testing script.

* Use phpize --clean before building extension.

* Force-delete configure.in to avoid phpize problems cross-version.

* Delete both configure.ac and configure.in.
2020-06-25 12:21:01 -07:00
Jan Tattermusch
4f0afc7852 optimize WriteRawTag 2020-06-23 20:17:33 +02:00
Jan Tattermusch
2f16981638 optimize WriteVarint64 2020-06-23 17:38:40 +02:00
Jan Tattermusch
9d53fadcac optimize WriteVarint32 2020-06-23 17:23:21 +02:00
Jan Tattermusch
9ca0877db1 optimize WriteRawBytes 2020-06-23 16:55:43 +02:00
Jan Tattermusch
80780bdffa optimize WriteRawByte 2020-06-23 16:53:05 +02:00