geminabox-inflection 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
data/public/master.js ADDED
@@ -0,0 +1,5 @@
1
+ (function($) {
2
+ $("form.delete-form").submit(function() {
3
+ return confirm("Are you sure you want to delete this gem?");
4
+ });
5
+ })(jQuery);
data/views/atom.erb ADDED
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+
3
+ <feed xmlns="http://www.w3.org/2005/Atom">
4
+ <title>Gem in a Box</title>
5
+ <link href="<%= url '/atom.xml' %>" rel="self" />
6
+ <link href="<%= url '/' %>" />
7
+ <id><%= url '/atom.xml' %></id>
8
+ <% @gems.by_name do |name, versions| %>
9
+ <% spec = spec_for(name, versions.newest.number) %>
10
+ <entry>
11
+ <id><%= name %></id>
12
+ <updated><%= spec.date.w3cdtf %></updated>
13
+ <title><%= name %> (<%= versions.size == 1 ? versions.oldest.number : "#{versions.oldest.number} - #{versions.newest.number}" %>)</title>
14
+ <author><name><%= spec.authors.join(", ") %></name></author>
15
+ <% versions.each do |version| %>
16
+ <link href="<%= url "/gems/#{name}-#{version.number}.gem" %>" />
17
+ <% end %>
18
+ </entry>
19
+ <% end %>
20
+
21
+ <updated>
22
+ <% if newest_gem = @gems.newest %>
23
+ <%= spec_for(newest_gem.name, newest_gem.number).date.w3cdtf %>
24
+ <% else %>
25
+ <%= Date.today %>
26
+ <% end %>
27
+ </updated>
28
+ </feed>
data/views/gem.erb ADDED
@@ -0,0 +1,37 @@
1
+ <p>
2
+ <a href="/">Back to Gem Index</a>
3
+ </p>
4
+
5
+ <ul class="gemlist">
6
+ <% @gem.by_name do |name, versions| %>
7
+ <li class="gem-version">
8
+ <h2><%= name %> (<%= versions.count == 1 ? versions.first.number : "#{versions.oldest.number} - #{versions.newest.number}" %>)</h2>
9
+ <% versions.each.reverse_each do |version| %>
10
+ <p>
11
+ <code>gem install <%= version.name %> <%= "--prerelease" if version.number.to_s.match(/[a-z]/i) %> -v "<%= version.number %>"</code>
12
+ <% unless version.platform =~ /^ruby/i %>
13
+ <small class="platform"><%= version.platform %></small>
14
+ <% end %>
15
+ </p>
16
+ <form class="delete-form" method="post" action="<%= url("/gems/#{version.gemfile_name}.gem") %>">
17
+ <a class="download" href="<%= url("/gems/#{version.gemfile_name}.gem") %>">download</a>
18
+ <input type="hidden" name="_method" value="DELETE" />
19
+ <button type="submit">delete</button>
20
+ </form>
21
+ <% end %>
22
+
23
+ <div class="details">
24
+ <p>
25
+ <% if spec = spec_for(name, versions.newest.number) %>
26
+ <%= spec.description %>
27
+ <br/>
28
+ <span class="author">– <%= spec.authors.map do |author|
29
+ "<a href='#{spec.homepage}'>#{author}</a>"
30
+ end.join(', ') %></span>
31
+ <% end %>
32
+ </p>
33
+ </div>
34
+
35
+ </li>
36
+ <% end %>
37
+ </ul>
data/views/index.erb ADDED
@@ -0,0 +1,55 @@
1
+ <p>
2
+ <small>If you did not need any credentials to get to this page</small>
3
+ <pre><code>gem sources -a <%= url "/" %></code></pre>
4
+ <small>If you needed some credentials to get to this page</small>
5
+ <pre><code>gem sources -a <%= url.to_s.gsub('://','://username:password@') %></code></pre>
6
+ <small>and then ...</small>
7
+ <pre><code>gem install geminabox<br />gem inabox [gemfile]</code></pre>
8
+ </p>
9
+
10
+ <% if @gems.any? %>
11
+ <a href="<%= url("/upload") %>">Upload Another Gem</a>
12
+
13
+ <div id="alpha_index"><%= ("a".."z").map{|i| @index_gems.include?(i) ? "<a href='#jump_#{i}'>#{i}</a>" : i }.join(" - ") %></div>
14
+
15
+ <ul class="gemlist">
16
+
17
+ <% @gems.by_name do |name, versions| %>
18
+ <li <%= %{id="jump_#{name[0..0].downcase}"} if @index_gems.delete(name[0..0].downcase) %> class="gem-version">
19
+ <h2><%= name %> (<%= versions.count == 1 ? versions.first.number : "#{versions.oldest.number} - #{versions.newest.number}" %>)</h2>
20
+ <% versions.each.reverse_each.first(5).each do |version| %>
21
+ <p>
22
+ <code>gem install <%= version.name %> <%= "--prerelease" if version.number.to_s.match(/[a-z]/i) %> -v "<%= version.number %>"</code>
23
+ <% unless version.platform =~ /^ruby/i %>
24
+ <small class="platform"><%= version.platform %></small>
25
+ <% end %>
26
+ </p>
27
+ <form class="delete-form" method="post" action="<%= url("/gems/#{version.gemfile_name}.gem") %>">
28
+ <a class="download" href="<%= url("/gems/#{version.gemfile_name}.gem") %>">download</a>
29
+ <input type="hidden" name="_method" value="DELETE" />
30
+ <button type="submit">delete</button>
31
+ </form>
32
+ <% end %>
33
+
34
+ <% if versions.count > 5 %>
35
+ <a href="<%= url("/gems/#{name}") %>" id="more_link">Older versions...</a>
36
+ <% end %>
37
+
38
+ <div class="details">
39
+ <p>
40
+ <% if spec = spec_for(name, versions.newest.number) %>
41
+ <%= spec.description %>
42
+ <br/>
43
+ <span class="author">– <%= spec.authors.map do |author|
44
+ "<a href='#{spec.homepage}'>#{author}</a>"
45
+ end.join(', ') %></span>
46
+ <% end %>
47
+ </p>
48
+ </div>
49
+
50
+ </li>
51
+ <% end %>
52
+ </ul>
53
+ <% end %>
54
+
55
+ <a href="<%= url("/upload") %>">Upload Another Gem</a>
data/views/layout.erb ADDED
@@ -0,0 +1,16 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
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">
7
+ </head>
8
+ <body>
9
+ <div id="content">
10
+ <h1>Gem in a Box</h1>
11
+ <%= yield %>
12
+ </div>
13
+ <script type="text/javascript" src="<%= url "/jquery.js" %>"></script>
14
+ <script type="text/javascript" src="<%= url "/master.js" %>"></script>
15
+ </body>
16
+ </html>
data/views/upload.erb ADDED
@@ -0,0 +1,8 @@
1
+ <p>
2
+ <small>Choose a gem file to upload ...</small>
3
+ </p>
4
+ <%= @error %>
5
+ <form method="POST" enctype="multipart/form-data">
6
+ <input type="file" name="file">
7
+ <input type="submit" value="Upload">
8
+ </form>
metadata ADDED
@@ -0,0 +1,215 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: geminabox-inflection
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.11.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Tom Lea
9
+ - Jack Foy
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2013-09-26 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: sinatra
17
+ requirement: !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: '0'
31
+ - !ruby/object:Gem::Dependency
32
+ name: builder
33
+ requirement: !ruby/object:Gem::Requirement
34
+ none: false
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ type: :runtime
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: httpclient
49
+ requirement: !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 2.2.7
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: 2.2.7
63
+ - !ruby/object:Gem::Dependency
64
+ name: rake
65
+ requirement: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ type: :development
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ - !ruby/object:Gem::Dependency
80
+ name: rack-test
81
+ requirement: !ruby/object:Gem::Requirement
82
+ none: false
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
87
+ type: :development
88
+ prerelease: false
89
+ version_requirements: !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ! '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ - !ruby/object:Gem::Dependency
96
+ name: minitest
97
+ requirement: !ruby/object:Gem::Requirement
98
+ none: false
99
+ requirements:
100
+ - - ! '>='
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: capybara
113
+ requirement: !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ! '>='
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>='
125
+ - !ruby/object:Gem::Version
126
+ version: '0'
127
+ - !ruby/object:Gem::Dependency
128
+ name: capybara-mechanize
129
+ requirement: !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ type: :development
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ - !ruby/object:Gem::Dependency
144
+ name: pry
145
+ requirement: !ruby/object:Gem::Requirement
146
+ none: false
147
+ requirements:
148
+ - - ! '>='
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
151
+ type: :development
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ none: false
155
+ requirements:
156
+ - - ! '>='
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ description: A sinatra based gem hosting app, with client side gem push style functionality.
160
+ email:
161
+ - contrib@tomlea.co.uk
162
+ - jack@foys.net
163
+ executables: []
164
+ extensions: []
165
+ extra_rdoc_files:
166
+ - README.markdown
167
+ files:
168
+ - README.markdown
169
+ - lib/geminabox/disk_cache.rb
170
+ - lib/geminabox/gem_version.rb
171
+ - lib/geminabox/gem_version_collection.rb
172
+ - lib/geminabox/incoming_gem.rb
173
+ - lib/geminabox/indexer.rb
174
+ - lib/geminabox/version.rb
175
+ - lib/geminabox-inflection.rb
176
+ - lib/geminabox_client.rb
177
+ - lib/hostess.rb
178
+ - lib/rubygems/commands/inabox_command.rb
179
+ - lib/rubygems_plugin.rb
180
+ - public/favicon.ico
181
+ - public/jquery.js
182
+ - public/master.css
183
+ - public/master.js
184
+ - views/atom.erb
185
+ - views/gem.erb
186
+ - views/index.erb
187
+ - views/layout.erb
188
+ - views/upload.erb
189
+ homepage: http://tomlea.co.uk/p/gem-in-a-box
190
+ licenses: []
191
+ post_install_message:
192
+ rdoc_options:
193
+ - --main
194
+ - README.markdown
195
+ require_paths:
196
+ - lib
197
+ required_ruby_version: !ruby/object:Gem::Requirement
198
+ none: false
199
+ requirements:
200
+ - - ! '>='
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ required_rubygems_version: !ruby/object:Gem::Requirement
204
+ none: false
205
+ requirements:
206
+ - - ! '>='
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ requirements: []
210
+ rubyforge_project:
211
+ rubygems_version: 1.8.24
212
+ signing_key:
213
+ specification_version: 3
214
+ summary: Really simple rubygem hosting
215
+ test_files: []