Commit Graph

8265 Commits

Author SHA1 Message Date
Joshua Haberman
5df4c2ec94
Merge pull request #8546 from haberman/sync-stage
Integrate from Piper for C++, Java, and Python
2021-05-04 17:14:33 -07:00
Joshua Haberman
2bf63f5983 Removed file that was mistakenly re-introduced. 2021-05-04 15:50:02 -07:00
Joshua Haberman
753a2b76ee Merge branch 'master' into sync-stage 2021-05-04 15:49:27 -07:00
Joshua Haberman
8b87075924
Updated and simplified PHP testing structure (#8558)
* Simplified PHP testing setup.

- Consolidated on a single autoloader, created by composer.
- Consolidated on a single phpunit invocation strategy: we run
  phpunit on a directory, which will run all tests matching *Test.php
  in that directory.
- We now rely on autoloading to import all test protos. require_once()
  calls for test protos are removed.
- For now the valgrind tests are removed. A follow-up PR will re-enable
  them in a more robust way.

* More improvements to PHP testing.

1. Replace custom PHPUnit-selection logic in test.sh with generic
   composer version selection.
2. Optimized both test proto generation and the custom extension
   build to avoid unnecessary work when the files are already up
   to date.

* Added assertions to verify that the C test doesn't use PHP sources.

* Updated tests.sh for the new PHP testing commands.

* Removed obsolete rules from tests.sh.

* Fixed generate_test_protos.sh for when tmp does not exist.

Also removed undefined_test.php and fixed Makefile.am.

* Added php8.0_all again which is still used.

* Added missing file to Makefile.am.

* Re-added php_all_32 rule which is also still used.

* Updated testing commands for macOS and download composer.

* Use /usr/local/bin on mac instead of /usr/bin, since the latter is not writable.
2021-05-04 10:19:22 -07:00
Paul Yang
114efc42d4
Fix php json parsing not throwing error for unknown field. (#8528) 2021-05-04 10:09:56 -07:00
Jan Tattermusch
2f0e269725 improve readability of MessageParsingHelpers 2021-05-04 11:39:15 +02:00
Jan Tattermusch
89244fe167 make public API take ReadOnlySpan<byte> without "ref" 2021-05-04 11:24:55 +02:00
Adam Cozzette
17b0fb9149
Make update_version.py compatible with Python 3 (#8555) 2021-05-03 16:26:59 -07:00
Yuriy Chernyshov
28101c3e39
Stop using GG_ prefixed macros (#8539)
* Stop using GG_ prefixed macros

GG_ULONGLONG was renamed to PROTOBUF_ULONGLONG some time ago

* Better
2021-05-03 15:05:02 -07:00
Jensaarai
5095b68183 Code Review Feedback
* Move additional `ReadOnlySpan<byte>` `ParseContext` overloads next to
the existing overload
* Pass `ReadOnlySpan<byte>` parameters by `ref`
* Update `MessageParsingHelpers` to add checks for parsing from
`ReadOnlySpan<byte>`, remove tests from `CodedInputStreamTest`
2021-05-03 12:03:22 -07:00
Kenneth Lum
952cf14442
fix typo (#8548) 2021-05-03 11:21:59 -07:00
Joshua Haberman
67044a2820 Reinstate the Python change that was somehow reverted in the sync. 2021-04-30 16:28:12 -07:00
Joshua Haberman
d99a67e893 Updated changelog. 2021-04-30 16:20:39 -07:00
Joshua Haberman
535ddf1c4f Merge tag 'refs/tags/sync-piper' into sync-stage 2021-04-30 16:12:51 -07:00
Joshua Haberman
f5fd897c1d Sync from Piper @371422642
PROTOBUF_SYNC_PIPER
2021-04-30 16:12:50 -07:00
Jan Tattermusch
5e84a6169c
Merge pull request #8544 from jtattermusch/test_javascript_aarch64
Test javascript on linux aarch64 (under qemu emulator)
2021-04-30 07:11:09 +02:00
Jan Tattermusch
f3411a29da node tests require java to be available 2021-04-29 19:00:14 +02:00
Jan Tattermusch
37ba0bcfa2
Merge pull request #8391 from jtattermusch/cpp_aarch64_emulated_tests
run basic C++ aarch64 tests under qemu emulator
2021-04-29 18:20:55 +02:00
Jan Tattermusch
36243917c1 add testing jobs for javascript_aarch64 2021-04-29 16:46:12 +02:00
Jan Tattermusch
7124f2893d add testing scripts for protobuf javascript on aarch64 qemu emulator 2021-04-29 16:45:34 +02:00
Yuriy Chernyshov
a48e005d51
Fix -Wundefined-inline error when using SharedCtor() or SharedDtor() (#8532) 2021-04-28 14:51:03 -07:00
Dennis Shao
8424042534
Update kokoro/docs/publish-python.sh
Update kokoro/docs/publish-python.sh to use the latest version of protoc and python.

This will make [the python doc-publishing job](https://fusion.corp.google.com/projectanalysis/summary/KOKORO/prod:cloud-devrel%2Fclient-libraries%2Fprotobuf%2Fdocs%2Fpython) pass again.
2021-04-26 14:59:14 -05:00
Jan Tattermusch
2a11e892ed
Merge pull request #8530 from jtattermusch/python_aarch64_manylinux_release
Start publishing python aarch64 manylinux wheels normally
2021-04-26 20:29:59 +02:00
Jan Tattermusch
0d60cc5df6
Merge pull request #8534 from jtattermusch/test_csharp_aarch_typo
Fix C# aarch64 tests (fix typo in test_csharp_aarch64.sh)
2021-04-26 20:27:38 +02:00
Jan Tattermusch
1834e8cb4d fix typo in test_csharp_aarch64.sh 2021-04-26 20:17:09 +02:00
Jan Tattermusch
4536154a8a
Merge pull request #8495 from jtattermusch/run_ruby_aarch64_test
Run ruby aarch64 tests on the CI (with an emulator)
2021-04-26 18:37:28 +02:00
Jan Tattermusch
78a8d67f87
Merge pull request #8485 from jtattermusch/run_java_aarch64_test
Run java aarch64 tests on the CI (with an emulator)
2021-04-26 18:24:55 +02:00
Jan Tattermusch
771220e0db
Merge pull request #8501 from jtattermusch/run_csharp_aarch64_test
Run csharp aarch64 tests on the CI (with an emulator)
2021-04-25 19:22:17 +02:00
Jan Tattermusch
0a2ddaebc9 start publishing python aarch64 manylinux wheels normally 2021-04-24 06:15:59 +02:00
Roy Williams
7ad0fd4ed7
Make libprotobuf symbols local on OSX (#8346)
@gnossen gave a great overview in https://github.com/grpc/grpc/pull/24992 of the overall problem.

If a python process using both protobuf _and_ another native library linking in libprotobuf
frequently can cause crashes.  This seems to frequently affect tensorflow as well:

tensorflow/tensorflow#8394,
tensorflow/tensorflow#9525 (comment)
tensorflow/tensorflow#24976,
tensorflow/tensorflow#35573,
https://github.com/tensorflow/tensorflow/blob/v2.0.0/tensorflow/contrib/makefile/rename_protobuf.sh,
tensorflow/tensorflow#16104

Testing locally this fixes both crashes when linking in multiple versions of protobuf
and fixes `DescriptorPool` clashes as well (e.g. Python and Native code import different versions of the same message).
2021-04-23 20:03:01 -07:00
Jan Tattermusch
b2c71571b3 add kokoro configs for csharp aarch64 2021-04-23 12:21:43 +02:00
Jan Tattermusch
47f6283e7f run csharp tests under aarch64 emulator 2021-04-23 12:21:43 +02:00
Jan Tattermusch
7c876925c7 add kokoro configs for ruby aarch64 2021-04-23 12:09:23 +02:00
Jan Tattermusch
e0267f6c0e run ruby tests under aarch64 emulator 2021-04-23 12:09:23 +02:00
Jan Tattermusch
4342e417a5 add protoc_crosscompile_aarch64.sh (same as for java aarch64 tests) 2021-04-23 12:09:23 +02:00
Jan Tattermusch
b284beecc2 add kokoro job config to test java aarch64 2021-04-23 12:03:06 +02:00
Jan Tattermusch
4939dd91fe allow running emulated java aarch64 tests 2021-04-23 12:03:06 +02:00
Jan Tattermusch
7956ad20d6
Merge pull request #8479 from jtattermusch/run_python_aarch64_tests
Run python aarch64 tests on the CI
2021-04-23 11:59:47 +02:00
Derek Perez
87d140f851
rely on only HTTPS mirrors for maven. (#8526) 2021-04-22 12:12:41 -07:00
Derek Perez
61689226c0
updating GSON and Guava to more recent versions (#8524) 2021-04-21 18:05:18 -07:00
Derek Perez
bbd6999c76
add missing files to Makefile.am for java bazel (#8522) 2021-04-21 17:50:12 -07:00
Derek Perez
db8f725190
ensure maven deps are pinned for reproducibility. (#8523)
* ensure maven deps are pinned for reproducibility.

* adding update docs.
2021-04-21 16:26:05 -07:00
Yuriy Chernyshov
f8e2efbf43
Fix some -Wsign-compare issues (#8516)
* Fix some -Wsign-compare issues

* Shorten variable name
2021-04-21 15:52:10 -07:00
deannagarcia
76188afb94
Merge pull request #8272 from deannagarcia/kotlinProtos
Opensourcing kotlin protos
2021-04-21 10:29:26 -07:00
Jiamin Shen
0fd835893f
Fix protobuf version in the example (#8509)
The version variable should be `protobuf_VERSION` in `CMakeLists.txt`.
2021-04-20 15:15:30 -07:00
Adam Cozzette
4aa425c6c5
Cherry-pick #8356 into 3.16.x (#8518)
* Ruby: Add support for proto3 json_name in compiler and field definitions

* Address review feedback

* Add test for json_name functionality

Co-authored-by: Lukas Fittl <lukas@fittl.com>
2021-04-20 13:52:44 -07:00
Derek Perez
bc45f92262
Bazel powered Java testing (#8506)
* Protobuf Java/Core Tests running w/ Bazel.

Also integrates rules_jvm_external and migrates existing maven deps
in place.

* Add test_suite target that maps to rule name.

* Lite tests passing in Bazel

* util tests passing with Bazel.

* Add conformance and build testing to //java:core

* Cleanup bzl style and lock down access to failure lists.

* Adding Java Lite conformance tests.

* rm newline

* parameterize conformance_test

This makes usage of failure lists more explicit.

* restrict visibility more for newly added libs and fix formatting.

* fix formatting and visibility.

* move testing.bzl to an internal package.

* fix file formatting.

* moving conformance_test to internal.bzl
2021-04-20 11:36:32 -07:00
Joshua Haberman
fecf7e9340
Merge pull request #8356 from lfittl/support-json-name-for-ruby
Ruby: Add support for proto3 json_name in compiler and field definitions
2021-04-20 11:21:35 -07:00
Yuriy Chernyshov
b6426256fb
Fix some -Wunused parameter issues (#8517) 2021-04-20 11:12:11 -07:00
Derek Perez
d1b2eff440
Cleanup kokoro usages of java_compatibility and eliminate java/compatibility_tests. (#8504) 2021-04-20 09:36:06 -07:00