mongrel2 0.2.4 → 0.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.tar.gz.sig +0 -0
- data/ChangeLog +90 -27
- data/History.rdoc +10 -0
- data/bin/m2sh.rb +2 -1
- data/lib/mongrel2.rb +2 -2
- data/lib/mongrel2/connection.rb +6 -5
- data/lib/mongrel2/control.rb +67 -23
- data/lib/mongrel2/handler.rb +2 -1
- data/spec/mongrel2/control_spec.rb +2 -2
- metadata +24 -24
- metadata.gz.sig +0 -0
data.tar.gz.sig
CHANGED
Binary file
|
data/ChangeLog
CHANGED
@@ -1,9 +1,70 @@
|
|
1
|
+
2011-09-23 Michael Granger <ged@FaerieMUD.org>
|
2
|
+
|
3
|
+
* .hgtags:
|
4
|
+
Added tag v0.3.0 for changeset 627526429d63
|
5
|
+
[9c054d0e96c0] [tip]
|
6
|
+
|
7
|
+
* .hgsigs:
|
8
|
+
Added signature for changeset 745c431bcc1b
|
9
|
+
[627526429d63] [v0.3.0]
|
10
|
+
|
11
|
+
* History.rdoc, lib/mongrel2.rb:
|
12
|
+
Bump minor version, update History.
|
13
|
+
[745c431bcc1b]
|
14
|
+
|
15
|
+
* lib/mongrel2/control.rb, spec/mongrel2/control_spec.rb:
|
16
|
+
Mongrel2::Client fixes/doc updates:
|
17
|
+
- Added examples for some of the more-complex return values
|
18
|
+
- Fixed wording for some of the methods that I lazily copied from the
|
19
|
+
manual
|
20
|
+
- Client socket sets ZMQ::LINGER to 0 to try to avoid hangs when
|
21
|
+
destroying it without closing its socket first.
|
22
|
+
- Made Mongrel2::Client#time return a Time object directly instead of
|
23
|
+
wrapping it in a Hash. Need more experimentation with multiple
|
24
|
+
servers before I do this for other methods, however.
|
25
|
+
[1722ea9675c8]
|
26
|
+
|
27
|
+
* bin/m2sh.rb:
|
28
|
+
Include FileUtils in the 'm2sh.rb load' context so configs can
|
29
|
+
create run/log directories, etc.
|
30
|
+
[4c93cdb75813]
|
31
|
+
|
32
|
+
* lib/mongrel2/connection.rb:
|
33
|
+
Set SO_LINGER on the sockets so closing the connection doesn't wait
|
34
|
+
for unconsumed events.
|
35
|
+
[5e7a155a054e]
|
36
|
+
|
37
|
+
* lib/mongrel2/handler.rb:
|
38
|
+
Add missing include to Mongrel2::Handler
|
39
|
+
[47c4026c1f8d]
|
40
|
+
|
41
|
+
* lib/mongrel2/connection.rb:
|
42
|
+
Add a bit more debugging to Connection#send and #recv
|
43
|
+
[937683f0be2e]
|
44
|
+
|
1
45
|
2011-09-21 Michael Granger <ged@FaerieMUD.org>
|
2
46
|
|
47
|
+
* .hgtags:
|
48
|
+
Added tag v0.2.4 for changeset d4523fc43396
|
49
|
+
[89029a1edce5]
|
50
|
+
|
51
|
+
* .hgsigs:
|
52
|
+
Added signature for changeset d6797487c359
|
53
|
+
[d4523fc43396] [v0.2.4]
|
54
|
+
|
55
|
+
* History.rdoc, lib/mongrel2.rb:
|
56
|
+
Updated history, bumping patch version for release.
|
57
|
+
[d6797487c359]
|
58
|
+
|
59
|
+
* lib/mongrel2/httprequest.rb, lib/mongrel2/httpresponse.rb,
|
60
|
+
lib/mongrel2/request.rb:
|
61
|
+
Correct body size in inspected request/response output.
|
62
|
+
[e344d8af9fb9]
|
63
|
+
|
3
64
|
* lib/mongrel2/httpresponse.rb, lib/mongrel2/response.rb:
|
4
65
|
Added a cleaned-up Mongrel2::Response#inspect like
|
5
66
|
Mongrel2::Request.
|
6
|
-
[263a11ebf987]
|
67
|
+
[263a11ebf987]
|
7
68
|
|
8
69
|
* .hgtags:
|
9
70
|
Added tag v0.2.3 for changeset 49b62d1014e9
|
@@ -68,7 +129,7 @@
|
|
68
129
|
|
69
130
|
* lib/mongrel2/constants.rb:
|
70
131
|
Whitespace fix; add missing HTTP::CONTINUE constant.
|
71
|
-
[3082d251f00c]
|
132
|
+
[3082d251f00c] [github/master]
|
72
133
|
|
73
134
|
2011-09-18 Michael Granger <ged@FaerieMUD.org>
|
74
135
|
|
@@ -142,18 +203,14 @@
|
|
142
203
|
* Automated merge with ssh://deveiate.org/Ruby-Mongrel2
|
143
204
|
[2da76acfb8db]
|
144
205
|
|
145
|
-
* Rakefile:
|
146
|
-
Automated merge with ssh://deveiate.org/Ruby-Mongrel2
|
147
|
-
[e3908fd8e744]
|
148
|
-
|
149
|
-
* Rakefile:
|
150
|
-
Remove ChangeLog task, since hoe-deveiate already does it
|
151
|
-
[5f4982a32949]
|
152
|
-
|
153
206
|
* History.rdoc:
|
154
207
|
Updating History
|
155
208
|
[3b013d4918c6]
|
156
209
|
|
210
|
+
* Rakefile:
|
211
|
+
Automated merge with ssh://deveiate.org/Ruby-Mongrel2
|
212
|
+
[e3908fd8e744]
|
213
|
+
|
157
214
|
* .hgtags:
|
158
215
|
Added tag v0.1.1 for changeset 42da048fe158
|
159
216
|
[2489be2693d5]
|
@@ -170,6 +227,10 @@
|
|
170
227
|
Updated rbzmq dependency
|
171
228
|
[758fe465780e]
|
172
229
|
|
230
|
+
* Rakefile:
|
231
|
+
Remove ChangeLog task, since hoe-deveiate already does it
|
232
|
+
[5f4982a32949]
|
233
|
+
|
173
234
|
* .hgtags:
|
174
235
|
Added tag v0.1.0 for changeset 55c8f01c01c6
|
175
236
|
[39b509c68142]
|
@@ -211,15 +272,11 @@
|
|
211
272
|
Merged with 3659a56af8fb
|
212
273
|
[f2201728e874]
|
213
274
|
|
214
|
-
* .hgignore:
|
215
|
-
Ignoring packaging directory
|
216
|
-
[0613976b6735]
|
217
|
-
|
218
275
|
2011-09-12 Michael Granger <ged@FaerieMUD.org>
|
219
276
|
|
220
277
|
* README.rdoc:
|
221
278
|
README fixes
|
222
|
-
[3659a56af8fb]
|
279
|
+
[3659a56af8fb]
|
223
280
|
|
224
281
|
* Rakefile:
|
225
282
|
Fixing gem name
|
@@ -283,6 +340,12 @@
|
|
283
340
|
procedures.
|
284
341
|
[19e0a72320dd]
|
285
342
|
|
343
|
+
2011-09-13 Michael Granger <ged@FaerieMUD.org>
|
344
|
+
|
345
|
+
* .hgignore:
|
346
|
+
Ignoring packaging directory
|
347
|
+
[0613976b6735]
|
348
|
+
|
286
349
|
2011-09-10 Michael Granger <ged@FaerieMUD.org>
|
287
350
|
|
288
351
|
* bin/m2sh.rb:
|
@@ -323,18 +386,6 @@
|
|
323
386
|
* Merged with 6ea60b67e106
|
324
387
|
[6d5341f30cc4]
|
325
388
|
|
326
|
-
* Manifest.txt:
|
327
|
-
Updating the manifest for the first release
|
328
|
-
[916a79570cdc]
|
329
|
-
|
330
|
-
* examples/helloworld-handler.rb, lib/mongrel2/handler.rb:
|
331
|
-
More Handler API docs.
|
332
|
-
[47427db9b4fb]
|
333
|
-
|
334
|
-
* lib/mongrel2/handler.rb:
|
335
|
-
Adding some Mongrel2::Handler API docs.
|
336
|
-
[da95bfdf83da]
|
337
|
-
|
338
389
|
* lib/mongrel2/config/host.rb:
|
339
390
|
Adding a many_to_one association for the server belonging to a
|
340
391
|
Mongrel2::Config::Host
|
@@ -354,6 +405,18 @@
|
|
354
405
|
Adding a proftools dump of the requestdumper app
|
355
406
|
[00cbc1b89a61]
|
356
407
|
|
408
|
+
* Manifest.txt:
|
409
|
+
Updating the manifest for the first release
|
410
|
+
[916a79570cdc]
|
411
|
+
|
412
|
+
* examples/helloworld-handler.rb, lib/mongrel2/handler.rb:
|
413
|
+
More Handler API docs.
|
414
|
+
[47427db9b4fb]
|
415
|
+
|
416
|
+
* lib/mongrel2/handler.rb:
|
417
|
+
Adding some Mongrel2::Handler API docs.
|
418
|
+
[da95bfdf83da]
|
419
|
+
|
357
420
|
2011-09-08 Michael Granger <ged@FaerieMUD.org>
|
358
421
|
|
359
422
|
* README.rdoc, lib/mongrel2.rb, lib/mongrel2/config.rb,
|
data/History.rdoc
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
== v0.3.0 [2011-09-23] Michael Granger <ged@FaerieMUD.org>
|
2
|
+
|
3
|
+
- Mongrel2::Client fixes/documentation updates.
|
4
|
+
- Include FileUtils in the 'm2sh.rb load' context so configs
|
5
|
+
loaded by it can create run/log directories, etc.
|
6
|
+
- Mongrel2::Connection: Set SO_LINGER on the sockets so
|
7
|
+
closing the connection doesn't wait for unconsumed events.
|
8
|
+
- Add missing include to Mongrel2::Handler
|
9
|
+
|
10
|
+
|
1
11
|
== v0.2.4 [2011-09-21] Michael Granger <ged@FaerieMUD.org>
|
2
12
|
|
3
13
|
- Added a cleaned-up Mongrel2::Response#inspect like
|
data/bin/m2sh.rb
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'pp'
|
4
4
|
require 'shellwords'
|
5
|
+
require 'fileutils'
|
5
6
|
require 'tnetstring'
|
6
7
|
|
7
8
|
require 'trollop'
|
@@ -283,7 +284,7 @@ class Mongrel2::M2SHCommand
|
|
283
284
|
raise "No configfile specified."
|
284
285
|
|
285
286
|
runspace = Module.new do
|
286
|
-
extend Mongrel2::Config::DSL
|
287
|
+
extend Mongrel2::Config::DSL, FileUtils::Verbose
|
287
288
|
end
|
288
289
|
|
289
290
|
header "Loading config from #{configfile}"
|
data/lib/mongrel2.rb
CHANGED
@@ -14,10 +14,10 @@ module Mongrel2
|
|
14
14
|
abort "\n\n>>> Mongrel2 requires Ruby 1.9.2 or later. <<<\n\n" if RUBY_VERSION < '1.9.2'
|
15
15
|
|
16
16
|
# Library version constant
|
17
|
-
VERSION = '0.
|
17
|
+
VERSION = '0.3.0'
|
18
18
|
|
19
19
|
# Version-control revision constant
|
20
|
-
REVISION = %q$Revision:
|
20
|
+
REVISION = %q$Revision: 745c431bcc1b $
|
21
21
|
|
22
22
|
|
23
23
|
require 'mongrel2/logging'
|
data/lib/mongrel2/connection.rb
CHANGED
@@ -58,15 +58,15 @@ class Mongrel2::Connection
|
|
58
58
|
ctx = Mongrel2.zmq_context
|
59
59
|
self.log.debug "0mq Context is: %p" % [ ctx ]
|
60
60
|
|
61
|
-
self.log.info "Connecting request socket (%s)" % [ @sub_addr ]
|
61
|
+
self.log.info "Connecting PULL request socket (%s)" % [ @sub_addr ]
|
62
62
|
@request_sock = ctx.socket( ZMQ::PULL )
|
63
63
|
@request_sock.setsockopt( ZMQ::LINGER, 0 )
|
64
64
|
@request_sock.connect( @sub_addr )
|
65
65
|
|
66
|
-
self.log.info "Connecting response socket (%s)" % [ @pub_addr ]
|
66
|
+
self.log.info "Connecting PUB response socket (%s)" % [ @pub_addr ]
|
67
67
|
@response_sock = ctx.socket( ZMQ::PUB )
|
68
|
-
@response_sock.setsockopt( ZMQ::LINGER, 0 )
|
69
68
|
@response_sock.setsockopt( ZMQ::IDENTITY, @app_id )
|
69
|
+
@response_sock.setsockopt( ZMQ::LINGER, 0 )
|
70
70
|
@response_sock.connect( @pub_addr )
|
71
71
|
end
|
72
72
|
|
@@ -93,7 +93,7 @@ class Mongrel2::Connection
|
|
93
93
|
def recv
|
94
94
|
self.check_closed
|
95
95
|
|
96
|
-
self.log.debug "Fetching next request"
|
96
|
+
self.log.debug "Fetching next request (PULL)"
|
97
97
|
data = self.request_sock.recv
|
98
98
|
self.log.debug " got request data: %p" % [ data ]
|
99
99
|
return data
|
@@ -112,8 +112,9 @@ class Mongrel2::Connection
|
|
112
112
|
self.check_closed
|
113
113
|
header = "%s %d:%s," % [ sender_id, conn_id.to_s.length, conn_id ]
|
114
114
|
buf = header + ' ' + data
|
115
|
-
self.log.debug "Sending response: %p" % [ buf ]
|
115
|
+
self.log.debug "Sending response (PUB): %p" % [ buf ]
|
116
116
|
self.response_sock.send( buf )
|
117
|
+
self.log.debug " done with send."
|
117
118
|
end
|
118
119
|
|
119
120
|
|
data/lib/mongrel2/control.rb
CHANGED
@@ -23,6 +23,7 @@ class Mongrel2::Control
|
|
23
23
|
def initialize( port=DEFAULT_PORT )
|
24
24
|
@ctx = Mongrel2.zmq_context
|
25
25
|
@socket = @ctx.socket( ZMQ::REQ )
|
26
|
+
@socket.setsockopt( ZMQ::LINGER, 0 )
|
26
27
|
@socket.connect( port.to_s )
|
27
28
|
end
|
28
29
|
|
@@ -35,66 +36,105 @@ class Mongrel2::Control
|
|
35
36
|
attr_reader :socket
|
36
37
|
|
37
38
|
|
38
|
-
### Stops the server using a SIGINT.
|
39
|
+
### Stops the server using a SIGINT. Returns a hash with a ':msg' key
|
40
|
+
### that describes what happened on success.
|
39
41
|
def stop
|
40
42
|
self.request( :stop )
|
41
43
|
end
|
42
44
|
|
43
45
|
|
44
|
-
### Reloads the server using a SIGHUP.
|
46
|
+
### Reloads the server using a SIGHUP. Returns a hash with a ':msg' key
|
47
|
+
### that describes what happened on success.
|
45
48
|
def reload
|
46
49
|
self.request( :reload )
|
47
50
|
end
|
51
|
+
alias_method :restart, :reload
|
48
52
|
|
49
53
|
|
50
|
-
### Terminates the server with SIGTERM.
|
54
|
+
### Terminates the server with SIGTERM. Returns a hash with a ':msg' key
|
55
|
+
### that describes what happened on success.
|
51
56
|
def terminate
|
52
57
|
self.request( :terminate )
|
53
58
|
end
|
54
59
|
|
55
60
|
|
56
|
-
###
|
61
|
+
### Return an Array of Hashes, one for each command the server supports.
|
62
|
+
###
|
63
|
+
### Example:
|
64
|
+
### [
|
65
|
+
### {:name=>"stop", :help=>"stop the server (SIGINT)"},
|
66
|
+
### {:name=>"reload", :help=>"reload the server"},
|
67
|
+
### {:name=>"help", :help=>"this command"},
|
68
|
+
### {:name=>"control_stop", :help=>"stop control port"},
|
69
|
+
### {:name=>"kill", :help=>"kill a connection"},
|
70
|
+
### {:name=>"status", :help=>"status, what=['net'|'tasks']"},
|
71
|
+
### {:name=>"terminate", :help=>"terminate the server (SIGTERM)"},
|
72
|
+
### {:name=>"time", :help=>"the server's time"},
|
73
|
+
### {:name=>"uuid", :help=>"the server's uuid"},
|
74
|
+
### {:name=>"info", :help=>"information about this server"}
|
75
|
+
### ]
|
57
76
|
def help
|
58
77
|
self.request( :help )
|
59
78
|
end
|
60
79
|
|
61
80
|
|
62
81
|
### Returns the server’s UUID as a String.
|
82
|
+
###
|
83
|
+
### Example:
|
84
|
+
### [{:uuid=>"28F6DCCF-28EB-48A4-A5B0-ED71D224FAE0"}]
|
63
85
|
def uuid
|
64
86
|
self.request( :uuid )
|
65
87
|
end
|
66
88
|
|
67
89
|
|
68
|
-
###
|
90
|
+
### Return information about the server.
|
91
|
+
###
|
92
|
+
### Example:
|
93
|
+
### [{:port=>7337,
|
94
|
+
### :bind_addr=>"0.0.0.0",
|
95
|
+
### :uuid=>"28F6DCCF-28EB-48A4-A5B0-ED71D224FAE0",
|
96
|
+
### :chroot=>"/var/www",
|
97
|
+
### :access_log=>"/var/www/logs/admin-access.log",
|
98
|
+
### :error_log=>"/logs/admin-error.log",
|
99
|
+
### :pid_file=>"./run/admin.pid",
|
100
|
+
### :default_hostname=>"localhost"}]
|
69
101
|
def info
|
70
102
|
self.request( :info )
|
71
103
|
end
|
72
104
|
|
73
105
|
|
74
|
-
### Returns
|
75
|
-
###
|
106
|
+
### Returns an Array of Hashes, one for each currently running task.
|
107
|
+
###
|
108
|
+
### Example:
|
109
|
+
### [
|
110
|
+
### {:id=>1, :system=>false, :name=>"SERVER", :state=>"read fd", :status=>"idle"},
|
111
|
+
### {:id=>2, :system=>false, :name=>"Handler_task", :state=>"read handler", :status=>"idle"},
|
112
|
+
### {:id=>3, :system=>false, :name=>"control", :state=>"read handler", :status=>"running"},
|
113
|
+
### {:id=>4, :system=>false, :name=>"ticker", :state=>"", :status=>"idle"},
|
114
|
+
### {:id=>5, :system=>true, :name=>"fdtask", :state=>"yield", :status=>"ready"}
|
115
|
+
### ]
|
76
116
|
def tasklist
|
77
117
|
self.request( :status, :what => 'tasks' )
|
78
118
|
end
|
79
119
|
|
80
120
|
|
81
|
-
###
|
82
|
-
###
|
83
|
-
###
|
84
|
-
###
|
121
|
+
### Returns an Array of Hashes, one for each connection to the server.
|
122
|
+
###
|
123
|
+
### Example:
|
124
|
+
### [
|
125
|
+
### {:id=>9, :fd=>27, :type=>1, :last_ping=>0, :last_read=>0, :last_write=>0,
|
126
|
+
### :bytes_read=>319, :bytes_written=>1065}
|
127
|
+
### ]
|
85
128
|
def conn_status
|
86
129
|
self.request( :status, :what => 'net' )
|
87
130
|
end
|
88
131
|
|
89
132
|
|
90
|
-
###
|
133
|
+
### Returns the server's time as a Time object.
|
91
134
|
def time
|
92
135
|
response = self.request( :time )
|
93
|
-
response.
|
94
|
-
|
95
|
-
end
|
96
|
-
|
97
|
-
return response
|
136
|
+
return nil if response.empty?
|
137
|
+
return Time.at( response.first[:time].to_i )
|
98
138
|
end
|
99
139
|
|
100
140
|
|
@@ -111,6 +151,16 @@ class Mongrel2::Control
|
|
111
151
|
end
|
112
152
|
|
113
153
|
|
154
|
+
### Close the control port connection.
|
155
|
+
def close
|
156
|
+
self.socket.close
|
157
|
+
end
|
158
|
+
|
159
|
+
|
160
|
+
#########
|
161
|
+
protected
|
162
|
+
#########
|
163
|
+
|
114
164
|
### Send a raw request to the server, asking it to perform the +command+ with the specified
|
115
165
|
### +options+ hash and return the results.
|
116
166
|
def request( command, options={} )
|
@@ -124,12 +174,6 @@ class Mongrel2::Control
|
|
124
174
|
end
|
125
175
|
|
126
176
|
|
127
|
-
### Close the control port connection.
|
128
|
-
def close
|
129
|
-
self.socket.close
|
130
|
-
end
|
131
|
-
|
132
|
-
|
133
177
|
#######
|
134
178
|
private
|
135
179
|
#######
|
data/lib/mongrel2/handler.rb
CHANGED
@@ -30,7 +30,7 @@ describe Mongrel2::Control do
|
|
30
30
|
|
31
31
|
before( :each ) do
|
32
32
|
@ctx = double( "ZMQ::Context" )
|
33
|
-
@socket = double( "ZMQ REQ socket", :connect => nil )
|
33
|
+
@socket = double( "ZMQ REQ socket", :connect => nil, :setsockopt => nil )
|
34
34
|
@ctx.stub( :socket ).with( ZMQ::REQ ).and_return( @socket )
|
35
35
|
|
36
36
|
Mongrel2.instance_variable_set( :@zmq_ctx, @ctx )
|
@@ -160,7 +160,7 @@ describe Mongrel2::Control do
|
|
160
160
|
@socket.should_receive( :send ).with( "10:4:time,0:}]" )
|
161
161
|
@socket.should_receive( :recv ).
|
162
162
|
and_return( "49:7:headers,7:4:time,]4:rows,18:14:10:1315532674,]]}" )
|
163
|
-
@control.time.should ==
|
163
|
+
@control.time.should == Time.at( 1315532674 )
|
164
164
|
end
|
165
165
|
|
166
166
|
it "sends a 'kill' command with an ID equal to the argument to the control port when #kill " +
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongrel2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -48,11 +48,11 @@ cert_chain:
|
|
48
48
|
-----END CERTIFICATE-----
|
49
49
|
|
50
50
|
'
|
51
|
-
date: 2011-09-
|
51
|
+
date: 2011-09-24 00:00:00.000000000Z
|
52
52
|
dependencies:
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: nokogiri
|
55
|
-
requirement: &
|
55
|
+
requirement: &2170257000 !ruby/object:Gem::Requirement
|
56
56
|
none: false
|
57
57
|
requirements:
|
58
58
|
- - ~>
|
@@ -60,10 +60,10 @@ dependencies:
|
|
60
60
|
version: '1.5'
|
61
61
|
type: :runtime
|
62
62
|
prerelease: false
|
63
|
-
version_requirements: *
|
63
|
+
version_requirements: *2170257000
|
64
64
|
- !ruby/object:Gem::Dependency
|
65
65
|
name: sequel
|
66
|
-
requirement: &
|
66
|
+
requirement: &2170254880 !ruby/object:Gem::Requirement
|
67
67
|
none: false
|
68
68
|
requirements:
|
69
69
|
- - ~>
|
@@ -71,10 +71,10 @@ dependencies:
|
|
71
71
|
version: '3.26'
|
72
72
|
type: :runtime
|
73
73
|
prerelease: false
|
74
|
-
version_requirements: *
|
74
|
+
version_requirements: *2170254880
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: amalgalite
|
77
|
-
requirement: &
|
77
|
+
requirement: &2170254220 !ruby/object:Gem::Requirement
|
78
78
|
none: false
|
79
79
|
requirements:
|
80
80
|
- - ~>
|
@@ -82,10 +82,10 @@ dependencies:
|
|
82
82
|
version: '1.1'
|
83
83
|
type: :runtime
|
84
84
|
prerelease: false
|
85
|
-
version_requirements: *
|
85
|
+
version_requirements: *2170254220
|
86
86
|
- !ruby/object:Gem::Dependency
|
87
87
|
name: tnetstring
|
88
|
-
requirement: &
|
88
|
+
requirement: &2170253640 !ruby/object:Gem::Requirement
|
89
89
|
none: false
|
90
90
|
requirements:
|
91
91
|
- - ~>
|
@@ -93,10 +93,10 @@ dependencies:
|
|
93
93
|
version: '0.3'
|
94
94
|
type: :runtime
|
95
95
|
prerelease: false
|
96
|
-
version_requirements: *
|
96
|
+
version_requirements: *2170253640
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: yajl-ruby
|
99
|
-
requirement: &
|
99
|
+
requirement: &2170252900 !ruby/object:Gem::Requirement
|
100
100
|
none: false
|
101
101
|
requirements:
|
102
102
|
- - ~>
|
@@ -104,10 +104,10 @@ dependencies:
|
|
104
104
|
version: '0.8'
|
105
105
|
type: :runtime
|
106
106
|
prerelease: false
|
107
|
-
version_requirements: *
|
107
|
+
version_requirements: *2170252900
|
108
108
|
- !ruby/object:Gem::Dependency
|
109
109
|
name: zmq
|
110
|
-
requirement: &
|
110
|
+
requirement: &2170252240 !ruby/object:Gem::Requirement
|
111
111
|
none: false
|
112
112
|
requirements:
|
113
113
|
- - ~>
|
@@ -115,10 +115,10 @@ dependencies:
|
|
115
115
|
version: 2.1.4
|
116
116
|
type: :runtime
|
117
117
|
prerelease: false
|
118
|
-
version_requirements: *
|
118
|
+
version_requirements: *2170252240
|
119
119
|
- !ruby/object:Gem::Dependency
|
120
120
|
name: hoe-mercurial
|
121
|
-
requirement: &
|
121
|
+
requirement: &2170251620 !ruby/object:Gem::Requirement
|
122
122
|
none: false
|
123
123
|
requirements:
|
124
124
|
- - ~>
|
@@ -126,10 +126,10 @@ dependencies:
|
|
126
126
|
version: 1.3.0
|
127
127
|
type: :development
|
128
128
|
prerelease: false
|
129
|
-
version_requirements: *
|
129
|
+
version_requirements: *2170251620
|
130
130
|
- !ruby/object:Gem::Dependency
|
131
131
|
name: hoe-highline
|
132
|
-
requirement: &
|
132
|
+
requirement: &2170250880 !ruby/object:Gem::Requirement
|
133
133
|
none: false
|
134
134
|
requirements:
|
135
135
|
- - ~>
|
@@ -137,10 +137,10 @@ dependencies:
|
|
137
137
|
version: 0.0.1
|
138
138
|
type: :development
|
139
139
|
prerelease: false
|
140
|
-
version_requirements: *
|
140
|
+
version_requirements: *2170250880
|
141
141
|
- !ruby/object:Gem::Dependency
|
142
142
|
name: configurability
|
143
|
-
requirement: &
|
143
|
+
requirement: &2170250120 !ruby/object:Gem::Requirement
|
144
144
|
none: false
|
145
145
|
requirements:
|
146
146
|
- - ~>
|
@@ -148,10 +148,10 @@ dependencies:
|
|
148
148
|
version: '1.0'
|
149
149
|
type: :development
|
150
150
|
prerelease: false
|
151
|
-
version_requirements: *
|
151
|
+
version_requirements: *2170250120
|
152
152
|
- !ruby/object:Gem::Dependency
|
153
153
|
name: rspec
|
154
|
-
requirement: &
|
154
|
+
requirement: &2170249500 !ruby/object:Gem::Requirement
|
155
155
|
none: false
|
156
156
|
requirements:
|
157
157
|
- - ~>
|
@@ -159,10 +159,10 @@ dependencies:
|
|
159
159
|
version: '2.4'
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
|
-
version_requirements: *
|
162
|
+
version_requirements: *2170249500
|
163
163
|
- !ruby/object:Gem::Dependency
|
164
164
|
name: hoe
|
165
|
-
requirement: &
|
165
|
+
requirement: &2170248800 !ruby/object:Gem::Requirement
|
166
166
|
none: false
|
167
167
|
requirements:
|
168
168
|
- - ~>
|
@@ -170,7 +170,7 @@ dependencies:
|
|
170
170
|
version: '2.12'
|
171
171
|
type: :development
|
172
172
|
prerelease: false
|
173
|
-
version_requirements: *
|
173
|
+
version_requirements: *2170248800
|
174
174
|
description: ! "A complete Ruby connector for Mongrel2[http://mongrel2.org/].\n\nThis
|
175
175
|
library includes configuration-database ORM classes, a Ruby\nimplementation of the
|
176
176
|
'm2sh' tool, a configuration DSL for generating config\ndatabases in pure Ruby,
|
metadata.gz.sig
CHANGED
Binary file
|