Joshua Haberman

Results 252 comments of Joshua Haberman

I think removing the backward compat logic is the way to go at this point. Four years with deprecation warnings seems sufficient.

We're making a breaking change release now. This is the perfect time to remove these deprecated files.

All of the internal implementation classes inherit from `MutableMapping`, for example: https://github.com/protocolbuffers/protobuf/blob/9e0e7d5f59ecd2501ae638eeb1b65ccf361f008a/python/google/protobuf/internal/containers.py#L366 The public API for testing `isinstance()` would be `isinstance(container, MutableMapping)`. Will that work for you?

We have unit tests that verify that our sequences are instances of `MutableSequence`: https://github.com/protocolbuffers/protobuf/blob/b9eb6bf759cf6edf449291215bd4ee2c572845d2/python/google/protobuf/internal/message_test.py#L706-L710 I tried your example and got similar results, however when I tried printing `isinstance(l.values, MutableSequence)` it...

It looks like we call `MutableSequence.register(RepeatedScalarContainer)` instead of deriving from `MutableSequence`: https://github.com/protocolbuffers/upb/blob/main/python/repeated.c#L807-L810 This is documented here: https://docs.python.org/3/library/collections.abc.html#module-collections.abc

Also please rebase, the testing infrastructure has changed a lot in the last few weeks. Sorry for the delay on this PR.

This PR makes several changes to the semantics of JSON serialization. We have to be careful, because we have to keep these semantics the same across languages. None of our...

> It appears that this behavior is already implemented in other languages You are right, I misremembered. If this is implementing the behavior already supported by the `upb_JsonEncode_EmitDefaults` flag in...

It looks like the CLA check failed, we will need you to be covered under the CLA before we can accept this change: https://cla.developers.google.com/

Sorry for the delay! The CLA check is fixed. Would you be able to rebase on the main branch? You've caught us in the middle of a migration to GItHub...