gemlock 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -48,25 +48,19 @@ module Gemlock
48
48
  specs[spec.name] = spec.version.to_s
49
49
  end
50
50
 
51
- outdated = {}
52
- locked_gemfile_specs.each do |spec|
53
- latest_version = lookup_version(spec.name)
54
- update_type = difference(spec.version.to_s, latest_version)
55
- if Gem::Version.new(latest_version) > Gem::Version.new(spec.version)
56
- if parsed_config.nil? || parsed_config['releases'].include?(update_type)
57
- outdated[spec.name] = latest_version
58
- end
51
+ begin
52
+ response = RestClient.get("http://gemlock.herokuapp.com/ruby_gems/updates.json",
53
+ {:params => {:gems => specs.to_json}})
54
+ gems = JSON.parse(response)
55
+
56
+ gems.inject({}) do |hash, gem|
57
+ name, version = *gem
58
+ hash[name] = {:latest => version, :current => specs[name]}
59
+ hash
59
60
  end
60
- hash
61
+ rescue RestClient::GatewayTimeout => e
62
+ check_gems_individually(specs)
61
63
  end
62
-
63
- return_hash = {}
64
- outdated.each_pair do |name, latest_version|
65
- return_hash[name] = { :latest => latest_version,
66
- :current => specs[name] }
67
- end
68
-
69
- return_hash
70
64
  end
71
65
 
72
66
  def difference(version_a, version_b)
@@ -135,6 +129,26 @@ module Gemlock
135
129
  60*60*24*7 #Seconds in a week
136
130
  end
137
131
 
132
+ def check_gems_individually(gems)
133
+ outdated = {}
134
+
135
+ gems.each_pair do |name, version|
136
+ latest_version = lookup_version(name)
137
+ update_type = difference(version, latest_version)
138
+ if Gem::Version.new(latest_version) > Gem::Version.new(version)
139
+ if parsed_config.nil? || parsed_config['releases'].include?(update_type)
140
+ outdated[name] = latest_version
141
+ end
142
+ end
143
+ end
144
+
145
+ outdated.inject({}) do |hash, gem|
146
+ name, version = *gem
147
+ hash[name] = { :latest => version, :current => gems[name] }
148
+ hash
149
+ end
150
+ end
151
+
138
152
  private
139
153
 
140
154
  def process_version(version_string)
@@ -8,7 +8,7 @@ module Gemlock
8
8
  end
9
9
 
10
10
  initializer 'Check for updates using Gemlock' do
11
- Gemlock.initializer if Rails.env.production?
11
+ Gemlock.initializer unless Rails.env.test?
12
12
  end
13
13
  end
14
14
  end
@@ -1,3 +1,3 @@
1
1
  module Gemlock
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -0,0 +1,298 @@
1
+ ---
2
+ - !ruby/struct:VCR::HTTPInteraction
3
+ request: !ruby/struct:VCR::Request
4
+ method: :get
5
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/coffee-rails/latest.json
6
+ body: !!null
7
+ headers:
8
+ accept:
9
+ - ! '*/*; q=0.5, application/xml'
10
+ accept-encoding:
11
+ - gzip, deflate
12
+ response: !ruby/struct:VCR::Response
13
+ status: !ruby/struct:VCR::ResponseStatus
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ cache-control:
18
+ - max-age=0, private, must-revalidate
19
+ content-type:
20
+ - application/json; charset=utf-8
21
+ etag:
22
+ - ! '"e48bc9e9a623234be1d8911ffbbdd8bc"'
23
+ server:
24
+ - thin 1.2.11 codename Bat-Shit Crazy
25
+ x-runtime:
26
+ - '0.032240'
27
+ x-ua-compatible:
28
+ - IE=Edge,chrome=1
29
+ transfer-encoding:
30
+ - chunked
31
+ connection:
32
+ - keep-alive
33
+ body: ! '{"version":"3.1.1"}'
34
+ http_version: '1.1'
35
+ - !ruby/struct:VCR::HTTPInteraction
36
+ request: !ruby/struct:VCR::Request
37
+ method: :get
38
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/jquery-rails/latest.json
39
+ body: !!null
40
+ headers:
41
+ accept:
42
+ - ! '*/*; q=0.5, application/xml'
43
+ accept-encoding:
44
+ - gzip, deflate
45
+ response: !ruby/struct:VCR::Response
46
+ status: !ruby/struct:VCR::ResponseStatus
47
+ code: 200
48
+ message: OK
49
+ headers:
50
+ cache-control:
51
+ - max-age=0, private, must-revalidate
52
+ content-type:
53
+ - application/json; charset=utf-8
54
+ etag:
55
+ - ! '"ce311130187e1fa77e0100a80a2b4e2d"'
56
+ server:
57
+ - thin 1.2.11 codename Bat-Shit Crazy
58
+ x-runtime:
59
+ - '0.031741'
60
+ x-ua-compatible:
61
+ - IE=Edge,chrome=1
62
+ transfer-encoding:
63
+ - chunked
64
+ connection:
65
+ - keep-alive
66
+ body: ! '{"version":"1.0.16"}'
67
+ http_version: '1.1'
68
+ - !ruby/struct:VCR::HTTPInteraction
69
+ request: !ruby/struct:VCR::Request
70
+ method: :get
71
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/json/latest.json
72
+ body: !!null
73
+ headers:
74
+ accept:
75
+ - ! '*/*; q=0.5, application/xml'
76
+ accept-encoding:
77
+ - gzip, deflate
78
+ response: !ruby/struct:VCR::Response
79
+ status: !ruby/struct:VCR::ResponseStatus
80
+ code: 200
81
+ message: OK
82
+ headers:
83
+ cache-control:
84
+ - max-age=0, private, must-revalidate
85
+ content-type:
86
+ - application/json; charset=utf-8
87
+ etag:
88
+ - ! '"b72b98a3bea046b262dba7c036cd90af"'
89
+ server:
90
+ - thin 1.2.11 codename Bat-Shit Crazy
91
+ x-runtime:
92
+ - '0.033472'
93
+ x-ua-compatible:
94
+ - IE=Edge,chrome=1
95
+ transfer-encoding:
96
+ - chunked
97
+ connection:
98
+ - keep-alive
99
+ body: ! '{"version":"1.6.1"}'
100
+ http_version: '1.1'
101
+ - !ruby/struct:VCR::HTTPInteraction
102
+ request: !ruby/struct:VCR::Request
103
+ method: :get
104
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/rails/latest.json
105
+ body: !!null
106
+ headers:
107
+ accept:
108
+ - ! '*/*; q=0.5, application/xml'
109
+ accept-encoding:
110
+ - gzip, deflate
111
+ response: !ruby/struct:VCR::Response
112
+ status: !ruby/struct:VCR::ResponseStatus
113
+ code: 200
114
+ message: OK
115
+ headers:
116
+ cache-control:
117
+ - max-age=0, private, must-revalidate
118
+ content-type:
119
+ - application/json; charset=utf-8
120
+ etag:
121
+ - ! '"e48bc9e9a623234be1d8911ffbbdd8bc"'
122
+ server:
123
+ - thin 1.2.11 codename Bat-Shit Crazy
124
+ x-runtime:
125
+ - '0.033539'
126
+ x-ua-compatible:
127
+ - IE=Edge,chrome=1
128
+ transfer-encoding:
129
+ - chunked
130
+ connection:
131
+ - keep-alive
132
+ body: ! '{"version":"3.1.1"}'
133
+ http_version: '1.1'
134
+ - !ruby/struct:VCR::HTTPInteraction
135
+ request: !ruby/struct:VCR::Request
136
+ method: :get
137
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/ruby-debug/latest.json
138
+ body: !!null
139
+ headers:
140
+ accept:
141
+ - ! '*/*; q=0.5, application/xml'
142
+ accept-encoding:
143
+ - gzip, deflate
144
+ response: !ruby/struct:VCR::Response
145
+ status: !ruby/struct:VCR::ResponseStatus
146
+ code: 200
147
+ message: OK
148
+ headers:
149
+ cache-control:
150
+ - max-age=0, private, must-revalidate
151
+ content-type:
152
+ - application/json; charset=utf-8
153
+ etag:
154
+ - ! '"e444d5094868df5925e938d14cdb23b9"'
155
+ server:
156
+ - thin 1.2.11 codename Bat-Shit Crazy
157
+ x-runtime:
158
+ - '0.028870'
159
+ x-ua-compatible:
160
+ - IE=Edge,chrome=1
161
+ transfer-encoding:
162
+ - chunked
163
+ connection:
164
+ - keep-alive
165
+ body: ! '{"version":"0.10.4"}'
166
+ http_version: '1.1'
167
+ - !ruby/struct:VCR::HTTPInteraction
168
+ request: !ruby/struct:VCR::Request
169
+ method: :get
170
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/sass-rails/latest.json
171
+ body: !!null
172
+ headers:
173
+ accept:
174
+ - ! '*/*; q=0.5, application/xml'
175
+ accept-encoding:
176
+ - gzip, deflate
177
+ response: !ruby/struct:VCR::Response
178
+ status: !ruby/struct:VCR::ResponseStatus
179
+ code: 200
180
+ message: OK
181
+ headers:
182
+ cache-control:
183
+ - max-age=0, private, must-revalidate
184
+ content-type:
185
+ - application/json; charset=utf-8
186
+ etag:
187
+ - ! '"412d8485398a9d5a18c2e6604442a6ae"'
188
+ server:
189
+ - thin 1.2.11 codename Bat-Shit Crazy
190
+ x-runtime:
191
+ - '0.034695'
192
+ x-ua-compatible:
193
+ - IE=Edge,chrome=1
194
+ content-length:
195
+ - '19'
196
+ connection:
197
+ - keep-alive
198
+ body: ! '{"version":"3.1.4"}'
199
+ http_version: '1.1'
200
+ - !ruby/struct:VCR::HTTPInteraction
201
+ request: !ruby/struct:VCR::Request
202
+ method: :get
203
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/sqlite3/latest.json
204
+ body: !!null
205
+ headers:
206
+ accept:
207
+ - ! '*/*; q=0.5, application/xml'
208
+ accept-encoding:
209
+ - gzip, deflate
210
+ response: !ruby/struct:VCR::Response
211
+ status: !ruby/struct:VCR::ResponseStatus
212
+ code: 200
213
+ message: OK
214
+ headers:
215
+ cache-control:
216
+ - max-age=0, private, must-revalidate
217
+ content-type:
218
+ - application/json; charset=utf-8
219
+ etag:
220
+ - ! '"dbb196aab8808e02b0cb33aa4e6a3052"'
221
+ server:
222
+ - thin 1.2.11 codename Bat-Shit Crazy
223
+ x-runtime:
224
+ - '0.033044'
225
+ x-ua-compatible:
226
+ - IE=Edge,chrome=1
227
+ transfer-encoding:
228
+ - chunked
229
+ connection:
230
+ - keep-alive
231
+ body: ! '{"version":"1.3.4"}'
232
+ http_version: '1.1'
233
+ - !ruby/struct:VCR::HTTPInteraction
234
+ request: !ruby/struct:VCR::Request
235
+ method: :get
236
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/uglifier/latest.json
237
+ body: !!null
238
+ headers:
239
+ accept:
240
+ - ! '*/*; q=0.5, application/xml'
241
+ accept-encoding:
242
+ - gzip, deflate
243
+ response: !ruby/struct:VCR::Response
244
+ status: !ruby/struct:VCR::ResponseStatus
245
+ code: 200
246
+ message: OK
247
+ headers:
248
+ cache-control:
249
+ - max-age=0, private, must-revalidate
250
+ content-type:
251
+ - application/json; charset=utf-8
252
+ etag:
253
+ - ! '"939c95352a2d69888fb560ca5e5d8e71"'
254
+ server:
255
+ - thin 1.2.11 codename Bat-Shit Crazy
256
+ x-runtime:
257
+ - '0.108000'
258
+ x-ua-compatible:
259
+ - IE=Edge,chrome=1
260
+ transfer-encoding:
261
+ - chunked
262
+ connection:
263
+ - keep-alive
264
+ body: ! '{"version":"1.0.4"}'
265
+ http_version: '1.1'
266
+ - !ruby/struct:VCR::HTTPInteraction
267
+ request: !ruby/struct:VCR::Request
268
+ method: :get
269
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/unicorn/latest.json
270
+ body: !!null
271
+ headers:
272
+ accept:
273
+ - ! '*/*; q=0.5, application/xml'
274
+ accept-encoding:
275
+ - gzip, deflate
276
+ response: !ruby/struct:VCR::Response
277
+ status: !ruby/struct:VCR::ResponseStatus
278
+ code: 200
279
+ message: OK
280
+ headers:
281
+ cache-control:
282
+ - max-age=0, private, must-revalidate
283
+ content-type:
284
+ - application/json; charset=utf-8
285
+ etag:
286
+ - ! '"37cd5df77bb485fe8e803759139301f7"'
287
+ server:
288
+ - thin 1.2.11 codename Bat-Shit Crazy
289
+ x-runtime:
290
+ - '0.031672'
291
+ x-ua-compatible:
292
+ - IE=Edge,chrome=1
293
+ transfer-encoding:
294
+ - chunked
295
+ connection:
296
+ - keep-alive
297
+ body: ! '{"version":"4.1.1"}'
298
+ http_version: '1.1'
@@ -1,34 +1,34 @@
1
- ---
2
- - !ruby/struct:VCR::HTTPInteraction
3
- request: !ruby/struct:VCR::Request
1
+ ---
2
+ - !ruby/struct:VCR::HTTPInteraction
3
+ request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://gemlock.herokuapp.com:80/rubygems/rails/latest.json
6
- body: !!null
7
- headers:
8
- accept:
9
- - ! '*/*; q=0.5, application/xml'
10
- accept-encoding:
5
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/rails/latest.json
6
+ body:
7
+ headers:
8
+ accept:
9
+ - "*/*; q=0.5, application/xml"
10
+ accept-encoding:
11
11
  - gzip, deflate
12
- response: !ruby/struct:VCR::Response
13
- status: !ruby/struct:VCR::ResponseStatus
12
+ response: !ruby/struct:VCR::Response
13
+ status: !ruby/struct:VCR::ResponseStatus
14
14
  code: 200
15
15
  message: OK
16
- headers:
17
- cache-control:
18
- - max-age=0, private, must-revalidate
19
- content-type:
16
+ headers:
17
+ x-ua-compatible:
18
+ - IE=Edge,chrome=1
19
+ etag:
20
+ - "\"e48bc9e9a623234be1d8911ffbbdd8bc\""
21
+ connection:
22
+ - keep-alive
23
+ content-type:
20
24
  - application/json; charset=utf-8
21
- etag:
22
- - ! '"e48bc9e9a623234be1d8911ffbbdd8bc"'
23
- server:
25
+ x-runtime:
26
+ - "0.986995"
27
+ server:
24
28
  - thin 1.2.11 codename Bat-Shit Crazy
25
- x-runtime:
26
- - '0.074089'
27
- x-ua-compatible:
28
- - IE=Edge,chrome=1
29
- transfer-encoding:
29
+ cache-control:
30
+ - max-age=0, private, must-revalidate
31
+ transfer-encoding:
30
32
  - chunked
31
- connection:
32
- - keep-alive
33
- body: ! '{"version":"3.1.0"}'
34
- http_version: '1.1'
33
+ body: "{\"version\":\"3.1.1\"}"
34
+ http_version: "1.1"
@@ -1,298 +1,384 @@
1
- ---
2
- - !ruby/struct:VCR::HTTPInteraction
3
- request: !ruby/struct:VCR::Request
1
+ ---
2
+ - !ruby/struct:VCR::HTTPInteraction
3
+ request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://gemlock.herokuapp.com:80/rubygems/coffee-rails/latest.json
5
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/updates.json?gems=%7B%22coffee-rails%22%3A%223.1.0%22%2C%22jquery-rails%22%3A%221.0.16%22%2C%22json%22%3A%221.5.0%22%2C%22rails%22%3A%223.1.0%22%2C%22ruby-debug%22%3A%220.10.4%22%2C%22sass-rails%22%3A%223.1.0%22%2C%22sqlite3%22%3A%221.3.4%22%2C%22uglifier%22%3A%221.0.4%22%2C%22unicorn%22%3A%223.1.0%22%7D
6
6
  body: !!null
7
- headers:
8
- accept:
9
- - ! '*/*; q=0.5, application/xml'
10
- accept-encoding:
7
+ str: ""
8
+ "@taguri": x-private:null
9
+ headers:
10
+ accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ accept-encoding:
11
13
  - gzip, deflate
12
- response: !ruby/struct:VCR::Response
13
- status: !ruby/struct:VCR::ResponseStatus
14
+ response: !ruby/struct:VCR::Response
15
+ status: !ruby/struct:VCR::ResponseStatus
14
16
  code: 200
15
17
  message: OK
16
- headers:
17
- cache-control:
18
- - max-age=0, private, must-revalidate
19
- content-type:
20
- - application/json; charset=utf-8
21
- etag:
22
- - ! '"e48bc9e9a623234be1d8911ffbbdd8bc"'
23
- server:
24
- - thin 1.2.11 codename Bat-Shit Crazy
25
- x-runtime:
26
- - '0.261532'
27
- x-ua-compatible:
18
+ headers:
19
+ x-ua-compatible:
28
20
  - IE=Edge,chrome=1
29
- content-length:
30
- - '19'
31
- connection:
21
+ etag:
22
+ - "\"4ec4d6021b6b51fcb08f39d440f606b8\""
23
+ connection:
32
24
  - keep-alive
33
- body: ! '{"version":"3.1.1"}'
34
- http_version: '1.1'
35
- - !ruby/struct:VCR::HTTPInteraction
36
- request: !ruby/struct:VCR::Request
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ x-runtime:
28
+ - "3.794857"
29
+ server:
30
+ - thin 1.2.11 codename Bat-Shit Crazy
31
+ content-length:
32
+ - "94"
33
+ cache-control:
34
+ - max-age=0, private, must-revalidate
35
+ body: "{\"coffee-rails\":\"3.1.1\",\"json\":\"1.6.1\",\"rails\":\"3.1.1\",\"sass-rails\":\"3.1.4\",\"unicorn\":\"4.1.1\"}"
36
+ http_version: "1.1"
37
+ - !ruby/struct:VCR::HTTPInteraction
38
+ request: !ruby/struct:VCR::Request
37
39
  method: :get
38
- uri: http://gemlock.herokuapp.com:80/rubygems/jquery-rails/latest.json
40
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/coffee-rails/latest.json
39
41
  body: !!null
40
- headers:
41
- accept:
42
- - ! '*/*; q=0.5, application/xml'
43
- accept-encoding:
42
+ str: ""
43
+ "@taguri": x-private:null
44
+ headers:
45
+ accept:
46
+ - "*/*; q=0.5, application/xml"
47
+ accept-encoding:
44
48
  - gzip, deflate
45
- response: !ruby/struct:VCR::Response
46
- status: !ruby/struct:VCR::ResponseStatus
49
+ response: !ruby/struct:VCR::Response
50
+ status: !ruby/struct:VCR::ResponseStatus
47
51
  code: 200
48
52
  message: OK
49
- headers:
50
- cache-control:
51
- - max-age=0, private, must-revalidate
52
- content-type:
53
- - application/json; charset=utf-8
54
- etag:
55
- - ! '"ce311130187e1fa77e0100a80a2b4e2d"'
56
- server:
57
- - thin 1.2.11 codename Bat-Shit Crazy
58
- x-runtime:
59
- - '0.081613'
60
- x-ua-compatible:
53
+ headers:
54
+ x-ua-compatible:
61
55
  - IE=Edge,chrome=1
62
- content-length:
63
- - '20'
64
- connection:
56
+ etag:
57
+ - "\"e48bc9e9a623234be1d8911ffbbdd8bc\""
58
+ connection:
65
59
  - keep-alive
66
- body: ! '{"version":"1.0.16"}'
67
- http_version: '1.1'
68
- - !ruby/struct:VCR::HTTPInteraction
69
- request: !ruby/struct:VCR::Request
60
+ content-type:
61
+ - application/json; charset=utf-8
62
+ x-runtime:
63
+ - "0.046095"
64
+ server:
65
+ - thin 1.2.11 codename Bat-Shit Crazy
66
+ cache-control:
67
+ - max-age=0, private, must-revalidate
68
+ transfer-encoding:
69
+ - chunked
70
+ body: "{\"version\":\"3.1.1\"}"
71
+ http_version: "1.1"
72
+ - !ruby/struct:VCR::HTTPInteraction
73
+ request: !ruby/struct:VCR::Request
70
74
  method: :get
71
- uri: http://gemlock.herokuapp.com:80/rubygems/json/latest.json
75
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/jquery-rails/latest.json
72
76
  body: !!null
73
- headers:
74
- accept:
75
- - ! '*/*; q=0.5, application/xml'
76
- accept-encoding:
77
+ str: ""
78
+ "@taguri": x-private:null
79
+ headers:
80
+ accept:
81
+ - "*/*; q=0.5, application/xml"
82
+ accept-encoding:
77
83
  - gzip, deflate
78
- response: !ruby/struct:VCR::Response
79
- status: !ruby/struct:VCR::ResponseStatus
84
+ response: !ruby/struct:VCR::Response
85
+ status: !ruby/struct:VCR::ResponseStatus
80
86
  code: 200
81
87
  message: OK
82
- headers:
83
- cache-control:
84
- - max-age=0, private, must-revalidate
85
- content-type:
88
+ headers:
89
+ x-ua-compatible:
90
+ - IE=Edge,chrome=1
91
+ etag:
92
+ - "\"ce311130187e1fa77e0100a80a2b4e2d\""
93
+ connection:
94
+ - keep-alive
95
+ content-type:
86
96
  - application/json; charset=utf-8
87
- etag:
88
- - ! '"b72b98a3bea046b262dba7c036cd90af"'
89
- server:
97
+ x-runtime:
98
+ - "0.128872"
99
+ server:
90
100
  - thin 1.2.11 codename Bat-Shit Crazy
91
- x-runtime:
92
- - '0.095792'
93
- x-ua-compatible:
94
- - IE=Edge,chrome=1
95
- transfer-encoding:
101
+ cache-control:
102
+ - max-age=0, private, must-revalidate
103
+ transfer-encoding:
96
104
  - chunked
97
- connection:
98
- - keep-alive
99
- body: ! '{"version":"1.6.1"}'
100
- http_version: '1.1'
101
- - !ruby/struct:VCR::HTTPInteraction
102
- request: !ruby/struct:VCR::Request
105
+ body: "{\"version\":\"1.0.16\"}"
106
+ http_version: "1.1"
107
+ - !ruby/struct:VCR::HTTPInteraction
108
+ request: !ruby/struct:VCR::Request
103
109
  method: :get
104
- uri: http://gemlock.herokuapp.com:80/rubygems/rails/latest.json
110
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/json/latest.json
105
111
  body: !!null
106
- headers:
107
- accept:
108
- - ! '*/*; q=0.5, application/xml'
109
- accept-encoding:
112
+ str: ""
113
+ "@taguri": x-private:null
114
+ headers:
115
+ accept:
116
+ - "*/*; q=0.5, application/xml"
117
+ accept-encoding:
110
118
  - gzip, deflate
111
- response: !ruby/struct:VCR::Response
112
- status: !ruby/struct:VCR::ResponseStatus
119
+ response: !ruby/struct:VCR::Response
120
+ status: !ruby/struct:VCR::ResponseStatus
113
121
  code: 200
114
122
  message: OK
115
- headers:
116
- cache-control:
117
- - max-age=0, private, must-revalidate
118
- content-type:
123
+ headers:
124
+ x-ua-compatible:
125
+ - IE=Edge,chrome=1
126
+ etag:
127
+ - "\"b72b98a3bea046b262dba7c036cd90af\""
128
+ connection:
129
+ - keep-alive
130
+ content-type:
119
131
  - application/json; charset=utf-8
120
- etag:
121
- - ! '"e48bc9e9a623234be1d8911ffbbdd8bc"'
122
- server:
132
+ x-runtime:
133
+ - "0.069898"
134
+ server:
123
135
  - thin 1.2.11 codename Bat-Shit Crazy
124
- x-runtime:
125
- - '0.036095'
126
- x-ua-compatible:
127
- - IE=Edge,chrome=1
128
- transfer-encoding:
136
+ cache-control:
137
+ - max-age=0, private, must-revalidate
138
+ transfer-encoding:
129
139
  - chunked
130
- connection:
131
- - keep-alive
132
- body: ! '{"version":"3.1.1"}'
133
- http_version: '1.1'
134
- - !ruby/struct:VCR::HTTPInteraction
135
- request: !ruby/struct:VCR::Request
140
+ body: "{\"version\":\"1.6.1\"}"
141
+ http_version: "1.1"
142
+ - !ruby/struct:VCR::HTTPInteraction
143
+ request: !ruby/struct:VCR::Request
136
144
  method: :get
137
- uri: http://gemlock.herokuapp.com:80/rubygems/ruby-debug/latest.json
145
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/rails/latest.json
138
146
  body: !!null
139
- headers:
140
- accept:
141
- - ! '*/*; q=0.5, application/xml'
142
- accept-encoding:
147
+ str: ""
148
+ "@taguri": x-private:null
149
+ headers:
150
+ accept:
151
+ - "*/*; q=0.5, application/xml"
152
+ accept-encoding:
143
153
  - gzip, deflate
144
- response: !ruby/struct:VCR::Response
145
- status: !ruby/struct:VCR::ResponseStatus
154
+ response: !ruby/struct:VCR::Response
155
+ status: !ruby/struct:VCR::ResponseStatus
146
156
  code: 200
147
157
  message: OK
148
- headers:
149
- cache-control:
150
- - max-age=0, private, must-revalidate
151
- content-type:
158
+ headers:
159
+ x-ua-compatible:
160
+ - IE=Edge,chrome=1
161
+ etag:
162
+ - "\"e48bc9e9a623234be1d8911ffbbdd8bc\""
163
+ connection:
164
+ - keep-alive
165
+ content-type:
152
166
  - application/json; charset=utf-8
153
- etag:
154
- - ! '"e444d5094868df5925e938d14cdb23b9"'
155
- server:
167
+ x-runtime:
168
+ - "0.240258"
169
+ server:
156
170
  - thin 1.2.11 codename Bat-Shit Crazy
157
- x-runtime:
158
- - '0.152282'
159
- x-ua-compatible:
160
- - IE=Edge,chrome=1
161
- transfer-encoding:
171
+ cache-control:
172
+ - max-age=0, private, must-revalidate
173
+ transfer-encoding:
162
174
  - chunked
163
- connection:
164
- - keep-alive
165
- body: ! '{"version":"0.10.4"}'
166
- http_version: '1.1'
167
- - !ruby/struct:VCR::HTTPInteraction
168
- request: !ruby/struct:VCR::Request
175
+ body: "{\"version\":\"3.1.1\"}"
176
+ http_version: "1.1"
177
+ - !ruby/struct:VCR::HTTPInteraction
178
+ request: !ruby/struct:VCR::Request
169
179
  method: :get
170
- uri: http://gemlock.herokuapp.com:80/rubygems/sass-rails/latest.json
180
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/ruby-debug/latest.json
171
181
  body: !!null
172
- headers:
173
- accept:
174
- - ! '*/*; q=0.5, application/xml'
175
- accept-encoding:
182
+ str: ""
183
+ "@taguri": x-private:null
184
+ headers:
185
+ accept:
186
+ - "*/*; q=0.5, application/xml"
187
+ accept-encoding:
176
188
  - gzip, deflate
177
- response: !ruby/struct:VCR::Response
178
- status: !ruby/struct:VCR::ResponseStatus
189
+ response: !ruby/struct:VCR::Response
190
+ status: !ruby/struct:VCR::ResponseStatus
179
191
  code: 200
180
192
  message: OK
181
- headers:
182
- cache-control:
183
- - max-age=0, private, must-revalidate
184
- content-type:
193
+ headers:
194
+ x-ua-compatible:
195
+ - IE=Edge,chrome=1
196
+ etag:
197
+ - "\"e444d5094868df5925e938d14cdb23b9\""
198
+ connection:
199
+ - keep-alive
200
+ content-type:
185
201
  - application/json; charset=utf-8
186
- etag:
187
- - ! '"412d8485398a9d5a18c2e6604442a6ae"'
188
- server:
202
+ x-runtime:
203
+ - "0.034991"
204
+ server:
189
205
  - thin 1.2.11 codename Bat-Shit Crazy
190
- x-runtime:
191
- - '0.060329'
192
- x-ua-compatible:
193
- - IE=Edge,chrome=1
194
- transfer-encoding:
206
+ cache-control:
207
+ - max-age=0, private, must-revalidate
208
+ transfer-encoding:
195
209
  - chunked
196
- connection:
197
- - keep-alive
198
- body: ! '{"version":"3.1.4"}'
199
- http_version: '1.1'
200
- - !ruby/struct:VCR::HTTPInteraction
201
- request: !ruby/struct:VCR::Request
210
+ body: "{\"version\":\"0.10.4\"}"
211
+ http_version: "1.1"
212
+ - !ruby/struct:VCR::HTTPInteraction
213
+ request: !ruby/struct:VCR::Request
202
214
  method: :get
203
- uri: http://gemlock.herokuapp.com:80/rubygems/sqlite3/latest.json
215
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/sass-rails/latest.json
204
216
  body: !!null
205
- headers:
206
- accept:
207
- - ! '*/*; q=0.5, application/xml'
208
- accept-encoding:
217
+ str: ""
218
+ "@taguri": x-private:null
219
+ headers:
220
+ accept:
221
+ - "*/*; q=0.5, application/xml"
222
+ accept-encoding:
209
223
  - gzip, deflate
210
- response: !ruby/struct:VCR::Response
211
- status: !ruby/struct:VCR::ResponseStatus
224
+ response: !ruby/struct:VCR::Response
225
+ status: !ruby/struct:VCR::ResponseStatus
212
226
  code: 200
213
227
  message: OK
214
- headers:
215
- cache-control:
216
- - max-age=0, private, must-revalidate
217
- content-type:
228
+ headers:
229
+ x-ua-compatible:
230
+ - IE=Edge,chrome=1
231
+ etag:
232
+ - "\"412d8485398a9d5a18c2e6604442a6ae\""
233
+ connection:
234
+ - keep-alive
235
+ content-type:
218
236
  - application/json; charset=utf-8
219
- etag:
220
- - ! '"dbb196aab8808e02b0cb33aa4e6a3052"'
221
- server:
237
+ x-runtime:
238
+ - "0.084979"
239
+ server:
222
240
  - thin 1.2.11 codename Bat-Shit Crazy
223
- x-runtime:
224
- - '0.076052'
225
- x-ua-compatible:
226
- - IE=Edge,chrome=1
227
- transfer-encoding:
241
+ cache-control:
242
+ - max-age=0, private, must-revalidate
243
+ transfer-encoding:
228
244
  - chunked
229
- connection:
230
- - keep-alive
231
- body: ! '{"version":"1.3.4"}'
232
- http_version: '1.1'
233
- - !ruby/struct:VCR::HTTPInteraction
234
- request: !ruby/struct:VCR::Request
245
+ body: "{\"version\":\"3.1.4\"}"
246
+ http_version: "1.1"
247
+ - !ruby/struct:VCR::HTTPInteraction
248
+ request: !ruby/struct:VCR::Request
235
249
  method: :get
236
- uri: http://gemlock.herokuapp.com:80/rubygems/uglifier/latest.json
250
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/sqlite3/latest.json
237
251
  body: !!null
238
- headers:
239
- accept:
240
- - ! '*/*; q=0.5, application/xml'
241
- accept-encoding:
252
+ str: ""
253
+ "@taguri": x-private:null
254
+ headers:
255
+ accept:
256
+ - "*/*; q=0.5, application/xml"
257
+ accept-encoding:
242
258
  - gzip, deflate
243
- response: !ruby/struct:VCR::Response
244
- status: !ruby/struct:VCR::ResponseStatus
259
+ response: !ruby/struct:VCR::Response
260
+ status: !ruby/struct:VCR::ResponseStatus
245
261
  code: 200
246
262
  message: OK
247
- headers:
248
- cache-control:
249
- - max-age=0, private, must-revalidate
250
- content-type:
263
+ headers:
264
+ x-ua-compatible:
265
+ - IE=Edge,chrome=1
266
+ etag:
267
+ - "\"dbb196aab8808e02b0cb33aa4e6a3052\""
268
+ connection:
269
+ - keep-alive
270
+ content-type:
251
271
  - application/json; charset=utf-8
252
- etag:
253
- - ! '"939c95352a2d69888fb560ca5e5d8e71"'
254
- server:
272
+ x-runtime:
273
+ - "0.033907"
274
+ server:
255
275
  - thin 1.2.11 codename Bat-Shit Crazy
256
- x-runtime:
257
- - '0.099565'
258
- x-ua-compatible:
276
+ content-length:
277
+ - "19"
278
+ cache-control:
279
+ - max-age=0, private, must-revalidate
280
+ body: "{\"version\":\"1.3.4\"}"
281
+ http_version: "1.1"
282
+ - !ruby/struct:VCR::HTTPInteraction
283
+ request: !ruby/struct:VCR::Request
284
+ method: :get
285
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/uglifier/latest.json
286
+ body: !!null
287
+ str: ""
288
+ "@taguri": x-private:null
289
+ headers:
290
+ accept:
291
+ - "*/*; q=0.5, application/xml"
292
+ accept-encoding:
293
+ - gzip, deflate
294
+ response: !ruby/struct:VCR::Response
295
+ status: !ruby/struct:VCR::ResponseStatus
296
+ code: 200
297
+ message: OK
298
+ headers:
299
+ x-ua-compatible:
259
300
  - IE=Edge,chrome=1
260
- transfer-encoding:
261
- - chunked
262
- connection:
301
+ etag:
302
+ - "\"939c95352a2d69888fb560ca5e5d8e71\""
303
+ connection:
263
304
  - keep-alive
264
- body: ! '{"version":"1.0.4"}'
265
- http_version: '1.1'
266
- - !ruby/struct:VCR::HTTPInteraction
267
- request: !ruby/struct:VCR::Request
305
+ content-type:
306
+ - application/json; charset=utf-8
307
+ x-runtime:
308
+ - "0.046664"
309
+ server:
310
+ - thin 1.2.11 codename Bat-Shit Crazy
311
+ cache-control:
312
+ - max-age=0, private, must-revalidate
313
+ transfer-encoding:
314
+ - chunked
315
+ body: "{\"version\":\"1.0.4\"}"
316
+ http_version: "1.1"
317
+ - !ruby/struct:VCR::HTTPInteraction
318
+ request: !ruby/struct:VCR::Request
268
319
  method: :get
269
- uri: http://gemlock.herokuapp.com:80/rubygems/unicorn/latest.json
320
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/unicorn/latest.json
270
321
  body: !!null
271
- headers:
272
- accept:
273
- - ! '*/*; q=0.5, application/xml'
274
- accept-encoding:
322
+ str: ""
323
+ "@taguri": x-private:null
324
+ headers:
325
+ accept:
326
+ - "*/*; q=0.5, application/xml"
327
+ accept-encoding:
275
328
  - gzip, deflate
276
- response: !ruby/struct:VCR::Response
277
- status: !ruby/struct:VCR::ResponseStatus
329
+ response: !ruby/struct:VCR::Response
330
+ status: !ruby/struct:VCR::ResponseStatus
278
331
  code: 200
279
332
  message: OK
280
- headers:
281
- cache-control:
282
- - max-age=0, private, must-revalidate
283
- content-type:
333
+ headers:
334
+ x-ua-compatible:
335
+ - IE=Edge,chrome=1
336
+ etag:
337
+ - "\"37cd5df77bb485fe8e803759139301f7\""
338
+ connection:
339
+ - keep-alive
340
+ content-type:
284
341
  - application/json; charset=utf-8
285
- etag:
286
- - ! '"37cd5df77bb485fe8e803759139301f7"'
287
- server:
342
+ x-runtime:
343
+ - "0.352779"
344
+ server:
288
345
  - thin 1.2.11 codename Bat-Shit Crazy
289
- x-runtime:
290
- - '0.091082'
291
- x-ua-compatible:
292
- - IE=Edge,chrome=1
293
- transfer-encoding:
346
+ cache-control:
347
+ - max-age=0, private, must-revalidate
348
+ transfer-encoding:
294
349
  - chunked
295
- connection:
350
+ body: "{\"version\":\"4.1.1\"}"
351
+ http_version: "1.1"
352
+ - !ruby/struct:VCR::HTTPInteraction
353
+ request: !ruby/struct:VCR::Request
354
+ method: :get
355
+ uri: http://gemlock.herokuapp.com:80/ruby_gems/updates.json?gems=%7B%22uglifier%22%3A%221.0.4%22%2C%22sqlite3%22%3A%221.3.4%22%2C%22ruby-debug%22%3A%220.10.4%22%2C%22jquery-rails%22%3A%221.0.16%22%2C%22coffee-rails%22%3A%223.1.0%22%2C%22rails%22%3A%223.1.0%22%2C%22sass-rails%22%3A%223.1.0%22%2C%22unicorn%22%3A%223.1.0%22%2C%22json%22%3A%221.5.0%22%7D
356
+ body:
357
+ headers:
358
+ accept:
359
+ - "*/*; q=0.5, application/xml"
360
+ accept-encoding:
361
+ - gzip, deflate
362
+ response: !ruby/struct:VCR::Response
363
+ status: !ruby/struct:VCR::ResponseStatus
364
+ code: 200
365
+ message: OK
366
+ headers:
367
+ x-ua-compatible:
368
+ - IE=Edge,chrome=1
369
+ etag:
370
+ - "\"2677ac46686f26ea7e822ac8f544edbb\""
371
+ connection:
296
372
  - keep-alive
297
- body: ! '{"version":"4.1.1"}'
298
- http_version: '1.1'
373
+ content-type:
374
+ - application/json; charset=utf-8
375
+ x-runtime:
376
+ - "0.633762"
377
+ server:
378
+ - thin 1.2.11 codename Bat-Shit Crazy
379
+ cache-control:
380
+ - max-age=0, private, must-revalidate
381
+ transfer-encoding:
382
+ - chunked
383
+ body: "{\"coffee-rails\":\"3.1.1\",\"rails\":\"3.1.1\",\"sass-rails\":\"3.1.4\",\"unicorn\":\"4.1.1\",\"json\":\"1.6.1\"}"
384
+ http_version: "1.1"