Commit Graph

319 Commits

Author SHA1 Message Date
David L. Jones
f82e268ed7 Remove references to stale benchmark data sources. 2021-04-01 12:21:02 -07:00
Jan Tattermusch
0ebbd7d7c3
Enable crosscompiling aarch64 python wheels under dockcross manylinux docker image (#8280)
This uses the dockcross manylinux docker image to enable crosscompiling aarch64 python wheels. The wheels built for aarch64 linux are excluded from the release for now, pending testing (pending, in PR#8392).
2021-03-29 19:04:16 -07:00
salamani
a4694f9b66 correcting arch name for s390x 2021-03-10 08:09:44 -08:00
Adam Cozzette
ea2412e6ed Updated collect_all_artifacts.sh for Ubuntu Xenial 2021-02-18 16:53:24 -08:00
Adam Cozzette
0533d042b3 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-18 16:53:24 -08:00
Adam Cozzette
8aa0063bef 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-18 16:53:24 -08:00
Jan Tattermusch
a1f96fffc7
Merge pull request #8147 from JamesNK/jamesnk/writestring
Add .NET 5 target and improve WriteString performance with SIMD
2021-02-16 12:15:47 +01:00
Jan Tattermusch
818c2ba077 add libicu63 to C# dockerfile 2021-02-15 11:02:41 +01:00
David L. Jones
a25474ed45
Remove the (unused) Python all-versions Kokoro config. (#8288) 2021-02-11 16:35:00 -08:00
James Newton-King
d9889a4a15
Fix 5.0 SDK Linux restore issue 2021-02-06 16:32:48 +13:00
Paul Yang
525be941e0
Add test for php5 for pure php implementation (#8251)
* Add test for php5 for pure php implementation

* Add php5.6 to docker image

* Add php5.6 to php 32-bit docker image
2021-02-04 09:50:28 -08:00
James Newton-King
8932446d9e
Improve WriteString perf with SIMD 2021-02-04 07:26:34 +13:00
David L. Jones
ac63e80bbb
Enhance explanation in kokoro/README.md. (#8253) 2021-02-02 16:49:58 -08:00
gerben-s
10ecb080cb
Merge pull request #8121 from busunkim96/add-39
add python 3.9
2021-02-01 19:34:02 -08:00
gerben-s
fe47e99a4f
Add cmake to the path to fix the build on kokoro (#8246) 2021-02-01 15:48:50 -08:00
Jan Tattermusch
94c3916dcf
fix problem when restoring C# dependencies on win2016 (#8243) 2021-02-01 09:25:56 -08:00
Masaki Hara
0a7a9a98c5 Ruby: build extensions for arm64-darwin 2021-01-25 15:04:50 +09:00
Joshua Haberman
9abf6e2ab0
Ported Ruby extension to upb_msg (#8184)
* WIP.

* WIP.

* WIP.

* WIP.

* WIP.

* WIP.

* Added some missing files.

* WIP.

* WIP.

* Updated upb.

* Extension loads, but crashes immediately.

* Gets through the test suite without SEGV!

Still a lot of bugs to fix, but it is a major step!

214 tests, 378 assertions, 37 failures, 147 errors, 0 pendings, 0 omissions, 0 notifications
14.0187% passed

* Test and build for Ruby 3.0

* Fixed a few more bugs, efficient #inspect is almost done.

214 tests, 134243 assertions, 30 failures, 144 errors, 0 pendings, 0 omissions, 0 notifications
18.6916% passed

* Fixed message hash initialization and encode depth checking.

214 tests, 124651 assertions, 53 failures, 70 errors, 0 pendings, 0 omissions, 0 notifications
42.5234% passed

* A bunch of fixes to failing tests, now 70% passing.

214 tests, 202091 assertions, 41 failures, 23 errors, 0 pendings, 0 omissions, 0 notifications
70.0935% passed

* More than 80% of tests are passing now.

214 tests, 322331 assertions, 30 failures, 9 errors, 0 pendings, 0 omissions, 0 notifications
81.7757% passed

Unfortunately there is also a sporadic bug/segfault hanging around
that appears to be GC-related.

* Add linux/ruby30 and macos/ruby30

* Use rvm master for 3.0.0-preview2

* Over 90% of tests are passing!

214 tests, 349898 assertions, 15 failures, 1 errors, 0 pendings, 0 omissions, 0 notifications
92.5234% passed

* Passes all tests!

214 tests, 369388 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
100% passed

* A bunch of cleanup.

1. Removed a bunch of internal-only symbols from headers.
2. Required a frozen check to get a non-const pointer to a map or array.
3. De-duplicated the code to get a type argument for Map/RepeatedField.

* Removed a bunch more stuff from protobuf.h.  There is an intermittent assert failure.

Intermittent failure:

ruby: ../../../../ext/google/protobuf_c/protobuf.c:263: ObjectCache_Add: Assertion `rb_funcall(obj_cache2, (__builtin_constant_p("[]") ? __extension__ ({ static ID rb_intern_id_cache; if (!rb_intern_id_cache) rb_intern_id_cache = rb_intern2((("[]")
), (long)strlen(("[]"))); (ID) rb_intern_id_cache; }) : rb_intern("[]")), 1, key_rb) == val' failed

* Removed a few more things from protobuf.h.

* Ruby 3.0.0-preview2 to 3.0.0

* Require rake-compiler-dock >= 1.1.0

* More progress, fighting with the object cache.

* Passes on all Ruby versions!

* Updated and clarified comment regarding WeakMap.

* Fixed the wyhash compile.

* Fixed conformance tests for Ruby.

Conformance results now look like:

RUBYLIB=../ruby/lib:. ./conformance-test-runner --enforce_recommended --failure_list failure_list_ruby.txt --text_format_failure_list text_format_failure_list_ruby.txt ./conformance_ruby.rb

CONFORMANCE TEST BEGIN ====================================

CONFORMANCE SUITE PASSED: 1955 successes, 0 skipped, 58 expected failures, 0 unexpected failures.

CONFORMANCE TEST BEGIN ====================================

CONFORMANCE SUITE PASSED: 0 successes, 111 skipped, 8 expected failures, 0 unexpected failures.

Fixes include:

- Changed Ruby compiler to no longer reject proto2 maps.
- Changed Ruby compiler to emit a warning when proto2 extensions are
  present instead of rejecting the .proto file completely.
- Fixed conformance tests to allow proto2 and look up message by name
  instead of hardcoding a specific list of messages.
- Fixed conformance test to support the "ignore unknown" option for
  JSON.
- Fixed conformance test to properly report serialization errors.

* Removed debug printf and fixed #inspect for floats.

* Fixed compatibility test to have proper semantics for #to_json.

* Updated Makefile.am with new file list.

* Don't try to copy wyhash when inside Docker.

* Fixed bug where we would forget that a sub-object is frozen in Ruby >=2.7.

* Avoid exporting unneeded symbols and refactored a bit of code.

* Some more refactoring.

* Simplified and added more comments.

* Some more comments and simplification. Added a missing license block.

Co-authored-by: Masaki Hara <hara@wantedly.com>
2021-01-13 12:16:25 -08:00
Adam Cozzette
635156e406 Fix Mac tests by making an unshallow copy of Homebrew repos
It seems that updating shallow Git clones is expensive, and as a result
Homebrew recently started refusing to update shallow clones (see
https://github.com/Homebrew/discussions/discussions/226). This commit
tries to fix the problem by making these repos into full clones before
running "brew update".

I also came across another error about there being a conflicting version
of pip3 in /usr/local. I suspect that is related to the other Python
binaries that the script has to delete, so I added pip3 to the list and
that seemed to solve the problem.
2020-12-23 11:52:19 -08:00
Paul Yang
823f351448
Port for php8 (#8105)
* Port for php8

* Port php c extension for php8

* Update composer.json

* Drop php7.0 support

* Update phpunit for php7.1 in c extension test

* Add back support for php7.0

* Add badge for php8 continuous build
2020-12-04 13:46:34 -08:00
Bu Sun Kim
51c80ce1d5 add python 3.9 2020-12-04 21:16:47 +00:00
Paul Yang
70531697bc
Update docker file for php 32bit tests (#8116) 2020-12-02 16:44:56 -08:00
Paul Yang
e8906e4ecd
Update docker file for php7 (#8112) 2020-12-02 10:10:18 -08:00
Paul Yang
9432c99f37
Update docker image for php8 (#8103) 2020-11-30 10:19:50 -08:00
Paul Yang
4eea2b00a3
Remove php 5 tests on mac (#7956) 2020-10-09 15:53:12 -07:00
David L. Jones
b774da0d42
Change Python kokoro configs to test only their specified version. (#7927)
Using non-versioned scripts for `build_file` means every Python version is
tested (under Tox), and this is multiplied by each Python version running Tox.

For example, when the `python38` config is used to run Tox, the
Tox layer runs on Python 3.8. This then tests all of the Python versions
individually, including, for example, python27 tests.

This change fixes the `build_file` paths to point to the same-pathed build
script. For example, `kokoro/linux/python27/presubmit.cfg` now uses
`kokoro/linux/python27/build.sh`.

Some additional fixes:

*  Use `python -m tox` in tests.sh instead of just `tox`. This helps non-site
   installations of tox, where the `tox` script may not be on `$PATH`.
*  Ensure tox (and other Python build-related packages) are available in
   Python testing images. (New images have been pushed.)
*  Disable `--warnings_as_errors` due to deprecated function.
*  Remove apt lists per [Docker best practices][1].

[1]: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
2020-09-30 15:56:17 -07:00
Adam Cozzette
58f4260e8e Merged 3.13.x into master 2020-08-17 11:06:11 -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
Bo Yang
8947701be5 Add docker file for php8.0 2020-08-10 13:51:06 -07:00
Peter Newman
e2cc2de304
Fix lots of spelling errors (#7751)
* Fix a typo

* Fix lots of spelling errors

* Fix a few more spelling mistakes

* s/parsable/parseable/

* Don't touch the third party files

* Cloneable is the preferred C# term

* Copyable is the preferred C++ term

* Revert "s/parsable/parseable/"

This reverts commit 534ecf7675.

* Revert unparseable->unparsable corrections
2020-08-10 11:08:25 -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
Jan Tattermusch
fed7e18193 upgrade dotnet SDK in the CI to 3.1 2020-06-30 08:53:31 -04:00
Thomas Van Lenten
ce8b7af46b Update the brew workflow
- Remove the `brew install`; the kokoro image already has it, just
  update/upgrade instead.
- Remove `prune`, logs had:
    """
    Error: Unknown command: prune
    """
- Remove `uninstall`, logs had:
    """
    Error: Refusing to uninstall /usr/local/Cellar/cmake/3.16.4 and /usr/local/Cellar/icu4c/64.2
    because they are required by ceres-solver, ffmpeg, harfbuzz, libass and opencv, which are currently installed.
    You can override this and force removal with:
      brew uninstall --ignore-dependencies node icu4c cmake wget
    """
- Skip installing some things since they are already in the base image, logs
  had:
    """
    Warning: gflags 2.2.2 is already installed and up-to-date
    To reinstall 2.2.2, run `brew reinstall gflags`
    Warning: openssl@1.1 1.1.1g is already installed and up-to-date
    To reinstall 1.1.1g, run `brew reinstall openssl@1.1`
    Warning: pcre 8.44 is already installed and up-to-date
    To reinstall 8.44, run `brew reinstall pcre`
    """
- Don't install gpg gpg2 as gnupg is already installed, also use gpg instead of
  gpg2 for commands (and update the commands), logs had:
    """
    kokoro/macos/prepare_build_macos_rc: line 44: gpg2: command not found
    kokoro/macos/prepare_build_macos_rc: line 45: gpg2: command not found
    """
- Add env guards to control all the option installs and only request them be
  installed in the cases that need it.  This avoids having to install/update
  the things like ruby when some other tool only needed in some configs is
  install differently and could have conflicts.
- Switch to brew for cocoapods to avoid compat issues on the supporting
  libraries.
2020-06-09 09:57:17 -04:00
Joshua Haberman
c077d949d8 Merge branch '3.12.x' into merge-312 2020-05-26 16:45:43 -07:00
Stanley Cheung
ef22086980
Fix :protobuf_objc bazel target (#7538)
* Potential 3.12 ObjC bazel patch

* Add test targets to bazel test

* Remove :protobuf_objc test target
2020-05-21 12:46:35 -07:00
Daniel Azuma
cf81f38b5d
Restore binary builds of Ruby 2.3 and 2.4 (#7529) (#7531) 2020-05-19 15:52:59 -07:00
Daniel Azuma
ba1ce70744
Restore binary builds of Ruby 2.3 and 2.4 (#7529) 2020-05-19 15:28:57 -07:00
Joshua Haberman
27ba0c5bb0
Fixed the PHP Kokoro build. (#7503)
* Fixed the PHP Kokoro build.

* Renamed all PHP7.4 Mac tests -> PHP7.3.
2020-05-13 15:36:21 -07:00
Joshua Haberman
e19bfc0e28
Stop building binary gems for ruby <2.5. (#7453)
It is no longer possible to "bundle install" these versions:

$ bundle install
Fetching gem metadata from https://rubygems.org/.................
reline-0.1.3 requires ruby version >= 2.5, which is incompatible with the current version, ruby 2.4.9p362
2020-05-01 12:35:09 -07:00
Masaki Hara
f494cb222d
Test in Ruby 2.7 (#7386)
* Test in Ruby 2.7

* Turn off GC.stress for 'require' in Ruby 2.7

* Backport 2c8364b to compatibility_tests/v3.0.0
2020-04-24 09:50:27 -07:00
Paul Yang
f15ac4091f
Drop 3.3, 3.4 and use single version docker images for all python tests (#7396)
* Create a new docker image for python 3.6

The previous one cannot build, because python3.6 was removed from
stretch.

* Drop support for 3.3 and 3.4

Also update all docker file to be single version
2020-04-18 14:39:52 -07:00
Masaki Hara
64f6c59ccb
Build extensions for Ruby 2.7 (#7027)
* Build extensions for Ruby 2.7

* Try installing bundler 2.x

* Try bumping rake-compiler-dock

* Use standard RCD images

* Avoid 'rake cross native' with rake-compiler-dock

* Use Ruby 2.5 for building Ruby <= 2.6

* Use rake-compiler 1.1.0

* Specify target

* Don't update Ruby test image for now
2020-04-16 23:31:47 -07:00
Joshua Haberman
c649397029
Set execute bit on files if and only if they begin with (#!). (#7347)
* Set execute bit on files if and only if they begin with (#!).

Git only tracks the 'x' (executable) bit on each file. Prior to this
CL, our files were a random mix of executable and non-executable.
This change imposes some order by making files executable if and only
if they have shebang (#!) lines at the beginning.

We don't have any executable binaries checked into the repo, so
we shouldn't need to worry about that case.

* Added fix_permissions.sh script to set +x iff a file begins with (#!).
2020-04-01 15:28:25 -07:00
David L. Jones
42903f87f0
Merge pull request #7154 from tswast/issue4498-googleapis.dev
python: publish sphinx docs to googleapis.dev
2020-02-27 14:30:54 -08:00
Rafi Kamal
0eb476b696 Merge branch 3.11.x to master 2020-02-18 16:42:47 -08:00
Rafi Kamal
df2bce345d
Remove 32-bit Mac protoc reference from collect_all_artifacts (#7228) 2020-02-18 12:55:01 -08:00
Rafi Kamal
d314101531
Remove protoc release for 32-bit Macs (#7209)
* Remove protoc release for 32-bit Macs 

Apple has been removing the support for 32-bit Mac apps: https://support.apple.com/en-us/HT208436

Our release infrastructure no longer supports building for 32-bit architecture.

* Remove protoc artifact for MacOS 32-bit
2020-02-13 14:00:19 -08:00
Yannic
f0cb9cdb95
[bazel] Move Java runtime/toolchains into //java (#7190)
* [bazel] Move Java runtime/toolchains into //java

This change moves `java_library` targets from the top-level BUILD file
into `//java/{core,lite,util}` and declares `alias` targets to point to
their new locations (hence, this is not a breaking change).

This will allow users that don't use Java to stop depending on
`@rules_java` (e.g. as requested in
https://github.com/bazelbuild/rules_scala/pull/989#issuecomment-583405161).

Note that there is no intention to deprecate + remove the top-level
targets in the foreseeable future.

* Add BUILD files in //java to java_EXTRA_DIST
2020-02-13 13:04:14 -08:00
Rafi Kamal
1440569231
Update the Xcode version number in Kokoro (#7202) (#7203)
Currently all of our MacOS tests are failing with the error: "autom4te: need GNU m4 1.4 or later: /usr/bin/m4". This is likely to be happening because Kokoro has updated their Xcode version to 11.3.
2020-02-12 11:34:51 -08:00
Rafi Kamal
a24e594833
Update the Xcode version number in Kokoro (#7202)
Currently all of our MacOS tests are failing with the error: "autom4te: need GNU m4 1.4 or later: /usr/bin/m4". This is likely to be happening because Kokoro has updated their Xcode version to 11.3.
2020-02-12 11:28:38 -08:00
Adam Cozzette
802e1b99b2 Attempt to mitigate "docker pull" failures
Lots of CI tests have been failing recently with error messages like
this from "docker pull":

  Error response from daemon: unexpected EOF

This seems to be an issue affecting other projects as well:
https://forums.docker.com/t/docker-pull-causes-error-response-from-daemon-unexpected-eof/88608

This commit tries to mitigate the problem by periodically retrying
failed Docker pulls.
2020-02-11 12:59:49 -08:00
Tim Swast
d1f4e25e15
python: publish sphinx docs to googleapis.dev
**Background:**

This is a follow-up to the PR that adds sphinx docs.

Googleapis.dev hosts client library documentation for several languages as
well as documentation for core packages such as google-api-core. It is owned
and maintained by the Cloud DevRel Core team.

**About this change:**

The `kokoro/docs/publish-python.sh` script builds the docs with sphinx, then
uses the [googleapis/docuploader](https://github.com/googleapis/docuploader)
tool to publish to googleapis.dev. The publish script is triggered manually
with a Kokoro RELEASE type job. Googlers, see go link
protobuf-docs-python-design for additional internal references.
2020-02-11 13:55:20 -06:00
Rafi Kamal
bc237eb672
Install RubyGem bundler version specified in Gemfile.lock to fix release failure (#7144) (#7156)
Ref: https://bundler.io/blog/2019/05/14/solutions-for-cant-find-gem-bundler-with-executable-bundle.html
2020-01-31 09:43:58 -08:00
Rafi Kamal
4cf5bfee95
Install RubyGem bundler version specified in Gemfile.lock to fix release failure (#7144)
* Update Gem version to fix Ruby release failure

Ref: https://bundler.io/blog/2019/05/14/solutions-for-cant-find-gem-bundler-with-executable-bundle.html
2020-01-30 13:08:31 -08:00
Paul Yang
85219578fa
Add continuous test for php7.4 on mac (#7153) 2020-01-30 12:45:47 -08:00
Yannic
948740bc9d [bazel] Fix blacklisted_protos in cc_toolchain and add test (#7075) 2020-01-15 10:27:35 -08:00
Yannic
29cd005ce1 [bazel] Fix blacklisted_protos in cc_toolchain and add test (#7096) 2020-01-15 10:22:16 -08:00
salamaniibm
c3ffdabed5 correcting the s390x Arch name 2020-01-10 16:07:15 -08:00
Rafi Kamal
ed8688de72
Merge pull request #7064 from rafi-kamal/3.11.x-202001071136
Merge branch 3.11.x to master
2020-01-08 12:24:20 -08:00
Brian Wignall
a104dffcb6 Fix typos (#7050)
Uses https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines to find likely typos, with https://github.com/bwignall/typochecker to help automate the checking.
2020-01-08 10:18:20 -08:00
Rafi Kamal
4500f31a6a Merge branch 3.11.x to master 2020-01-07 11:52:29 -08:00
Jie Luo
63cfdafacb
Fix python release breakages by set MB_PYTHON_OSX_VER (#7038) 2019-12-19 14:06:29 -08:00
Jie Luo
03ba4ac171
Add python3.8 in build_artifacts for linux and macos (#7019) 2019-12-19 10:27:39 -08:00
Jie Luo
7faab5eeeb add python38 (#7009)
* add python38

* add python3.8

* fix tox
2019-12-13 15:49:18 -08:00
Paul Yang
7bb8b108d1
Add php 7.4 to docker image (#6971) (#6975)
* Add php 7.4 to docker image

* Use https links
2019-12-02 16:05:55 -08:00
Paul Yang
ef210164aa
Add php 7.4 to docker image (#6971)
* Add php 7.4 to docker image

* Use https links
2019-12-02 15:33:05 -08:00
Jan Tattermusch
96e9ff3863 Revert "Revert "C# upgrade dotnet SDK (#6877)" (#6888)" (#6920)
This reverts commit f06800524f.
2019-11-25 11:29:47 -08:00
Rafi Kamal
bb0c543934
Update Xcode version needed to run Kokoro tests and replace deprecated rubygem options (#6890)
* Update Xcode version needed to run Kokoro tests

* Replace deprecated --no-ri --no-rdoc rubygem options with --no-document
2019-11-14 13:44:33 -08:00
Jie Luo
f06800524f
Revert "C# upgrade dotnet SDK (#6877)" (#6888)
This reverts commit 0c8acb6c8d.
2019-11-14 09:49:59 -08:00
Jan Tattermusch
0c8acb6c8d C# upgrade dotnet SDK (#6877)
* upgrade dotnet SDK

* upgrade dotnet SDK version in global.json
2019-11-14 09:39:31 -08:00
salamaniibm
7ba4a99e00 adding protoc support for s390x 2019-08-30 11:44:43 -07:00
Paul Yang
fa8f155dcf
Reinstall wget on mac (#6505) 2019-08-13 11:36:17 -07:00
Yannic Bonenberger
edbc27fb81 Print logs of failing tests 2019-07-24 10:23:55 -07:00
Yannic Bonenberger
4979489451 Add test to verify BUILD- and cmake-files are in sync with src/Makefile.am 2019-07-24 10:23:55 -07:00
Paul Yang
d28cf02ee0 Drop building wheel for python 3.4 (#6406)
https://github.com/matthew-brett/multibuild/pull/240
2019-07-22 14:56:18 -07:00
Adam Cozzette
63d9c1fb95 Updated Bazel test script to use most recent Bazel version (#6413)
I'm not exactly sure why, but this fixes the failing Bazel presubmit
test. Using the most recent version seems like a good idea anyway so
that we can make sure we're compatible with any new Bazel changes.
2019-07-19 12:55:58 -07:00
Tomo Suzuki
c9212beed2 continuous.cfg 2019-06-27 15:19:17 -04:00
Tomo Suzuki
3507314d67 build.sh to use linux/dockerfile/test/java_stretch 2019-06-27 15:15:49 -04:00
Tomo Suzuki
89fbae62f4 java_stretch 2019-06-27 15:12:39 -04:00
Tomo Suzuki
8886454fc0 uncomented jdk7 2019-06-27 14:22:21 -04:00
Tomo Suzuki
699bab2e2d reverted 64-bit/Dockerfile 2019-06-27 14:20:41 -04:00
Tomo Suzuki
30673ff200 backslash at the end of the comment 2019-06-27 08:45:04 -04:00
Tomo Suzuki
7051725941 To setup JDK8 2019-06-26 15:28:49 -04:00
Paul Yang
444354f41a
Update gem to 2.7.9 (#6265)
New bundler doesn't work with old gem: https://github.com/rbenv/rbenv/issues/1138
2019-06-17 09:53:12 -07:00
Keith Smiley
1958925c76 Add -Werror for CI builds 2019-04-16 09:49:23 -07:00
Paul Yang
f425b9f059
Merge pull request #5953 from acozzette/merge-3-7-x
Merge 3.7.x into master
2019-03-28 17:28:22 -07:00
Hao Nguyen
3efc3fd4f5
Upgrade the closure compiler version (#5955)
Also update Dockerfile for JavaScript. The old one is using an npm that is too outdated
2019-03-28 09:54:13 -07:00
Adam Cozzette
8645d893ab Merge branch '3.7.x' into merge-3-7-x 2019-03-26 14:32:20 -07:00
Adam Cozzette
077079573f Fixed CI failures with Ruby 2.3 on OSX (#5948)
OSX has deprecated OpenSSL, so we need to install it via Homebrew and
build against that version when we build Ruby.
2019-03-25 17:19:48 -07:00
Jan Tattermusch
36fa3c6d4d add missing C# windows presubmit.cfg file (#5894) 2019-03-14 09:47:33 -07:00
Jan Tattermusch
67fee07308 C#: set some dotnet options when testing 2019-03-12 05:16:52 -04:00
Jan Tattermusch
79c32b17ac add scripts for C# windows tests 2019-03-12 05:16:52 -04:00
Sydney Acksman
15fab9109d Bump target frameworks of C# programs from netcoreapp1.0 to netcoreapp2.1 (#5838)
* Bump target frameworks from netcoreapp1.0 to netcoreapp2.2.
Move global.json up to root of repo, change SDK ver to 2.2.100
Change .net core sdk in dockerfile for kokoro to ver 2.2.100

* Re-add curl install

* Change all exe target to 2.1

* Fix incorrect versions in global.json and Dockerfile

* Downgrade version to 2.1 to match exe targets

* introduce separate testing Dockerfile for C#

* revert changes to the shared Dockerfile

* use netcoreapp2.1 for C# conformance tests

* use language specific dockerfile for testing C#

* Edit compatibility tests script to use parameters instead of file copies

* install dotnet SDK on windows before running the tests

* update csharp_EXTRA_DIST
2019-03-11 13:03:58 -07:00
Hao Nguyen
f85c823c90
Create test to verify that the dist artifact can be installed. (#5854)
* Add a new test for verifying that the dist package can be installed.
2019-03-07 14:34:28 -08:00
Bo Yang
cb6fa92ee8 Merge branch '3.7.x' 2019-03-04 10:18:18 -08:00
Paul Yang
582743bf40
Update version number to 3.7.0 (#5793)
* Update version number to 3.7.0

* Add php/releash.sh to Makefile.am

* Make cpp_distcheck exit on fail
2019-02-28 12:55:14 -08:00
Yilun Chong
400845ae17 fix macos build for High Sierra (#5780)
* fix macos build by changing xcode version

* add comments

* fix benchmark build for mac

* fix for gem option and install npm

* add test for node and npm

* fix node

* fix for node

* another attempts to fix node

* another attempts

* clean up
2019-02-26 15:51:04 -08:00
Yilun Chong
89b914f81d
fix macos build for High Sierra (#5780)
* fix macos build by changing xcode version

* add comments

* fix benchmark build for mac

* fix for gem option and install npm

* add test for node and npm

* fix node

* fix for node

* another attempts to fix node

* another attempts

* clean up
2019-02-26 12:52:06 -08:00
Xiang Dai
e479410564 delete all duplicate empty blanks (#5758)
Signed-off-by: Xiang Dai <764524258@qq.com>
2019-02-20 19:28:50 -08:00
Paul Yang
847ee580f2
Add config files for testing csharp artifact (#5683) 2019-02-05 17:28:04 -08:00
Paul Yang
5b4ac53c97
Add several fixes for python toolchain (#5667)
* Add several fixes for python toolchain

* Fix versin regex

* Make script exit on error

* Fix version regex

* Fix version regex

* Fix version regex

* Fix version regex

* Make test run on the current commit

* Fix test

* Fix test

* Use git to retrieve current commit

* Fix tests

* Fix tests

* Also make linux and mac work on the current commit

* Fix test
2019-02-01 18:43:55 -08:00
Paul Yang
7d9377e7f3
Use gnu for ruby build because strptime is provided by posix (#5660)
* Use gnu for ruby build because strptime is provided by posix

* Move option to extconf.rb

* Remove unused code in Rakefile

* Add config files for kokoro test

* Use gnu 11

* Define _XOPEN_SOURCE

* Add gnu11 option

* Remove XOPEN

* Try base_cc_flags

* Try config_options

* Move time.h to top

* Try -D_XOPEN_SOURCE=700

* Define XOPEN_SOURCE directly

* Try extconf.rb

* Try CFLAGS

* Try ext.cross_config_options

* Make mac ruby release job fail on error

* Try again

* Try define _XOPEN_SOURCE in extconf.rb

* Try again

* Define __USE_XOPEN

* Remove 2.6.0

* No mingw

* Throw error on mingw

* Remove XOPEN_SOURCE in upb

* Add back mingw

* Remove comment
2019-02-01 10:09:34 -08:00
Hao Nguyen
c143164986 Fix MacOS protoc release (#5638)
* Use set -ex
* Use -std=c++14 so -latomic can be found
2019-01-27 19:53:31 +00:00
Hao Nguyen
532c42586f Fix python release build. (#5636)
* Fix python release build.
* Separate config.sh by platform
* Use KOKORO_JOR_NAME to determine the BUILD_COMMIT.
* Use -std=c++14 on MacOS so -latomic can be used.
2019-01-27 19:53:14 +00:00
Hao Nguyen
45a723b40d
Fix MacOS protoc release (#5638)
* Use set -ex
* Use -std=c++14 so -latomic can be found
2019-01-25 21:05:22 -08:00
Hao Nguyen
fac8e343e8
Fix python release build. (#5636)
* Fix python release build.
* Separate config.sh by platform
* Use KOKORO_JOR_NAME to determine the BUILD_COMMIT.
* Use -std=c++14 on MacOS so -latomic can be used.
2019-01-25 16:19:07 -08:00
Adam Cozzette
e2bfec9af2 Updated Linux cpp_distcheck test to exit immediately on error 2019-01-25 09:12:53 -08:00
Hao Nguyen
4f8a635679
Create test for protoc with tcmalloc (#5612)
* Add TC malloc kokoro test

* Update tcmalloc test
2019-01-23 10:02:51 -08:00
Paul Yang
c3340b20a8
Add ruby 2.6 gem build for linux (#5537)
* Add ruby 2.6 gem build for linux

* Add docker hub organization

* Add ruby2.6 in cross compile targets

* Fix tests

* Check mac version

* No need to install php in preparation for mac
2019-01-07 19:44:54 -08:00
Paul Yang
de9e1a04a6
Add ruby 2.6 test (#5528)
* Add ruby 2.6 test

* Fix broken tests

* Fix compatibility test

* Fix bundler version

* Use new docker image

* Fix broken test

* Use new docker image in ruby26 test

* Install ruby for mac
2019-01-03 14:25:50 -08:00
Yilun Chong
152c8301cf
Fix python benchmark throughput; Change back to not using docker for benchmar (#5503) 2018-12-20 17:15:51 -08:00
Paul Yang
4dec4f9371
Rebuild python docker image (#5475)
* Rebuild python docker image

* Update docker image

* Change call to build_and_run_docker.sh

* Set up python tests for different versions

* Fix comments
2018-12-18 18:07:24 -08:00
Yilun Chong
6adc3d74fb
Fix benchmark to use docker image on kokoro (#5481)
* Fix benchmark to use docker image on kokoro

* Deleted pure php benchmark and fix long time benchmark
2018-12-18 16:20:23 -08:00
Adam Cozzette
453274b72d Removed Kokoro config for 64-bit Linux
This Kokoro configuration is no longer being used and the build.sh
script does not work anymore, so let's delete this configuration.
2018-12-18 14:57:46 -08:00
Paul Yang
d7c4409589
Php 7.3 fix (#5434)
* Inherit from message instead of implement

When regestering class (implmenets other class) during MINIT, zend_class_implements
would call zend_class_entry->interface_gets_implemented(). In PHP-7.3 interface_gets_implemented shares the same location with create_object.
However, during MINIT, the global object storeage hasn't been initialized. And thus, caused segment fault in php 7.3.

* Use zend_string_init where interned string may be the value.
zend_string_dup will keep using the existing interned string.
In php 7.3, interned string cannot be destroyed from user's code.

* Uncommment debug code

* Use latest phpunit for each php versions

* Revert change in Dockerfile

* Update php test to use the new docker image

* Update composer

* Change docker organization

* Update phpunit

* Debug phpunit

* Store phpunit into bin dir in docker image

* Install valgrind to docker

* Fix compatibility test

* Remove generated_service_test from compatibility c extension test

* Update 32bit php test to the new docker image

* Install bison

* Fix build.sh

* Fix DOCKERIMAGE_PREFIX

* Fix basename

* Add comment to build_and_run_docker2.sh

* Remove commented code

* Fix comments
2018-12-18 10:57:03 -08:00
Hao Nguyen
6cb87bd157 Use docker for csharp, java_compatibility, and python_compatibility. Remove prepare_build_linux_rc that is no longer needed. 2018-12-13 15:20:25 -08:00
Paul Yang
5518c016a7
Compile php source to enable openssl and add php7.3 support (#5466) 2018-12-13 14:45:34 -08:00
Paul Yang
1d90079873
Add composer config to Dockerfile (#5451) 2018-12-11 14:00:51 -08:00
Paul Yang
8bd1542980
Add docker file for php testing. (#5447) 2018-12-10 16:32:56 -08:00
Paul Yang
704037f23a
Change MACOSX_DEPLOYMENT_TARGET to 10.9 (#5406)
* Add kokoro build for python source package

* Use libc++ for xcode 10 (#5303)

The xcode 10 removes the deprecated libstdc++ library. We could set
"MACOSX_DEPLOYMENT_TARGET" to "10.9" to use libc++ instead.

* Add python 3.7 build

* Add build for python 3.7 on linux and windows

* Remove unused source build

* Add comment

* Fix $MACOSX_DEPLOYMENT_TARGET mismatch

* Fix MACOSX_DEPLOYMENT_TARGET mismatch

* Add missing import for sysconfig

* Add missing imports
2018-11-28 16:45:16 -08:00
Paul Yang
acc0fc2a9e
Remove ruby21 and ruby22 tests (#5277)
* Remove ruby21 and ruby22 tests

* Update test badge
2018-10-22 15:09:36 -07:00
Yilun Chong
565c26e7a1
Merge pull request #5186 from BSBandme/add_js_php_benchmark_to_dashboard
Add node and php to benchmark dashboard
2018-10-21 19:59:52 -07:00
Paul Yang
333b3ceab6
Add ruby 2.3, 2.4 and 2.5 test for linux. (#5256)
* Add ruby 2.3, 2.4 and 2.5 test for linux.

* Update kokoro files

* Add back commented gc test

* Fix gc_test failure

* Remove unused code

* Update ruby 2.5.0 to 2.5.1

* Update ruby 2.3 to 2.3.8

* Remove useless comment
2018-10-18 11:16:55 -07:00
Paul Yang
39df66e1f7
Add ruby2.3,2.4.2.5 test on Mac and disable ruby2.1,2.2 test on Linux (#5250) 2018-10-12 12:36:33 -07:00
Yilun Chong
cee0447fd9 Add node and php to benchmark dashboard 2018-09-25 16:05:16 -07:00
Jan Tattermusch
7200550afa upport kokoro/release/python from 3.6.x branch 2018-09-07 12:32:20 -07:00
Jan Tattermusch
9dadb37fb2 experimental collect_all_artifacts script 2018-09-07 09:10:12 -07:00
Feng Xiao
409f954673 Revert changed links in Dockerfiles.
These changes require building new docker images and without new images
our kokoro tests are all failing.
2018-08-23 12:43:35 -07:00
Feng Xiao
afe98de32a Replace repo links. 2018-08-22 11:55:30 -07:00
Feng Xiao
bde4eaf137 Update build files.
* Fixes https://github.com/google/protobuf/issues/5031
* Fixes https://github.com/google/protobuf/issues/5037
2018-08-13 14:41:27 -07:00
Feng Xiao
f0b8a57fe6 Cleanup kokoro scripts.
Changes:
1. Remove stuff no longer needed. Lots of the heavy lifting were there
because we were running our own jenkins cluster and had to manage all
the test logs ourselves. Now they are useless.
2. Change "-j2" to "-j4" to speed up the test a little bit. Kokoro
machines have 4 logic CPUs according to their spec.
2018-08-09 15:22:22 -07:00
Adam Cozzette
377f64f82f Added support for building the aarch64 and ppcle64 protoc binaries with Kokoro
This was fairly straightforward using the existing build-protoc.sh
script. The only problem I ran into was that the x86 Docker builds
create output directories owned by root, which caused some permission
issues. Fortunately it was easy to get around that just by doing those
Docker builds last.
2018-08-01 15:01:05 -07:00
Yilun Chong
88795f64e4
Merge pull request #4934 from BSBandme/sync_internal_benchmark
Sync internal benchmark changes
2018-07-18 14:44:16 -07:00
Yilun Chong
3783a4ca17 Sync internal benchmark changes 2018-07-18 13:45:32 -07:00
Jan Tattermusch
f50be7de91 Fix C# nuget build on Kokoro (#4912)
* upgrade dotnet SDK to 2.1.3 on kokoro linux
2018-07-18 11:04:59 -07:00
Feng Xiao
c7442b27cf Comment out unused command from release script. 2018-07-15 20:31:54 -07:00
Feng Xiao
1fc53afaa7 Run autogen.sh in release script. 2018-07-15 19:13:00 -07:00
Feng Xiao
bbbe422fab Add protoc release script for Linux build. 2018-07-15 18:18:36 -07:00
Feng Xiao
9de4e64cf2 Add cpp tests under release docker image.
1. Added C++ tests under the release docker image.
2. Fixed a compile issue with the docker image.
3. Cleaned up tests.sh and removed traivis stuff.
2018-07-15 16:41:25 -07:00
Yilun Chong
14bc658175 fix python cpp kokoro build 2018-07-12 16:49:26 -07:00
Yilun Chong
a2618376f2 fix linux kokoro build in docker 2018-07-12 14:22:14 -07:00
Jan Tattermusch
f3d3bfc01e add scripts for automated building of C# nuget on Kokoro 2018-07-12 10:17:25 +02:00
Feng Xiao
5fa1f6b2e9 Make ruby release configs consistent with protoc. 2018-07-11 16:25:55 -07:00
Feng Xiao
1a7ce04be7 Fix bazel build of examples. 2018-07-03 11:00:15 -07:00
Adam Cozzette
82d3d7d250 Merge branch '3.6.x' into merge-3-6-x 2018-06-25 13:22:10 -07:00
Paul Yang
f7ada1280f
Build ruby gem on kokoro (#4819)
* Install rake compiler

* Add kokoro config to build ruby gem on linux

* Rename from linix to linux

* Fix prepare_build.sh name

* Clean up

* Install bundler

* Install bundler

* Use c99 in order to build gem on mingw-32 on ruby 2.0.0

See https://github.com/rake-compiler/rake-compiler-dock/issues/4

* Move c99 config to extcofig.rb
2018-06-25 11:14:49 -07:00
Paul Yang
56d27530ab
Rename build_artifacts.cfg to release.cfg (#4818) 2018-06-22 13:00:55 -07:00
Paul Yang
b907a03185
Add files to build ruby artifact for mac on kokoro (#4814)
* Add files to build ruby artifact for mac on kokoro

* Move ruby specific stuff to ruby dir
2018-06-22 10:26:17 -07:00
Adam Cozzette
ad85c3b4a2
Added Kokoro protoc release build for OS X (#4770)
This configuration builds both 32-bit and 64-bit binaries for Mac OS X.
One thing I had to change was to increase our minimum supported version
for 10.7 to 10.9, because 10.9 (Mavericks) appears to be the earliest
version supporting C++11.
2018-06-18 14:34:14 -07:00
Adam Cozzette
b0a8220e92
Added Kokoro Windows release build config for protoc (#4766)
This should make it easy to automatically build 32-bit and 64-bit
Windows protoc binaries.
2018-06-14 16:48:53 -07:00
Feng Xiao
38a794c02f Delete jruby kokoro tests. 2018-05-24 16:32:20 -07:00
Feng Xiao
ffc8b35c83 Add kokoro configs for bazel build. 2018-05-24 14:02:48 -07:00
Yilun Chong
98e097233f Fix java benchmark bug, fix python library_path 2018-05-21 14:56:56 -07:00
Yilun Chong
c3566c6861 Fix python install, cat java error log for kokoro build 2018-05-14 12:00:21 -07:00
Yilun Chong
8f3507360c Fix benchmark build 2018-04-16 17:01:18 -07:00
Yilun Chong
092134593d fix java benchmark, fix dashboard build 2018-04-13 14:54:58 -07:00
Yilun Chong
5fb73f80f2
Merge pull request #4415 from BSBandme/experiement
Add dashboard support
2018-04-10 14:23:07 -07:00
Yilun Chong
805174eda2 Add script for run and upload the benchmark result to bq 2018-04-10 13:26:17 -07:00
Feng Xiao
68de0cf390 Delete javanano kokoro build configs.
Their job configs are being deleted in cl/190526138
2018-03-26 14:44:23 -07:00
Carlos O'Ryan
3c5442a95d Include googletest as a submodule (#3993)
Add googletest as a submodule in third_party/googletest.
2018-03-26 13:54:32 -07:00
Thomas Van Lenten
204a6413d6 Move kokoro macOS builds to to Xcode 9.1. 2018-01-30 15:10:11 -05:00
Jon Skeet
0c52335587 Update .NET SDK to 2.0.3
This will allow SourceLink as per #4179, and mean that we can use C#
7.0 language features in the library (but not in generated code).
This does not affect which platforms we're *targeting*, so end users
won't see any difference.

It would be nice to update to 2.1.4, but AppVeyor's "Visual Studio
2017" environment is only 2.0.3.
2018-01-25 19:42:15 +00:00
Matt Kwong
0b2be3caaf Shard 64-bit Linux languages into different Kokoro jobs 2017-12-20 18:18:41 -08:00
Matt Kwong
ae49cfd1a4 Collect xml results for Kokoro 2017-12-20 16:28:41 -08:00
Matt Kwong
6003a61255 Make Kokoro job pull Dockerimage from Dockerhub 2017-12-20 14:56:13 -08:00
Matt Kwong
8ac050fadd Migrate Jenkins jobs to Kokoro 2017-12-19 13:06:09 -08:00
Matt Kwong
e46caba181 Remove pre-installed softwares 2017-08-23 10:49:50 -07:00
Matt Kwong
0871e6a808 Add continuous testing config files for Kokoro 2017-06-07 11:08:00 -07:00
Matt Kwong
6156af10e8 Add MacOS and Linux tests to Kokoro 2017-06-06 15:09:02 -07:00