google-protobuf 4.28.2 → 4.31.0
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.
- checksums.yaml +4 -4
- data/ext/google/protobuf_c/convert.c +3 -10
- data/ext/google/protobuf_c/defs.c +193 -3
- data/ext/google/protobuf_c/extconf.rb +18 -2
- data/ext/google/protobuf_c/glue.c +63 -0
- data/ext/google/protobuf_c/map.c +2 -2
- data/ext/google/protobuf_c/message.c +16 -8
- data/ext/google/protobuf_c/protobuf.c +2 -3
- data/ext/google/protobuf_c/protobuf.h +0 -6
- data/ext/google/protobuf_c/ruby-upb.c +7821 -6141
- data/ext/google/protobuf_c/ruby-upb.h +3812 -2627
- data/ext/google/protobuf_c/third_party/utf8_range/utf8_range.c +15 -275
- data/ext/google/protobuf_c/third_party/utf8_range/utf8_range_neon.inc +117 -0
- data/ext/google/protobuf_c/third_party/utf8_range/utf8_range_sse.inc +272 -0
- data/lib/google/protobuf/any_pb.rb +1 -1
- data/lib/google/protobuf/api_pb.rb +1 -1
- data/lib/google/protobuf/descriptor_pb.rb +6 -2
- data/lib/google/protobuf/duration_pb.rb +1 -1
- data/lib/google/protobuf/empty_pb.rb +1 -1
- data/lib/google/protobuf/ffi/descriptor.rb +10 -0
- data/lib/google/protobuf/ffi/descriptor_pool.rb +3 -1
- data/lib/google/protobuf/ffi/enum_descriptor.rb +10 -0
- data/lib/google/protobuf/ffi/ffi.rb +4 -0
- data/lib/google/protobuf/ffi/field_descriptor.rb +16 -0
- data/lib/google/protobuf/ffi/file_descriptor.rb +36 -0
- data/lib/google/protobuf/ffi/internal/convert.rb +1 -5
- data/lib/google/protobuf/ffi/internal/pointer_helper.rb +2 -1
- data/lib/google/protobuf/ffi/map.rb +2 -2
- data/lib/google/protobuf/ffi/message.rb +5 -3
- data/lib/google/protobuf/ffi/method_descriptor.rb +11 -1
- data/lib/google/protobuf/ffi/oneof_descriptor.rb +10 -0
- data/lib/google/protobuf/ffi/service_descriptor.rb +11 -1
- data/lib/google/protobuf/field_mask_pb.rb +1 -1
- data/lib/google/protobuf/message_exts.rb +4 -0
- data/lib/google/protobuf/plugin_pb.rb +1 -1
- data/lib/google/protobuf/source_context_pb.rb +1 -1
- data/lib/google/protobuf/struct_pb.rb +1 -1
- data/lib/google/protobuf/timestamp_pb.rb +1 -1
- data/lib/google/protobuf/type_pb.rb +1 -1
- data/lib/google/protobuf/wrappers_pb.rb +1 -1
- data/lib/google/protobuf_ffi.rb +3 -2
- metadata +23 -21
@@ -232,8 +232,8 @@ module Google
|
|
232
232
|
def hash
|
233
233
|
return_value = 0
|
234
234
|
each_msg_val do |key_message_value, value_message_value|
|
235
|
-
return_value
|
236
|
-
return_value
|
235
|
+
return_value += Google::Protobuf::FFI.message_value_hash(key_message_value, key_type, nil, 0)
|
236
|
+
return_value += Google::Protobuf::FFI.message_value_hash(value_message_value, value_type, descriptor, 0)
|
237
237
|
end
|
238
238
|
return_value
|
239
239
|
end
|
@@ -17,12 +17,12 @@ module Google
|
|
17
17
|
attach_function :get_message_has, :upb_Message_HasFieldByDef, [:Message, FieldDescriptor], :bool
|
18
18
|
attach_function :set_message_field, :upb_Message_SetFieldByDef, [:Message, FieldDescriptor, MessageValue.by_value, Internal::Arena], :bool
|
19
19
|
attach_function :encode_message, :upb_Encode, [:Message, MiniTable.by_ref, :size_t, Internal::Arena, :pointer, :pointer], EncodeStatus
|
20
|
-
attach_function :
|
20
|
+
attach_function :json_decode_message_detecting_nonconformance, :upb_JsonDecodeDetectingNonconformance, [:binary_string, :size_t, :Message, Descriptor, :DefPool, :int, Internal::Arena, Status.by_ref], :int
|
21
21
|
attach_function :json_encode_message, :upb_JsonEncode, [:Message, Descriptor, :DefPool, :int, :binary_string, :size_t, Status.by_ref], :size_t
|
22
22
|
attach_function :decode_message, :upb_Decode, [:binary_string, :size_t, :Message, MiniTable.by_ref, :ExtensionRegistry, :int, Internal::Arena], DecodeStatus
|
23
23
|
attach_function :get_mutable_message, :upb_Message_Mutable, [:Message, FieldDescriptor, Internal::Arena], MutableMessageValue.by_value
|
24
24
|
attach_function :get_message_which_oneof, :upb_Message_WhichOneofByDef, [:Message, OneofDescriptor], FieldDescriptor
|
25
|
-
attach_function :message_discard_unknown, :upb_Message_DiscardUnknown, [:Message, Descriptor, :int], :bool
|
25
|
+
attach_function :message_discard_unknown, :upb_Message_DiscardUnknown, [:Message, Descriptor, :DefPool, :int], :bool
|
26
26
|
attach_function :message_next, :upb_Message_Next, [:Message, Descriptor, :DefPool, :FieldDefPointer, MessageValue.by_ref, :pointer], :bool
|
27
27
|
attach_function :message_freeze, :upb_Message_Freeze, [:Message, MiniTable.by_ref], :void
|
28
28
|
attach_function :message_frozen?, :upb_Message_IsFrozen, [:Message], :bool
|
@@ -270,7 +270,9 @@ module Google
|
|
270
270
|
message = new
|
271
271
|
pool_def = message.class.descriptor.instance_variable_get(:@descriptor_pool).descriptor_pool
|
272
272
|
status = Google::Protobuf::FFI::Status.new
|
273
|
-
|
273
|
+
result = Google::Protobuf::FFI.json_decode_message_detecting_nonconformance(data, data.bytesize, message.instance_variable_get(:@msg), message.class.descriptor, pool_def, decoding_options, message.instance_variable_get(:@arena), status)
|
274
|
+
case result
|
275
|
+
when Google::Protobuf::FFI::Upb_JsonDecodeResult_Error
|
274
276
|
raise ParseError.new "Error occurred during parsing: #{Google::Protobuf::FFI.error_message(status)}"
|
275
277
|
end
|
276
278
|
message
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
module Google
|
9
9
|
module Protobuf
|
10
|
-
class MethodDescriptor
|
10
|
+
class MethodDescriptor
|
11
11
|
attr :method_def, :descriptor_pool
|
12
12
|
|
13
13
|
include Google::Protobuf::Internal::Convert
|
@@ -81,6 +81,15 @@ module Google
|
|
81
81
|
@server_streaming ||= Google::Protobuf::FFI.method_server_streaming(self)
|
82
82
|
end
|
83
83
|
|
84
|
+
def to_proto
|
85
|
+
@to_proto ||= begin
|
86
|
+
size_ptr = ::FFI::MemoryPointer.new(:size_t, 1)
|
87
|
+
temporary_arena = Google::Protobuf::FFI.create_arena
|
88
|
+
buffer = Google::Protobuf::FFI.method_to_proto(self, size_ptr, temporary_arena)
|
89
|
+
Google::Protobuf::MethodDescriptorProto.decode(buffer.read_string_length(size_ptr.read(:size_t)).force_encoding("ASCII-8BIT").freeze)
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
84
93
|
private
|
85
94
|
|
86
95
|
def initialize(method_def, descriptor_pool)
|
@@ -108,6 +117,7 @@ module Google
|
|
108
117
|
attach_function :method_output_type, :upb_MethodDef_OutputType, [MethodDescriptor], Descriptor
|
109
118
|
attach_function :method_client_streaming, :upb_MethodDef_ClientStreaming, [MethodDescriptor], :bool
|
110
119
|
attach_function :method_server_streaming, :upb_MethodDef_ServerStreaming, [MethodDescriptor], :bool
|
120
|
+
attach_function :method_to_proto, :MethodDescriptor_serialized_to_proto, [MethodDescriptor, :pointer, Internal::Arena], :pointer
|
111
121
|
end
|
112
122
|
end
|
113
123
|
end
|
@@ -64,6 +64,15 @@ module Google
|
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
+
def to_proto
|
68
|
+
@to_proto ||= begin
|
69
|
+
size_ptr = ::FFI::MemoryPointer.new(:size_t, 1)
|
70
|
+
temporary_arena = Google::Protobuf::FFI.create_arena
|
71
|
+
buffer = Google::Protobuf::FFI.oneof_to_proto(self, size_ptr, temporary_arena)
|
72
|
+
Google::Protobuf::OneofDescriptorProto.decode(buffer.read_string_length(size_ptr.read(:size_t)).force_encoding("ASCII-8BIT").freeze)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
67
76
|
private
|
68
77
|
|
69
78
|
def initialize(oneof_def, descriptor_pool)
|
@@ -89,6 +98,7 @@ module Google
|
|
89
98
|
attach_function :get_oneof_field_by_index, :upb_OneofDef_Field, [OneofDescriptor, :int], FieldDescriptor
|
90
99
|
attach_function :get_oneof_containing_type,:upb_OneofDef_ContainingType, [:pointer], Descriptor
|
91
100
|
attach_function :oneof_options, :OneOfDescriptor_serialized_options, [OneofDescriptor, :pointer, Internal::Arena], :pointer
|
101
|
+
attach_function :oneof_to_proto, :OneOfDescriptor_serialized_to_proto, [OneofDescriptor, :pointer, Internal::Arena], :pointer
|
92
102
|
|
93
103
|
# FieldDescriptor
|
94
104
|
attach_function :real_containing_oneof, :upb_FieldDef_RealContainingOneof, [FieldDescriptor], OneofDescriptor
|
@@ -77,10 +77,19 @@ module Google
|
|
77
77
|
end
|
78
78
|
end
|
79
79
|
|
80
|
+
def to_proto
|
81
|
+
@to_proto ||= begin
|
82
|
+
size_ptr = ::FFI::MemoryPointer.new(:size_t, 1)
|
83
|
+
temporary_arena = Google::Protobuf::FFI.create_arena
|
84
|
+
buffer = Google::Protobuf::FFI.service_to_proto(self, size_ptr, temporary_arena)
|
85
|
+
Google::Protobuf::ServiceDescriptorProto.decode(buffer.read_string_length(size_ptr.read(:size_t)).force_encoding("ASCII-8BIT").freeze)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
80
89
|
private
|
81
90
|
|
82
91
|
def initialize(service_def, descriptor_pool)
|
83
|
-
@service_def = service_def
|
92
|
+
@service_def = service_def
|
84
93
|
@descriptor_pool = descriptor_pool
|
85
94
|
end
|
86
95
|
|
@@ -102,6 +111,7 @@ module Google
|
|
102
111
|
attach_function :method_count, :upb_ServiceDef_MethodCount, [ServiceDescriptor], :int
|
103
112
|
attach_function :get_method_by_index, :upb_ServiceDef_Method, [ServiceDescriptor, :int], MethodDescriptor
|
104
113
|
attach_function :service_options, :ServiceDescriptor_serialized_options, [ServiceDescriptor, :pointer, Internal::Arena], :pointer
|
114
|
+
attach_function :service_to_proto, :ServiceDescriptor_serialized_to_proto, [ServiceDescriptor, :pointer, Internal::Arena], :pointer
|
105
115
|
end
|
106
116
|
end
|
107
117
|
end
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
|
8
8
|
descriptor_data = "\n google/protobuf/field_mask.proto\x12\x0fgoogle.protobuf\"\x1a\n\tFieldMask\x12\r\n\x05paths\x18\x01 \x03(\tB\x85\x01\n\x13\x63om.google.protobufB\x0e\x46ieldMaskProtoP\x01Z2google.golang.org/protobuf/types/known/fieldmaskpb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
9
9
|
|
10
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
12
12
|
|
13
13
|
module Google
|
@@ -9,7 +9,7 @@ require 'google/protobuf/descriptor_pb'
|
|
9
9
|
|
10
10
|
descriptor_data = "\n%google/protobuf/compiler/plugin.proto\x12\x18google.protobuf.compiler\x1a google/protobuf/descriptor.proto\"F\n\x07Version\x12\r\n\x05major\x18\x01 \x01(\x05\x12\r\n\x05minor\x18\x02 \x01(\x05\x12\r\n\x05patch\x18\x03 \x01(\x05\x12\x0e\n\x06suffix\x18\x04 \x01(\t\"\x81\x02\n\x14\x43odeGeneratorRequest\x12\x18\n\x10\x66ile_to_generate\x18\x01 \x03(\t\x12\x11\n\tparameter\x18\x02 \x01(\t\x12\x38\n\nproto_file\x18\x0f \x03(\x0b\x32$.google.protobuf.FileDescriptorProto\x12\x45\n\x17source_file_descriptors\x18\x11 \x03(\x0b\x32$.google.protobuf.FileDescriptorProto\x12;\n\x10\x63ompiler_version\x18\x03 \x01(\x0b\x32!.google.protobuf.compiler.Version\"\x92\x03\n\x15\x43odeGeneratorResponse\x12\r\n\x05\x65rror\x18\x01 \x01(\t\x12\x1a\n\x12supported_features\x18\x02 \x01(\x04\x12\x17\n\x0fminimum_edition\x18\x03 \x01(\x05\x12\x17\n\x0fmaximum_edition\x18\x04 \x01(\x05\x12\x42\n\x04\x66ile\x18\x0f \x03(\x0b\x32\x34.google.protobuf.compiler.CodeGeneratorResponse.File\x1a\x7f\n\x04\x46ile\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x17\n\x0finsertion_point\x18\x02 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x0f \x01(\t\x12?\n\x13generated_code_info\x18\x10 \x01(\x0b\x32\".google.protobuf.GeneratedCodeInfo\"W\n\x07\x46\x65\x61ture\x12\x10\n\x0c\x46\x45\x41TURE_NONE\x10\x00\x12\x1b\n\x17\x46\x45\x41TURE_PROTO3_OPTIONAL\x10\x01\x12\x1d\n\x19\x46\x45\x41TURE_SUPPORTS_EDITIONS\x10\x02\x42r\n\x1c\x63om.google.protobuf.compilerB\x0cPluginProtosZ)google.golang.org/protobuf/types/pluginpb\xaa\x02\x18Google.Protobuf.Compiler"
|
11
11
|
|
12
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
12
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
13
13
|
pool.add_serialized_file(descriptor_data)
|
14
14
|
|
15
15
|
module Google
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
|
8
8
|
descriptor_data = "\n$google/protobuf/source_context.proto\x12\x0fgoogle.protobuf\"\"\n\rSourceContext\x12\x11\n\tfile_name\x18\x01 \x01(\tB\x8a\x01\n\x13\x63om.google.protobufB\x12SourceContextProtoP\x01Z6google.golang.org/protobuf/types/known/sourcecontextpb\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
9
9
|
|
10
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
12
12
|
|
13
13
|
module Google
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
|
8
8
|
descriptor_data = "\n\x1cgoogle/protobuf/struct.proto\x12\x0fgoogle.protobuf\"\x84\x01\n\x06Struct\x12\x33\n\x06\x66ields\x18\x01 \x03(\x0b\x32#.google.protobuf.Struct.FieldsEntry\x1a\x45\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\"\xea\x01\n\x05Value\x12\x30\n\nnull_value\x18\x01 \x01(\x0e\x32\x1a.google.protobuf.NullValueH\x00\x12\x16\n\x0cnumber_value\x18\x02 \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x03 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x04 \x01(\x08H\x00\x12/\n\x0cstruct_value\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructH\x00\x12\x30\n\nlist_value\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.ListValueH\x00\x42\x06\n\x04kind\"3\n\tListValue\x12&\n\x06values\x18\x01 \x03(\x0b\x32\x16.google.protobuf.Value*\x1b\n\tNullValue\x12\x0e\n\nNULL_VALUE\x10\x00\x42\x7f\n\x13\x63om.google.protobufB\x0bStructProtoP\x01Z/google.golang.org/protobuf/types/known/structpb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
9
9
|
|
10
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
12
12
|
|
13
13
|
module Google
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
|
8
8
|
descriptor_data = "\n\x1fgoogle/protobuf/timestamp.proto\x12\x0fgoogle.protobuf\"+\n\tTimestamp\x12\x0f\n\x07seconds\x18\x01 \x01(\x03\x12\r\n\x05nanos\x18\x02 \x01(\x05\x42\x85\x01\n\x13\x63om.google.protobufB\x0eTimestampProtoP\x01Z2google.golang.org/protobuf/types/known/timestamppb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
9
9
|
|
10
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
12
12
|
|
13
13
|
module Google
|
@@ -10,7 +10,7 @@ require 'google/protobuf/source_context_pb'
|
|
10
10
|
|
11
11
|
descriptor_data = "\n\x1agoogle/protobuf/type.proto\x12\x0fgoogle.protobuf\x1a\x19google/protobuf/any.proto\x1a$google/protobuf/source_context.proto\"\xe8\x01\n\x04Type\x12\x0c\n\x04name\x18\x01 \x01(\t\x12&\n\x06\x66ields\x18\x02 \x03(\x0b\x32\x16.google.protobuf.Field\x12\x0e\n\x06oneofs\x18\x03 \x03(\t\x12(\n\x07options\x18\x04 \x03(\x0b\x32\x17.google.protobuf.Option\x12\x36\n\x0esource_context\x18\x05 \x01(\x0b\x32\x1e.google.protobuf.SourceContext\x12\'\n\x06syntax\x18\x06 \x01(\x0e\x32\x17.google.protobuf.Syntax\x12\x0f\n\x07\x65\x64ition\x18\x07 \x01(\t\"\xd5\x05\n\x05\x46ield\x12)\n\x04kind\x18\x01 \x01(\x0e\x32\x1b.google.protobuf.Field.Kind\x12\x37\n\x0b\x63\x61rdinality\x18\x02 \x01(\x0e\x32\".google.protobuf.Field.Cardinality\x12\x0e\n\x06number\x18\x03 \x01(\x05\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x10\n\x08type_url\x18\x06 \x01(\t\x12\x13\n\x0boneof_index\x18\x07 \x01(\x05\x12\x0e\n\x06packed\x18\x08 \x01(\x08\x12(\n\x07options\x18\t \x03(\x0b\x32\x17.google.protobuf.Option\x12\x11\n\tjson_name\x18\n \x01(\t\x12\x15\n\rdefault_value\x18\x0b \x01(\t\"\xc8\x02\n\x04Kind\x12\x10\n\x0cTYPE_UNKNOWN\x10\x00\x12\x0f\n\x0bTYPE_DOUBLE\x10\x01\x12\x0e\n\nTYPE_FLOAT\x10\x02\x12\x0e\n\nTYPE_INT64\x10\x03\x12\x0f\n\x0bTYPE_UINT64\x10\x04\x12\x0e\n\nTYPE_INT32\x10\x05\x12\x10\n\x0cTYPE_FIXED64\x10\x06\x12\x10\n\x0cTYPE_FIXED32\x10\x07\x12\r\n\tTYPE_BOOL\x10\x08\x12\x0f\n\x0bTYPE_STRING\x10\t\x12\x0e\n\nTYPE_GROUP\x10\n\x12\x10\n\x0cTYPE_MESSAGE\x10\x0b\x12\x0e\n\nTYPE_BYTES\x10\x0c\x12\x0f\n\x0bTYPE_UINT32\x10\r\x12\r\n\tTYPE_ENUM\x10\x0e\x12\x11\n\rTYPE_SFIXED32\x10\x0f\x12\x11\n\rTYPE_SFIXED64\x10\x10\x12\x0f\n\x0bTYPE_SINT32\x10\x11\x12\x0f\n\x0bTYPE_SINT64\x10\x12\"t\n\x0b\x43\x61rdinality\x12\x17\n\x13\x43\x41RDINALITY_UNKNOWN\x10\x00\x12\x18\n\x14\x43\x41RDINALITY_OPTIONAL\x10\x01\x12\x18\n\x14\x43\x41RDINALITY_REQUIRED\x10\x02\x12\x18\n\x14\x43\x41RDINALITY_REPEATED\x10\x03\"\xdf\x01\n\x04\x45num\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\tenumvalue\x18\x02 \x03(\x0b\x32\x1a.google.protobuf.EnumValue\x12(\n\x07options\x18\x03 \x03(\x0b\x32\x17.google.protobuf.Option\x12\x36\n\x0esource_context\x18\x04 \x01(\x0b\x32\x1e.google.protobuf.SourceContext\x12\'\n\x06syntax\x18\x05 \x01(\x0e\x32\x17.google.protobuf.Syntax\x12\x0f\n\x07\x65\x64ition\x18\x06 \x01(\t\"S\n\tEnumValue\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06number\x18\x02 \x01(\x05\x12(\n\x07options\x18\x03 \x03(\x0b\x32\x17.google.protobuf.Option\";\n\x06Option\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.google.protobuf.Any*C\n\x06Syntax\x12\x11\n\rSYNTAX_PROTO2\x10\x00\x12\x11\n\rSYNTAX_PROTO3\x10\x01\x12\x13\n\x0fSYNTAX_EDITIONS\x10\x02\x42{\n\x13\x63om.google.protobufB\tTypeProtoP\x01Z-google.golang.org/protobuf/types/known/typepb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
12
12
|
|
13
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
13
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
14
14
|
pool.add_serialized_file(descriptor_data)
|
15
15
|
|
16
16
|
module Google
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
|
8
8
|
descriptor_data = "\n\x1egoogle/protobuf/wrappers.proto\x12\x0fgoogle.protobuf\"\x1c\n\x0b\x44oubleValue\x12\r\n\x05value\x18\x01 \x01(\x01\"\x1b\n\nFloatValue\x12\r\n\x05value\x18\x01 \x01(\x02\"\x1b\n\nInt64Value\x12\r\n\x05value\x18\x01 \x01(\x03\"\x1c\n\x0bUInt64Value\x12\r\n\x05value\x18\x01 \x01(\x04\"\x1b\n\nInt32Value\x12\r\n\x05value\x18\x01 \x01(\x05\"\x1c\n\x0bUInt32Value\x12\r\n\x05value\x18\x01 \x01(\r\"\x1a\n\tBoolValue\x12\r\n\x05value\x18\x01 \x01(\x08\"\x1c\n\x0bStringValue\x12\r\n\x05value\x18\x01 \x01(\t\"\x1b\n\nBytesValue\x12\r\n\x05value\x18\x01 \x01(\x0c\x42\x83\x01\n\x13\x63om.google.protobufB\rWrappersProtoP\x01Z1google.golang.org/protobuf/types/known/wrapperspb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesb\x06proto3"
|
9
9
|
|
10
|
-
pool = Google::Protobuf::DescriptorPool.generated_pool
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
12
12
|
|
13
13
|
module Google
|
data/lib/google/protobuf_ffi.rb
CHANGED
@@ -17,8 +17,8 @@ require 'google/protobuf/ffi/field_descriptor'
|
|
17
17
|
require 'google/protobuf/ffi/oneof_descriptor'
|
18
18
|
require 'google/protobuf/ffi/method_descriptor'
|
19
19
|
require 'google/protobuf/ffi/service_descriptor'
|
20
|
-
require 'google/protobuf/ffi/descriptor_pool'
|
21
20
|
require 'google/protobuf/ffi/file_descriptor'
|
21
|
+
require 'google/protobuf/ffi/descriptor_pool'
|
22
22
|
require 'google/protobuf/ffi/map'
|
23
23
|
require 'google/protobuf/ffi/object_cache'
|
24
24
|
require 'google/protobuf/ffi/repeated_field'
|
@@ -42,7 +42,8 @@ module Google
|
|
42
42
|
def self.discard_unknown(message)
|
43
43
|
raise FrozenError if message.frozen?
|
44
44
|
raise ArgumentError.new "Expected message, got #{message.class} instead." if message.instance_variable_get(:@msg).nil?
|
45
|
-
|
45
|
+
pool_def = message.class.descriptor.instance_variable_get(:@descriptor_pool).descriptor_pool
|
46
|
+
unless Google::Protobuf::FFI.message_discard_unknown(message.instance_variable_get(:@msg), message.class.descriptor, pool_def, 128)
|
46
47
|
raise RuntimeError.new "Messages nested too deeply."
|
47
48
|
end
|
48
49
|
nil
|
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-protobuf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.31.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Protobuf Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-05-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: rake-compiler-dock
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - '='
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 1.2.1
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - '='
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 1.2.1
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: bigdecimal
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,14 +72,28 @@ dependencies:
|
|
86
72
|
requirements:
|
87
73
|
- - "~>"
|
88
74
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1.
|
75
|
+
version: '1.2'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1.2'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rake-compiler-dock
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '1.9'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 1.
|
96
|
+
version: '1.9'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: test-unit
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -146,6 +146,8 @@ files:
|
|
146
146
|
- ext/google/protobuf_c/third_party/utf8_range/LICENSE
|
147
147
|
- ext/google/protobuf_c/third_party/utf8_range/utf8_range.c
|
148
148
|
- ext/google/protobuf_c/third_party/utf8_range/utf8_range.h
|
149
|
+
- ext/google/protobuf_c/third_party/utf8_range/utf8_range_neon.inc
|
150
|
+
- ext/google/protobuf_c/third_party/utf8_range/utf8_range_sse.inc
|
149
151
|
- ext/google/protobuf_c/wrap_memcpy.c
|
150
152
|
- lib/google/protobuf.rb
|
151
153
|
- lib/google/protobuf/any_pb.rb
|
@@ -188,7 +190,7 @@ homepage: https://developers.google.com/protocol-buffers
|
|
188
190
|
licenses:
|
189
191
|
- BSD-3-Clause
|
190
192
|
metadata:
|
191
|
-
source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v4.
|
193
|
+
source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v4.31.0/ruby
|
192
194
|
post_install_message:
|
193
195
|
rdoc_options: []
|
194
196
|
require_paths:
|
@@ -197,14 +199,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
197
199
|
requirements:
|
198
200
|
- - ">="
|
199
201
|
- !ruby/object:Gem::Version
|
200
|
-
version: '3.
|
202
|
+
version: '3.1'
|
201
203
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
202
204
|
requirements:
|
203
205
|
- - ">="
|
204
206
|
- !ruby/object:Gem::Version
|
205
207
|
version: '0'
|
206
208
|
requirements: []
|
207
|
-
rubygems_version: 3.
|
209
|
+
rubygems_version: 3.5.16
|
208
210
|
signing_key:
|
209
211
|
specification_version: 4
|
210
212
|
summary: Protocol Buffers
|