1. 14 Nov, 2019 1 commit
    • Paul Yang's avatar
      Lazily Create Singular Wrapper Message (#6833) · 601f6963
      Paul Yang authored
      * 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
      601f6963
  2. 16 Feb, 2019 2 commits
  3. 28 Jan, 2019 1 commit
    • Bo Yang's avatar
      Convert integer to string if field is string field in json · 96029f3c
      Bo Yang authored
      json_decode automatically convert numeric string to integer, so that
      we need to convert it back. However, this will suceed to parse invalid
      json data with string field set as integer even though it should have failed.
      Because, the failure case is less often than the succeeding case, we decided
      to make this change. Users should make sure their data don't use integer for
      string fields by themselves.
      96029f3c
  4. 12 Jan, 2019 1 commit
    • Nicolás Elliott's avatar
      Fix Issue #5345 (#5381) · 54683e60
      Nicolás Elliott authored
      Added a few \ on the comments to match the exceptions scope when is referenced while in a namespace. So the IDEs can be happy.
      54683e60
  5. 08 Jan, 2019 1 commit
  6. 07 Oct, 2018 1 commit
    • michaelbausor's avatar
      PHP: Add support for primitive types in setters (#5126) · 6a51c038
      michaelbausor authored
      * Add support for primitive types in setters
      
      * Update to address PR feedback
      
      * Add tests and fixes for repeated fields
      
      * Remove repeated field code, add getters
      
      * Cleanup, test getters and oneofs
      
      * Move boxing logic into separate class
      
      * Add tests for wrapper type constructor args
      
      * Update to add new setXXXValue methods
      
      * Fix tests for invalid values
      
      * Fix c extension for wrapper accessors
      
      * Fix the bug that well known types didn't call Message_construct
      
      * Address PR comments
      
      * Refactoring init message with array logic
      
      * Add include path to protoc
      
      * Add missing TSRM_LS defintion
      
      * Fix TSRM_LS
      
      * Fix dist check
      6a51c038
  7. 23 Sep, 2018 1 commit
    • Paul Yang's avatar
      Adopt upb change for timestamp and duration json to php (#5106) · 9bda1f19
      Paul Yang authored
      * Adopt upb change for timestamp and duration json to php
      
      * Remove unused code
      
      * Re-sync upb
      
      * Fix php implementation timestamp json parsing
      
      * Fix strptime use local timezone on mac.
      
      * Remove succeeding tests
      
      * Resync
      
      * Add tests for values
      
      * Fix php tests
      
      * Fix encoder handlers change default value
      
      Previously, oneofsubmsg_handler and submsg_handler change zval's default value directly.
      The fix use REPLACE_ZVAL_VALUE which create a copy of parsed value and assign it to zval.
      9bda1f19
  8. 10 Jul, 2018 1 commit
  9. 25 May, 2018 1 commit
    • Brent Shaffer's avatar
      PHP array constructors for protobuf messages (#4530) · c9b404d2
      Brent Shaffer authored
      * PHP array constructors for protobuf messages
      
      * removes Descriptor from error message
      
      * allows mergeFrom to accept an array
      
      * only use initWithDescriptor if instanceof MapEntry
      
      * adds doc comments
      
      * removes ability for constructors to take arrays for submessages
      
      * Revert "allows mergeFrom to accept an array"
      
      This reverts commit b7b72182d561634af12c5c5c56a7cda3b33241f9.
      
      * makes mergeFromArray protected and fixes mergeFrom whitespace
      
      * Separates merging from JSON and merging from PHP array
      
      * removes well-known types and json keys from array construction
      
      * Addresses PR review comments
      
      * cleans up tests
      
      * fixes exception messages
      c9b404d2
  10. 24 May, 2018 1 commit
    • Brent Shaffer's avatar
      PHP array constructors for protobuf messages (#4530) · f1911f37
      Brent Shaffer authored
      * PHP array constructors for protobuf messages
      
      * removes Descriptor from error message
      
      * allows mergeFrom to accept an array
      
      * only use initWithDescriptor if instanceof MapEntry
      
      * adds doc comments
      
      * removes ability for constructors to take arrays for submessages
      
      * Revert "allows mergeFrom to accept an array"
      
      This reverts commit b7b72182d561634af12c5c5c56a7cda3b33241f9.
      
      * makes mergeFromArray protected and fixes mergeFrom whitespace
      
      * Separates merging from JSON and merging from PHP array
      
      * removes well-known types and json keys from array construction
      
      * Addresses PR review comments
      
      * cleans up tests
      
      * fixes exception messages
      f1911f37
  11. 30 Apr, 2018 1 commit
  12. 09 Apr, 2018 1 commit
  13. 11 Dec, 2017 1 commit
  14. 07 Dec, 2017 1 commit
    • Paul Yang's avatar
      Recursively clear unknown fields in submessages. (#3982) · c370f88f
      Paul Yang authored
      * Recursively clear unknown fields in submessages.
      
      * Recursively discard unknown fields in submsg for c extension
      
      * Fix zts build
      
      * Add comment for tests
      
      * Add a TODO to add a util for encoding varint for better readability.
      
      * Add test for oneof message field.
      c370f88f
  15. 30 Nov, 2017 1 commit
  16. 13 Nov, 2017 1 commit
  17. 04 Nov, 2017 1 commit
    • Paul Yang's avatar
      Fix php well known type conformance tests (#3828) (#3840) · 2df47269
      Paul Yang authored
      * Fix php well known type conformance tests
      
      * Properly generate code for test.proto
      
      * Provide GPBMetadata files in c extensions for generated files to import.
      
      * Remove unnecessary test
      
      * Clean up code
      
      * Add declaration for initOnce.
      
      * Refactoring
      2df47269
  18. 03 Nov, 2017 1 commit
    • Paul Yang's avatar
      Fix php well known type conformance tests (#3828) · bcda919c
      Paul Yang authored
      * Fix php well known type conformance tests
      
      * Properly generate code for test.proto
      
      * Provide GPBMetadata files in c extensions for generated files to import.
      
      * Remove unnecessary test
      
      * Clean up code
      
      * Add declaration for initOnce.
      
      * Refactoring
      bcda919c
  19. 09 Oct, 2017 1 commit
    • Paul Yang's avatar
      Reserve unknown fields in php (#3659) · 60327468
      Paul Yang authored
      * Reserve unknown fields in upb
      1) For decoding, an unknownfields will be lazily created on message,
      which contains bytes of unknown fields.
      2) For encoding, if the unknownfields is present on message, all bytes
      contained in it will be serialized.
      
      * Register the function to encode unknown field at decode time.
      
      * Remove upb_handlers_setaddunknown
      
      * Use upb_sink_putunknown in decoder
      
      * Remove upb_pb_encoder_encode_unknown
      
      * Do not expose encode_unknown
      
      * Implement reserve unknown field in php Implement.
      
      * Make buffer private to CodedInputStream
      60327468
  20. 10 Sep, 2017 1 commit
  21. 21 Aug, 2017 1 commit
  22. 02 Aug, 2017 1 commit
  23. 30 Jun, 2017 1 commit
  24. 20 Jun, 2017 2 commits
    • Paul Yang's avatar
    • Ryan Gordon's avatar
      Switch to addEnumType to fix fatal error (#3225) · 703cd8e1
      Ryan Gordon authored
      * Switch to addEnumType to fix fatal error
      
      * Fixing more cases of HHVM incompatibility
      
      * Updating tests to be hhvm compatible
      
      * Fixing tests
      
      * Fixing merge
      
      * Don't use call_user_func, should hopefully fix tests
      
      * Fixing spelling
      
      * Fixing another misspelling in a test
      
      * Fixing placement of append and kvUpdate functions
      
      * Actually fix function helpers
      
      * Remove double addEnumType. How did this ever work?
      
      * Fixing a couple more tests
      
      * Only use the setter if the return value isn't an object
      703cd8e1
  25. 30 May, 2017 1 commit
  26. 21 Apr, 2017 1 commit
  27. 20 Apr, 2017 2 commits
  28. 15 Mar, 2017 1 commit
  29. 08 Mar, 2017 1 commit
  30. 01 Mar, 2017 1 commit
    • Paul Yang's avatar
      Add mergeFrom method on Message (#2766) · bcbaabe5
      Paul Yang authored
      This method merges the contents of the specified message into the
      current message. Singular fields that are set in the specified message
      overwrite the corresponding fields in the current message.  Repeated
      fields are appended. Map fields key-value pairs are overritten.
      Singular/Oneof sub-messages are recursively merged. All overritten
      sub-messages are deep-copied.
      bcbaabe5
  31. 12 Feb, 2017 1 commit
  32. 31 Jan, 2017 1 commit
    • Paul Yang's avatar
      Merge 3.2.x branch into master (#2648) · 7f3e2370
      Paul Yang authored
      * Down-integrate internal changes to github.
      
      * Update conformance test failure list.
      
      * Explicitly import used class in nano test to avoid random test fail.
      
      * Update _GNUC_VER to use the correct implementation of atomic operation
      on Mac.
      
      * maps_test.js: check whether Symbol is defined before using it (#2524)
      
      Symbol is not yet available on older versions of Node.js and so this
      test fails with them. This change just directly checks whether Symbol is
      available before we try to use it.
      
      * Added well_known_types_embed.cc to CLEANFILES so that it gets cleaned up
      
      * Updated Makefile.am to fix out-of-tree builds
      
      * Added Bazel genrule for generating well_known_types_embed.cc
      
      In pull request #2517 I made this change for the CMake and autotools
      builds but forgot to do it for the Bazel build.
      
      * Update _GNUC_VER to use the correct implementation of atomic operation on Mac.
      
      * Add new js file in extra dist.
      
      * Bump version number to 3.2.0
      
      * Fixed issue with autoloading - Invalid paths (#2538)
      
      * PHP fix int64 decoding (#2516)
      
      * fix int64 decoding
      
      * fix int64 decoding + tests
      
      * Fix int64 decoding on 32-bit machines.
      
      * Fix warning in compiler/js/embed.cc
      
      embed.cc: In function ‘std::string CEscape(const string&)’:
      embed.cc:51:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int i = 0; i < str.size(); ++i) {
                                      ^
      
      * Fix include in auto-generated well_known_types_embed.cc
      
      Restore include style fix (e3da722b) that has been trampled by
      auto-generation of well_known_types_embed.cc
      
      * Fixed cross compilations with the Autotools build
      
      Pull request #2517 caused cross compilations to start failing, because
      the js_embed binary was being built to run on the target platform
      instead of on the build machine. This change updates the Autotools build
      to use the AX_PROG_CXX_FOR_BUILD macro to find a suitable compiler for
      the build machine and always use that when building js_embed.
      
      * Minor fix for autocreated object repeated fields and maps.
      
      - If setting/clearing a repeated field/map that was objects, check the class
        before checking the autocreator.
      - Just to be paranoid, don’t mutate within copy/mutableCopy for the autocreated
        classes to ensure there is less chance of issues if someone does something
        really crazy threading wise.
      - Some more tests for the internal AutocreatedArray/AutocreatedDictionary
        classes to ensure things are working as expected.
      - Add Xcode 8.2 to the full_mac_build.sh supported list.
      
      * Fix generation of extending nested messages in JavaScript (#2439)
      
      * Fix generation of extending nested messages in JavaScript
      
      * Added missing test8.proto to build
      
      * Fix generated code when there is no namespace but there is enum definition.
      
      * Decoding unknown field should succeed.
      
      * Add embed.cc in src/Makefile.am to fix dist check.
      
      * Fixed "make distcheck" for the Autotools build
      
      To make the test pass I needed to fix out-of-tree builds and update
      EXTRA_DIST and CLEANFILES.
      
      * Remove redundent embed.cc from src/Makefile.am
      
      * Update version number to 3.2.0-rc.1 (#2578)
      
      * Change protoc-artifacts version to 3.2.0-rc.1
      
      * Update version number to 3.2.0rc2
      
      * Update change logs for 3.2.0 release.
      
      * Update php README
      
      * Update upb, fixes some bugs (including a hash table problem). (#2611)
      
      * Update upb, fixes some bugs (including a hash table problem).
      
      * Ruby: added a test for the previous hash table corruption.
      
      Verified that this triggers the bug in the currently released
      version.
      
      * Ruby: bugfix for SEGV.
      
      * Ruby: removed old code for dup'ing defs.
      
      * Reverting deployment target to 7.0 (#2618)
      
      The Protobuf library doesn’t require the 7.1 deployment target so
      reverting it back to 7.0
      
      * Fix typo that breaks builds on big-endian (#2632)
      
      * Bump version number to 3.2.0
      7f3e2370
  33. 27 Jan, 2017 1 commit
  34. 10 Nov, 2016 1 commit
  35. 26 Oct, 2016 1 commit
  36. 10 Oct, 2016 1 commit
  37. 23 Sep, 2016 1 commit