* Make php message class final
Because proto messages are just data object, they should not be mocked.
Explicitly make them final to avoid accidental usage.
* Update generated descriptors
* php: Fixed php notices for unknown enum indices
* php: Fixed formatting of Duration
This fixes:
* Missing nanoseconds. The nanoseconds where divided as a float and
implicitly converted to a string before being passed to bcadd.
This can result in a float formatted in scientific/exponential notation,
which bcmath doesn't understand.
* Durations are supposed to be formatted without trailing zeroes.
value_field_typeclass should be a enum module, not EnumDescriptor
object.
Also expanding tests for enum valued maps.
Fixes#4580
Signed-off-by: Sorah Fukumori <her@sorah.jp>
Make the JSON util string output functions match the Message::SerializeToString() behavior. This is helpful when packing the output into string fields of reused protobuf messages.
This avoids hitting the following warning when including GPBDescriptor.h in ARC
projects with stricter warning settings:
error: 'assign' property of object type may become a dangling reference; consider using 'unsafe_unretained' [-Werror,-Wobjc-property-assign-on-object-type
We first hit this in XCode 11, it's unclear whether it simply got stricter about
enforcing this warning or whether the flags enabled with -Wall or -Weverything
have been expanded.
In some platforms ${CMAKE_INSTALL_LIBDIR} expands to `lib64`. The libraries
are correctly installed in that directory, but the RPATH is set to point to
`$ORIGIN/../lib`, where it should be `$ORIGIN/../lib64`.
I'm getting `src/google/protobuf/map_field.cc(284): error C2899: typename cannot be used outside a template declaration`
removing `typename` fixes the issue
This project is used by the [Envoy proxy](https://www.envoyproxy.io/) and several others.
The existing code is using the extension value [919191](54b08a686f/validate/validate.proto (L29)) but since maintaining binary compatibility is not important, it shouldn't be a problem to change once this allocation is approved.