rubygems-update 3.2.2 → 3.2.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/{History.txt → CHANGELOG.md} +482 -424
- data/Manifest.txt +30 -27
- data/Rakefile +11 -15
- data/bundler/CHANGELOG.md +67 -2
- data/bundler/bundler.gemspec +1 -1
- data/bundler/lib/bundler.rb +3 -7
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli.rb +2 -5
- data/bundler/lib/bundler/cli/cache.rb +1 -0
- data/bundler/lib/bundler/cli/gem.rb +2 -0
- data/bundler/lib/bundler/cli/update.rb +1 -1
- data/bundler/lib/bundler/compact_index_client/cache.rb +5 -13
- data/bundler/lib/bundler/compact_index_client/gem_parser.rb +28 -0
- data/bundler/lib/bundler/compact_index_client/updater.rb +0 -8
- data/bundler/lib/bundler/definition.rb +29 -21
- data/bundler/lib/bundler/dep_proxy.rb +15 -8
- data/bundler/lib/bundler/feature_flag.rb +0 -1
- data/bundler/lib/bundler/fetcher.rb +0 -1
- data/bundler/lib/bundler/gem_helper.rb +9 -7
- data/bundler/lib/bundler/gem_helpers.rb +30 -24
- data/bundler/lib/bundler/gem_version_promoter.rb +2 -2
- data/bundler/lib/bundler/installer.rb +0 -17
- data/bundler/lib/bundler/installer/standalone.rb +14 -0
- data/bundler/lib/bundler/lazy_specification.rb +10 -11
- data/bundler/{man → lib/bundler/man}/bundle-add.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-binstubs.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-cache.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-check.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-clean.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-config.1 +4 -4
- data/bundler/lib/bundler/man/bundle-config.1.ronn +3 -3
- data/bundler/{man → lib/bundler/man}/bundle-doctor.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-exec.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-gem.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-info.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-init.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-inject.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-install.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-list.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-lock.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-open.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-outdated.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-platform.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-pristine.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-remove.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-show.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-update.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle-viz.1 +1 -1
- data/bundler/{man → lib/bundler/man}/bundle.1 +1 -1
- data/bundler/{man → lib/bundler/man}/gemfile.5 +1 -1
- data/bundler/{man → lib/bundler/man}/index.txt +0 -0
- data/bundler/lib/bundler/resolver.rb +36 -16
- data/bundler/lib/bundler/resolver/spec_group.rb +18 -23
- data/bundler/lib/bundler/rubygems_ext.rb +16 -0
- data/bundler/lib/bundler/rubygems_integration.rb +0 -5
- data/bundler/lib/bundler/settings.rb +1 -1
- data/bundler/lib/bundler/source/git.rb +19 -17
- data/bundler/lib/bundler/source/git/git_proxy.rb +54 -49
- data/bundler/lib/bundler/source/path/installer.rb +2 -0
- data/bundler/lib/bundler/source/rubygems.rb +10 -2
- data/bundler/lib/bundler/spec_set.rb +6 -9
- data/bundler/lib/bundler/templates/newgem/Gemfile.tt +1 -1
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +1 -1
- data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +3 -0
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +1 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +11 -0
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +11 -7
- data/bundler/lib/bundler/version.rb +1 -1
- data/lib/rubygems.rb +2 -2
- data/lib/rubygems/commands/setup_command.rb +16 -62
- data/lib/rubygems/dependency_installer.rb +1 -0
- data/lib/rubygems/ext/builder.rb +5 -4
- data/lib/rubygems/ext/cmake_builder.rb +1 -2
- data/lib/rubygems/ext/configure_builder.rb +1 -2
- data/lib/rubygems/gemcutter_utilities.rb +2 -2
- data/lib/rubygems/installer.rb +0 -23
- data/lib/rubygems/installer_uninstaller_utils.rb +6 -1
- data/lib/rubygems/platform.rb +0 -4
- data/lib/rubygems/remote_fetcher.rb +4 -2
- data/lib/rubygems/request_set.rb +2 -13
- data/lib/rubygems/requirement.rb +1 -1
- data/lib/rubygems/resolver.rb +6 -1
- data/lib/rubygems/resolver/api_set.rb +28 -19
- data/lib/rubygems/resolver/api_set/gem_parser.rb +20 -0
- data/lib/rubygems/resolver/api_specification.rb +4 -3
- data/lib/rubygems/resolver/best_set.rb +2 -2
- data/lib/rubygems/resolver/index_specification.rb +18 -0
- data/lib/rubygems/resolver/installer_set.rb +57 -7
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb +1 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +1 -1
- data/lib/rubygems/resolver/spec_specification.rb +14 -0
- data/lib/rubygems/resolver/specification.rb +12 -0
- data/lib/rubygems/source.rb +10 -6
- data/lib/rubygems/specification.rb +18 -14
- data/lib/rubygems/test_case.rb +17 -4
- data/rubygems-update.gemspec +2 -2
- data/test/rubygems/data/null-required-rubygems-version.gemspec.rz +0 -0
- data/test/rubygems/test_gem.rb +5 -0
- data/test/rubygems/test_gem_commands_install_command.rb +131 -0
- data/test/rubygems/test_gem_commands_setup_command.rb +21 -37
- data/test/rubygems/test_gem_dependency_installer.rb +27 -47
- data/test/rubygems/test_gem_ext_builder.rb +30 -6
- data/test/rubygems/test_gem_ext_cmake_builder.rb +2 -4
- data/test/rubygems/test_gem_ext_configure_builder.rb +2 -2
- data/test/rubygems/test_gem_installer.rb +8 -60
- data/test/rubygems/test_gem_platform.rb +8 -0
- data/test/rubygems/test_gem_remote_fetcher.rb +1 -1
- data/test/rubygems/test_gem_requirement.rb +34 -0
- data/test/rubygems/test_gem_resolver_api_set.rb +26 -52
- data/test/rubygems/test_gem_resolver_api_specification.rb +3 -3
- data/test/rubygems/test_gem_resolver_best_set.rb +26 -3
- data/test/rubygems/test_gem_source.rb +2 -2
- data/test/rubygems/test_gem_source_subpath_problem.rb +2 -2
- data/test/rubygems/test_gem_specification.rb +9 -3
- data/test/rubygems/test_gem_stream_ui.rb +1 -1
- metadata +34 -55
@@ -402,6 +402,27 @@ class TestGemRequirement < Gem::TestCase
|
|
402
402
|
assert_equal r1.hash, r2.hash
|
403
403
|
end
|
404
404
|
|
405
|
+
def test_hash_returns_equal_hashes_for_equivalent_requirements
|
406
|
+
refute_requirement_hash_equal "= 1.2", "= 1.3"
|
407
|
+
refute_requirement_hash_equal "= 1.3", "= 1.2"
|
408
|
+
|
409
|
+
refute_requirement_hash_equal "~> 1.3", "~> 1.3.0"
|
410
|
+
refute_requirement_hash_equal "~> 1.3.0", "~> 1.3"
|
411
|
+
|
412
|
+
assert_requirement_hash_equal ["> 2", "~> 1.3", "~> 1.3.1"], ["~> 1.3.1", "~> 1.3", "> 2"]
|
413
|
+
|
414
|
+
assert_requirement_hash_equal ["> 2", "~> 1.3"], ["> 2.0", "~> 1.3"]
|
415
|
+
assert_requirement_hash_equal ["> 2.0", "~> 1.3"], ["> 2", "~> 1.3"]
|
416
|
+
|
417
|
+
assert_requirement_hash_equal "= 1.0", "= 1.0.0"
|
418
|
+
assert_requirement_hash_equal "= 1.1", "= 1.1.0"
|
419
|
+
assert_requirement_hash_equal "= 1", "= 1.0.0"
|
420
|
+
|
421
|
+
assert_requirement_hash_equal "1.0", "1.0.0"
|
422
|
+
assert_requirement_hash_equal "1.1", "1.1.0"
|
423
|
+
assert_requirement_hash_equal "1", "1.0.0"
|
424
|
+
end
|
425
|
+
|
405
426
|
# Assert that two requirements are equal. Handles Gem::Requirements,
|
406
427
|
# strings, arrays, numbers, and versions.
|
407
428
|
|
@@ -416,6 +437,13 @@ class TestGemRequirement < Gem::TestCase
|
|
416
437
|
"#{requirement} is satisfied by #{version}"
|
417
438
|
end
|
418
439
|
|
440
|
+
# Assert that two requirement hashes are equal. Handles Gem::Requirements,
|
441
|
+
# strings, arrays, numbers, and versions.
|
442
|
+
|
443
|
+
def assert_requirement_hash_equal(expected, actual)
|
444
|
+
assert_equal req(expected).hash, req(actual).hash
|
445
|
+
end
|
446
|
+
|
419
447
|
# Refute the assumption that two requirements are equal.
|
420
448
|
|
421
449
|
def refute_requirement_equal(unexpected, actual)
|
@@ -428,4 +456,10 @@ class TestGemRequirement < Gem::TestCase
|
|
428
456
|
refute req(requirement).satisfied_by?(v(version)),
|
429
457
|
"#{requirement} is not satisfied by #{version}"
|
430
458
|
end
|
459
|
+
|
460
|
+
# Refute the assumption that two requirements hashes are equal.
|
461
|
+
|
462
|
+
def refute_requirement_hash_equal(unexpected, actual)
|
463
|
+
refute_equal req(unexpected).hash, req(actual).hash
|
464
|
+
end
|
431
465
|
end
|
@@ -6,29 +6,29 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
6
6
|
super
|
7
7
|
|
8
8
|
@DR = Gem::Resolver
|
9
|
-
@dep_uri = URI "#{@gem_repo}
|
9
|
+
@dep_uri = URI "#{@gem_repo}info/"
|
10
10
|
end
|
11
11
|
|
12
12
|
def test_initialize
|
13
13
|
set = @DR::APISet.new
|
14
14
|
|
15
|
-
assert_equal URI('https://rubygems.org/
|
16
|
-
assert_equal URI('https://rubygems.org'),
|
17
|
-
assert_equal Gem::Source.new(URI('https://rubygems.org')),
|
15
|
+
assert_equal URI('https://index.rubygems.org/info/'), set.dep_uri
|
16
|
+
assert_equal URI('https://index.rubygems.org/'), set.uri
|
17
|
+
assert_equal Gem::Source.new(URI('https://index.rubygems.org')), set.source
|
18
18
|
end
|
19
19
|
|
20
20
|
def test_initialize_deeper_uri
|
21
|
-
set = @DR::APISet.new 'https://rubygemsserver.com/mygems/
|
21
|
+
set = @DR::APISet.new 'https://rubygemsserver.com/mygems/info'
|
22
22
|
|
23
|
-
assert_equal URI('https://rubygemsserver.com/mygems/
|
24
|
-
assert_equal URI('https://rubygemsserver.com/
|
25
|
-
assert_equal Gem::Source.new(URI('https://rubygemsserver.com/
|
23
|
+
assert_equal URI('https://rubygemsserver.com/mygems/info'), set.dep_uri
|
24
|
+
assert_equal URI('https://rubygemsserver.com/'), set.uri
|
25
|
+
assert_equal Gem::Source.new(URI('https://rubygemsserver.com/')), set.source
|
26
26
|
end
|
27
27
|
|
28
28
|
def test_initialize_uri
|
29
29
|
set = @DR::APISet.new @dep_uri
|
30
30
|
|
31
|
-
assert_equal URI("#{@gem_repo}
|
31
|
+
assert_equal URI("#{@gem_repo}info/"), set.dep_uri
|
32
32
|
assert_equal URI("#{@gem_repo}"), set.uri
|
33
33
|
end
|
34
34
|
|
@@ -42,7 +42,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
42
42
|
:dependencies => [] },
|
43
43
|
]
|
44
44
|
|
45
|
-
@fetcher.data["#{@dep_uri}
|
45
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 "
|
46
46
|
|
47
47
|
set = @DR::APISet.new @dep_uri
|
48
48
|
|
@@ -69,7 +69,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
69
69
|
:dependencies => [] },
|
70
70
|
]
|
71
71
|
|
72
|
-
@fetcher.data["#{@dep_uri}
|
72
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1\n2.a"
|
73
73
|
|
74
74
|
set = @DR::APISet.new @dep_uri
|
75
75
|
set.prerelease = true
|
@@ -94,7 +94,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
94
94
|
:dependencies => [] },
|
95
95
|
]
|
96
96
|
|
97
|
-
@fetcher.data["#{@dep_uri}
|
97
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 "
|
98
98
|
|
99
99
|
set = @DR::APISet.new @dep_uri
|
100
100
|
|
@@ -108,7 +108,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
108
108
|
|
109
109
|
assert_equal expected, set.find_all(a_dep)
|
110
110
|
|
111
|
-
@fetcher.data.delete "#{@dep_uri}
|
111
|
+
@fetcher.data.delete "#{@dep_uri}a"
|
112
112
|
end
|
113
113
|
|
114
114
|
def test_find_all_local
|
@@ -123,7 +123,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
123
123
|
def test_find_all_missing
|
124
124
|
spec_fetcher
|
125
125
|
|
126
|
-
@fetcher.data["#{@dep_uri}
|
126
|
+
@fetcher.data["#{@dep_uri}a"] = "---"
|
127
127
|
|
128
128
|
set = @DR::APISet.new @dep_uri
|
129
129
|
|
@@ -131,7 +131,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
131
131
|
|
132
132
|
assert_empty set.find_all(a_dep)
|
133
133
|
|
134
|
-
@fetcher.data.delete "#{@dep_uri}
|
134
|
+
@fetcher.data.delete "#{@dep_uri}a"
|
135
135
|
|
136
136
|
assert_empty set.find_all(a_dep)
|
137
137
|
end
|
@@ -139,15 +139,8 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
139
139
|
def test_prefetch
|
140
140
|
spec_fetcher
|
141
141
|
|
142
|
-
data =
|
143
|
-
|
144
|
-
:number => '1',
|
145
|
-
:platform => 'ruby',
|
146
|
-
:dependencies => [] },
|
147
|
-
]
|
148
|
-
|
149
|
-
@fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
|
150
|
-
@fetcher.data["#{@dep_uri}?gems=b"] = Marshal.dump []
|
142
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
|
143
|
+
@fetcher.data["#{@dep_uri}b"] = "---"
|
151
144
|
|
152
145
|
set = @DR::APISet.new @dep_uri
|
153
146
|
|
@@ -163,14 +156,7 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
163
156
|
def test_prefetch_cache
|
164
157
|
spec_fetcher
|
165
158
|
|
166
|
-
data =
|
167
|
-
{ :name => 'a',
|
168
|
-
:number => '1',
|
169
|
-
:platform => 'ruby',
|
170
|
-
:dependencies => [] },
|
171
|
-
]
|
172
|
-
|
173
|
-
@fetcher.data["#{@dep_uri}?gems=a"] = Marshal.dump data
|
159
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
|
174
160
|
|
175
161
|
set = @DR::APISet.new @dep_uri
|
176
162
|
|
@@ -179,8 +165,8 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
179
165
|
|
180
166
|
set.prefetch [a_dep]
|
181
167
|
|
182
|
-
@fetcher.data.delete "#{@dep_uri}
|
183
|
-
@fetcher.data["#{@dep_uri}?
|
168
|
+
@fetcher.data.delete "#{@dep_uri}a"
|
169
|
+
@fetcher.data["#{@dep_uri}?b"] = "---"
|
184
170
|
|
185
171
|
set.prefetch [a_dep, b_dep]
|
186
172
|
end
|
@@ -188,14 +174,8 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
188
174
|
def test_prefetch_cache_missing
|
189
175
|
spec_fetcher
|
190
176
|
|
191
|
-
data =
|
192
|
-
|
193
|
-
:number => '1',
|
194
|
-
:platform => 'ruby',
|
195
|
-
:dependencies => [] },
|
196
|
-
]
|
197
|
-
|
198
|
-
@fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
|
177
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
|
178
|
+
@fetcher.data["#{@dep_uri}b"] = "---"
|
199
179
|
|
200
180
|
set = @DR::APISet.new @dep_uri
|
201
181
|
|
@@ -204,7 +184,8 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
204
184
|
|
205
185
|
set.prefetch [a_dep, b_dep]
|
206
186
|
|
207
|
-
@fetcher.data.delete "#{@dep_uri}
|
187
|
+
@fetcher.data.delete "#{@dep_uri}a"
|
188
|
+
@fetcher.data.delete "#{@dep_uri}b"
|
208
189
|
|
209
190
|
set.prefetch [a_dep, b_dep]
|
210
191
|
end
|
@@ -212,15 +193,8 @@ class TestGemResolverAPISet < Gem::TestCase
|
|
212
193
|
def test_prefetch_local
|
213
194
|
spec_fetcher
|
214
195
|
|
215
|
-
data =
|
216
|
-
|
217
|
-
:number => '1',
|
218
|
-
:platform => 'ruby',
|
219
|
-
:dependencies => [] },
|
220
|
-
]
|
221
|
-
|
222
|
-
@fetcher.data["#{@dep_uri}?gems=a,b"] = Marshal.dump data
|
223
|
-
@fetcher.data["#{@dep_uri}?gems=b"] = Marshal.dump []
|
196
|
+
@fetcher.data["#{@dep_uri}a"] = "---\n1 \n"
|
197
|
+
@fetcher.data["#{@dep_uri}b"] = "---"
|
224
198
|
|
225
199
|
set = @DR::APISet.new @dep_uri
|
226
200
|
set.remote = false
|
@@ -39,7 +39,7 @@ class TestGemResolverAPISpecification < Gem::TestCase
|
|
39
39
|
|
40
40
|
rails = specs['rails-3.0.3']
|
41
41
|
|
42
|
-
repo = @gem_repo + '
|
42
|
+
repo = @gem_repo + 'info'
|
43
43
|
|
44
44
|
set = Gem::Resolver::APISet.new repo
|
45
45
|
|
@@ -123,7 +123,7 @@ class TestGemResolverAPISpecification < Gem::TestCase
|
|
123
123
|
fetcher.spec 'a', 1
|
124
124
|
end
|
125
125
|
|
126
|
-
dep_uri = URI(@gem_repo) + '
|
126
|
+
dep_uri = URI(@gem_repo) + 'info'
|
127
127
|
set = Gem::Resolver::APISet.new dep_uri
|
128
128
|
data = {
|
129
129
|
:name => 'a',
|
@@ -147,7 +147,7 @@ class TestGemResolverAPISpecification < Gem::TestCase
|
|
147
147
|
end
|
148
148
|
end
|
149
149
|
|
150
|
-
dep_uri = URI(@gem_repo) + '
|
150
|
+
dep_uri = URI(@gem_repo) + 'info'
|
151
151
|
set = Gem::Resolver::APISet.new dep_uri
|
152
152
|
data = {
|
153
153
|
:name => 'j',
|
@@ -39,7 +39,7 @@ class TestGemResolverBestSet < Gem::TestCase
|
|
39
39
|
|
40
40
|
set = @DR::BestSet.new
|
41
41
|
|
42
|
-
api_uri = URI(@gem_repo)
|
42
|
+
api_uri = URI(@gem_repo)
|
43
43
|
|
44
44
|
set.sets << Gem::Resolver::APISet.new(api_uri)
|
45
45
|
|
@@ -99,12 +99,12 @@ class TestGemResolverBestSet < Gem::TestCase
|
|
99
99
|
def test_replace_failed_api_set
|
100
100
|
set = @DR::BestSet.new
|
101
101
|
|
102
|
-
api_uri = URI(@gem_repo) + './
|
102
|
+
api_uri = URI(@gem_repo) + './info/'
|
103
103
|
api_set = Gem::Resolver::APISet.new api_uri
|
104
104
|
|
105
105
|
set.sets << api_set
|
106
106
|
|
107
|
-
error_uri = api_uri + '
|
107
|
+
error_uri = api_uri + 'a'
|
108
108
|
|
109
109
|
error = Gem::RemoteFetcher::FetchError.new 'bogus', error_uri
|
110
110
|
|
@@ -132,4 +132,27 @@ class TestGemResolverBestSet < Gem::TestCase
|
|
132
132
|
|
133
133
|
assert_equal error, e
|
134
134
|
end
|
135
|
+
|
136
|
+
def test_replace_failed_api_set_uri_with_credentials
|
137
|
+
set = @DR::BestSet.new
|
138
|
+
|
139
|
+
api_uri = URI(@gem_repo) + './info/'
|
140
|
+
api_uri.user = 'user'
|
141
|
+
api_uri.password = 'pass'
|
142
|
+
api_set = Gem::Resolver::APISet.new api_uri
|
143
|
+
|
144
|
+
set.sets << api_set
|
145
|
+
|
146
|
+
error_uri = api_uri + 'a'
|
147
|
+
|
148
|
+
error = Gem::RemoteFetcher::FetchError.new 'bogus', error_uri
|
149
|
+
|
150
|
+
set.replace_failed_api_set error
|
151
|
+
|
152
|
+
assert_equal 1, set.sets.size
|
153
|
+
|
154
|
+
refute_includes set.sets, api_set
|
155
|
+
|
156
|
+
assert_kind_of Gem::Resolver::IndexSet, set.sets.first
|
157
|
+
end
|
135
158
|
end
|
@@ -44,9 +44,9 @@ class TestGemSource < Gem::TestCase
|
|
44
44
|
|
45
45
|
def test_dependency_resolver_set_bundler_api
|
46
46
|
response = Net::HTTPResponse.new '1.1', 200, 'OK'
|
47
|
-
response.uri = URI('http://example')
|
47
|
+
response.uri = URI('http://example')
|
48
48
|
|
49
|
-
@fetcher.data[
|
49
|
+
@fetcher.data[@gem_repo] = response
|
50
50
|
|
51
51
|
set = @source.dependency_resolver_set
|
52
52
|
|
@@ -21,9 +21,9 @@ class TestGemSourceSubpathProblem < Gem::TestCase
|
|
21
21
|
|
22
22
|
def test_dependency_resolver_set
|
23
23
|
response = Net::HTTPResponse.new '1.1', 200, 'OK'
|
24
|
-
response.uri = URI('http://example')
|
24
|
+
response.uri = URI('http://example')
|
25
25
|
|
26
|
-
@fetcher.data["#{@gem_repo}/
|
26
|
+
@fetcher.data["#{@gem_repo}/"] = response
|
27
27
|
|
28
28
|
set = @source.dependency_resolver_set
|
29
29
|
|
@@ -1161,6 +1161,14 @@ dependencies: []
|
|
1161
1161
|
Gem::Specification.class_variable_set(:@@stubs, nil)
|
1162
1162
|
end
|
1163
1163
|
|
1164
|
+
def test_self_stubs_for_no_lazy_loading_after_all_specs_setup
|
1165
|
+
Gem::Specification.all = [util_spec('a', '1')]
|
1166
|
+
|
1167
|
+
save_gemspec('b-1', '1', File.join(Gem.dir, 'specifications')){|s| s.name = 'b' }
|
1168
|
+
|
1169
|
+
assert_equal [], Gem::Specification.stubs_for('b').map {|s| s.full_name }
|
1170
|
+
end
|
1171
|
+
|
1164
1172
|
def test_self_stubs_for_mult_platforms
|
1165
1173
|
# gems for two different platforms are installed with --user-install
|
1166
1174
|
# the correct one should be returned in the array
|
@@ -1200,10 +1208,8 @@ dependencies: []
|
|
1200
1208
|
Gem.platforms = orig_platform
|
1201
1209
|
end
|
1202
1210
|
|
1203
|
-
DATA_PATH = File.expand_path "../data", __FILE__
|
1204
|
-
|
1205
1211
|
def test_handles_private_null_type
|
1206
|
-
path = File.
|
1212
|
+
path = File.expand_path "../data/null-type.gemspec.rz", __FILE__
|
1207
1213
|
|
1208
1214
|
data = Marshal.load Gem::Util.inflate(Gem.read_binary(path))
|
1209
1215
|
|
@@ -5,7 +5,7 @@ require 'timeout'
|
|
5
5
|
|
6
6
|
class TestGemStreamUI < Gem::TestCase
|
7
7
|
# increase timeout with MJIT for --jit-wait testing
|
8
|
-
mjit_enabled = defined?(RubyVM::MJIT) && RubyVM::MJIT.enabled?
|
8
|
+
mjit_enabled = defined?(RubyVM::JIT) ? RubyVM::JIT.enabled? : defined?(RubyVM::MJIT) && RubyVM::MJIT.enabled?
|
9
9
|
SHORT_TIMEOUT = (RUBY_ENGINE == "ruby" && !mjit_enabled) ? 0.1 : 1.0
|
10
10
|
|
11
11
|
module IsTty
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubygems-update
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.2.
|
4
|
+
version: 3.2.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jim Weirich
|
@@ -16,7 +16,7 @@ authors:
|
|
16
16
|
autorequire:
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
|
-
date:
|
19
|
+
date: 2021-01-27 00:00:00.000000000 Z
|
20
20
|
dependencies: []
|
21
21
|
description: |-
|
22
22
|
A package (also known as a library) contains a set of functionality
|
@@ -39,7 +39,7 @@ executables:
|
|
39
39
|
- update_rubygems
|
40
40
|
extensions: []
|
41
41
|
extra_rdoc_files:
|
42
|
-
-
|
42
|
+
- CHANGELOG.md
|
43
43
|
- LICENSE.txt
|
44
44
|
- MAINTAINERS.txt
|
45
45
|
- MIT.txt
|
@@ -53,34 +53,10 @@ extra_rdoc_files:
|
|
53
53
|
- bundler/LICENSE.md
|
54
54
|
- bundler/README.md
|
55
55
|
- hide_lib_for_update/note.txt
|
56
|
-
- bundler/man/bundle-init.1
|
57
|
-
- bundler/man/bundle-add.1
|
58
|
-
- bundler/man/bundle-remove.1
|
59
|
-
- bundler/man/bundle-info.1
|
60
|
-
- bundler/man/bundle.1
|
61
|
-
- bundler/man/bundle-check.1
|
62
|
-
- bundler/man/bundle-exec.1
|
63
|
-
- bundler/man/bundle-show.1
|
64
|
-
- bundler/man/bundle-outdated.1
|
65
|
-
- bundler/man/bundle-platform.1
|
66
|
-
- bundler/man/bundle-gem.1
|
67
|
-
- bundler/man/bundle-inject.1
|
68
|
-
- bundler/man/bundle-binstubs.1
|
69
|
-
- bundler/man/bundle-doctor.1
|
70
|
-
- bundler/man/bundle-lock.1
|
71
|
-
- bundler/man/bundle-viz.1
|
72
|
-
- bundler/man/bundle-config.1
|
73
|
-
- bundler/man/bundle-list.1
|
74
|
-
- bundler/man/bundle-clean.1
|
75
|
-
- bundler/man/bundle-update.1
|
76
|
-
- bundler/man/bundle-pristine.1
|
77
|
-
- bundler/man/bundle-open.1
|
78
|
-
- bundler/man/bundle-cache.1
|
79
|
-
- bundler/man/bundle-install.1
|
80
56
|
files:
|
57
|
+
- CHANGELOG.md
|
81
58
|
- CODE_OF_CONDUCT.md
|
82
59
|
- CONTRIBUTING.md
|
83
|
-
- History.txt
|
84
60
|
- LICENSE.txt
|
85
61
|
- MAINTAINERS.txt
|
86
62
|
- MIT.txt
|
@@ -132,6 +108,7 @@ files:
|
|
132
108
|
- bundler/lib/bundler/cli/viz.rb
|
133
109
|
- bundler/lib/bundler/compact_index_client.rb
|
134
110
|
- bundler/lib/bundler/compact_index_client/cache.rb
|
111
|
+
- bundler/lib/bundler/compact_index_client/gem_parser.rb
|
135
112
|
- bundler/lib/bundler/compact_index_client/updater.rb
|
136
113
|
- bundler/lib/bundler/constants.rb
|
137
114
|
- bundler/lib/bundler/current_ruby.rb
|
@@ -170,31 +147,57 @@ files:
|
|
170
147
|
- bundler/lib/bundler/lockfile_generator.rb
|
171
148
|
- bundler/lib/bundler/lockfile_parser.rb
|
172
149
|
- bundler/lib/bundler/man/.document
|
150
|
+
- bundler/lib/bundler/man/bundle-add.1
|
173
151
|
- bundler/lib/bundler/man/bundle-add.1.ronn
|
152
|
+
- bundler/lib/bundler/man/bundle-binstubs.1
|
174
153
|
- bundler/lib/bundler/man/bundle-binstubs.1.ronn
|
154
|
+
- bundler/lib/bundler/man/bundle-cache.1
|
175
155
|
- bundler/lib/bundler/man/bundle-cache.1.ronn
|
156
|
+
- bundler/lib/bundler/man/bundle-check.1
|
176
157
|
- bundler/lib/bundler/man/bundle-check.1.ronn
|
158
|
+
- bundler/lib/bundler/man/bundle-clean.1
|
177
159
|
- bundler/lib/bundler/man/bundle-clean.1.ronn
|
160
|
+
- bundler/lib/bundler/man/bundle-config.1
|
178
161
|
- bundler/lib/bundler/man/bundle-config.1.ronn
|
162
|
+
- bundler/lib/bundler/man/bundle-doctor.1
|
179
163
|
- bundler/lib/bundler/man/bundle-doctor.1.ronn
|
164
|
+
- bundler/lib/bundler/man/bundle-exec.1
|
180
165
|
- bundler/lib/bundler/man/bundle-exec.1.ronn
|
166
|
+
- bundler/lib/bundler/man/bundle-gem.1
|
181
167
|
- bundler/lib/bundler/man/bundle-gem.1.ronn
|
168
|
+
- bundler/lib/bundler/man/bundle-info.1
|
182
169
|
- bundler/lib/bundler/man/bundle-info.1.ronn
|
170
|
+
- bundler/lib/bundler/man/bundle-init.1
|
183
171
|
- bundler/lib/bundler/man/bundle-init.1.ronn
|
172
|
+
- bundler/lib/bundler/man/bundle-inject.1
|
184
173
|
- bundler/lib/bundler/man/bundle-inject.1.ronn
|
174
|
+
- bundler/lib/bundler/man/bundle-install.1
|
185
175
|
- bundler/lib/bundler/man/bundle-install.1.ronn
|
176
|
+
- bundler/lib/bundler/man/bundle-list.1
|
186
177
|
- bundler/lib/bundler/man/bundle-list.1.ronn
|
178
|
+
- bundler/lib/bundler/man/bundle-lock.1
|
187
179
|
- bundler/lib/bundler/man/bundle-lock.1.ronn
|
180
|
+
- bundler/lib/bundler/man/bundle-open.1
|
188
181
|
- bundler/lib/bundler/man/bundle-open.1.ronn
|
182
|
+
- bundler/lib/bundler/man/bundle-outdated.1
|
189
183
|
- bundler/lib/bundler/man/bundle-outdated.1.ronn
|
184
|
+
- bundler/lib/bundler/man/bundle-platform.1
|
190
185
|
- bundler/lib/bundler/man/bundle-platform.1.ronn
|
186
|
+
- bundler/lib/bundler/man/bundle-pristine.1
|
191
187
|
- bundler/lib/bundler/man/bundle-pristine.1.ronn
|
188
|
+
- bundler/lib/bundler/man/bundle-remove.1
|
192
189
|
- bundler/lib/bundler/man/bundle-remove.1.ronn
|
190
|
+
- bundler/lib/bundler/man/bundle-show.1
|
193
191
|
- bundler/lib/bundler/man/bundle-show.1.ronn
|
192
|
+
- bundler/lib/bundler/man/bundle-update.1
|
194
193
|
- bundler/lib/bundler/man/bundle-update.1.ronn
|
194
|
+
- bundler/lib/bundler/man/bundle-viz.1
|
195
195
|
- bundler/lib/bundler/man/bundle-viz.1.ronn
|
196
|
+
- bundler/lib/bundler/man/bundle.1
|
196
197
|
- bundler/lib/bundler/man/bundle.1.ronn
|
198
|
+
- bundler/lib/bundler/man/gemfile.5
|
197
199
|
- bundler/lib/bundler/man/gemfile.5.ronn
|
200
|
+
- bundler/lib/bundler/man/index.txt
|
198
201
|
- bundler/lib/bundler/match_platform.rb
|
199
202
|
- bundler/lib/bundler/mirror.rb
|
200
203
|
- bundler/lib/bundler/plugin.rb
|
@@ -359,32 +362,6 @@ files:
|
|
359
362
|
- bundler/lib/bundler/vlad.rb
|
360
363
|
- bundler/lib/bundler/worker.rb
|
361
364
|
- bundler/lib/bundler/yaml_serializer.rb
|
362
|
-
- bundler/man/bundle-add.1
|
363
|
-
- bundler/man/bundle-binstubs.1
|
364
|
-
- bundler/man/bundle-cache.1
|
365
|
-
- bundler/man/bundle-check.1
|
366
|
-
- bundler/man/bundle-clean.1
|
367
|
-
- bundler/man/bundle-config.1
|
368
|
-
- bundler/man/bundle-doctor.1
|
369
|
-
- bundler/man/bundle-exec.1
|
370
|
-
- bundler/man/bundle-gem.1
|
371
|
-
- bundler/man/bundle-info.1
|
372
|
-
- bundler/man/bundle-init.1
|
373
|
-
- bundler/man/bundle-inject.1
|
374
|
-
- bundler/man/bundle-install.1
|
375
|
-
- bundler/man/bundle-list.1
|
376
|
-
- bundler/man/bundle-lock.1
|
377
|
-
- bundler/man/bundle-open.1
|
378
|
-
- bundler/man/bundle-outdated.1
|
379
|
-
- bundler/man/bundle-platform.1
|
380
|
-
- bundler/man/bundle-pristine.1
|
381
|
-
- bundler/man/bundle-remove.1
|
382
|
-
- bundler/man/bundle-show.1
|
383
|
-
- bundler/man/bundle-update.1
|
384
|
-
- bundler/man/bundle-viz.1
|
385
|
-
- bundler/man/bundle.1
|
386
|
-
- bundler/man/gemfile.5
|
387
|
-
- bundler/man/index.txt
|
388
365
|
- hide_lib_for_update/note.txt
|
389
366
|
- lib/rubygems.rb
|
390
367
|
- lib/rubygems/available_set.rb
|
@@ -492,6 +469,7 @@ files:
|
|
492
469
|
- lib/rubygems/resolver.rb
|
493
470
|
- lib/rubygems/resolver/activation_request.rb
|
494
471
|
- lib/rubygems/resolver/api_set.rb
|
472
|
+
- lib/rubygems/resolver/api_set/gem_parser.rb
|
495
473
|
- lib/rubygems/resolver/api_specification.rb
|
496
474
|
- lib/rubygems/resolver/best_set.rb
|
497
475
|
- lib/rubygems/resolver/composed_set.rb
|
@@ -589,6 +567,7 @@ files:
|
|
589
567
|
- test/rubygems/client.pem
|
590
568
|
- test/rubygems/data/gem-private_key.pem
|
591
569
|
- test/rubygems/data/gem-public_cert.pem
|
570
|
+
- test/rubygems/data/null-required-rubygems-version.gemspec.rz
|
592
571
|
- test/rubygems/data/null-type.gemspec.rz
|
593
572
|
- test/rubygems/encrypted_private_key.pem
|
594
573
|
- test/rubygems/expired_cert.pem
|
@@ -786,7 +765,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
786
765
|
- !ruby/object:Gem::Version
|
787
766
|
version: '0'
|
788
767
|
requirements: []
|
789
|
-
rubygems_version: 3.2.
|
768
|
+
rubygems_version: 3.2.7
|
790
769
|
signing_key:
|
791
770
|
specification_version: 4
|
792
771
|
summary: RubyGems is a package management framework for Ruby.
|