protobuf 2.6.2 → 2.6.3
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/protobuf/field/base_field.rb +4 -3
- data/lib/protobuf/field/bytes_field.rb +6 -4
- data/lib/protobuf/field/enum_field.rb +4 -4
- data/lib/protobuf/field/field_array.rb +3 -3
- data/lib/protobuf/field/message_field.rb +3 -3
- data/lib/protobuf/rpc/connector.rb +2 -0
- data/lib/protobuf/rpc/connectors/common.rb +2 -0
- data/lib/protobuf/rpc/server.rb +1 -0
- data/lib/protobuf/version.rb +1 -1
- metadata +30 -30
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'protobuf'
|
1
2
|
require 'protobuf/wire_type'
|
2
3
|
require 'protobuf/field/field_array'
|
3
4
|
|
@@ -172,8 +173,8 @@ module Protobuf
|
|
172
173
|
val.compact!
|
173
174
|
else
|
174
175
|
error_text = <<-TYPE_ERROR
|
175
|
-
Expected value of type '#{field.type}'
|
176
|
-
Got '#{val.class}' for protobuf field #{field.name}
|
176
|
+
Expected repeated value of type '#{field.type}'
|
177
|
+
Got '#{val.class}' for repeated protobuf field #{field.name}
|
177
178
|
TYPE_ERROR
|
178
179
|
|
179
180
|
raise TypeError, error_text
|
@@ -210,7 +211,7 @@ module Protobuf
|
|
210
211
|
elsif field.acceptable?(val)
|
211
212
|
@values[field.name] = val
|
212
213
|
else
|
213
|
-
raise TypeError, "
|
214
|
+
raise TypeError, "Unacceptable value #{val} for field #{field.name} of type #{field.type}"
|
214
215
|
end
|
215
216
|
end
|
216
217
|
end
|
@@ -18,7 +18,7 @@ module Protobuf
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def decode(bytes)
|
21
|
-
bytes.force_encoding(::Protobuf::Field::BytesField::BYTES_ENCODING)
|
21
|
+
bytes.force_encoding(::Protobuf::Field::BytesField::BYTES_ENCODING)
|
22
22
|
bytes
|
23
23
|
end
|
24
24
|
|
@@ -34,10 +34,12 @@ module Protobuf
|
|
34
34
|
elsif field.acceptable?(val)
|
35
35
|
@values[field.name] = val.dup
|
36
36
|
else
|
37
|
-
raise TypeError, "
|
37
|
+
raise TypeError, "Unacceptable value #{val} for field #{field.name} of type #{field.type}"
|
38
38
|
end
|
39
39
|
rescue NoMethodError => ex
|
40
|
-
|
40
|
+
::Protobuf::Logger.error { ex.message }
|
41
|
+
::Protobuf::Logger.error { ex.backtrace.join("\n") }
|
42
|
+
raise TypeError, "Got NoMethodError attempting to set #{val} for field #{field.name} of type #{field.type}: #{ex.message}"
|
41
43
|
end
|
42
44
|
end
|
43
45
|
end
|
@@ -45,7 +47,7 @@ module Protobuf
|
|
45
47
|
|
46
48
|
def encode(value)
|
47
49
|
value = value.serialize_to_string if value.is_a?(::Protobuf::Message)
|
48
|
-
value.force_encoding(::Protobuf::Field::BytesField::BYTES_ENCODING)
|
50
|
+
value.force_encoding(::Protobuf::Field::BytesField::BYTES_ENCODING)
|
49
51
|
|
50
52
|
string_size = ::Protobuf::Field::VarintField.encode(value.size)
|
51
53
|
string_size << value
|
@@ -6,11 +6,11 @@ module Protobuf
|
|
6
6
|
def acceptable?(val)
|
7
7
|
case val
|
8
8
|
when Symbol then
|
9
|
-
raise TypeError unless @type.const_defined?(val)
|
9
|
+
raise TypeError, "Enum #{val} is not known for type #{@type}" unless @type.const_defined?(val)
|
10
10
|
when EnumValue then
|
11
|
-
raise TypeError if val.parent_class != @type
|
11
|
+
raise TypeError, "Enum #{val} is not owned by #{@type}" if val.parent_class != @type
|
12
12
|
else
|
13
|
-
raise TypeError unless @type.valid_tag?(val)
|
13
|
+
raise TypeError, "Tag #{val} is not valid for Enum #{@type}" unless @type.valid_tag?(val)
|
14
14
|
end
|
15
15
|
true
|
16
16
|
end
|
@@ -42,7 +42,7 @@ module Protobuf
|
|
42
42
|
@values.delete(field.name)
|
43
43
|
else
|
44
44
|
value = field.type.fetch(value)
|
45
|
-
raise TypeError, "Invalid
|
45
|
+
raise TypeError, "Invalid Enum value: #{orig_value.inspect} for #{field.name}" unless value
|
46
46
|
|
47
47
|
@values[field.name] = value
|
48
48
|
end
|
@@ -52,7 +52,7 @@ module Protobuf
|
|
52
52
|
#
|
53
53
|
def normalize(value)
|
54
54
|
value = value.to_proto if value.respond_to?(:to_proto)
|
55
|
-
raise TypeError unless @field.acceptable?(value)
|
55
|
+
raise TypeError, "Unacceptable value #{value} for field #{@field.name} of type #{@field.type}" unless @field.acceptable?(value)
|
56
56
|
|
57
57
|
if @field.is_a?(::Protobuf::Field::EnumField)
|
58
58
|
@field.type.fetch(value)
|
@@ -65,8 +65,8 @@ module Protobuf
|
|
65
65
|
|
66
66
|
def raise_type_error(val)
|
67
67
|
error_text = <<-TYPE_ERROR
|
68
|
-
Expected value of type '#{@field.type}'
|
69
|
-
Got '#{val.class}' for protobuf field #{@field.name}
|
68
|
+
Expected repeated value of type '#{@field.type}'
|
69
|
+
Got '#{val.class}' for repeated protobuf field #{@field.name}
|
70
70
|
TYPE_ERROR
|
71
71
|
|
72
72
|
raise TypeError, error_text
|
@@ -3,7 +3,7 @@ require 'protobuf/field/base_field'
|
|
3
3
|
module Protobuf
|
4
4
|
module Field
|
5
5
|
class MessageField < BaseField
|
6
|
-
RAISE_TYPE = lambda { |field, val| raise TypeError, "Expected value of type '#{field.type}', but got '#{val.class}'" }
|
6
|
+
RAISE_TYPE = lambda { |field, val| raise TypeError, "Expected value of type '#{field.type}' for field #{field.name}, but got '#{val.class}'" }
|
7
7
|
|
8
8
|
##
|
9
9
|
# Public Instance Methods
|
@@ -18,7 +18,7 @@ module Protobuf
|
|
18
18
|
message.parse_from_string(bytes)
|
19
19
|
message
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
def encode(value)
|
23
23
|
bytes = value.serialize_to_string
|
24
24
|
result = ::Protobuf::Field::VarintField.encode(bytes.size)
|
@@ -39,7 +39,7 @@ module Protobuf
|
|
39
39
|
field = self
|
40
40
|
@message_class.class_eval do
|
41
41
|
define_method("#{field.name}=") do |val|
|
42
|
-
case
|
42
|
+
case
|
43
43
|
when val.nil? then
|
44
44
|
@values.delete(field.name)
|
45
45
|
when val.is_a?(field.type) then
|
data/lib/protobuf/rpc/server.rb
CHANGED
data/lib/protobuf/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: protobuf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.6.
|
4
|
+
version: 2.6.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,11 +10,11 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-01-
|
13
|
+
date: 2013-01-15 00:00:00.000000000Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|
17
|
-
requirement: &
|
17
|
+
requirement: &2152561520 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ! '>='
|
@@ -22,10 +22,10 @@ dependencies:
|
|
22
22
|
version: '0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *2152561520
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: ffi
|
28
|
-
requirement: &
|
28
|
+
requirement: &2152560120 !ruby/object:Gem::Requirement
|
29
29
|
none: false
|
30
30
|
requirements:
|
31
31
|
- - ! '>='
|
@@ -33,10 +33,10 @@ dependencies:
|
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
|
-
version_requirements: *
|
36
|
+
version_requirements: *2152560120
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: multi_json
|
39
|
-
requirement: &
|
39
|
+
requirement: &2152558500 !ruby/object:Gem::Requirement
|
40
40
|
none: false
|
41
41
|
requirements:
|
42
42
|
- - ! '>='
|
@@ -44,10 +44,10 @@ dependencies:
|
|
44
44
|
version: '0'
|
45
45
|
type: :runtime
|
46
46
|
prerelease: false
|
47
|
-
version_requirements: *
|
47
|
+
version_requirements: *2152558500
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: thor
|
50
|
-
requirement: &
|
50
|
+
requirement: &2152535120 !ruby/object:Gem::Requirement
|
51
51
|
none: false
|
52
52
|
requirements:
|
53
53
|
- - ! '>='
|
@@ -55,10 +55,10 @@ dependencies:
|
|
55
55
|
version: '0'
|
56
56
|
type: :runtime
|
57
57
|
prerelease: false
|
58
|
-
version_requirements: *
|
58
|
+
version_requirements: *2152535120
|
59
59
|
- !ruby/object:Gem::Dependency
|
60
60
|
name: eventmachine
|
61
|
-
requirement: &
|
61
|
+
requirement: &2152533600 !ruby/object:Gem::Requirement
|
62
62
|
none: false
|
63
63
|
requirements:
|
64
64
|
- - ! '>='
|
@@ -66,10 +66,10 @@ dependencies:
|
|
66
66
|
version: '0'
|
67
67
|
type: :development
|
68
68
|
prerelease: false
|
69
|
-
version_requirements: *
|
69
|
+
version_requirements: *2152533600
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: ffi-rzmq
|
72
|
-
requirement: &
|
72
|
+
requirement: &2152530760 !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
75
|
- - ! '>='
|
@@ -77,10 +77,10 @@ dependencies:
|
|
77
77
|
version: '0'
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
|
-
version_requirements: *
|
80
|
+
version_requirements: *2152530760
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: pry
|
83
|
-
requirement: &
|
83
|
+
requirement: &2152520480 !ruby/object:Gem::Requirement
|
84
84
|
none: false
|
85
85
|
requirements:
|
86
86
|
- - ! '>='
|
@@ -88,10 +88,10 @@ dependencies:
|
|
88
88
|
version: '0'
|
89
89
|
type: :development
|
90
90
|
prerelease: false
|
91
|
-
version_requirements: *
|
91
|
+
version_requirements: *2152520480
|
92
92
|
- !ruby/object:Gem::Dependency
|
93
93
|
name: pry-nav
|
94
|
-
requirement: &
|
94
|
+
requirement: &2152518160 !ruby/object:Gem::Requirement
|
95
95
|
none: false
|
96
96
|
requirements:
|
97
97
|
- - ! '>='
|
@@ -99,10 +99,10 @@ dependencies:
|
|
99
99
|
version: '0'
|
100
100
|
type: :development
|
101
101
|
prerelease: false
|
102
|
-
version_requirements: *
|
102
|
+
version_requirements: *2152518160
|
103
103
|
- !ruby/object:Gem::Dependency
|
104
104
|
name: rake
|
105
|
-
requirement: &
|
105
|
+
requirement: &2152517020 !ruby/object:Gem::Requirement
|
106
106
|
none: false
|
107
107
|
requirements:
|
108
108
|
- - ! '>='
|
@@ -110,10 +110,10 @@ dependencies:
|
|
110
110
|
version: '0'
|
111
111
|
type: :development
|
112
112
|
prerelease: false
|
113
|
-
version_requirements: *
|
113
|
+
version_requirements: *2152517020
|
114
114
|
- !ruby/object:Gem::Dependency
|
115
115
|
name: rake-compiler
|
116
|
-
requirement: &
|
116
|
+
requirement: &2152516040 !ruby/object:Gem::Requirement
|
117
117
|
none: false
|
118
118
|
requirements:
|
119
119
|
- - ! '>='
|
@@ -121,10 +121,10 @@ dependencies:
|
|
121
121
|
version: '0'
|
122
122
|
type: :development
|
123
123
|
prerelease: false
|
124
|
-
version_requirements: *
|
124
|
+
version_requirements: *2152516040
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: rspec
|
127
|
-
requirement: &
|
127
|
+
requirement: &2152514440 !ruby/object:Gem::Requirement
|
128
128
|
none: false
|
129
129
|
requirements:
|
130
130
|
- - ! '>='
|
@@ -132,10 +132,10 @@ dependencies:
|
|
132
132
|
version: '0'
|
133
133
|
type: :development
|
134
134
|
prerelease: false
|
135
|
-
version_requirements: *
|
135
|
+
version_requirements: *2152514440
|
136
136
|
- !ruby/object:Gem::Dependency
|
137
137
|
name: simplecov
|
138
|
-
requirement: &
|
138
|
+
requirement: &2152491780 !ruby/object:Gem::Requirement
|
139
139
|
none: false
|
140
140
|
requirements:
|
141
141
|
- - ! '>='
|
@@ -143,10 +143,10 @@ dependencies:
|
|
143
143
|
version: '0'
|
144
144
|
type: :development
|
145
145
|
prerelease: false
|
146
|
-
version_requirements: *
|
146
|
+
version_requirements: *2152491780
|
147
147
|
- !ruby/object:Gem::Dependency
|
148
148
|
name: yard
|
149
|
-
requirement: &
|
149
|
+
requirement: &2152486420 !ruby/object:Gem::Requirement
|
150
150
|
none: false
|
151
151
|
requirements:
|
152
152
|
- - ! '>='
|
@@ -154,7 +154,7 @@ dependencies:
|
|
154
154
|
version: '0'
|
155
155
|
type: :development
|
156
156
|
prerelease: false
|
157
|
-
version_requirements: *
|
157
|
+
version_requirements: *2152486420
|
158
158
|
description: Google Protocol Buffers v2.4.1 Serialization and RPC implementation for
|
159
159
|
Ruby.
|
160
160
|
email:
|
@@ -434,7 +434,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
434
434
|
version: '0'
|
435
435
|
segments:
|
436
436
|
- 0
|
437
|
-
hash:
|
437
|
+
hash: 913525931658513391
|
438
438
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
439
439
|
none: false
|
440
440
|
requirements:
|
@@ -443,7 +443,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
443
443
|
version: '0'
|
444
444
|
segments:
|
445
445
|
- 0
|
446
|
-
hash:
|
446
|
+
hash: 913525931658513391
|
447
447
|
requirements: []
|
448
448
|
rubyforge_project:
|
449
449
|
rubygems_version: 1.8.15
|