dep-protobuf/python/google/protobuf
Samuel Benzaquen 4bdd07858d Fix subscript access for free threading.
Subscript is a read-only operation and it should not try to do mutable operations.

Fix AssureWritable to also work on repeated sub messages. It now keeps an index hint to avoid an O(n) lookup if possible.

Fix BuildSubMessageFromPointer to not create MUTABLE messages. It is only taking a non-mutable one.

Fix GetItem to not perform mutable operations. This fixes the race in Subscript.

PiperOrigin-RevId: 967832766
2026-08-21 15:54:48 -07:00
..
compiler Add __init__.py files to compiler and util subpackages (#4117) 2018-04-09 12:43:10 -07:00
internal Fix subscript access for free threading. 2026-08-21 15:54:48 -07:00
pyext Fix subscript access for free threading. 2026-08-21 15:54:48 -07:00
testdata Add CI runs for testing upb Python wheels 2023-09-21 11:33:23 -07:00
util Add __init__.py files to compiler and util subpackages (#4117) 2018-04-09 12:43:10 -07:00
__init__.py Updating version.json and repo version numbers to: 37.0-dev (#28425) 2026-07-10 06:22:59 -07:00
any.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
breaking_changes.h internal change 2026-05-28 12:21:38 -07:00
descriptor.py fix(python): reject mismatched CopyToProto targets (#28666) 2026-07-29 07:09:05 -07:00
descriptor_database.py Change Python DescriptorDatabase FindFileContainingSymbol() to accept leading "." to match DescriptorPool and other languages 2026-06-09 15:58:00 -07:00
descriptor_pool.py [Py/FreeThreading] Fixed remaining race conditions in Dealloc() 2026-07-22 12:43:18 -07:00
duration.py Nextgen Proto Pythonic API: Add duration.py 2024-08-08 17:06:20 -07:00
json_format.py json/python: remove pool arg from _GetJsonEnumValueOption 2026-06-01 17:54:28 -07:00
link_error_fast_cpp.cc internal change 2024-03-25 20:02:03 -07:00
link_error_pure_python.cc internal change 2024-03-25 20:02:03 -07:00
link_error_upb.cc internal change 2024-03-25 20:02:03 -07:00
message.py Add link to the page which explains that deterministic != canonical on our apis which let you set determinsitic serialization 2026-06-11 06:20:08 -07:00
message_factory.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
proto.py Serialize length-prefixed protos once (#27252) 2026-05-29 12:19:19 -07:00
proto_api.cc Fix potential Py_DECREF(NULL) crash in PythonMessageMutator destructor. 2026-07-24 16:57:59 -07:00
proto_api.h Add PyDescriptorPool_FromSharedPool(std::shared_ptr) API 2026-06-26 11:48:30 -07:00
proto_builder.py python: mark proto_builder sha1 as non-security use (#27473) 2026-06-09 08:53:29 -07:00
proto_json.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
proto_text.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
python_protobuf.h Shorten our license headers into an abbreviated form that references LICENSE instead of including it in full. 2023-09-08 18:51:51 -07:00
reflection.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
runtime_version.py Updating version.json and repo version numbers to: 37.0-dev (#28425) 2026-07-10 06:22:59 -07:00
service_reflection.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
symbol_database.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
text_encoding.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
text_format.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
timestamp.py Nextgen Proto Pythonic API: Add timestamp.py 2024-08-07 11:46:45 -07:00
unknown_fields.py Auto-format Py Proto python files. 2026-04-29 13:40:58 -07:00
use_fast_cpp_protos.cc Automated Code Change 2026-07-07 06:47:10 -07:00
use_pure_python.cc internal change 2025-10-23 15:13:55 -07:00
use_upb_protos.cc internal change 2025-10-23 15:13:55 -07:00