protobuf 5.29.0rc3__py3-none-any.whl → 6.33.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of protobuf might be problematic. Click here for more details.

Files changed (45) hide show
  1. google/protobuf/__init__.py +1 -1
  2. google/protobuf/any.py +15 -1
  3. google/protobuf/any_pb2.py +5 -5
  4. google/protobuf/api_pb2.py +15 -11
  5. google/protobuf/compiler/plugin_pb2.py +5 -5
  6. google/protobuf/descriptor.py +413 -248
  7. google/protobuf/descriptor_database.py +22 -4
  8. google/protobuf/descriptor_pb2.py +320 -120
  9. google/protobuf/descriptor_pool.py +31 -13
  10. google/protobuf/duration_pb2.py +5 -5
  11. google/protobuf/empty_pb2.py +5 -5
  12. google/protobuf/field_mask_pb2.py +5 -5
  13. google/protobuf/internal/api_implementation.py +0 -6
  14. google/protobuf/internal/builder.py +4 -3
  15. google/protobuf/internal/containers.py +13 -0
  16. google/protobuf/internal/decoder.py +163 -133
  17. google/protobuf/internal/extension_dict.py +3 -3
  18. google/protobuf/internal/field_mask.py +6 -4
  19. google/protobuf/internal/python_edition_defaults.py +1 -1
  20. google/protobuf/internal/python_message.py +86 -70
  21. google/protobuf/internal/testing_refleaks.py +11 -2
  22. google/protobuf/internal/type_checkers.py +52 -5
  23. google/protobuf/internal/well_known_types.py +63 -46
  24. google/protobuf/json_format.py +113 -71
  25. google/protobuf/message.py +26 -0
  26. google/protobuf/message_factory.py +16 -63
  27. google/protobuf/proto.py +38 -1
  28. google/protobuf/proto_text.py +129 -0
  29. google/protobuf/reflection.py +0 -49
  30. google/protobuf/runtime_version.py +9 -29
  31. google/protobuf/source_context_pb2.py +5 -5
  32. google/protobuf/struct_pb2.py +5 -5
  33. google/protobuf/symbol_database.py +0 -18
  34. google/protobuf/text_format.py +49 -29
  35. google/protobuf/timestamp_pb2.py +5 -5
  36. google/protobuf/type_pb2.py +5 -5
  37. google/protobuf/unknown_fields.py +3 -4
  38. google/protobuf/wrappers_pb2.py +5 -5
  39. {protobuf-5.29.0rc3.dist-info → protobuf-6.33.3.dist-info}/METADATA +3 -3
  40. protobuf-6.33.3.dist-info/RECORD +58 -0
  41. google/protobuf/internal/_parameterized.py +0 -420
  42. google/protobuf/service.py +0 -213
  43. protobuf-5.29.0rc3.dist-info/RECORD +0 -59
  44. {protobuf-5.29.0rc3.dist-info → protobuf-6.33.3.dist-info}/LICENSE +0 -0
  45. {protobuf-5.29.0rc3.dist-info → protobuf-6.33.3.dist-info}/WHEEL +0 -0
@@ -52,14 +52,24 @@ class DescriptorDatabase(object):
52
52
  for name in _ExtractSymbols(message, package):
53
53
  self._AddSymbol(name, file_desc_proto)
54
54
  for enum in file_desc_proto.enum_type:
55
- self._AddSymbol(('.'.join((package, enum.name))), file_desc_proto)
55
+ self._AddSymbol(
56
+ ('.'.join((package, enum.name)) if package else enum.name),
57
+ file_desc_proto,
58
+ )
56
59
  for enum_value in enum.value:
57
60
  self._file_desc_protos_by_symbol[
58
- '.'.join((package, enum_value.name))] = file_desc_proto
61
+ '.'.join((package, enum_value.name)) if package else enum_value.name
62
+ ] = file_desc_proto
59
63
  for extension in file_desc_proto.extension:
60
- self._AddSymbol(('.'.join((package, extension.name))), file_desc_proto)
64
+ self._AddSymbol(
65
+ ('.'.join((package, extension.name)) if package else extension.name),
66
+ file_desc_proto,
67
+ )
61
68
  for service in file_desc_proto.service:
62
- self._AddSymbol(('.'.join((package, service.name))), file_desc_proto)
69
+ self._AddSymbol(
70
+ ('.'.join((package, service.name)) if package else service.name),
71
+ file_desc_proto,
72
+ )
63
73
 
64
74
  def FindFileByName(self, name):
65
75
  """Finds the file descriptor proto by file name.
@@ -102,6 +112,14 @@ class DescriptorDatabase(object):
102
112
  Raises:
103
113
  KeyError if no file contains the specified symbol.
104
114
  """
115
+ if symbol.count('.') == 1 and symbol[0] == '.':
116
+ symbol = symbol.lstrip('.')
117
+ warnings.warn(
118
+ 'Please remove the leading "." when '
119
+ 'FindFileContainingSymbol, this will turn to error '
120
+ 'in 2026 Jan.',
121
+ RuntimeWarning,
122
+ )
105
123
  try:
106
124
  return self._file_desc_protos_by_symbol[symbol]
107
125
  except KeyError: