Extension registration now happens in two phases, where we register all linked in messages first and any dynamic message afterwards.
This guarantees that we register all extensions that will be used by descriptor parsing before we parse any descriptors.
This is currently disabled by default.
PiperOrigin-RevId: 616840653
The latest github runner image of ubuntu-22 includes a kernel update that breaks the sanitizers we use in our docker images. Long-term, we'll likely need to upgrade the images to new sanitizers and clang.
PiperOrigin-RevId: 616319042
Three of these runtimes are based on upb, and the fourth is based on the Java runtime. Both of these already have editions support, so this was mostly just a matter of:
- Advertising support to allow editions codegen
- Stripping features from the runtime options
- Hooking up conformance tests
- Adding some lightweight editions tests
There are also a few minor orthogonal fixes included here:
- Ruby's upb hack for treating all enums as open enums needed tweaking
- The `enable_editions` flag is no longer needed in our internal proto rules
PiperOrigin-RevId: 616256211
These tests were put into the wrong scope, and never actually ran. Fixing them turned up a bug in JRuby FFI where this fix wasn't applied.
PiperOrigin-RevId: 616172197
This was unintentionally disabling a test in repeated_field_test that is broken in JRuby FFI. It appears to be a bug in Enumeration, rather than our code.
PiperOrigin-RevId: 616164907
MessageLite and is marked as arena constructible but not as destructor
skippable. The object was not being registered for destruction.
This currently only affects ImplicitWeakMessage.
PiperOrigin-RevId: 615099201
Note, recent releases on the BCR have a patch set applied, and it seems these patches are developed independently to "fix" each protobuf release, rather than make changes to protobuf repo.
The effect of this PR will be to create a *broken* publish to BCR for each protobuf release. At least this red PR on BCR will be our indication that the patches need to be manually replayed there.
In parallel, starting with #16013 I'll apply as many of those patches to the protobuf repo as possible. That will reduce the manual effort for each release.
Replaces https://github.com/protocolbuffers/protobuf/pull/14565 which originated from my fork so the tests wouldn't run.
Closes#16014
COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/16014 from protocolbuffers:bcr e17d9c8127
PiperOrigin-RevId: 615026796