gemlock 0.0.7 → 0.0.8
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/gemlock.rb +4 -1
- data/lib/gemlock/version.rb +1 -1
- data/spec/fixtures/gemlock.yml +3 -0
- data/spec/gemlock_spec.rb +18 -3
- metadata +84 -143
data/lib/gemlock.rb
CHANGED
@@ -41,8 +41,11 @@ module Gemlock
|
|
41
41
|
outdated = {}
|
42
42
|
locked_gemfile_specs.each do |spec|
|
43
43
|
latest_version = lookup_version(spec.name)
|
44
|
+
update_type = difference(spec.version.to_s, latest_version)
|
44
45
|
if Gem::Version.new(latest_version) > Gem::Version.new(spec.version)
|
45
|
-
|
46
|
+
if parsed_config.nil? || parsed_config['releases'].include?(update_type)
|
47
|
+
outdated[spec.name] = latest_version
|
48
|
+
end
|
46
49
|
end
|
47
50
|
hash
|
48
51
|
end
|
data/lib/gemlock/version.rb
CHANGED
data/spec/fixtures/gemlock.yml
CHANGED
data/spec/gemlock_spec.rb
CHANGED
@@ -10,7 +10,7 @@ describe Gemlock do
|
|
10
10
|
["json", "1.5.0"], ["rails", "3.1.0"],
|
11
11
|
["ruby-debug", "0.10.4"], ["sass-rails", "3.1.0"],
|
12
12
|
["sqlite3", "1.3.4"], ["uglifier", "1.0.3"],
|
13
|
-
["unicorn", "
|
13
|
+
["unicorn", "3.1.0"]]
|
14
14
|
|
15
15
|
specs.should match_name_and_versions_of expected
|
16
16
|
end
|
@@ -51,20 +51,35 @@ describe Gemlock do
|
|
51
51
|
describe "#outdated" do
|
52
52
|
use_vcr_cassette
|
53
53
|
|
54
|
-
|
54
|
+
before do
|
55
55
|
Gemlock.stubs(:lockfile).returns((File.join(File.dirname(__FILE__), 'fixtures', 'Gemfile.lock')))
|
56
|
+
end
|
56
57
|
|
58
|
+
it "returns a hash of all outdated gems & versions if no config is present" do
|
57
59
|
expected = {'coffee-rails' => { :current => '3.1.0',
|
58
60
|
:latest => '3.1.1' },
|
59
61
|
'sass-rails' => { :current => '3.1.0',
|
60
62
|
:latest => '3.1.2' },
|
61
|
-
'unicorn' => { :current => '
|
63
|
+
'unicorn' => { :current => '3.1.0',
|
62
64
|
:latest => '4.1.1' },
|
63
65
|
'json' => { :current => '1.5.0',
|
64
66
|
:latest => '1.6.1' } }
|
65
67
|
|
66
68
|
Gemlock.outdated.should eql expected
|
67
69
|
end
|
70
|
+
|
71
|
+
it "returns a hash of outdated gems & versions specificed in config" do
|
72
|
+
Gemlock.stubs(:config_file).returns((File.join(File.dirname(__FILE__), 'fixtures', 'gemlock.yml')))
|
73
|
+
|
74
|
+
expected = {'coffee-rails' => { :current => '3.1.0',
|
75
|
+
:latest => '3.1.1' },
|
76
|
+
'sass-rails' => { :current => '3.1.0',
|
77
|
+
:latest => '3.1.2' },
|
78
|
+
'unicorn' => { :current => '3.1.0',
|
79
|
+
:latest => '4.1.1' } }
|
80
|
+
|
81
|
+
Gemlock.outdated.should eql expected
|
82
|
+
end
|
68
83
|
end
|
69
84
|
|
70
85
|
describe "#config_file" do
|
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
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 0
|
9
|
-
- 7
|
10
|
-
version: 0.0.7
|
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
|
-
|
22
|
-
|
23
|
-
- !ruby/object:Gem::Dependency
|
15
|
+
date: 2011-10-11 00:00:00.000000000Z
|
16
|
+
dependencies:
|
17
|
+
- !ruby/object:Gem::Dependency
|
24
18
|
name: rake
|
25
|
-
|
26
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
19
|
+
requirement: &70120938963580 !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
|
-
|
27
|
+
version_requirements: *70120938963580
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: bundler
|
30
|
+
requirement: &70120938963080 !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
|
-
|
38
|
+
version_requirements: *70120938963080
|
39
|
+
- !ruby/object:Gem::Dependency
|
40
|
+
name: rest-client
|
41
|
+
requirement: &70120938962700 !ruby/object:Gem::Requirement
|
59
42
|
none: false
|
60
|
-
requirements:
|
61
|
-
- -
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
|
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
|
-
|
49
|
+
version_requirements: *70120938962700
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
name: json
|
52
|
+
requirement: &70120938962240 !ruby/object:Gem::Requirement
|
73
53
|
none: false
|
74
|
-
requirements:
|
75
|
-
- -
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
|
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
|
-
|
60
|
+
version_requirements: *70120938962240
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: rspec
|
63
|
+
requirement: &70120938961740 !ruby/object:Gem::Requirement
|
87
64
|
none: false
|
88
|
-
requirements:
|
65
|
+
requirements:
|
89
66
|
- - ~>
|
90
|
-
- !ruby/object:Gem::Version
|
91
|
-
hash: 23
|
92
|
-
segments:
|
93
|
-
- 2
|
94
|
-
- 6
|
95
|
-
- 0
|
67
|
+
- !ruby/object:Gem::Version
|
96
68
|
version: 2.6.0
|
97
69
|
type: :development
|
98
|
-
version_requirements: *id005
|
99
|
-
- !ruby/object:Gem::Dependency
|
100
|
-
name: mocha
|
101
70
|
prerelease: false
|
102
|
-
|
71
|
+
version_requirements: *70120938961740
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: mocha
|
74
|
+
requirement: &70120938961240 !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
|
-
|
82
|
+
version_requirements: *70120938961240
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: pry
|
85
|
+
requirement: &70120938989440 !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
|
-
|
93
|
+
version_requirements: *70120938989440
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: vcr
|
96
|
+
requirement: &70120938988980 !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
|
-
|
104
|
+
version_requirements: *70120938988980
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: fakeweb
|
107
|
+
requirement: &70120938988520 !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
|
-
|
114
|
+
prerelease: false
|
115
|
+
version_requirements: *70120938988520
|
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/rails_cassette.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
|
-
|
209
|
-
|
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
|
-
|
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.
|
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
|