stickler 2.1.2 → 2.1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +4 -0
- data/HISTORY.asciidoc +6 -0
- data/README.asciidoc +7 -0
- data/Rakefile +15 -5
- data/lib/stickler/client.rb +4 -1
- data/lib/stickler/middleware/compression.rb +1 -0
- data/lib/stickler/server/views/index.erb +1 -1
- data/lib/stickler/server/views/layout.erb +0 -1
- data/lib/stickler/version.rb +1 -1
- data/spec/spec_lite_spec.rb +9 -0
- data/tasks/bundler.rake +13 -0
- data/tasks/contribute.rake +36 -0
- metadata +106 -180
- data/.bnsignore +0 -14
data/.gitignore
CHANGED
data/HISTORY.asciidoc
CHANGED
@@ -2,6 +2,12 @@ Stickler Changelog
|
|
2
2
|
==================
|
3
3
|
Jeremy Hinegardner <jeremy@hinegardner.org>
|
4
4
|
|
5
|
+
Version 2.1.3 - 2011-07-24
|
6
|
+
--------------------------
|
7
|
+
* Do not feed ARGV strings directly into Gem::Version (copiousfreetime/stickler#4)
|
8
|
+
* In web page, display gems in sort order, not lexical order (copiousfreetime/stickler#16)
|
9
|
+
* Make sure Rack body's respond to #each (copiousfreetime/stickler#17)
|
10
|
+
|
5
11
|
Version 2.1.2 - 2011-03-31
|
6
12
|
--------------------------
|
7
13
|
* Fix bug introduced in 2.1.1 where .gemspec urls would match but .gem urls would not
|
data/README.asciidoc
CHANGED
@@ -132,6 +132,13 @@ View which manual?
|
|
132
132
|
>
|
133
133
|
---------------------------------
|
134
134
|
|
135
|
+
Development
|
136
|
+
-----------
|
137
|
+
If you want to do development on stickler, I suggest using
|
138
|
+
https://rvm.beginrescueend.com/[RVM] and creating a gemset for stickler.
|
139
|
+
|
140
|
+
Then run 'rake how_to_contribute'
|
141
|
+
|
135
142
|
|
136
143
|
Credits
|
137
144
|
-------
|
data/Rakefile
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
begin
|
2
|
+
USING_BONES_VERSION = '3.7.0'
|
2
3
|
require 'bones'
|
3
4
|
rescue LoadError
|
4
|
-
|
5
|
+
load 'tasks/contribute.rake'
|
6
|
+
Rake.application.invoke_task( :help )
|
5
7
|
end
|
6
8
|
|
7
9
|
task :default => 'spec:run'
|
@@ -36,16 +38,24 @@ Primarily, you would want to use Stickler if:
|
|
36
38
|
3. You want both (1) and (2) in the same server.
|
37
39
|
_
|
38
40
|
|
41
|
+
# I'm explicitly controlling the version of bones.
|
42
|
+
|
39
43
|
|
40
44
|
depend_on 'sinatra' , '~> 1.2.1'
|
41
45
|
depend_on 'addressable', '~> 2.2.4'
|
42
|
-
depend_on 'excon' , '~> 0.5
|
46
|
+
depend_on 'excon' , '~> 0.6.5'
|
43
47
|
depend_on 'trollop' , '~> 1.16.2'
|
44
48
|
depend_on 'logging' , '~> 1.5.0'
|
45
49
|
|
46
|
-
depend_on '
|
47
|
-
depend_on '
|
50
|
+
depend_on 'rake' , '~> 0.9.2'
|
51
|
+
depend_on 'bones' , "~> #{USING_BONES_VERSION}", :development => true
|
52
|
+
depend_on 'rack-test' , '~> 0.6.0', :development => true
|
48
53
|
depend_on 'bones-extras', '~> 1.3.0', :development => true
|
49
54
|
depend_on 'builder' , '~> 3.0.0', :development => true
|
50
|
-
depend_on 'rspec' , '~> 2.
|
55
|
+
depend_on 'rspec' , '~> 2.6.0', :development => true
|
51
56
|
}
|
57
|
+
|
58
|
+
# Sorry Tim, I need to manage my own bones version
|
59
|
+
::Bones.config.gem._spec.dependencies.delete_if do |d|
|
60
|
+
d.name == 'bones' and d.requirement.to_s =~ /^>=/
|
61
|
+
end
|
data/lib/stickler/client.rb
CHANGED
@@ -12,8 +12,11 @@ module Stickler
|
|
12
12
|
::Stickler::Client::ConfigFile.new
|
13
13
|
end
|
14
14
|
|
15
|
+
# Create a new client
|
16
|
+
#
|
17
|
+
# Takes an argv like array as a parameter.
|
15
18
|
def initialize( argv = ARGV )
|
16
|
-
@argv
|
19
|
+
@argv = argv.collect { |e| e.dup }
|
17
20
|
end
|
18
21
|
|
19
22
|
def parser
|
@@ -22,7 +22,7 @@
|
|
22
22
|
<li <%= 'class="stripe"' if 1 == (idx % 2 )%> >
|
23
23
|
<div class="gem">
|
24
24
|
<div class="name"><h3><%= spec_group.first.name %></h3></div>
|
25
|
-
<div class="version"><strong>Version(s):</strong><br /><%= spec_group.
|
25
|
+
<div class="version"><strong>Version(s):</strong><br /><%= spec_group.sort.collect{ |spec| "<a href=\"/gems/#{spec.file_name}\">#{spec.version_platform}</a>" }.reverse.join(" ") %></strong></div>
|
26
26
|
</div>
|
27
27
|
</li>
|
28
28
|
<% end %>
|
data/lib/stickler/version.rb
CHANGED
data/spec/spec_lite_spec.rb
CHANGED
@@ -86,4 +86,13 @@ describe Stickler::SpecLite do
|
|
86
86
|
spec = Stickler::SpecLite.new( 'prerelease', '1.2.3' )
|
87
87
|
spec.should_not be_prerelease
|
88
88
|
end
|
89
|
+
|
90
|
+
it "needs to be version sortable" do
|
91
|
+
a = Stickler::SpecLite.new( "foo", "1.0.3" )
|
92
|
+
b = Stickler::SpecLite.new( "foo", "1.0.22" )
|
93
|
+
c = Stickler::SpecLite.new( "foo", "1.0.17" )
|
94
|
+
|
95
|
+
[ b, a, c ].sort.should == [ a, c, b ]
|
96
|
+
|
97
|
+
end
|
89
98
|
end
|
data/tasks/bundler.rake
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
desc "Instructions on how to contribute to stickler"
|
2
|
+
task :help do
|
3
|
+
abort <<-_banner
|
4
|
+
-----------------------------------------------------------------------
|
5
|
+
I see you are wanting to do some development on stickler. You will
|
6
|
+
need to install the 'bones' gem first.
|
7
|
+
|
8
|
+
% gem install bones -v #{USING_BONES_VERSION}
|
9
|
+
|
10
|
+
The easiest way to start after that is with the
|
11
|
+
'install:dependencies' task:
|
12
|
+
|
13
|
+
% rake gem:install_dependencies
|
14
|
+
|
15
|
+
If you use bundler, then you will need to first create the Gemfile
|
16
|
+
and then run 'bundle install':
|
17
|
+
|
18
|
+
% rake bundle:gemfile
|
19
|
+
% bundle install
|
20
|
+
|
21
|
+
Now you are ready to work on stickler. Please submit bugs and pull
|
22
|
+
requests to:
|
23
|
+
|
24
|
+
https://github.com/copiousfreetime/stickler
|
25
|
+
|
26
|
+
Thanks!
|
27
|
+
|
28
|
+
-jeremy
|
29
|
+
-----------------------------------------------------------------------
|
30
|
+
_banner
|
31
|
+
end
|
32
|
+
|
33
|
+
desc "(Alias for 'help') Instructions on how to contribute to stickler"
|
34
|
+
task 'how_to_contribute' => :help
|
35
|
+
desc "(Alias for 'help') Instructions on how to contribute to stickler"
|
36
|
+
task '==> I WANT TO CONTRIBUTE <==' => :help
|
metadata
CHANGED
@@ -1,217 +1,149 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: stickler
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.1.3
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 2
|
8
|
-
- 1
|
9
|
-
- 2
|
10
|
-
version: 2.1.2
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Jeremy Hinegardner
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2011-07-24 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
22
15
|
name: sinatra
|
23
|
-
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2158143400 !ruby/object:Gem::Requirement
|
25
17
|
none: false
|
26
|
-
requirements:
|
18
|
+
requirements:
|
27
19
|
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 29
|
30
|
-
segments:
|
31
|
-
- 1
|
32
|
-
- 2
|
33
|
-
- 1
|
20
|
+
- !ruby/object:Gem::Version
|
34
21
|
version: 1.2.1
|
35
22
|
type: :runtime
|
36
|
-
version_requirements: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
name: addressable
|
39
23
|
prerelease: false
|
40
|
-
|
24
|
+
version_requirements: *2158143400
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: addressable
|
27
|
+
requirement: &2158142480 !ruby/object:Gem::Requirement
|
41
28
|
none: false
|
42
|
-
requirements:
|
29
|
+
requirements:
|
43
30
|
- - ~>
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
hash: 15
|
46
|
-
segments:
|
47
|
-
- 2
|
48
|
-
- 2
|
49
|
-
- 4
|
31
|
+
- !ruby/object:Gem::Version
|
50
32
|
version: 2.2.4
|
51
33
|
type: :runtime
|
52
|
-
version_requirements: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
|
-
name: excon
|
55
34
|
prerelease: false
|
56
|
-
|
35
|
+
version_requirements: *2158142480
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: excon
|
38
|
+
requirement: &2158141660 !ruby/object:Gem::Requirement
|
57
39
|
none: false
|
58
|
-
requirements:
|
40
|
+
requirements:
|
59
41
|
- - ~>
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
|
62
|
-
segments:
|
63
|
-
- 0
|
64
|
-
- 5
|
65
|
-
- 8
|
66
|
-
version: 0.5.8
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 0.6.5
|
67
44
|
type: :runtime
|
68
|
-
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: trollop
|
71
45
|
prerelease: false
|
72
|
-
|
46
|
+
version_requirements: *2158141660
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: trollop
|
49
|
+
requirement: &2158140940 !ruby/object:Gem::Requirement
|
73
50
|
none: false
|
74
|
-
requirements:
|
51
|
+
requirements:
|
75
52
|
- - ~>
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
hash: 83
|
78
|
-
segments:
|
79
|
-
- 1
|
80
|
-
- 16
|
81
|
-
- 2
|
53
|
+
- !ruby/object:Gem::Version
|
82
54
|
version: 1.16.2
|
83
55
|
type: :runtime
|
84
|
-
version_requirements: *id004
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
|
-
name: logging
|
87
56
|
prerelease: false
|
88
|
-
|
57
|
+
version_requirements: *2158140940
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: logging
|
60
|
+
requirement: &2158140300 !ruby/object:Gem::Requirement
|
89
61
|
none: false
|
90
|
-
requirements:
|
62
|
+
requirements:
|
91
63
|
- - ~>
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
hash: 3
|
94
|
-
segments:
|
95
|
-
- 1
|
96
|
-
- 5
|
97
|
-
- 0
|
64
|
+
- !ruby/object:Gem::Version
|
98
65
|
version: 1.5.0
|
99
66
|
type: :runtime
|
100
|
-
version_requirements: *id005
|
101
|
-
- !ruby/object:Gem::Dependency
|
102
|
-
name: bones
|
103
67
|
prerelease: false
|
104
|
-
|
68
|
+
version_requirements: *2158140300
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: &2158139480 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ~>
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 0.9.2
|
77
|
+
type: :runtime
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: *2158139480
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: bones
|
82
|
+
requirement: &2158138500 !ruby/object:Gem::Requirement
|
105
83
|
none: false
|
106
|
-
requirements:
|
84
|
+
requirements:
|
107
85
|
- - ~>
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
|
110
|
-
segments:
|
111
|
-
- 3
|
112
|
-
- 6
|
113
|
-
- 5
|
114
|
-
version: 3.6.5
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: 3.7.0
|
115
88
|
type: :development
|
116
|
-
version_requirements: *id006
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: rack-test
|
119
89
|
prerelease: false
|
120
|
-
|
90
|
+
version_requirements: *2158138500
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: rack-test
|
93
|
+
requirement: &2158137600 !ruby/object:Gem::Requirement
|
121
94
|
none: false
|
122
|
-
requirements:
|
95
|
+
requirements:
|
123
96
|
- - ~>
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
|
126
|
-
segments:
|
127
|
-
- 0
|
128
|
-
- 5
|
129
|
-
- 7
|
130
|
-
version: 0.5.7
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 0.6.0
|
131
99
|
type: :development
|
132
|
-
version_requirements: *id007
|
133
|
-
- !ruby/object:Gem::Dependency
|
134
|
-
name: bones-extras
|
135
100
|
prerelease: false
|
136
|
-
|
101
|
+
version_requirements: *2158137600
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: bones-extras
|
104
|
+
requirement: &2158136260 !ruby/object:Gem::Requirement
|
137
105
|
none: false
|
138
|
-
requirements:
|
106
|
+
requirements:
|
139
107
|
- - ~>
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
hash: 27
|
142
|
-
segments:
|
143
|
-
- 1
|
144
|
-
- 3
|
145
|
-
- 0
|
108
|
+
- !ruby/object:Gem::Version
|
146
109
|
version: 1.3.0
|
147
110
|
type: :development
|
148
|
-
version_requirements: *id008
|
149
|
-
- !ruby/object:Gem::Dependency
|
150
|
-
name: builder
|
151
111
|
prerelease: false
|
152
|
-
|
112
|
+
version_requirements: *2158136260
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: builder
|
115
|
+
requirement: &2158135360 !ruby/object:Gem::Requirement
|
153
116
|
none: false
|
154
|
-
requirements:
|
117
|
+
requirements:
|
155
118
|
- - ~>
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
hash: 7
|
158
|
-
segments:
|
159
|
-
- 3
|
160
|
-
- 0
|
161
|
-
- 0
|
119
|
+
- !ruby/object:Gem::Version
|
162
120
|
version: 3.0.0
|
163
121
|
type: :development
|
164
|
-
version_requirements: *id009
|
165
|
-
- !ruby/object:Gem::Dependency
|
166
|
-
name: rspec
|
167
122
|
prerelease: false
|
168
|
-
|
123
|
+
version_requirements: *2158135360
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: rspec
|
126
|
+
requirement: &2158134380 !ruby/object:Gem::Requirement
|
169
127
|
none: false
|
170
|
-
requirements:
|
128
|
+
requirements:
|
171
129
|
- - ~>
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
|
174
|
-
segments:
|
175
|
-
- 2
|
176
|
-
- 5
|
177
|
-
- 0
|
178
|
-
version: 2.5.0
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 2.6.0
|
179
132
|
type: :development
|
180
|
-
version_requirements: *id010
|
181
|
-
- !ruby/object:Gem::Dependency
|
182
|
-
name: bones
|
183
133
|
prerelease: false
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
segments:
|
191
|
-
- 3
|
192
|
-
- 6
|
193
|
-
- 5
|
194
|
-
version: 3.6.5
|
195
|
-
type: :development
|
196
|
-
version_requirements: *id011
|
197
|
-
description: |
|
198
|
-
Stickler is a tool to organize and maintain an internal gem repository.
|
199
|
-
Primarily, you would want to use Stickler if:
|
200
|
-
|
201
|
-
1. You have proprietary gems that you want to have available via a gem server so
|
202
|
-
you may +gem install+ them.
|
203
|
-
2. You would like to have a local mirror of third party gems from either
|
204
|
-
http://rubygems.org or some other gem server.
|
205
|
-
3. You want both (1) and (2) in the same server.
|
206
|
-
|
134
|
+
version_requirements: *2158134380
|
135
|
+
description: ! "Stickler is a tool to organize and maintain an internal gem repository.\nPrimarily,
|
136
|
+
you would want to use Stickler if:\n\n1. You have proprietary gems that you want
|
137
|
+
to have available via a gem server so \n you may +gem install+ them.\n2. You would
|
138
|
+
like to have a local mirror of third party gems from either \n http://rubygems.org
|
139
|
+
or some other gem server.\n3. You want both (1) and (2) in the same server.\n"
|
207
140
|
email: jeremy@hinegardner.org
|
208
|
-
executables:
|
141
|
+
executables:
|
209
142
|
- stickler
|
210
143
|
- stickler-passenger-config
|
211
144
|
- stickler-server
|
212
145
|
extensions: []
|
213
|
-
|
214
|
-
extra_rdoc_files:
|
146
|
+
extra_rdoc_files:
|
215
147
|
- bin/stickler
|
216
148
|
- bin/stickler-passenger-config
|
217
149
|
- bin/stickler-server
|
@@ -224,9 +156,9 @@ extra_rdoc_files:
|
|
224
156
|
- lib/stickler/server/public/js/modernizr-1.5.min.js
|
225
157
|
- lib/stickler/server/views/index.erb
|
226
158
|
- lib/stickler/server/views/layout.erb
|
227
|
-
files:
|
228
|
-
- .bnsignore
|
159
|
+
files:
|
229
160
|
- .gitignore
|
161
|
+
- .rvmrc
|
230
162
|
- HISTORY.asciidoc
|
231
163
|
- LICENSE
|
232
164
|
- README.asciidoc
|
@@ -288,6 +220,8 @@ files:
|
|
288
220
|
- man/stickler-server.asciidoc
|
289
221
|
- man/stickler.1
|
290
222
|
- man/stickler.asciidoc
|
223
|
+
- spec/data/gemcutter/gems/foo-1.0.0.gem
|
224
|
+
- spec/data/gemcutter/specifications/foo-1.0.0.gemspec
|
291
225
|
- spec/data/gems/bar-1.0.0.gem
|
292
226
|
- spec/data/gems/baz-3.1.4-java.gem
|
293
227
|
- spec/data/gems/foo-1.0.0.gem
|
@@ -310,45 +244,37 @@ files:
|
|
310
244
|
- spec/spec_helper.rb
|
311
245
|
- spec/spec_lite_spec.rb
|
312
246
|
- tasks/asciidoc.rake
|
247
|
+
- tasks/bundler.rake
|
248
|
+
- tasks/contribute.rake
|
313
249
|
- tasks/man.rake
|
314
250
|
- work/mirror/gems/hitimes-1.1.1.gem
|
315
251
|
- work/mirror/gems/rails-3.0.3.gem
|
316
252
|
- work/mirror/specifications/hitimes-1.1.1.gemspec
|
317
253
|
- work/mirror/specifications/rails-3.0.3.gemspec
|
318
|
-
has_rdoc: true
|
319
254
|
homepage: http://www.copiousfreetime.org/projects/stickler
|
320
255
|
licenses: []
|
321
|
-
|
322
256
|
post_install_message:
|
323
|
-
rdoc_options:
|
257
|
+
rdoc_options:
|
324
258
|
- --main
|
325
259
|
- README.asciidoc
|
326
|
-
require_paths:
|
260
|
+
require_paths:
|
327
261
|
- lib
|
328
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
262
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
329
263
|
none: false
|
330
|
-
requirements:
|
331
|
-
- -
|
332
|
-
- !ruby/object:Gem::Version
|
333
|
-
|
334
|
-
|
335
|
-
- 0
|
336
|
-
version: "0"
|
337
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
264
|
+
requirements:
|
265
|
+
- - ! '>='
|
266
|
+
- !ruby/object:Gem::Version
|
267
|
+
version: '0'
|
268
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
338
269
|
none: false
|
339
|
-
requirements:
|
340
|
-
- -
|
341
|
-
- !ruby/object:Gem::Version
|
342
|
-
|
343
|
-
segments:
|
344
|
-
- 0
|
345
|
-
version: "0"
|
270
|
+
requirements:
|
271
|
+
- - ! '>='
|
272
|
+
- !ruby/object:Gem::Version
|
273
|
+
version: '0'
|
346
274
|
requirements: []
|
347
|
-
|
348
275
|
rubyforge_project: stickler
|
349
|
-
rubygems_version: 1.5
|
276
|
+
rubygems_version: 1.8.5
|
350
277
|
signing_key:
|
351
278
|
specification_version: 3
|
352
279
|
summary: Stickler is a tool to organize and maintain an internal gem repository.
|
353
280
|
test_files: []
|
354
|
-
|