google-protobuf 3.18.0 → 3.19.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


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

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d2f2dcb01a739e3c119f6e7e7a5a5c941fd5ee836b10b910c5da89ebcdf12fc3
4
- data.tar.gz: 585efb56cdd7925d0e81ee2fb34c746c943fd4d4744a2213b1cefc5b98ee8f25
3
+ metadata.gz: 50ca7252b0a388069de54b5c0a5fdc52c9322db5ed2bc50a8b7bf566d87e4086
4
+ data.tar.gz: a5648c645a3028a3344af64ea44e7c27ef831e4e4cffb346cd367ed05743dbc8
5
5
  SHA512:
6
- metadata.gz: a076e9f325b025a642aecf4cfb964e78747e9e69ba55122f012bf82ee79146ea5ef9e299df52cda670c074ff46c6cb46d962cced6911ebd27877cd7f5c8db54e
7
- data.tar.gz: e30941aee70746583a3a0f48dd8303113d799e3d6d95653224800f398bd1188e1fa3dd20113e8d1fff6f4ee340cc44ac30c2714210981342d87bfb99b0a90126
6
+ metadata.gz: a638b95e37e223648f6266a1b8759a1648c11a8d0508996627ddcff704b470885b28d8a5db0d506b67fd3493312c61d94237aa3fec16609ba3a7967cd91062bd
7
+ data.tar.gz: e49def45fba20fd7b686a08dc059be02b95c6f7c3fef23f55eacd8ac0efc8e039c1f21647d14d5c288732b7452ebabdc6e14b5427aa2a16211760b1e73e1ace2
@@ -680,7 +680,10 @@ void Map_register(VALUE module) {
680
680
  rb_define_method(klass, "delete", Map_delete, 1);
681
681
  rb_define_method(klass, "clear", Map_clear, 0);
682
682
  rb_define_method(klass, "length", Map_length, 0);
683
+ rb_define_method(klass, "size", Map_length, 0);
683
684
  rb_define_method(klass, "dup", Map_dup, 0);
685
+ // Also define #clone so that we don't inherit Object#clone.
686
+ rb_define_method(klass, "clone", Map_dup, 0);
684
687
  rb_define_method(klass, "==", Map_eq, 1);
685
688
  rb_define_method(klass, "freeze", Map_freeze, 0);
686
689
  rb_define_method(klass, "hash", Map_hash, 0);
@@ -1012,7 +1012,6 @@ static VALUE Message_decode_json(int argc, VALUE* argv, VALUE klass) {
1012
1012
  */
1013
1013
  static VALUE Message_encode(VALUE klass, VALUE msg_rb) {
1014
1014
  Message* msg = ruby_to_Message(msg_rb);
1015
- upb_arena *arena = upb_arena_new();
1016
1015
  const char *data;
1017
1016
  size_t size;
1018
1017
 
@@ -1020,6 +1019,8 @@ static VALUE Message_encode(VALUE klass, VALUE msg_rb) {
1020
1019
  rb_raise(rb_eArgError, "Message of wrong type.");
1021
1020
  }
1022
1021
 
1022
+ upb_arena *arena = upb_arena_new();
1023
+
1023
1024
  data = upb_encode(msg->msg, upb_msgdef_layout(msg->msgdef), arena,
1024
1025
  &size);
1025
1026
 
@@ -1,9 +1,10 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/protobuf/api.proto
3
3
 
4
+ require 'google/protobuf'
5
+
4
6
  require 'google/protobuf/source_context_pb'
5
7
  require 'google/protobuf/type_pb'
6
- require 'google/protobuf'
7
8
 
8
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
9
10
  add_file("google/protobuf/api.proto", :syntax => :proto3) do
@@ -1,6 +1,8 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/protobuf/descriptor.proto
3
3
 
4
+ require 'google/protobuf'
5
+
4
6
  descriptor_data = File.binread(__FILE__).split("\n__END__\n", 2)[1]
5
7
  Google::Protobuf::DescriptorPool.generated_pool.add_serialized_file(descriptor_data)
6
8
 
@@ -1,9 +1,10 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/protobuf/type.proto
3
3
 
4
+ require 'google/protobuf'
5
+
4
6
  require 'google/protobuf/any_pb'
5
7
  require 'google/protobuf/source_context_pb'
6
- require 'google/protobuf'
7
8
 
8
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
9
10
  add_file("google/protobuf/type.proto", :syntax => :proto3) do
@@ -85,6 +85,11 @@ module Google
85
85
  def from_time(time)
86
86
  self.seconds = time.to_i
87
87
  self.nanos = time.nsec
88
+ self
89
+ end
90
+
91
+ def self.from_time(time)
92
+ new.from_time(time)
88
93
  end
89
94
 
90
95
  def to_i
@@ -51,9 +51,9 @@ else
51
51
  require 'google/protobuf_c'
52
52
  end
53
53
 
54
- require 'google/protobuf/descriptor_dsl'
55
54
  end
56
55
 
56
+ require 'google/protobuf/descriptor_dsl'
57
57
  require 'google/protobuf/repeated_field'
58
58
 
59
59
  module Google
data/tests/basic.rb CHANGED
@@ -66,7 +66,8 @@ module BasicTest
66
66
  def test_issue_8559_crash
67
67
  msg = TestMessage.new
68
68
  msg.repeated_int32 = ::Google::Protobuf::RepeatedField.new(:int32, [1, 2, 3])
69
- GC.start(full_mark: true, immediate_sweep: true)
69
+ # TODO: Remove the platform check once https://github.com/jruby/jruby/issues/6818 is released in JRuby 9.3.0.0
70
+ GC.start(full_mark: true, immediate_sweep: true) unless RUBY_PLATFORM == "java"
70
71
  TestMessage.encode(msg)
71
72
  end
72
73
 
@@ -168,6 +169,17 @@ module BasicTest
168
169
  assert_equal nil, m.singular_msg
169
170
  end
170
171
 
172
+ def test_import_proto2
173
+ m = TestMessage.new
174
+ assert !m.has_optional_proto2_submessage?
175
+ m.optional_proto2_submessage = ::FooBar::Proto2::TestImportedMessage.new
176
+ assert m.has_optional_proto2_submessage?
177
+ assert TestMessage.descriptor.lookup('optional_proto2_submessage').has?(m)
178
+
179
+ m.clear_optional_proto2_submessage
180
+ assert !m.has_optional_proto2_submessage?
181
+ end
182
+
171
183
  def test_clear_repeated_fields
172
184
  m = TestMessage.new
173
185
 
@@ -487,6 +499,7 @@ module BasicTest
487
499
  :optional_int64=>0,
488
500
  :optional_msg=>nil,
489
501
  :optional_msg2=>nil,
502
+ :optional_proto2_submessage=>nil,
490
503
  :optional_string=>"foo",
491
504
  :optional_uint32=>0,
492
505
  :optional_uint64=>0,
@@ -607,5 +620,21 @@ module BasicTest
607
620
  assert_raise(FrozenErrorType) { m.map_string_int32.delete('a') }
608
621
  assert_raise(FrozenErrorType) { m.map_string_int32.clear }
609
622
  end
623
+
624
+ def test_map_length
625
+ m = proto_module::MapMessage.new
626
+ assert_equal 0, m.map_string_int32.length
627
+ assert_equal 0, m.map_string_msg.length
628
+ assert_equal 0, m.map_string_int32.size
629
+ assert_equal 0, m.map_string_msg.size
630
+
631
+ m.map_string_int32['a'] = 1
632
+ m.map_string_int32['b'] = 2
633
+ m.map_string_msg['a'] = proto_module::TestMessage2.new
634
+ assert_equal 2, m.map_string_int32.length
635
+ assert_equal 1, m.map_string_msg.length
636
+ assert_equal 2, m.map_string_int32.size
637
+ assert_equal 1, m.map_string_msg.size
638
+ end
610
639
  end
611
640
  end
data/tests/stress.rb CHANGED
@@ -30,7 +30,7 @@ module StressTest
30
30
  100_000.times do
31
31
  mnew = TestMessage.decode(data)
32
32
  mnew = mnew.dup
33
- assert_equal mnew.inspect, m.inspect
33
+ assert_equal m.inspect, mnew.inspect
34
34
  assert TestMessage.encode(mnew) == data
35
35
  end
36
36
  end
metadata CHANGED
@@ -1,35 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-protobuf
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.18.0
4
+ version: 3.19.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Protobuf Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-15 00:00:00.000000000 Z
11
+ date: 2022-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake-compiler-dock
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - '='
18
18
  - !ruby/object:Gem::Version
19
19
  version: 1.1.0
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '2.0'
23
20
  type: :development
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - ">="
24
+ - - '='
28
25
  - !ruby/object:Gem::Version
29
26
  version: 1.1.0
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '2.0'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: rake-compiler
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -64,20 +58,6 @@ dependencies:
64
58
  - - ">="
65
59
  - !ruby/object:Gem::Version
66
60
  version: 3.0.9
67
- - !ruby/object:Gem::Dependency
68
- name: rubygems-tasks
69
- requirement: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - "~>"
72
- - !ruby/object:Gem::Version
73
- version: 0.2.4
74
- type: :development
75
- prerelease: false
76
- version_requirements: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - "~>"
79
- - !ruby/object:Gem::Version
80
- version: 0.2.4
81
61
  description: Protocol Buffers are Google's data interchange format.
82
62
  email: protobuf@googlegroups.com
83
63
  executables: []
@@ -124,7 +104,7 @@ homepage: https://developers.google.com/protocol-buffers
124
104
  licenses:
125
105
  - BSD-3-Clause
126
106
  metadata:
127
- source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v3.18.0/ruby
107
+ source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v3.19.2/ruby
128
108
  post_install_message:
129
109
  rdoc_options: []
130
110
  require_paths:
@@ -140,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
120
  - !ruby/object:Gem::Version
141
121
  version: '0'
142
122
  requirements: []
143
- rubygems_version: 3.2.27
123
+ rubygems_version: 3.3.4
144
124
  signing_key:
145
125
  specification_version: 4
146
126
  summary: Protocol Buffers