tree 2404718c633965f8861cb1655301d67f386cdfe2
parent 65abb64e73a989f92458ceaa112e8932a58e1c22
author Joshua Haberman <jhaberman@gmail.com> 1621464827 -0700
committer GitHub <noreply@github.com> 1621464827 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJgpZb7CRBK7hj4Ov3rIwAAotEIAKyGF4ceKhvZlX7zeV0e3Z6y
 B21qRzchkYU4pAKzPkhQrSftPM1UVcvuDlmKroVM3uU5NYDIfyVxfvTnn11AGwBP
 TeqrV0V4EkjZiMt0+I5L/SegRW+TDT76C/3l8eOroePy+PpnsGCroB2XJ+X1O0cY
 4f/RFdd3UeMnMH1A2qTJf+Fqudt6zc/6SHhQYmrnMSnwfKAcQmUa/Ngfw/ASV8/n
 Pj4k52YusiK8jiqTCRdJxtkYSbkCaK4o69pXWydf49h4Kk3UsQDcrN0Hnzb0VmOp
 FSTt88JLrddm5k1jhURj4W/4cZ4M3h+3Wj0UWV1BCwNUnv4M8mjuCCQnRBaGcvU=
 =D1Ka
 -----END PGP SIGNATURE-----
 

Php & Ruby Cherry Picks for 3.17.1 (#8632)

* Some more updates to PHP testing infrastructure (#8576)

* WIP.

* Added build config for all of the tests.

* Use ../src/protoc if it is available, for cases where Bazel isn't available.

* Added test_php.sh.

* Fix for the broken macOS tests.

* Move all jobs to use php80 instead of lots of separate jobs.

* Only pass -t flag if we are running in a terminal.

* Updated php_all job to use new Docker stuff.

* Fixed PHP memory leaks and arginfo errors (#8614)

* Fixed a bunch of incorrect arginfo and a few incorrect error messages.

* Passes mem check test with no leaks!

* WIP.

* Fix build warning that was causing Bazel build to fail.

* Added compatibility code for PHP <8.0.

* Added test_valgrind target and made tests Valgrind-clean.

* Updated Valgrind test to fail if memory leaks are detected.

* Removed intermediate shell script so commands are easier to cut, paste, and modify.

* Passing all Valgrind tests!

* Hoist addref into ObjCache_Get().

* Removed special case of map descriptors by keying object map on upb_msgdef.

* Removed all remaining RETURN_ZVAL() macros.

* Removed all explicit reference add/del operations.

* Added REFCOUNTING.md to Makefile.am.

* Updated upb version and fixed PHP to not get unset message field. (#8621)

* Updated upb version and fixed PHP to not get unset message field.

* Updated changelog.

* Fixed preproc test to handle old versions of Clang withot __has_attribute().

* A second try at fixing __has_attribute().

* Copy __has_attribute() fix to cc file also.

* Updated failure list for PHP for fixed test.

* Updated version of upb for Ruby (#8624)

* Updated upb.

* Preserve legacy behavior for unset messages.

* Updated failure list.

* Updated CHANGES.txt.

* Added erroneously-deleted test file.

* Fixed condition on compatibility code.

* Re-introduced deleted file again, and fixed Rakefile to not delete it.

* Fix generation of test protos.