geminabox 2.0.0.rc.1 → 2.1.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7e86bc4fb5fb4e91cbb648c2e67b4732e2a8d7f38e8e334e0747914707fc455f
4
- data.tar.gz: b9bd8837e34ca7cb1da39e58ed0b3da2ca5c27e4813f473ce667ce29dac1192b
3
+ metadata.gz: 3afde9bba2ed91992e99d5e95ff71eb6a111d7a4b4362c1857e75a01dfdb671a
4
+ data.tar.gz: 360da5ba51676bd8d78ae6139c782b52d9f83f31ca7a5497c06c6d38394fd5b9
5
5
  SHA512:
6
- metadata.gz: 510acff6266de9eb38f4631597cbdcd9810727d1d8e99f0c12969d019659d156f05d45532e47b6664a502d59f6f9b484ec8ef62812013947cae508e890c8906a
7
- data.tar.gz: f33fdbae1f3d0c0bc7fe249920e039b08596f62eef941caff724fef6930948f2be00ef1f6ad409fce2514682deffa5148b191a792cea29e8b1b018f266adccc9
6
+ metadata.gz: 2a2dc5c9d5109dd36b987066ec29f620e9d646dacd7a39813447b84ab03ffa6edde2bec1c50b341b1d0604d1317f740900c26f5bd72f40ba076893e00aee9b9e
7
+ data.tar.gz: 44befa817d8a56f87be69c1c3ec06f75caed8c74a85e892207a5f06e43cb629da418db51eec3ac95fb081043c7066b7e64ab13edcfe5a7711a1020843f503d15
data/README.md CHANGED
@@ -12,7 +12,10 @@ For basic auth, try [Rack::Auth](http://www.rubydoc.info/github/rack/rack/Rack/A
12
12
 
13
13
  ## System Requirements
14
14
 
15
- See [.github/workflows/ruby.yml](.github/workflows/ruby.yml) for supported ruby versions
15
+ - Ruby 2.3 through 3.1 (Ruby 2.7, 3.0, or 3.1 is highly recommended)
16
+ - RubyGems 2.4 through 3.3 (2.5.2 or higher is highly recommended)
17
+
18
+ Use RubyGems the latest version (at least 2.5.2) for as an end-user full features like [`gem yank --host`](https://github.com/rubygems/rubygems/pull/1361).
16
19
 
17
20
  ## Server Setup
18
21
 
@@ -27,7 +27,7 @@ module Geminabox
27
27
  faraday.adapter http_engine
28
28
  faraday.proxy(ENV['http_proxy']) if ENV['http_proxy']
29
29
  end
30
- connection.basic_auth username, password if username
30
+ set_username_and_password connection, username, password if username
31
31
  connection
32
32
  end
33
33
 
@@ -39,7 +39,7 @@ module Geminabox
39
39
  end
40
40
 
41
41
  def http_engine
42
- :net_http # make requests with Net::HTTP
42
+ :net_http # make requests with Net::HTTP
43
43
  end
44
44
 
45
45
  def options
@@ -49,5 +49,17 @@ module Geminabox
49
49
  }
50
50
  end
51
51
 
52
+ private
53
+
54
+ def set_username_and_password(connection, username, password)
55
+ # Remove this condition when Faraday 1.x dropped (when Ruby 2.5 dropped)
56
+ if Gem::Version.new(Faraday::VERSION) < Gem::Version.new("2.0")
57
+ connection.request :basic_auth, username, password
58
+ else
59
+ # Faraday 2.x
60
+ connection.request :authorization, :basic, username, password
61
+ end
62
+ end
63
+
52
64
  end
53
65
  end
@@ -33,17 +33,7 @@ module Geminabox
33
33
  end
34
34
 
35
35
  def spec
36
- @spec ||= extract_spec
37
- end
38
-
39
- def extract_spec
40
- if Gem::Package.respond_to? :open
41
- Gem::Package.open(gem_data, "r", nil) do |pkg|
42
- return pkg.metadata
43
- end
44
- else
45
- Gem::Package.new(@tempfile.path).spec
46
- end
36
+ @spec ||= Gem::Package.new(@tempfile.path).spec
47
37
  end
48
38
 
49
39
  def name
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Geminabox
4
- VERSION = '2.0.0.rc.1' unless defined? VERSION
4
+ VERSION = '2.1.0' unless defined? VERSION
5
5
  end
data/lib/geminabox.rb CHANGED
@@ -7,7 +7,6 @@ require 'sinatra/base'
7
7
  require 'rubygems/user_interaction'
8
8
  require 'rubygems/indexer'
9
9
  require 'rubygems/package'
10
- require 'rss/atom'
11
10
  require 'tempfile'
12
11
  require 'json'
13
12
  require 'tilt/erb'
metadata CHANGED
@@ -1,32 +1,33 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geminabox
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Lea
8
8
  - Jack Foy
9
9
  - Rob Nichols
10
10
  - Naotoshi Seo
11
+ - Takuya Noguchi
11
12
  autorequire:
12
13
  bindir: bin
13
14
  cert_chain: []
14
- date: 2022-06-27 00:00:00.000000000 Z
15
+ date: 2022-06-28 00:00:00.000000000 Z
15
16
  dependencies:
16
17
  - !ruby/object:Gem::Dependency
17
18
  name: sinatra
18
19
  requirement: !ruby/object:Gem::Requirement
19
20
  requirements:
20
- - - ">="
21
+ - - "~>"
21
22
  - !ruby/object:Gem::Version
22
- version: 1.2.7
23
+ version: '2.0'
23
24
  type: :runtime
24
25
  prerelease: false
25
26
  version_requirements: !ruby/object:Gem::Requirement
26
27
  requirements:
27
- - - ">="
28
+ - - "~>"
28
29
  - !ruby/object:Gem::Version
29
- version: 1.2.7
30
+ version: '2.0'
30
31
  - !ruby/object:Gem::Dependency
31
32
  name: builder
32
33
  requirement: !ruby/object:Gem::Requirement
@@ -73,16 +74,22 @@ dependencies:
73
74
  name: faraday
74
75
  requirement: !ruby/object:Gem::Requirement
75
76
  requirements:
77
+ - - ">"
78
+ - !ruby/object:Gem::Version
79
+ version: '1.0'
76
80
  - - "<"
77
81
  - !ruby/object:Gem::Version
78
- version: '2.0'
82
+ version: '3.0'
79
83
  type: :runtime
80
84
  prerelease: false
81
85
  version_requirements: !ruby/object:Gem::Requirement
82
86
  requirements:
87
+ - - ">"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
83
90
  - - "<"
84
91
  - !ruby/object:Gem::Version
85
- version: '2.0'
92
+ version: '3.0'
86
93
  - !ruby/object:Gem::Dependency
87
94
  name: reentrant_flock
88
95
  requirement: !ruby/object:Gem::Requirement
@@ -97,26 +104,14 @@ dependencies:
97
104
  - - ">="
98
105
  - !ruby/object:Gem::Version
99
106
  version: '0'
100
- - !ruby/object:Gem::Dependency
101
- name: rss
102
- requirement: !ruby/object:Gem::Requirement
103
- requirements:
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- version: '0'
107
- type: :runtime
108
- prerelease: false
109
- version_requirements: !ruby/object:Gem::Requirement
110
- requirements:
111
- - - ">="
112
- - !ruby/object:Gem::Version
113
- version: '0'
114
- description: A sinatra based gem hosting app, with client side gem push style functionality.
107
+ description: A private gem hosting and/or caching app, with client side gem push style
108
+ functionality. Web UI is provided.
115
109
  email:
116
110
  - contrib@tomlea.co.uk
117
111
  - jack@foys.net
118
112
  - rob@undervale.co.uk
119
113
  - sonots@gmail.com
114
+ - takninnovationresearch@gmail.com
120
115
  executables: []
121
116
  extensions: []
122
117
  extra_rdoc_files:
@@ -157,11 +152,13 @@ files:
157
152
  - views/index.erb
158
153
  - views/layout.erb
159
154
  - views/upload.erb
160
- homepage: http://tomlea.co.uk/p/gem-in-a-box
155
+ homepage: https://github.com/geminabox/geminabox
161
156
  licenses:
162
157
  - MIT-LICENSE
163
158
  metadata:
159
+ homepage_uri: https://github.com/geminabox/geminabox
164
160
  source_code_uri: https://github.com/geminabox/geminabox
161
+ changelog_uri: https://github.com/geminabox/geminabox/releases
165
162
  post_install_message:
166
163
  rdoc_options:
167
164
  - "--main"
@@ -172,15 +169,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
169
  requirements:
173
170
  - - ">="
174
171
  - !ruby/object:Gem::Version
175
- version: 2.2.0
172
+ version: 2.3.0
176
173
  required_rubygems_version: !ruby/object:Gem::Requirement
177
174
  requirements:
178
175
  - - ">="
179
176
  - !ruby/object:Gem::Version
180
- version: 1.8.25
177
+ version: 2.4.0
181
178
  requirements: []
182
179
  rubygems_version: 3.3.16
183
180
  signing_key:
184
181
  specification_version: 4
185
- summary: Really simple rubygem hosting
182
+ summary: Really simple private RubyGems hosting
186
183
  test_files: []