Instead of calling initOnce of dependencies, initialize metadata of dependencies in the same file.
Needs to pass aggregate_metadata option to protoc to trigger, e.g.:
--php_out=aggregate_metadata=foo#bar:generated_dir
For each input file, transitive dependencies (including itself), whose package name has the prefix of foo or bar, will be aggregated, in which their metadata string will be aggregated in the same internalAddGeneratedFile call. For other dependencies, initOnce is called as before.
This feature is EXPERIMENTAL. DO NOT USE!!!
Instead of calling initOnce of dependencies, initialize metadata of dependencies in the same file.
Needs to pass aggregate_metadata option to protoc to trigger, e.g.:
--php_out=aggregate_metadata=foo#bar:generated_dir
For each input file, transitive dependencies (including itself), whose package name has the prefix of foo or bar, will be aggregated, in which their metadata string will be aggregated in the same internalAddGeneratedFile call. For other dependencies, initOnce is called as before.
This feature is EXPERIMENTAL. DO NOT USE!!!
* Add scripts to test multirequest
* chmod ug+x multirequest.sh
* Add continuous test
* Compile c extension
* Class entry is obsolete in the second request
1) Needes to use class name in persistent map
2) Invalidate class entry stored in descriptor
* Add new files to dist
* Fix compile_extension
* Cleanup outputs for phpize
* Make c extension portable for php 7.4
* Fix conformance tests
* Fix comments
* Fix 32-bit
* Update conformance failure list
* Fix compiler warnings
* Cleanup configure created by phpize
The file created in php 7.4 is not recognizable by previous versions
* Fix conformance tests for 64-bit php
* Fix conformance test
* Fix compile warning
* Fix compile warnings
* Make reserve names map persistent
* Add DescriptorInternal to map
* Use get_msgdef_desc in encode_decode.c
* Add persistent map for ce=>def and enum=>def
* Replace get_ce_obj
* Remove get_proto_obj
* Remove obsolete fields from Descriptor and EnumDescriptor
* Add cache for descriptor php values
* Add cache for descriptors
* Fix bug
* Avoid add generated file again if it has been added
* Fix the bug upb depends on null-ended str for look up.
* Initialize generated pool impl
* Turn down old generated pool
* Add init entry flag protobuf.keep_descriptor_pool_after_request
By default, it's off. Add protobuf.keep_descriptor_pool_after_request=1 to php.ini to enable it
* Fix zts build
* Make reserve names map persistent
* Add DescriptorInternal to map
* Use get_msgdef_desc in encode_decode.c
* Add persistent map for ce=>def and enum=>def
* Replace get_ce_obj
* Remove get_proto_obj
* Remove obsolete fields from Descriptor and EnumDescriptor
* Add cache for descriptor php values
* Add cache for descriptors
* Fix bug
* Avoid add generated file again if it has been added
* Fix the bug upb depends on null-ended str for look up.
* Initialize generated pool impl
* Turn down old generated pool
* Add init entry flag protobuf.keep_descriptor_pool_after_request
By default, it's off. Add protobuf.keep_descriptor_pool_after_request=1 to php.ini to enable it
* Fix zts build
* Register additional handlers from wrappers
* Return zval instead of parse frame
* Use parse frame
* Update upb
* Lazily create wrapper messages
* Fix a segment fault
Need check type of field before getting submsg def
* Avoid expanding during serialization and direct access
* Fix a bug that getXXXUnwrapped returns null for string
* Implement writeWrapperUnwrapped
* Add more tests
* Fix oneof wrapper parsing
* Fix get oneof field
* Avoid expansion for oneof wrappers
* Fix bug
* Fix a bug that in php7 variable is defined out of scope
* Fix broken tests
* Update upb to fix Timestamp conformance tests
* Fix segmentation fault for oneof wrapper fields
* Fix encoding/decoding top level wrapper values
* Add type checking for write wrapper value in php7
* Fix zts build
* Fix the bug that readWrapperValue uses parent message's layout to access wrapper value
* Fix wrapper in map
* Avoid initializing primitive fields in layout_init
* Avoid initializing string/bytes/message fields in layout_init
* Lazily create map when needed
* Lazily create repeated fields
* Change layout_init to only do memcpy
* Fix test for php-7.0
* Fix conformance test where default value of string/message map is not encoded
* Fix test for zts
* Clean up
* Fix comments