geminabox 0.12.0 → 0.12.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of geminabox might be problematic. Click here for more details.
- checksums.yaml +15 -0
- data/lib/geminabox/proxy/hostess.rb +2 -1
- data/lib/geminabox/server.rb +9 -3
- data/lib/geminabox/version.rb +1 -1
- data/views/atom.erb +4 -3
- data/views/gem.erb +2 -1
- data/views/index.erb +2 -1
- data/views/layout.erb +4 -4
- metadata +19 -33
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NTgxZDliOWYxZTg4ZGVmZTdjNTZmMjFlZmUyNTc0NjAyYTA4ZDFiNQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
M2FiNDQzOWY2MjE1MmY3MmNmYzlhNWY3MDA1ZjA2ZWUxOTU1MTVlNA==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZTNkMTk1MDdhZGY1M2ZjMTFmMDgzMzBlMTVlNDQ1NDFlNWI5OTJlN2NmZjc0
|
10
|
+
YmZkYmIyNzA2MDg5ZDExY2MxMTVmNDQ3M2JhMjZlNzZkNDVmNTJhZTU3M2M2
|
11
|
+
ZWRjM2IzZDA5NTliN2E1ZTRiNGZkNWVkNzZjZjA2MjNmMTM0OGE=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
N2U2ZDQ1Y2NkNGRkMTkxOGU3MWQ3MzAwN2I3NTE3ZTc4ZDllMmM1YTNiMzBj
|
14
|
+
N2I5OTVjNzMyZWE3YTc4MzViZmVhMDBiMjM5MzcwYTcyOWJlYzZkM2ZjNDVj
|
15
|
+
NWUwMjIyODkzYTg3NzVhYWViNjlmM2E1ZWYxMDFkZjAzYzU1MTU=
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'sinatra/base'
|
2
|
+
require 'net/http'
|
2
3
|
|
3
4
|
module Geminabox
|
4
5
|
module Proxy
|
@@ -58,7 +59,7 @@ module Geminabox
|
|
58
59
|
file = File.expand_path(File.join(Server.data, *request.path_info))
|
59
60
|
|
60
61
|
unless File.exists?(file)
|
61
|
-
Net::HTTP.start("production.cf.rubygems.org") do |http|
|
62
|
+
::Net::HTTP.start("production.cf.rubygems.org") do |http|
|
62
63
|
path = File.join(*request.path_info)
|
63
64
|
response = http.get(path)
|
64
65
|
GemStore.create(IncomingGem.new(StringIO.new(response.body)))
|
data/lib/geminabox/server.rb
CHANGED
@@ -237,17 +237,23 @@ HTML
|
|
237
237
|
end
|
238
238
|
|
239
239
|
helpers do
|
240
|
-
def spec_for(gem_name, version)
|
241
|
-
|
240
|
+
def spec_for(gem_name, version, platform = default_platform)
|
241
|
+
filename = [gem_name, version]
|
242
|
+
filename.push(platform) if platform != default_platform
|
243
|
+
spec_file = File.join(settings.data, "quick", "Marshal.#{Gem.marshal_version}", "#{filename.join("-")}.gemspec.rz")
|
242
244
|
Marshal.load(Gem.inflate(File.read(spec_file))) if File.exists? spec_file
|
243
245
|
end
|
244
246
|
|
247
|
+
def default_platform
|
248
|
+
'ruby'
|
249
|
+
end
|
250
|
+
|
245
251
|
# Return a list of versions of gem 'gem_name' with the dependencies of each version.
|
246
252
|
def gem_dependencies(gem_name)
|
247
253
|
dependency_cache.marshal_cache(gem_name) do
|
248
254
|
load_gems.
|
249
255
|
select { |gem| gem_name == gem.name }.
|
250
|
-
map { |gem| [gem, spec_for(gem.name, gem.number)] }.
|
256
|
+
map { |gem| [gem, spec_for(gem.name, gem.number, gem.platform)] }.
|
251
257
|
reject { |(_, spec)| spec.nil? }.
|
252
258
|
map do |(gem, spec)|
|
253
259
|
{
|
data/lib/geminabox/version.rb
CHANGED
data/views/atom.erb
CHANGED
@@ -6,21 +6,22 @@
|
|
6
6
|
<link href="<%= url '/' %>" />
|
7
7
|
<id><%= url '/atom.xml' %></id>
|
8
8
|
<% @gems.by_name do |name, versions| %>
|
9
|
-
<%
|
9
|
+
<% newest_gem = versions.newest %>
|
10
|
+
<% spec = spec_for(name, newest_gem.number, newest_gem.platform) %>
|
10
11
|
<entry>
|
11
12
|
<id><%= name %></id>
|
12
13
|
<updated><%= spec.date.w3cdtf %></updated>
|
13
14
|
<title><%= name %> (<%= versions.size == 1 ? versions.oldest.number : "#{versions.oldest.number} - #{versions.newest.number}" %>)</title>
|
14
15
|
<author><name><%= spec.authors.join(", ") %></name></author>
|
15
16
|
<% versions.each do |version| %>
|
16
|
-
<link href="<%= url "/gems/#{
|
17
|
+
<link href="<%= url "/gems/#{version.gemfile_name}.gem" %>" />
|
17
18
|
<% end %>
|
18
19
|
</entry>
|
19
20
|
<% end %>
|
20
21
|
|
21
22
|
<updated>
|
22
23
|
<% if newest_gem = @gems.newest %>
|
23
|
-
<%= spec_for(newest_gem.name, newest_gem.number).date.w3cdtf %>
|
24
|
+
<%= spec_for(newest_gem.name, newest_gem.number, newest_gem.platform).date.w3cdtf %>
|
24
25
|
<% else %>
|
25
26
|
<%= Date.today %>
|
26
27
|
<% end %>
|
data/views/gem.erb
CHANGED
@@ -22,7 +22,8 @@
|
|
22
22
|
|
23
23
|
<div class="details">
|
24
24
|
<p>
|
25
|
-
<%
|
25
|
+
<% newest_gem = versions.newest %>
|
26
|
+
<% if spec = spec_for(name, newest_gem.number, newest_gem.platform) %>
|
26
27
|
<%= spec.description %>
|
27
28
|
<br/>
|
28
29
|
<span class="author">– <%= spec.authors.map do |author|
|
data/views/index.erb
CHANGED
@@ -37,7 +37,8 @@
|
|
37
37
|
|
38
38
|
<div class="details">
|
39
39
|
<p>
|
40
|
-
<%
|
40
|
+
<% newest_gem = versions.newest %>
|
41
|
+
<% if spec = spec_for(name, newest_gem.number, newest_gem.platform) %>
|
41
42
|
<%= spec.description %>
|
42
43
|
<br/>
|
43
44
|
<span class="author">– <%= spec.authors.map do |author|
|
data/views/layout.erb
CHANGED
@@ -2,15 +2,15 @@
|
|
2
2
|
<html>
|
3
3
|
<head>
|
4
4
|
<title>Gem in a Box</title>
|
5
|
-
<link rel="stylesheet" href="<%= url "/master.css" %>" type="text/css" media="screen">
|
6
|
-
<link href="<%= url "/atom.xml" %>" type="application/atom+xml" rel="alternate" title="Atom Feed">
|
5
|
+
<link rel="stylesheet" href="<%= url "/master.css", false %>" type="text/css" media="screen">
|
6
|
+
<link href="<%= url "/atom.xml", false %>" type="application/atom+xml" rel="alternate" title="Atom Feed">
|
7
7
|
</head>
|
8
8
|
<body>
|
9
9
|
<div id="content">
|
10
10
|
<h1>Gem in a Box</h1>
|
11
11
|
<%= yield %>
|
12
12
|
</div>
|
13
|
-
<script type="text/javascript" src="<%= url "/jquery.js" %>"></script>
|
14
|
-
<script type="text/javascript" src="<%= url "/master.js" %>"></script>
|
13
|
+
<script type="text/javascript" src="<%= url "/jquery.js", false %>"></script>
|
14
|
+
<script type="text/javascript" src="<%= url "/master.js", false %>"></script>
|
15
15
|
</body>
|
16
16
|
</html>
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: geminabox
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.12.
|
5
|
-
prerelease:
|
4
|
+
version: 0.12.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Tom Lea
|
@@ -11,12 +10,11 @@ authors:
|
|
11
10
|
autorequire:
|
12
11
|
bindir: bin
|
13
12
|
cert_chain: []
|
14
|
-
date: 2013-11-
|
13
|
+
date: 2013-11-25 00:00:00.000000000 Z
|
15
14
|
dependencies:
|
16
15
|
- !ruby/object:Gem::Dependency
|
17
16
|
name: sinatra
|
18
17
|
requirement: !ruby/object:Gem::Requirement
|
19
|
-
none: false
|
20
18
|
requirements:
|
21
19
|
- - ! '>='
|
22
20
|
- !ruby/object:Gem::Version
|
@@ -24,7 +22,6 @@ dependencies:
|
|
24
22
|
type: :runtime
|
25
23
|
prerelease: false
|
26
24
|
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
none: false
|
28
25
|
requirements:
|
29
26
|
- - ! '>='
|
30
27
|
- !ruby/object:Gem::Version
|
@@ -32,7 +29,6 @@ dependencies:
|
|
32
29
|
- !ruby/object:Gem::Dependency
|
33
30
|
name: builder
|
34
31
|
requirement: !ruby/object:Gem::Requirement
|
35
|
-
none: false
|
36
32
|
requirements:
|
37
33
|
- - ! '>='
|
38
34
|
- !ruby/object:Gem::Version
|
@@ -40,7 +36,6 @@ dependencies:
|
|
40
36
|
type: :runtime
|
41
37
|
prerelease: false
|
42
38
|
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
none: false
|
44
39
|
requirements:
|
45
40
|
- - ! '>='
|
46
41
|
- !ruby/object:Gem::Version
|
@@ -48,7 +43,6 @@ dependencies:
|
|
48
43
|
- !ruby/object:Gem::Dependency
|
49
44
|
name: httpclient
|
50
45
|
requirement: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
46
|
requirements:
|
53
47
|
- - ! '>='
|
54
48
|
- !ruby/object:Gem::Version
|
@@ -56,7 +50,6 @@ dependencies:
|
|
56
50
|
type: :runtime
|
57
51
|
prerelease: false
|
58
52
|
version_requirements: !ruby/object:Gem::Requirement
|
59
|
-
none: false
|
60
53
|
requirements:
|
61
54
|
- - ! '>='
|
62
55
|
- !ruby/object:Gem::Version
|
@@ -64,7 +57,6 @@ dependencies:
|
|
64
57
|
- !ruby/object:Gem::Dependency
|
65
58
|
name: nesty
|
66
59
|
requirement: !ruby/object:Gem::Requirement
|
67
|
-
none: false
|
68
60
|
requirements:
|
69
61
|
- - ! '>='
|
70
62
|
- !ruby/object:Gem::Version
|
@@ -72,7 +64,6 @@ dependencies:
|
|
72
64
|
type: :runtime
|
73
65
|
prerelease: false
|
74
66
|
version_requirements: !ruby/object:Gem::Requirement
|
75
|
-
none: false
|
76
67
|
requirements:
|
77
68
|
- - ! '>='
|
78
69
|
- !ruby/object:Gem::Version
|
@@ -80,7 +71,6 @@ dependencies:
|
|
80
71
|
- !ruby/object:Gem::Dependency
|
81
72
|
name: rake
|
82
73
|
requirement: !ruby/object:Gem::Requirement
|
83
|
-
none: false
|
84
74
|
requirements:
|
85
75
|
- - ! '>='
|
86
76
|
- !ruby/object:Gem::Version
|
@@ -88,7 +78,6 @@ dependencies:
|
|
88
78
|
type: :development
|
89
79
|
prerelease: false
|
90
80
|
version_requirements: !ruby/object:Gem::Requirement
|
91
|
-
none: false
|
92
81
|
requirements:
|
93
82
|
- - ! '>='
|
94
83
|
- !ruby/object:Gem::Version
|
@@ -96,7 +85,6 @@ dependencies:
|
|
96
85
|
- !ruby/object:Gem::Dependency
|
97
86
|
name: pry
|
98
87
|
requirement: !ruby/object:Gem::Requirement
|
99
|
-
none: false
|
100
88
|
requirements:
|
101
89
|
- - ! '>='
|
102
90
|
- !ruby/object:Gem::Version
|
@@ -104,7 +92,6 @@ dependencies:
|
|
104
92
|
type: :development
|
105
93
|
prerelease: false
|
106
94
|
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
95
|
requirements:
|
109
96
|
- - ! '>='
|
110
97
|
- !ruby/object:Gem::Version
|
@@ -122,38 +109,39 @@ files:
|
|
122
109
|
- MIT-LICENSE
|
123
110
|
- README.markdown
|
124
111
|
- lib/rubygems_plugin.rb
|
125
|
-
- lib/
|
126
|
-
- lib/geminabox/proxy.rb
|
127
|
-
- lib/geminabox/server.rb
|
128
|
-
- lib/geminabox/gem_list_merge.rb
|
129
|
-
- lib/geminabox/indexer.rb
|
130
|
-
- lib/geminabox/incoming_gem.rb
|
112
|
+
- lib/geminabox/version.rb
|
131
113
|
- lib/geminabox/gem_store_error.rb
|
114
|
+
- lib/geminabox/incoming_gem.rb
|
132
115
|
- lib/geminabox/gem_version.rb
|
133
116
|
- lib/geminabox/hostess.rb
|
134
|
-
- lib/geminabox/
|
135
|
-
- lib/geminabox/
|
136
|
-
- lib/geminabox/
|
137
|
-
- lib/geminabox/proxy
|
117
|
+
- lib/geminabox/indexer.rb
|
118
|
+
- lib/geminabox/gem_list_merge.rb
|
119
|
+
- lib/geminabox/rubygems_dependency.rb
|
120
|
+
- lib/geminabox/proxy.rb
|
138
121
|
- lib/geminabox/proxy/file_handler.rb
|
122
|
+
- lib/geminabox/proxy/hostess.rb
|
123
|
+
- lib/geminabox/proxy/copier.rb
|
139
124
|
- lib/geminabox/proxy/splicer.rb
|
140
125
|
- lib/geminabox/gem_version_collection.rb
|
141
|
-
- lib/geminabox/
|
126
|
+
- lib/geminabox/server.rb
|
142
127
|
- lib/geminabox/disk_cache.rb
|
128
|
+
- lib/geminabox/gem_store.rb
|
129
|
+
- lib/rubygems/commands/inabox_command.rb
|
143
130
|
- lib/geminabox_client.rb
|
144
131
|
- lib/geminabox.rb
|
145
132
|
- public/master.js
|
146
|
-
- public/jquery.js
|
147
133
|
- public/master.css
|
134
|
+
- public/jquery.js
|
148
135
|
- public/favicon.ico
|
136
|
+
- views/atom.erb
|
137
|
+
- views/gem.erb
|
149
138
|
- views/upload.erb
|
150
139
|
- views/layout.erb
|
151
140
|
- views/index.erb
|
152
|
-
- views/gem.erb
|
153
|
-
- views/atom.erb
|
154
141
|
homepage: http://tomlea.co.uk/p/gem-in-a-box
|
155
142
|
licenses:
|
156
143
|
- MIT-LICENSE
|
144
|
+
metadata: {}
|
157
145
|
post_install_message:
|
158
146
|
rdoc_options:
|
159
147
|
- --main
|
@@ -161,21 +149,19 @@ rdoc_options:
|
|
161
149
|
require_paths:
|
162
150
|
- lib
|
163
151
|
required_ruby_version: !ruby/object:Gem::Requirement
|
164
|
-
none: false
|
165
152
|
requirements:
|
166
153
|
- - ! '>='
|
167
154
|
- !ruby/object:Gem::Version
|
168
155
|
version: '0'
|
169
156
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
170
|
-
none: false
|
171
157
|
requirements:
|
172
158
|
- - ! '>='
|
173
159
|
- !ruby/object:Gem::Version
|
174
160
|
version: '0'
|
175
161
|
requirements: []
|
176
162
|
rubyforge_project:
|
177
|
-
rubygems_version: 1.
|
163
|
+
rubygems_version: 2.1.10
|
178
164
|
signing_key:
|
179
|
-
specification_version:
|
165
|
+
specification_version: 4
|
180
166
|
summary: Really simple rubygem hosting
|
181
167
|
test_files: []
|