gemlock 0.2.0 → 0.2.1

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.
@@ -36,21 +36,41 @@ module Gemlock
36
36
  YAML.load_file(config) if config
37
37
  end
38
38
 
39
+ def email
40
+ email = parsed_config['email'] if parsed_config
41
+
42
+ if email =~ /^[^@]+@[^@]+$/
43
+ email
44
+ else
45
+ nil
46
+ end
47
+ end
48
+
39
49
  def lookup_version(name)
40
50
  json_hash = JSON.parse(RestClient.get("http://gemlock.herokuapp.com/ruby_gems/#{name}/latest.json"))
41
51
 
42
52
  return json_hash["version"]
43
53
  end
44
54
 
45
- def outdated
55
+ def outdated(automatic = false)
46
56
  specs = {}
47
57
  locked_gemfile_specs.each do |spec|
48
58
  specs[spec.name] = spec.version.to_s
49
59
  end
50
60
 
51
61
  begin
52
- response = RestClient.get("http://gemlock.herokuapp.com/ruby_gems/updates.json",
53
- {:params => {:gems => specs.to_json}})
62
+ types = if parsed_config
63
+ parsed_config['releases']
64
+ else
65
+ nil
66
+ end
67
+
68
+ params = {:gems => specs.to_json }
69
+ params[:types] = types if types
70
+ params[:automatic] = automatic if automatic
71
+ params[:email] = email if email
72
+
73
+ response = RestClient.get("http://gemlock.herokuapp.com/ruby_gems/updates.json", :params => params)
54
74
  gems = JSON.parse(response)
55
75
 
56
76
  gems.inject({}) do |hash, gem|
@@ -79,12 +99,12 @@ module Gemlock
79
99
  end
80
100
 
81
101
  # By default, check for updates every 2 weeks
82
- def initializer
102
+ def initializer(automatic = true)
83
103
  update_interval = Gemlock.update_interval
84
104
  Thread.new(update_interval) do |interval|
85
105
  loop do
86
106
  puts "Checking for gem updates..."
87
- outdated = Gemlock.outdated
107
+ outdated = Gemlock.outdated(automatic)
88
108
  if outdated.empty?
89
109
  puts "All gems up to date!"
90
110
  else
@@ -8,7 +8,9 @@ module Gemlock
8
8
  end
9
9
 
10
10
  initializer 'Check for updates using Gemlock' do
11
- Gemlock.initializer unless Rails.env.test?
11
+ unless Rails.env.test?
12
+ Gemlock.initializer(Rails.env.production?)
13
+ end
12
14
  end
13
15
  end
14
16
  end
@@ -1,3 +1,3 @@
1
1
  module Gemlock
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -25,329 +25,14 @@
25
25
  content-type:
26
26
  - application/json; charset=utf-8
27
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
39
- method: :get
40
- uri: http://gemlock.herokuapp.com:80/ruby_gems/coffee-rails/latest.json
41
- body: !!null
42
- str: ""
43
- "@taguri": x-private:null
44
- headers:
45
- accept:
46
- - "*/*; q=0.5, application/xml"
47
- accept-encoding:
48
- - gzip, deflate
49
- response: !ruby/struct:VCR::Response
50
- status: !ruby/struct:VCR::ResponseStatus
51
- code: 200
52
- message: OK
53
- headers:
54
- x-ua-compatible:
55
- - IE=Edge,chrome=1
56
- etag:
57
- - "\"e48bc9e9a623234be1d8911ffbbdd8bc\""
58
- connection:
59
- - keep-alive
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
74
- method: :get
75
- uri: http://gemlock.herokuapp.com:80/ruby_gems/jquery-rails/latest.json
76
- body: !!null
77
- str: ""
78
- "@taguri": x-private:null
79
- headers:
80
- accept:
81
- - "*/*; q=0.5, application/xml"
82
- accept-encoding:
83
- - gzip, deflate
84
- response: !ruby/struct:VCR::Response
85
- status: !ruby/struct:VCR::ResponseStatus
86
- code: 200
87
- message: OK
88
- headers:
89
- x-ua-compatible:
90
- - IE=Edge,chrome=1
91
- etag:
92
- - "\"ce311130187e1fa77e0100a80a2b4e2d\""
93
- connection:
94
- - keep-alive
95
- content-type:
96
- - application/json; charset=utf-8
97
- x-runtime:
98
- - "0.128872"
28
+ - "0.962356"
99
29
  server:
100
30
  - thin 1.2.11 codename Bat-Shit Crazy
101
31
  cache-control:
102
32
  - max-age=0, private, must-revalidate
103
33
  transfer-encoding:
104
34
  - chunked
105
- body: "{\"version\":\"1.0.16\"}"
106
- http_version: "1.1"
107
- - !ruby/struct:VCR::HTTPInteraction
108
- request: !ruby/struct:VCR::Request
109
- method: :get
110
- uri: http://gemlock.herokuapp.com:80/ruby_gems/json/latest.json
111
- body: !!null
112
- str: ""
113
- "@taguri": x-private:null
114
- headers:
115
- accept:
116
- - "*/*; q=0.5, application/xml"
117
- accept-encoding:
118
- - gzip, deflate
119
- response: !ruby/struct:VCR::Response
120
- status: !ruby/struct:VCR::ResponseStatus
121
- code: 200
122
- message: OK
123
- headers:
124
- x-ua-compatible:
125
- - IE=Edge,chrome=1
126
- etag:
127
- - "\"b72b98a3bea046b262dba7c036cd90af\""
128
- connection:
129
- - keep-alive
130
- content-type:
131
- - application/json; charset=utf-8
132
- x-runtime:
133
- - "0.069898"
134
- server:
135
- - thin 1.2.11 codename Bat-Shit Crazy
136
- cache-control:
137
- - max-age=0, private, must-revalidate
138
- transfer-encoding:
139
- - chunked
140
- body: "{\"version\":\"1.6.1\"}"
141
- http_version: "1.1"
142
- - !ruby/struct:VCR::HTTPInteraction
143
- request: !ruby/struct:VCR::Request
144
- method: :get
145
- uri: http://gemlock.herokuapp.com:80/ruby_gems/rails/latest.json
146
- body: !!null
147
- str: ""
148
- "@taguri": x-private:null
149
- headers:
150
- accept:
151
- - "*/*; q=0.5, application/xml"
152
- accept-encoding:
153
- - gzip, deflate
154
- response: !ruby/struct:VCR::Response
155
- status: !ruby/struct:VCR::ResponseStatus
156
- code: 200
157
- message: OK
158
- headers:
159
- x-ua-compatible:
160
- - IE=Edge,chrome=1
161
- etag:
162
- - "\"e48bc9e9a623234be1d8911ffbbdd8bc\""
163
- connection:
164
- - keep-alive
165
- content-type:
166
- - application/json; charset=utf-8
167
- x-runtime:
168
- - "0.240258"
169
- server:
170
- - thin 1.2.11 codename Bat-Shit Crazy
171
- cache-control:
172
- - max-age=0, private, must-revalidate
173
- transfer-encoding:
174
- - chunked
175
- body: "{\"version\":\"3.1.1\"}"
176
- http_version: "1.1"
177
- - !ruby/struct:VCR::HTTPInteraction
178
- request: !ruby/struct:VCR::Request
179
- method: :get
180
- uri: http://gemlock.herokuapp.com:80/ruby_gems/ruby-debug/latest.json
181
- body: !!null
182
- str: ""
183
- "@taguri": x-private:null
184
- headers:
185
- accept:
186
- - "*/*; q=0.5, application/xml"
187
- accept-encoding:
188
- - gzip, deflate
189
- response: !ruby/struct:VCR::Response
190
- status: !ruby/struct:VCR::ResponseStatus
191
- code: 200
192
- message: OK
193
- headers:
194
- x-ua-compatible:
195
- - IE=Edge,chrome=1
196
- etag:
197
- - "\"e444d5094868df5925e938d14cdb23b9\""
198
- connection:
199
- - keep-alive
200
- content-type:
201
- - application/json; charset=utf-8
202
- x-runtime:
203
- - "0.034991"
204
- server:
205
- - thin 1.2.11 codename Bat-Shit Crazy
206
- cache-control:
207
- - max-age=0, private, must-revalidate
208
- transfer-encoding:
209
- - chunked
210
- body: "{\"version\":\"0.10.4\"}"
211
- http_version: "1.1"
212
- - !ruby/struct:VCR::HTTPInteraction
213
- request: !ruby/struct:VCR::Request
214
- method: :get
215
- uri: http://gemlock.herokuapp.com:80/ruby_gems/sass-rails/latest.json
216
- body: !!null
217
- str: ""
218
- "@taguri": x-private:null
219
- headers:
220
- accept:
221
- - "*/*; q=0.5, application/xml"
222
- accept-encoding:
223
- - gzip, deflate
224
- response: !ruby/struct:VCR::Response
225
- status: !ruby/struct:VCR::ResponseStatus
226
- code: 200
227
- message: OK
228
- headers:
229
- x-ua-compatible:
230
- - IE=Edge,chrome=1
231
- etag:
232
- - "\"412d8485398a9d5a18c2e6604442a6ae\""
233
- connection:
234
- - keep-alive
235
- content-type:
236
- - application/json; charset=utf-8
237
- x-runtime:
238
- - "0.084979"
239
- server:
240
- - thin 1.2.11 codename Bat-Shit Crazy
241
- cache-control:
242
- - max-age=0, private, must-revalidate
243
- transfer-encoding:
244
- - chunked
245
- body: "{\"version\":\"3.1.4\"}"
246
- http_version: "1.1"
247
- - !ruby/struct:VCR::HTTPInteraction
248
- request: !ruby/struct:VCR::Request
249
- method: :get
250
- uri: http://gemlock.herokuapp.com:80/ruby_gems/sqlite3/latest.json
251
- body: !!null
252
- str: ""
253
- "@taguri": x-private:null
254
- headers:
255
- accept:
256
- - "*/*; q=0.5, application/xml"
257
- accept-encoding:
258
- - gzip, deflate
259
- response: !ruby/struct:VCR::Response
260
- status: !ruby/struct:VCR::ResponseStatus
261
- code: 200
262
- message: OK
263
- headers:
264
- x-ua-compatible:
265
- - IE=Edge,chrome=1
266
- etag:
267
- - "\"dbb196aab8808e02b0cb33aa4e6a3052\""
268
- connection:
269
- - keep-alive
270
- content-type:
271
- - application/json; charset=utf-8
272
- x-runtime:
273
- - "0.033907"
274
- server:
275
- - thin 1.2.11 codename Bat-Shit Crazy
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:
300
- - IE=Edge,chrome=1
301
- etag:
302
- - "\"939c95352a2d69888fb560ca5e5d8e71\""
303
- connection:
304
- - keep-alive
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
319
- method: :get
320
- uri: http://gemlock.herokuapp.com:80/ruby_gems/unicorn/latest.json
321
- body: !!null
322
- str: ""
323
- "@taguri": x-private:null
324
- headers:
325
- accept:
326
- - "*/*; q=0.5, application/xml"
327
- accept-encoding:
328
- - gzip, deflate
329
- response: !ruby/struct:VCR::Response
330
- status: !ruby/struct:VCR::ResponseStatus
331
- code: 200
332
- message: OK
333
- headers:
334
- x-ua-compatible:
335
- - IE=Edge,chrome=1
336
- etag:
337
- - "\"37cd5df77bb485fe8e803759139301f7\""
338
- connection:
339
- - keep-alive
340
- content-type:
341
- - application/json; charset=utf-8
342
- x-runtime:
343
- - "0.352779"
344
- server:
345
- - thin 1.2.11 codename Bat-Shit Crazy
346
- cache-control:
347
- - max-age=0, private, must-revalidate
348
- transfer-encoding:
349
- - chunked
350
- body: "{\"version\":\"4.1.1\"}"
35
+ body: "{\"coffee-rails\":\"3.1.1\",\"json\":\"1.6.1\",\"rails\":\"3.1.1\",\"sass-rails\":\"3.1.4\",\"unicorn\":\"4.1.1\"}"
351
36
  http_version: "1.1"
352
37
  - !ruby/struct:VCR::HTTPInteraction
353
38
  request: !ruby/struct:VCR::Request
@@ -373,7 +58,7 @@
373
58
  content-type:
374
59
  - application/json; charset=utf-8
375
60
  x-runtime:
376
- - "0.633762"
61
+ - "0.644295"
377
62
  server:
378
63
  - thin 1.2.11 codename Bat-Shit Crazy
379
64
  cache-control:
@@ -79,6 +79,16 @@ describe Gemlock do
79
79
  Gemlock.stubs(:lockfile).returns((File.join(File.dirname(__FILE__), 'fixtures', 'Gemfile.lock')))
80
80
  end
81
81
 
82
+ let(:in_spec) { {"coffee-rails" => "3.1.0",
83
+ "jquery-rails" => "1.0.16",
84
+ "json" => "1.5.0",
85
+ "rails" => "3.1.0",
86
+ "ruby-debug" => "0.10.4",
87
+ "sass-rails" => "3.1.0",
88
+ "sqlite3" => "1.3.4",
89
+ "uglifier" => "1.0.4",
90
+ "unicorn" => "3.1.0"} }
91
+
82
92
  it "returns a hash of all outdated gems" do
83
93
  expected = {'coffee-rails' => { :current => '3.1.0',
84
94
  :latest => '3.1.1' },
@@ -95,22 +105,29 @@ describe Gemlock do
95
105
  end
96
106
 
97
107
  it "checks for each gem individually if the bulk check fails" do
98
- in_spec = {"coffee-rails" => "3.1.0",
99
- "jquery-rails" => "1.0.16",
100
- "json" => "1.5.0",
101
- "rails" => "3.1.0",
102
- "ruby-debug" => "0.10.4",
103
- "sass-rails" => "3.1.0",
104
- "sqlite3" => "1.3.4",
105
- "uglifier" => "1.0.4",
106
- "unicorn" => "3.1.0"}
107
-
108
108
  RestClient.expects(:get).with("http://gemlock.herokuapp.com/ruby_gems/updates.json",
109
- {:params => {:gems => in_spec.to_json}}).raises(RestClient::GatewayTimeout)
109
+ {:params => {:gems => in_spec.to_json}}).raises(RestClient::GatewayTimeout)
110
110
  Gemlock.expects(:check_gems_individually).with(in_spec)
111
111
 
112
112
  Gemlock.outdated
113
113
  end
114
+
115
+ it "sets an flag if it is an automatic check" do
116
+ RestClient.expects(:get).with("http://gemlock.herokuapp.com/ruby_gems/updates.json",
117
+ {:params => {:gems => in_spec.to_json,
118
+ :automatic => true}}).returns('{}')
119
+
120
+ Gemlock.outdated(true)
121
+ end
122
+
123
+ it "sends the email address in config to the server if present" do
124
+ Gemlock.stubs(:parsed_config).returns({'email' => 'hi@mikeskalnik.com'})
125
+ RestClient.expects(:get).with("http://gemlock.herokuapp.com/ruby_gems/updates.json",
126
+ {:params => {:gems => in_spec.to_json,
127
+ :email => 'hi@mikeskalnik.com'}}).returns('{}')
128
+
129
+ Gemlock.outdated
130
+ end
114
131
  end
115
132
 
116
133
  describe ".config" do
@@ -159,6 +176,23 @@ describe Gemlock do
159
176
  end
160
177
  end
161
178
 
179
+ describe ".email" do
180
+ it "returns the email in the config if present and valid" do
181
+ Gemlock.stubs(:parsed_config).returns({'email' => 'hi@mikeskalnik.com'})
182
+ Gemlock.email.should eql 'hi@mikeskalnik.com'
183
+ end
184
+
185
+ it "returns nil if the email in the config is invalid" do
186
+ Gemlock.stubs(:parsed_config).returns({'email' => 'd@er@p.com'})
187
+ Gemlock.email.should be_nil
188
+ end
189
+
190
+ it "returns nil if there is no config" do
191
+ Gemlock.stubs(:parsed_config).returns(nil)
192
+ Gemlock.email.should be_nil
193
+ end
194
+ end
195
+
162
196
  describe ".difference" do
163
197
  it "returns 'major' if there is a major version difference between the two gem versions" do
164
198
  Gemlock.difference("2.0.0", "3.0.0").should eql "major"
metadata CHANGED
@@ -1,15 +1,10 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: gemlock
3
- version: !ruby/object:Gem::Version
4
- hash: 23
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.1
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 2
9
- - 0
10
- version: 0.2.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Mike Skalnik
14
9
  - Brian Gardner
15
10
  - Tyler Hastings
@@ -17,159 +12,114 @@ authors:
17
12
  autorequire:
18
13
  bindir: bin
19
14
  cert_chain: []
20
-
21
- date: 2011-11-08 00:00:00 Z
22
- dependencies:
23
- - !ruby/object:Gem::Dependency
15
+ date: 2011-11-09 00:00:00.000000000Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
24
18
  name: rake
25
- prerelease: false
26
- requirement: &id001 !ruby/object:Gem::Requirement
19
+ requirement: &70366565372100 !ruby/object:Gem::Requirement
27
20
  none: false
28
- requirements:
29
- - - ">="
30
- - !ruby/object:Gem::Version
31
- hash: 49
32
- segments:
33
- - 0
34
- - 8
35
- - 7
21
+ requirements:
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
36
24
  version: 0.8.7
37
25
  type: :runtime
38
- version_requirements: *id001
39
- - !ruby/object:Gem::Dependency
40
- name: bundler
41
26
  prerelease: false
42
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ version_requirements: *70366565372100
28
+ - !ruby/object:Gem::Dependency
29
+ name: bundler
30
+ requirement: &70366565371560 !ruby/object:Gem::Requirement
43
31
  none: false
44
- requirements:
32
+ requirements:
45
33
  - - ~>
46
- - !ruby/object:Gem::Version
47
- hash: 23
48
- segments:
49
- - 1
50
- - 0
51
- - 0
34
+ - !ruby/object:Gem::Version
52
35
  version: 1.0.0
53
36
  type: :runtime
54
- version_requirements: *id002
55
- - !ruby/object:Gem::Dependency
56
- name: rest-client
57
37
  prerelease: false
58
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ version_requirements: *70366565371560
39
+ - !ruby/object:Gem::Dependency
40
+ name: rest-client
41
+ requirement: &70366565371040 !ruby/object:Gem::Requirement
59
42
  none: false
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- hash: 3
64
- segments:
65
- - 0
66
- version: "0"
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
67
47
  type: :runtime
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
- name: json
71
48
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
49
+ version_requirements: *70366565371040
50
+ - !ruby/object:Gem::Dependency
51
+ name: json
52
+ requirement: &70366565370460 !ruby/object:Gem::Requirement
73
53
  none: false
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- hash: 3
78
- segments:
79
- - 0
80
- version: "0"
54
+ requirements:
55
+ - - ! '>='
56
+ - !ruby/object:Gem::Version
57
+ version: '0'
81
58
  type: :runtime
82
- version_requirements: *id004
83
- - !ruby/object:Gem::Dependency
84
- name: rspec
85
59
  prerelease: false
86
- requirement: &id005 !ruby/object:Gem::Requirement
60
+ version_requirements: *70366565370460
61
+ - !ruby/object:Gem::Dependency
62
+ name: rspec
63
+ requirement: &70366565369860 !ruby/object:Gem::Requirement
87
64
  none: false
88
- requirements:
65
+ requirements:
89
66
  - - ~>
90
- - !ruby/object:Gem::Version
91
- hash: 19
92
- segments:
93
- - 2
94
- - 7
95
- - 0
67
+ - !ruby/object:Gem::Version
96
68
  version: 2.7.0
97
69
  type: :development
98
- version_requirements: *id005
99
- - !ruby/object:Gem::Dependency
100
- name: mocha
101
70
  prerelease: false
102
- requirement: &id006 !ruby/object:Gem::Requirement
71
+ version_requirements: *70366565369860
72
+ - !ruby/object:Gem::Dependency
73
+ name: mocha
74
+ requirement: &70366565369240 !ruby/object:Gem::Requirement
103
75
  none: false
104
- requirements:
76
+ requirements:
105
77
  - - ~>
106
- - !ruby/object:Gem::Version
107
- hash: 55
108
- segments:
109
- - 0
110
- - 10
111
- - 0
78
+ - !ruby/object:Gem::Version
112
79
  version: 0.10.0
113
80
  type: :development
114
- version_requirements: *id006
115
- - !ruby/object:Gem::Dependency
116
- name: pry
117
81
  prerelease: false
118
- requirement: &id007 !ruby/object:Gem::Requirement
82
+ version_requirements: *70366565369240
83
+ - !ruby/object:Gem::Dependency
84
+ name: pry
85
+ requirement: &70366565368660 !ruby/object:Gem::Requirement
119
86
  none: false
120
- requirements:
121
- - - ">="
122
- - !ruby/object:Gem::Version
123
- hash: 49
124
- segments:
125
- - 0
126
- - 9
127
- - 5
87
+ requirements:
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
128
90
  version: 0.9.5
129
91
  type: :development
130
- version_requirements: *id007
131
- - !ruby/object:Gem::Dependency
132
- name: vcr
133
92
  prerelease: false
134
- requirement: &id008 !ruby/object:Gem::Requirement
93
+ version_requirements: *70366565368660
94
+ - !ruby/object:Gem::Dependency
95
+ name: vcr
96
+ requirement: &70366565368080 !ruby/object:Gem::Requirement
135
97
  none: false
136
- requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- hash: 59
140
- segments:
141
- - 1
142
- - 11
143
- - 0
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
144
101
  version: 1.11.0
145
102
  type: :development
146
- version_requirements: *id008
147
- - !ruby/object:Gem::Dependency
148
- name: fakeweb
149
103
  prerelease: false
150
- requirement: &id009 !ruby/object:Gem::Requirement
104
+ version_requirements: *70366565368080
105
+ - !ruby/object:Gem::Dependency
106
+ name: fakeweb
107
+ requirement: &70366565367500 !ruby/object:Gem::Requirement
151
108
  none: false
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- hash: 27
156
- segments:
157
- - 1
158
- - 3
159
- - 0
109
+ requirements:
110
+ - - ! '>='
111
+ - !ruby/object:Gem::Version
160
112
  version: 1.3.0
161
113
  type: :development
162
- version_requirements: *id009
114
+ prerelease: false
115
+ version_requirements: *70366565367500
163
116
  description: When installed, allows a user to check for updates in their Rails application
164
- email:
117
+ email:
165
118
  - mskalnik@gatech.edu
166
119
  executables: []
167
-
168
120
  extensions: []
169
-
170
121
  extra_rdoc_files: []
171
-
172
- files:
122
+ files:
173
123
  - .gitignore
174
124
  - .rspec
175
125
  - .travis.yml
@@ -192,40 +142,31 @@ files:
192
142
  - spec/fixtures/vcr_cassettes/Gemlock/_outdated.yml
193
143
  - spec/gemlock_spec.rb
194
144
  - spec/spec_helper.rb
195
- homepage: ""
145
+ homepage: ''
196
146
  licenses: []
197
-
198
147
  post_install_message:
199
148
  rdoc_options: []
200
-
201
- require_paths:
149
+ require_paths:
202
150
  - lib
203
- required_ruby_version: !ruby/object:Gem::Requirement
151
+ required_ruby_version: !ruby/object:Gem::Requirement
204
152
  none: false
205
- requirements:
206
- - - ">="
207
- - !ruby/object:Gem::Version
208
- hash: 3
209
- segments:
210
- - 0
211
- version: "0"
212
- required_rubygems_version: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ! '>='
155
+ - !ruby/object:Gem::Version
156
+ version: '0'
157
+ required_rubygems_version: !ruby/object:Gem::Requirement
213
158
  none: false
214
- requirements:
215
- - - ">="
216
- - !ruby/object:Gem::Version
217
- hash: 3
218
- segments:
219
- - 0
220
- version: "0"
159
+ requirements:
160
+ - - ! '>='
161
+ - !ruby/object:Gem::Version
162
+ version: '0'
221
163
  requirements: []
222
-
223
164
  rubyforge_project: gemlock
224
- rubygems_version: 1.8.10
165
+ rubygems_version: 1.8.6
225
166
  signing_key:
226
167
  specification_version: 3
227
168
  summary: Get notified when there are updates for gems in your Rails application
228
- test_files:
169
+ test_files:
229
170
  - spec/fixtures/Gemfile
230
171
  - spec/fixtures/Gemfile.lock
231
172
  - spec/fixtures/gemlock.yml