protobuf 3.2.1 → 3.3.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.
- data/lib/protobuf/cli.rb +17 -13
- data/lib/protobuf/field/base_field.rb +3 -1
- data/lib/protobuf/field/bytes_field.rb +2 -2
- data/lib/protobuf/lifecycle.rb +1 -1
- data/lib/protobuf/logging.rb +49 -0
- data/lib/protobuf/rpc/client.rb +10 -10
- data/lib/protobuf/rpc/connectors/base.rb +2 -2
- data/lib/protobuf/rpc/connectors/common.rb +12 -12
- data/lib/protobuf/rpc/connectors/socket.rb +6 -6
- data/lib/protobuf/rpc/connectors/zmq.rb +11 -9
- data/lib/protobuf/rpc/middleware/exception_handler.rb +1 -1
- data/lib/protobuf/rpc/middleware/logger.rb +1 -1
- data/lib/protobuf/rpc/middleware/request_decoder.rb +3 -3
- data/lib/protobuf/rpc/middleware/response_encoder.rb +3 -3
- data/lib/protobuf/rpc/server.rb +1 -1
- data/lib/protobuf/rpc/servers/socket/server.rb +7 -7
- data/lib/protobuf/rpc/servers/socket/worker.rb +2 -2
- data/lib/protobuf/rpc/servers/zmq/broker.rb +9 -5
- data/lib/protobuf/rpc/servers/zmq/server.rb +3 -3
- data/lib/protobuf/rpc/servers/zmq/util.rb +1 -1
- data/lib/protobuf/rpc/servers/zmq_runner.rb +4 -4
- data/lib/protobuf/rpc/service.rb +2 -2
- data/lib/protobuf/rpc/service_directory.rb +8 -8
- data/lib/protobuf/rpc/service_dispatcher.rb +2 -2
- data/lib/protobuf/rpc/stat.rb +1 -1
- data/lib/protobuf/version.rb +1 -1
- data/spec/benchmark/tasks.rb +2 -2
- data/spec/lib/protobuf/cli_spec.rb +9 -3
- data/spec/spec_helper.rb +6 -5
- data/spec/support/server.rb +3 -3
- metadata +64 -106
- checksums.yaml +0 -7
- data/lib/protobuf/logger.rb +0 -86
- data/spec/lib/protobuf/logger_spec.rb +0 -136
@@ -2,7 +2,7 @@ module Protobuf
|
|
2
2
|
module Rpc
|
3
3
|
module Middleware
|
4
4
|
class RequestDecoder
|
5
|
-
include ::Protobuf::
|
5
|
+
include ::Protobuf::Logging
|
6
6
|
|
7
7
|
attr_reader :app, :env
|
8
8
|
|
@@ -27,7 +27,7 @@ module Protobuf
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def log_signature
|
30
|
-
env.
|
30
|
+
env.log_signature || super
|
31
31
|
end
|
32
32
|
|
33
33
|
private
|
@@ -57,7 +57,7 @@ module Protobuf
|
|
57
57
|
#
|
58
58
|
def request_wrapper
|
59
59
|
@request_wrapper ||= begin
|
60
|
-
|
60
|
+
logger.debug { sign_message("Decoding request: #{env.encoded_request}") }
|
61
61
|
Socketrpc::Request.decode(env.encoded_request)
|
62
62
|
end
|
63
63
|
rescue => exception
|
@@ -2,7 +2,7 @@ module Protobuf
|
|
2
2
|
module Rpc
|
3
3
|
module Middleware
|
4
4
|
class ResponseEncoder
|
5
|
-
include ::Protobuf::
|
5
|
+
include ::Protobuf::Logging
|
6
6
|
|
7
7
|
attr_reader :app, :env
|
8
8
|
|
@@ -19,7 +19,7 @@ module Protobuf
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def log_signature
|
22
|
-
env.
|
22
|
+
env.log_signature || super
|
23
23
|
end
|
24
24
|
|
25
25
|
private
|
@@ -27,7 +27,7 @@ module Protobuf
|
|
27
27
|
# Encode the response wrapper to return to the client
|
28
28
|
#
|
29
29
|
def encoded_response
|
30
|
-
|
30
|
+
logger.debug { sign_message("Encoding response: #{response.inspect}") }
|
31
31
|
|
32
32
|
env.encoded_response = wrapped_response.encode
|
33
33
|
rescue => exception
|
data/lib/protobuf/rpc/server.rb
CHANGED
@@ -5,7 +5,7 @@ module Protobuf
|
|
5
5
|
module Rpc
|
6
6
|
module Socket
|
7
7
|
class Server
|
8
|
-
include ::Protobuf::
|
8
|
+
include ::Protobuf::Logging
|
9
9
|
|
10
10
|
AUTO_COLLECT_TIMEOUT = 5 # seconds
|
11
11
|
|
@@ -19,7 +19,7 @@ module Protobuf
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def cleanup_threads
|
22
|
-
|
22
|
+
logger.debug { sign_message("Thread cleanup - #{@threads.size} - start") }
|
23
23
|
|
24
24
|
@threads = @threads.select do |t|
|
25
25
|
if t[:thread].alive?
|
@@ -31,7 +31,7 @@ module Protobuf
|
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
|
-
|
34
|
+
logger.debug { sign_message("Thread cleanup - #{@threads.size} - complete") }
|
35
35
|
end
|
36
36
|
|
37
37
|
def log_signature
|
@@ -47,7 +47,7 @@ module Protobuf
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def run
|
50
|
-
|
50
|
+
logger.debug { sign_message("Run") }
|
51
51
|
host = @options[:host]
|
52
52
|
port = @options[:port]
|
53
53
|
backlog = @options[:backlog]
|
@@ -63,7 +63,7 @@ module Protobuf
|
|
63
63
|
@running = true
|
64
64
|
|
65
65
|
while running?
|
66
|
-
|
66
|
+
logger.debug { sign_message("Waiting for connections") }
|
67
67
|
ready_cnxns = IO.select(@listen_fds, [], [], AUTO_COLLECT_TIMEOUT) rescue nil
|
68
68
|
|
69
69
|
if ready_cnxns
|
@@ -73,13 +73,13 @@ module Protobuf
|
|
73
73
|
when !running? then
|
74
74
|
# no-op
|
75
75
|
when client == @server then
|
76
|
-
|
76
|
+
logger.debug { sign_message("Accepted new connection") }
|
77
77
|
client, sockaddr = @server.accept
|
78
78
|
@listen_fds << client
|
79
79
|
else
|
80
80
|
unless @working.include?(client)
|
81
81
|
@working << @listen_fds.delete(client)
|
82
|
-
|
82
|
+
logger.debug { sign_message("Working") }
|
83
83
|
@threads << { :thread => new_worker(client), :socket => client }
|
84
84
|
|
85
85
|
cleanup_threads if cleanup?
|
@@ -1,12 +1,12 @@
|
|
1
1
|
require 'protobuf/rpc/server'
|
2
|
-
require 'protobuf/
|
2
|
+
require 'protobuf/logging'
|
3
3
|
|
4
4
|
module Protobuf
|
5
5
|
module Rpc
|
6
6
|
module Socket
|
7
7
|
class Worker
|
8
8
|
include ::Protobuf::Rpc::Server
|
9
|
-
include ::Protobuf::
|
9
|
+
include ::Protobuf::Logging
|
10
10
|
|
11
11
|
def initialize(sock, &complete_cb)
|
12
12
|
@socket = sock
|
@@ -67,7 +67,7 @@ module Protobuf
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def init_local_queue
|
70
|
-
@local_queue =
|
70
|
+
@local_queue = []
|
71
71
|
end
|
72
72
|
|
73
73
|
def init_poller
|
@@ -88,6 +88,10 @@ module Protobuf
|
|
88
88
|
!!@server.try(:inproc?)
|
89
89
|
end
|
90
90
|
|
91
|
+
def local_queue_max_size
|
92
|
+
@local_queue_max_size ||= [ENV["PB_ZMQ_SERVER_QUEUE_MAX_SIZE"].to_i, 5].max
|
93
|
+
end
|
94
|
+
|
91
95
|
def process_backend
|
92
96
|
worker, ignore, *frames = read_from_backend
|
93
97
|
|
@@ -102,16 +106,16 @@ module Protobuf
|
|
102
106
|
address, _, message, *frames = read_from_frontend
|
103
107
|
|
104
108
|
if message == ::Protobuf::Rpc::Zmq::CHECK_AVAILABLE_MESSAGE
|
105
|
-
if
|
109
|
+
if local_queue.size < local_queue_max_size
|
106
110
|
write_to_frontend([address, "", ::Protobuf::Rpc::Zmq::WORKERS_AVAILABLE])
|
107
111
|
else
|
108
112
|
write_to_frontend([address, "", ::Protobuf::Rpc::Zmq::NO_WORKERS_AVAILABLE])
|
109
113
|
end
|
110
114
|
else
|
111
|
-
if @idle_workers.
|
112
|
-
write_to_backend([@idle_workers.shift, ""] + [address, "", message ] + frames)
|
113
|
-
else
|
115
|
+
if @idle_workers.empty?
|
114
116
|
local_queue.push([address, "", message ] + frames)
|
117
|
+
else
|
118
|
+
write_to_backend([@idle_workers.shift, ""] + [address, "", message ] + frames)
|
115
119
|
end
|
116
120
|
end
|
117
121
|
end
|
@@ -100,7 +100,7 @@ module Protobuf
|
|
100
100
|
|
101
101
|
@beacon_socket.send(heartbeat.encode, 0)
|
102
102
|
|
103
|
-
|
103
|
+
logger.debug { sign_message("sent heartbeat to #{beacon_uri}") }
|
104
104
|
end
|
105
105
|
|
106
106
|
def broadcast_heartbeat?
|
@@ -204,7 +204,7 @@ module Protobuf
|
|
204
204
|
|
205
205
|
if missing_workers > 0
|
206
206
|
missing_workers.times { start_worker }
|
207
|
-
|
207
|
+
logger.debug { sign_message("#{total_workers} workers started") }
|
208
208
|
end
|
209
209
|
end
|
210
210
|
|
@@ -303,7 +303,7 @@ module Protobuf
|
|
303
303
|
rescue => e
|
304
304
|
message = "Worker failed: #{e.inspect}\n #{e.backtrace.join($/)}"
|
305
305
|
$stderr.puts(message)
|
306
|
-
|
306
|
+
logger.error { message }
|
307
307
|
end
|
308
308
|
end
|
309
309
|
end
|
@@ -3,7 +3,7 @@ require 'ostruct'
|
|
3
3
|
module Protobuf
|
4
4
|
module Rpc
|
5
5
|
class ZmqRunner
|
6
|
-
include ::Protobuf::
|
6
|
+
include ::Protobuf::Logging
|
7
7
|
|
8
8
|
def initialize(options)
|
9
9
|
@options = case
|
@@ -38,12 +38,12 @@ module Protobuf
|
|
38
38
|
def register_signals
|
39
39
|
trap(:TTIN) do
|
40
40
|
@server.add_worker
|
41
|
-
|
41
|
+
logger.info { "Increased worker size to: #{@server.total_workers}" }
|
42
42
|
end
|
43
43
|
|
44
44
|
trap(:TTOU) do
|
45
|
-
|
46
|
-
|
45
|
+
logger.info { "Current worker size: #{@server.workers.size}" }
|
46
|
+
logger.info { "Current worker size: #{@server.busy_worker_count}" }
|
47
47
|
end
|
48
48
|
end
|
49
49
|
end
|
data/lib/protobuf/rpc/service.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'protobuf/
|
1
|
+
require 'protobuf/logging'
|
2
2
|
require 'protobuf/rpc/client'
|
3
3
|
require 'protobuf/rpc/error'
|
4
4
|
require 'protobuf/rpc/service_filters'
|
@@ -10,7 +10,7 @@ module Protobuf
|
|
10
10
|
RpcMethod = Struct.new("RpcMethod", :method, :request_type, :response_type)
|
11
11
|
|
12
12
|
class Service
|
13
|
-
include ::Protobuf::
|
13
|
+
include ::Protobuf::Logging
|
14
14
|
include ::Protobuf::Rpc::ServiceFilters
|
15
15
|
|
16
16
|
DEFAULT_HOST = '127.0.0.1'.freeze
|
@@ -11,7 +11,7 @@ module Protobuf
|
|
11
11
|
module Rpc
|
12
12
|
class ServiceDirectory
|
13
13
|
include ::Singleton
|
14
|
-
include ::Protobuf::
|
14
|
+
include ::Protobuf::Logging
|
15
15
|
|
16
16
|
DEFAULT_ADDRESS = "0.0.0.0"
|
17
17
|
DEFAULT_PORT = 53000
|
@@ -116,7 +116,7 @@ module Protobuf
|
|
116
116
|
def start
|
117
117
|
unless running?
|
118
118
|
init_socket
|
119
|
-
|
119
|
+
logger.info { sign_message("listening to udp://#{self.class.address}:#{self.class.port}") }
|
120
120
|
@thread = Thread.new { self.send(:run) }
|
121
121
|
end
|
122
122
|
|
@@ -124,7 +124,7 @@ module Protobuf
|
|
124
124
|
end
|
125
125
|
|
126
126
|
def stop
|
127
|
-
|
127
|
+
logger.info { sign_message("Stopping directory") }
|
128
128
|
|
129
129
|
@thread.try(:kill).try(:join)
|
130
130
|
@socket.try(:close)
|
@@ -151,7 +151,7 @@ module Protobuf
|
|
151
151
|
end
|
152
152
|
|
153
153
|
trigger(action, listing)
|
154
|
-
|
154
|
+
logger.debug { sign_message("#{action} server: #{server.inspect}") }
|
155
155
|
end
|
156
156
|
|
157
157
|
def init_socket
|
@@ -177,7 +177,7 @@ module Protobuf
|
|
177
177
|
remove_listing(uuid)
|
178
178
|
end
|
179
179
|
else
|
180
|
-
|
180
|
+
logger.info { sign_message("Ignoring incomplete beacon: #{beacon.inspect}") }
|
181
181
|
end
|
182
182
|
end
|
183
183
|
|
@@ -193,7 +193,7 @@ module Protobuf
|
|
193
193
|
end
|
194
194
|
|
195
195
|
def remove_expired_listings
|
196
|
-
|
196
|
+
logger.debug { sign_message("Removing expired listings") }
|
197
197
|
@listings_by_uuid.each do |uuid, listing|
|
198
198
|
remove_listing(uuid) if listing.expired?
|
199
199
|
end
|
@@ -202,7 +202,7 @@ module Protobuf
|
|
202
202
|
def remove_listing(uuid)
|
203
203
|
listing = @listings_by_uuid[uuid] or return
|
204
204
|
|
205
|
-
|
205
|
+
logger.debug { sign_message("Removing listing: #{listing.inspect}") }
|
206
206
|
|
207
207
|
@listings_by_service.each do |service, listings|
|
208
208
|
listings.delete(listing)
|
@@ -233,7 +233,7 @@ module Protobuf
|
|
233
233
|
end
|
234
234
|
end
|
235
235
|
rescue => e
|
236
|
-
|
236
|
+
logger.debug { sign_message("ERROR: (#{e.class}) #{e.message}\n#{e.backtrace.join("\n")}") }
|
237
237
|
retry
|
238
238
|
end
|
239
239
|
|
data/lib/protobuf/rpc/stat.rb
CHANGED
data/lib/protobuf/version.rb
CHANGED
data/spec/benchmark/tasks.rb
CHANGED
@@ -13,8 +13,8 @@ end
|
|
13
13
|
# Including a way to turn on debug logger for spec runs
|
14
14
|
if ENV["DEBUG"]
|
15
15
|
puts 'debugging'
|
16
|
-
debug_log = File.expand_path('
|
17
|
-
Protobuf::
|
16
|
+
debug_log = File.expand_path('../../../debug_bench.log', __FILE__)
|
17
|
+
Protobuf::Logging.initialize_logger(debug_log, ::Logger::DEBUG)
|
18
18
|
end
|
19
19
|
|
20
20
|
namespace :benchmark do
|
@@ -19,6 +19,12 @@ describe ::Protobuf::CLI do
|
|
19
19
|
runner
|
20
20
|
}
|
21
21
|
|
22
|
+
around(:each) do |example|
|
23
|
+
logger = ::Protobuf::Logging.logger
|
24
|
+
example.run
|
25
|
+
::Protobuf::Logging.logger = logger
|
26
|
+
end
|
27
|
+
|
22
28
|
before(:each) do
|
23
29
|
allow(::Protobuf::Rpc::SocketRunner).to receive(:new).and_return(sock_runner)
|
24
30
|
allow(::Protobuf::Rpc::ZmqRunner).to receive(:new).and_return(zmq_runner)
|
@@ -88,9 +94,9 @@ describe ::Protobuf::CLI do
|
|
88
94
|
let(:test_args) { [ '--log=mylog.log', '--level=0' ] }
|
89
95
|
|
90
96
|
it 'sends the log file and level options to the runner' do
|
91
|
-
expect(::Protobuf::
|
92
|
-
expect(
|
93
|
-
expect(
|
97
|
+
expect(::Protobuf::Logging).to receive(:initialize_logger) do |file, level|
|
98
|
+
expect(file).to eq 'mylog.log'
|
99
|
+
expect(level).to eq 0
|
94
100
|
end
|
95
101
|
described_class.start(args)
|
96
102
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,6 +1,3 @@
|
|
1
|
-
require 'simplecov'
|
2
|
-
SimpleCov.start
|
3
|
-
|
4
1
|
require 'timeout'
|
5
2
|
require 'rubygems'
|
6
3
|
require 'bundler'
|
@@ -20,10 +17,14 @@ require 'google/protobuf/compiler/plugin.pb'
|
|
20
17
|
|
21
18
|
# Including a way to turn on debug logger for spec runs
|
22
19
|
if ENV.key?('DEBUG')
|
23
|
-
debug_log = ::File.expand_path('
|
24
|
-
::Protobuf::
|
20
|
+
debug_log = ::File.expand_path('../../debug_specs.log', __FILE__ )
|
21
|
+
::Protobuf::Logging.initialize_logger(debug_log, ::Logger::DEBUG)
|
22
|
+
else
|
23
|
+
::Protobuf::Logging.initialize_logger('/dev/null')
|
25
24
|
end
|
26
25
|
|
26
|
+
::Protobuf::Logging.close_old_logger = false
|
27
|
+
|
27
28
|
# Get rid of the deprecation env var if present (messes with specs).
|
28
29
|
ENV.delete("PB_IGNORE_DEPRECATIONS")
|
29
30
|
|
data/spec/support/server.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
require 'ostruct'
|
2
|
-
require 'protobuf/
|
2
|
+
require 'protobuf/logging'
|
3
3
|
require 'protobuf/rpc/server'
|
4
4
|
require 'protobuf/rpc/servers/socket/server'
|
5
5
|
require 'protobuf/rpc/servers/socket_runner'
|
@@ -33,7 +33,7 @@ module StubProtobufServerFactory
|
|
33
33
|
end
|
34
34
|
|
35
35
|
class StubServer
|
36
|
-
include Protobuf::
|
36
|
+
include Protobuf::Logging
|
37
37
|
|
38
38
|
attr_accessor :options
|
39
39
|
|
@@ -58,7 +58,7 @@ class StubServer
|
|
58
58
|
else
|
59
59
|
start_socket_server
|
60
60
|
end
|
61
|
-
|
61
|
+
logger.debug { sign_message("Server started #{@options.host}:#{@options.port}") }
|
62
62
|
end
|
63
63
|
|
64
64
|
def start_socket_server
|
metadata
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: protobuf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- BJ Neilsen
|
@@ -11,160 +12,182 @@ authors:
|
|
11
12
|
autorequire:
|
12
13
|
bindir: bin
|
13
14
|
cert_chain: []
|
14
|
-
date: 2014-08-
|
15
|
+
date: 2014-08-26 00:00:00.000000000 Z
|
15
16
|
dependencies:
|
16
17
|
- !ruby/object:Gem::Dependency
|
17
18
|
name: activesupport
|
18
19
|
requirement: !ruby/object:Gem::Requirement
|
20
|
+
none: false
|
19
21
|
requirements:
|
20
|
-
- -
|
22
|
+
- - ! '>='
|
21
23
|
- !ruby/object:Gem::Version
|
22
24
|
version: '3.2'
|
23
25
|
type: :runtime
|
24
26
|
prerelease: false
|
25
27
|
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
26
29
|
requirements:
|
27
|
-
- -
|
30
|
+
- - ! '>='
|
28
31
|
- !ruby/object:Gem::Version
|
29
32
|
version: '3.2'
|
30
33
|
- !ruby/object:Gem::Dependency
|
31
34
|
name: middleware
|
32
35
|
requirement: !ruby/object:Gem::Requirement
|
36
|
+
none: false
|
33
37
|
requirements:
|
34
|
-
- -
|
38
|
+
- - ! '>='
|
35
39
|
- !ruby/object:Gem::Version
|
36
40
|
version: '0'
|
37
41
|
type: :runtime
|
38
42
|
prerelease: false
|
39
43
|
version_requirements: !ruby/object:Gem::Requirement
|
44
|
+
none: false
|
40
45
|
requirements:
|
41
|
-
- -
|
46
|
+
- - ! '>='
|
42
47
|
- !ruby/object:Gem::Version
|
43
48
|
version: '0'
|
44
49
|
- !ruby/object:Gem::Dependency
|
45
50
|
name: thor
|
46
51
|
requirement: !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
47
53
|
requirements:
|
48
|
-
- -
|
54
|
+
- - ! '>='
|
49
55
|
- !ruby/object:Gem::Version
|
50
56
|
version: '0'
|
51
57
|
type: :runtime
|
52
58
|
prerelease: false
|
53
59
|
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
none: false
|
54
61
|
requirements:
|
55
|
-
- -
|
62
|
+
- - ! '>='
|
56
63
|
- !ruby/object:Gem::Version
|
57
64
|
version: '0'
|
58
65
|
- !ruby/object:Gem::Dependency
|
59
66
|
name: ffi-rzmq
|
60
67
|
requirement: !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
61
69
|
requirements:
|
62
|
-
- -
|
70
|
+
- - ! '>='
|
63
71
|
- !ruby/object:Gem::Version
|
64
72
|
version: '0'
|
65
73
|
type: :development
|
66
74
|
prerelease: false
|
67
75
|
version_requirements: !ruby/object:Gem::Requirement
|
76
|
+
none: false
|
68
77
|
requirements:
|
69
|
-
- -
|
78
|
+
- - ! '>='
|
70
79
|
- !ruby/object:Gem::Version
|
71
80
|
version: '0'
|
72
81
|
- !ruby/object:Gem::Dependency
|
73
82
|
name: pry-nav
|
74
83
|
requirement: !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
75
85
|
requirements:
|
76
|
-
- -
|
86
|
+
- - ! '>='
|
77
87
|
- !ruby/object:Gem::Version
|
78
88
|
version: '0'
|
79
89
|
type: :development
|
80
90
|
prerelease: false
|
81
91
|
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
none: false
|
82
93
|
requirements:
|
83
|
-
- -
|
94
|
+
- - ! '>='
|
84
95
|
- !ruby/object:Gem::Version
|
85
96
|
version: '0'
|
86
97
|
- !ruby/object:Gem::Dependency
|
87
98
|
name: rake
|
88
99
|
requirement: !ruby/object:Gem::Requirement
|
100
|
+
none: false
|
89
101
|
requirements:
|
90
|
-
- -
|
102
|
+
- - ! '>='
|
91
103
|
- !ruby/object:Gem::Version
|
92
104
|
version: '0'
|
93
105
|
type: :development
|
94
106
|
prerelease: false
|
95
107
|
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
96
109
|
requirements:
|
97
|
-
- -
|
110
|
+
- - ! '>='
|
98
111
|
- !ruby/object:Gem::Version
|
99
112
|
version: '0'
|
100
113
|
- !ruby/object:Gem::Dependency
|
101
114
|
name: rspec
|
102
115
|
requirement: !ruby/object:Gem::Requirement
|
116
|
+
none: false
|
103
117
|
requirements:
|
104
|
-
- -
|
118
|
+
- - ! '>='
|
105
119
|
- !ruby/object:Gem::Version
|
106
120
|
version: '3.0'
|
107
121
|
type: :development
|
108
122
|
prerelease: false
|
109
123
|
version_requirements: !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
110
125
|
requirements:
|
111
|
-
- -
|
126
|
+
- - ! '>='
|
112
127
|
- !ruby/object:Gem::Version
|
113
128
|
version: '3.0'
|
114
129
|
- !ruby/object:Gem::Dependency
|
115
130
|
name: simplecov
|
116
131
|
requirement: !ruby/object:Gem::Requirement
|
132
|
+
none: false
|
117
133
|
requirements:
|
118
|
-
- -
|
134
|
+
- - ! '>='
|
119
135
|
- !ruby/object:Gem::Version
|
120
136
|
version: '0'
|
121
137
|
type: :development
|
122
138
|
prerelease: false
|
123
139
|
version_requirements: !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
124
141
|
requirements:
|
125
|
-
- -
|
142
|
+
- - ! '>='
|
126
143
|
- !ruby/object:Gem::Version
|
127
144
|
version: '0'
|
128
145
|
- !ruby/object:Gem::Dependency
|
129
146
|
name: yard
|
130
147
|
requirement: !ruby/object:Gem::Requirement
|
148
|
+
none: false
|
131
149
|
requirements:
|
132
|
-
- -
|
150
|
+
- - ! '>='
|
133
151
|
- !ruby/object:Gem::Version
|
134
152
|
version: '0'
|
135
153
|
type: :development
|
136
154
|
prerelease: false
|
137
155
|
version_requirements: !ruby/object:Gem::Requirement
|
156
|
+
none: false
|
138
157
|
requirements:
|
139
|
-
- -
|
158
|
+
- - ! '>='
|
140
159
|
- !ruby/object:Gem::Version
|
141
160
|
version: '0'
|
142
161
|
- !ruby/object:Gem::Dependency
|
143
162
|
name: timecop
|
144
163
|
requirement: !ruby/object:Gem::Requirement
|
164
|
+
none: false
|
145
165
|
requirements:
|
146
|
-
- -
|
166
|
+
- - ! '>='
|
147
167
|
- !ruby/object:Gem::Version
|
148
168
|
version: '0'
|
149
169
|
type: :development
|
150
170
|
prerelease: false
|
151
171
|
version_requirements: !ruby/object:Gem::Requirement
|
172
|
+
none: false
|
152
173
|
requirements:
|
153
|
-
- -
|
174
|
+
- - ! '>='
|
154
175
|
- !ruby/object:Gem::Version
|
155
176
|
version: '0'
|
156
177
|
- !ruby/object:Gem::Dependency
|
157
178
|
name: perftools.rb
|
158
179
|
requirement: !ruby/object:Gem::Requirement
|
180
|
+
none: false
|
159
181
|
requirements:
|
160
|
-
- -
|
182
|
+
- - ! '>='
|
161
183
|
- !ruby/object:Gem::Version
|
162
184
|
version: '0'
|
163
185
|
type: :development
|
164
186
|
prerelease: false
|
165
187
|
version_requirements: !ruby/object:Gem::Requirement
|
188
|
+
none: false
|
166
189
|
requirements:
|
167
|
-
- -
|
190
|
+
- - ! '>='
|
168
191
|
- !ruby/object:Gem::Version
|
169
192
|
version: '0'
|
170
193
|
description: Google Protocol Buffers serialization and RPC implementation for Ruby.
|
@@ -179,9 +202,9 @@ executables:
|
|
179
202
|
extensions: []
|
180
203
|
extra_rdoc_files: []
|
181
204
|
files:
|
182
|
-
-
|
183
|
-
-
|
184
|
-
-
|
205
|
+
- .gitignore
|
206
|
+
- .travis.yml
|
207
|
+
- .yardopts
|
185
208
|
- CHANGES.md
|
186
209
|
- CONTRIBUTING.md
|
187
210
|
- Gemfile
|
@@ -234,7 +257,7 @@ files:
|
|
234
257
|
- lib/protobuf/generators/printable.rb
|
235
258
|
- lib/protobuf/generators/service_generator.rb
|
236
259
|
- lib/protobuf/lifecycle.rb
|
237
|
-
- lib/protobuf/
|
260
|
+
- lib/protobuf/logging.rb
|
238
261
|
- lib/protobuf/message.rb
|
239
262
|
- lib/protobuf/message/fields.rb
|
240
263
|
- lib/protobuf/message/serialization.rb
|
@@ -306,7 +329,6 @@ files:
|
|
306
329
|
- spec/lib/protobuf/generators/message_generator_spec.rb
|
307
330
|
- spec/lib/protobuf/generators/service_generator_spec.rb
|
308
331
|
- spec/lib/protobuf/lifecycle_spec.rb
|
309
|
-
- spec/lib/protobuf/logger_spec.rb
|
310
332
|
- spec/lib/protobuf/message_spec.rb
|
311
333
|
- spec/lib/protobuf/optionable_spec.rb
|
312
334
|
- spec/lib/protobuf/rpc/client_spec.rb
|
@@ -357,97 +379,33 @@ files:
|
|
357
379
|
homepage: https://github.com/localshred/protobuf
|
358
380
|
licenses:
|
359
381
|
- WTFPL
|
360
|
-
metadata: {}
|
361
382
|
post_install_message:
|
362
383
|
rdoc_options: []
|
363
384
|
require_paths:
|
364
385
|
- lib
|
365
386
|
required_ruby_version: !ruby/object:Gem::Requirement
|
387
|
+
none: false
|
366
388
|
requirements:
|
367
|
-
- -
|
389
|
+
- - ! '>='
|
368
390
|
- !ruby/object:Gem::Version
|
369
391
|
version: '0'
|
392
|
+
segments:
|
393
|
+
- 0
|
394
|
+
hash: -4504815043455481176
|
370
395
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
396
|
+
none: false
|
371
397
|
requirements:
|
372
|
-
- -
|
398
|
+
- - ! '>='
|
373
399
|
- !ruby/object:Gem::Version
|
374
400
|
version: '0'
|
401
|
+
segments:
|
402
|
+
- 0
|
403
|
+
hash: -4504815043455481176
|
375
404
|
requirements: []
|
376
405
|
rubyforge_project:
|
377
|
-
rubygems_version:
|
406
|
+
rubygems_version: 1.8.24
|
378
407
|
signing_key:
|
379
|
-
specification_version:
|
408
|
+
specification_version: 3
|
380
409
|
summary: Google Protocol Buffers serialization and RPC implementation for Ruby.
|
381
|
-
test_files:
|
382
|
-
- spec/benchmark/tasks.rb
|
383
|
-
- spec/bin/protoc-gen-ruby_spec.rb
|
384
|
-
- spec/data/data.bin
|
385
|
-
- spec/data/types.bin
|
386
|
-
- spec/encoding/all_types_spec.rb
|
387
|
-
- spec/encoding/extreme_values_spec.rb
|
388
|
-
- spec/functional/socket_server_spec.rb
|
389
|
-
- spec/functional/zmq_server_spec.rb
|
390
|
-
- spec/lib/protobuf/cli_spec.rb
|
391
|
-
- spec/lib/protobuf/code_generator_spec.rb
|
392
|
-
- spec/lib/protobuf/enum_spec.rb
|
393
|
-
- spec/lib/protobuf/field/float_field_spec.rb
|
394
|
-
- spec/lib/protobuf/field/int32_field_spec.rb
|
395
|
-
- spec/lib/protobuf/field/string_field_spec.rb
|
396
|
-
- spec/lib/protobuf/field_spec.rb
|
397
|
-
- spec/lib/protobuf/generators/base_spec.rb
|
398
|
-
- spec/lib/protobuf/generators/enum_generator_spec.rb
|
399
|
-
- spec/lib/protobuf/generators/extension_generator_spec.rb
|
400
|
-
- spec/lib/protobuf/generators/field_generator_spec.rb
|
401
|
-
- spec/lib/protobuf/generators/file_generator_spec.rb
|
402
|
-
- spec/lib/protobuf/generators/message_generator_spec.rb
|
403
|
-
- spec/lib/protobuf/generators/service_generator_spec.rb
|
404
|
-
- spec/lib/protobuf/lifecycle_spec.rb
|
405
|
-
- spec/lib/protobuf/logger_spec.rb
|
406
|
-
- spec/lib/protobuf/message_spec.rb
|
407
|
-
- spec/lib/protobuf/optionable_spec.rb
|
408
|
-
- spec/lib/protobuf/rpc/client_spec.rb
|
409
|
-
- spec/lib/protobuf/rpc/connector_spec.rb
|
410
|
-
- spec/lib/protobuf/rpc/connectors/base_spec.rb
|
411
|
-
- spec/lib/protobuf/rpc/connectors/common_spec.rb
|
412
|
-
- spec/lib/protobuf/rpc/connectors/socket_spec.rb
|
413
|
-
- spec/lib/protobuf/rpc/connectors/zmq_spec.rb
|
414
|
-
- spec/lib/protobuf/rpc/middleware/exception_handler_spec.rb
|
415
|
-
- spec/lib/protobuf/rpc/middleware/logger_spec.rb
|
416
|
-
- spec/lib/protobuf/rpc/middleware/request_decoder_spec.rb
|
417
|
-
- spec/lib/protobuf/rpc/middleware/response_encoder_spec.rb
|
418
|
-
- spec/lib/protobuf/rpc/servers/socket_server_spec.rb
|
419
|
-
- spec/lib/protobuf/rpc/servers/zmq/server_spec.rb
|
420
|
-
- spec/lib/protobuf/rpc/servers/zmq/util_spec.rb
|
421
|
-
- spec/lib/protobuf/rpc/servers/zmq/worker_spec.rb
|
422
|
-
- spec/lib/protobuf/rpc/service_directory_spec.rb
|
423
|
-
- spec/lib/protobuf/rpc/service_dispatcher_spec.rb
|
424
|
-
- spec/lib/protobuf/rpc/service_filters_spec.rb
|
425
|
-
- spec/lib/protobuf/rpc/service_spec.rb
|
426
|
-
- spec/lib/protobuf/rpc/stat_spec.rb
|
427
|
-
- spec/lib/protobuf_spec.rb
|
428
|
-
- spec/spec_helper.rb
|
429
|
-
- spec/support/all.rb
|
430
|
-
- spec/support/packed_field.rb
|
431
|
-
- spec/support/server.rb
|
432
|
-
- spec/support/test/all_types.data.bin
|
433
|
-
- spec/support/test/all_types.data.txt
|
434
|
-
- spec/support/test/defaults.pb.rb
|
435
|
-
- spec/support/test/defaults.proto
|
436
|
-
- spec/support/test/enum.pb.rb
|
437
|
-
- spec/support/test/enum.proto
|
438
|
-
- spec/support/test/extended.pb.rb
|
439
|
-
- spec/support/test/extended.proto
|
440
|
-
- spec/support/test/extreme_values.data.bin
|
441
|
-
- spec/support/test/google_unittest.pb.rb
|
442
|
-
- spec/support/test/google_unittest.proto
|
443
|
-
- spec/support/test/google_unittest_import.pb.rb
|
444
|
-
- spec/support/test/google_unittest_import.proto
|
445
|
-
- spec/support/test/google_unittest_import_public.pb.rb
|
446
|
-
- spec/support/test/google_unittest_import_public.proto
|
447
|
-
- spec/support/test/multi_field_extensions.pb.rb
|
448
|
-
- spec/support/test/multi_field_extensions.proto
|
449
|
-
- spec/support/test/resource.pb.rb
|
450
|
-
- spec/support/test/resource.proto
|
451
|
-
- spec/support/test/resource_service.rb
|
452
|
-
- spec/support/test_app_file.rb
|
410
|
+
test_files: []
|
453
411
|
has_rdoc:
|