rubygems-update 2.7.9 → 2.7.10
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 +4 -4
- data/History.txt +10 -0
- data/bundler/lib/bundler/build_metadata.rb +1 -1
- data/lib/rubygems.rb +2 -7
- data/lib/rubygems/bundler_version_finder.rb +5 -22
- data/lib/rubygems/test_case.rb +1 -1
- data/test/rubygems/test_gem.rb +38 -3
- data/test/rubygems/test_gem_bundler_version_finder.rb +8 -7
- data/test/rubygems/test_gem_command_manager.rb +2 -2
- data/test/rubygems/test_gem_commands_signin_command.rb +1 -1
- data/test/rubygems/test_gem_commands_uninstall_command.rb +1 -1
- data/test/rubygems/test_gem_dependency.rb +1 -1
- data/test/rubygems/test_gem_ext_rake_builder.rb +0 -4
- data/test/rubygems/test_gem_installer.rb +3 -3
- data/test/rubygems/test_gem_resolver_installer_set.rb +1 -1
- data/test/rubygems/test_gem_specification.rb +9 -9
- data/test/rubygems/test_gem_stream_ui.rb +2 -2
- metadata +5 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7d5b46d3734b85b5918d8e3dc8a02b1ab011b0880bc5eaf1037c7d43f78bb172
|
4
|
+
data.tar.gz: 534d6caa35ce33777a04ec8c13c93a10a6fde6229ae888354dded07a73930fb7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dbba7ff99a566c7932ebdd64c03f2b708aabfb81aff9bc4841a5aed3084e278ac04a90153ce304bc897431941baa5189cc120f45e668f5ae9fd70cbe0d0108df
|
7
|
+
data.tar.gz: 9e7761b5124571a60c3c6cc74658acb9ce1d2929e5ab06290248bc1ef41cf8026c2971b97808d39fb80ed4251c27b4ce5f2fafd3d1faf4b5d1b3d2576d871dcf
|
data/History.txt
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
# coding: UTF-8
|
2
2
|
|
3
|
+
=== 2.7.10 / 2019-06-14
|
4
|
+
|
5
|
+
Minor enhancements:
|
6
|
+
|
7
|
+
* Fix bundler rubygems binstub not properly looking for bundler. Pull request #2426
|
8
|
+
by David Rodríguez.
|
9
|
+
* [BudlerVersionFinder] set .filter! and .compatible? to match only on major versions.
|
10
|
+
Pull request #2515 by Colby Swandale.
|
11
|
+
+ Update for compatibilty with new minitest. Pull request #2118 by MSP-Greg.
|
12
|
+
|
3
13
|
=== 2.7.9 / 2019-03-05
|
4
14
|
|
5
15
|
Security fixes:
|
data/lib/rubygems.rb
CHANGED
@@ -10,7 +10,7 @@ require 'rbconfig'
|
|
10
10
|
require 'thread'
|
11
11
|
|
12
12
|
module Gem
|
13
|
-
VERSION = "2.7.
|
13
|
+
VERSION = "2.7.10"
|
14
14
|
end
|
15
15
|
|
16
16
|
# Must be first since it unloads the prelude from 1.9.2
|
@@ -270,12 +270,7 @@ module Gem
|
|
270
270
|
|
271
271
|
return loaded if loaded && dep.matches_spec?(loaded)
|
272
272
|
|
273
|
-
|
274
|
-
if dep.to_s == "bundler (>= 0.a)"
|
275
|
-
specs = Gem::BundlerVersionFinder.without_filtering(&find_specs)
|
276
|
-
else
|
277
|
-
specs = find_specs.call
|
278
|
-
end
|
273
|
+
specs = dep.matching_specs(true)
|
279
274
|
|
280
275
|
specs = specs.find_all { |spec|
|
281
276
|
spec.executables.include? exec_name
|
@@ -3,15 +3,6 @@
|
|
3
3
|
require "rubygems/util"
|
4
4
|
|
5
5
|
module Gem::BundlerVersionFinder
|
6
|
-
@without_filtering = false
|
7
|
-
|
8
|
-
def self.without_filtering
|
9
|
-
without_filtering, @without_filtering = true, @without_filtering
|
10
|
-
yield
|
11
|
-
ensure
|
12
|
-
@without_filtering = without_filtering
|
13
|
-
end
|
14
|
-
|
15
6
|
def self.bundler_version
|
16
7
|
version, _ = bundler_version_with_reason
|
17
8
|
|
@@ -21,8 +12,6 @@ module Gem::BundlerVersionFinder
|
|
21
12
|
end
|
22
13
|
|
23
14
|
def self.bundler_version_with_reason
|
24
|
-
return if @without_filtering
|
25
|
-
|
26
15
|
if v = ENV["BUNDLER_VERSION"]
|
27
16
|
return [v, "`$BUNDLER_VERSION`"]
|
28
17
|
end
|
@@ -40,7 +29,7 @@ module Gem::BundlerVersionFinder
|
|
40
29
|
return unless vr = bundler_version_with_reason
|
41
30
|
<<-EOS
|
42
31
|
Could not find 'bundler' (#{vr.first}) required by #{vr.last}.
|
43
|
-
To update to the
|
32
|
+
To update to the latest version installed on your system, run `bundle update --bundler`.
|
44
33
|
To install the missing version, run `gem install bundler:#{vr.first}`
|
45
34
|
EOS
|
46
35
|
end
|
@@ -48,20 +37,14 @@ To install the missing version, run `gem install bundler:#{vr.first}`
|
|
48
37
|
def self.compatible?(spec)
|
49
38
|
return true unless spec.name == "bundler".freeze
|
50
39
|
return true unless bundler_version = self.bundler_version
|
51
|
-
|
52
|
-
|
53
|
-
else # 1.x
|
54
|
-
spec.version.segments.first < 2
|
55
|
-
end
|
40
|
+
|
41
|
+
spec.version.segments.first == bundler_version.segments.first
|
56
42
|
end
|
57
43
|
|
58
44
|
def self.filter!(specs)
|
59
45
|
return unless bundler_version = self.bundler_version
|
60
|
-
|
61
|
-
|
62
|
-
else # 1.x
|
63
|
-
specs.reject! { |spec| spec.version.segments.first >= 2}
|
64
|
-
end
|
46
|
+
|
47
|
+
specs.reject! { |spec| spec.version.segments.first != bundler_version.segments.first }
|
65
48
|
end
|
66
49
|
|
67
50
|
def self.bundle_update_bundler_version
|
data/lib/rubygems/test_case.rb
CHANGED
data/test/rubygems/test_gem.rb
CHANGED
@@ -209,6 +209,41 @@ class TestGem < Gem::TestCase
|
|
209
209
|
assert_equal %w(a-1 b-2 c-1), loaded_spec_names
|
210
210
|
end
|
211
211
|
|
212
|
+
def test_activate_bin_path_gives_proper_error_for_bundler
|
213
|
+
bundler = util_spec 'bundler', '2' do |s|
|
214
|
+
s.executables = ['bundle']
|
215
|
+
end
|
216
|
+
|
217
|
+
install_specs bundler
|
218
|
+
|
219
|
+
File.open("Gemfile.lock", "w") do |f|
|
220
|
+
f.write <<-L.gsub(/ {8}/, "")
|
221
|
+
GEM
|
222
|
+
remote: https://rubygems.org/
|
223
|
+
specs:
|
224
|
+
|
225
|
+
PLATFORMS
|
226
|
+
ruby
|
227
|
+
|
228
|
+
DEPENDENCIES
|
229
|
+
|
230
|
+
BUNDLED WITH
|
231
|
+
9999
|
232
|
+
L
|
233
|
+
end
|
234
|
+
|
235
|
+
File.open("Gemfile", "w") { |f| f.puts('source "https://rubygems.org"') }
|
236
|
+
|
237
|
+
e = assert_raises Gem::GemNotFoundException do
|
238
|
+
load Gem.activate_bin_path("bundler", "bundle", ">= 0.a")
|
239
|
+
end
|
240
|
+
|
241
|
+
assert_includes e.message, "Could not find 'bundler' (9999) required by your #{File.expand_path("Gemfile.lock")}."
|
242
|
+
assert_includes e.message, "To update to the latest version installed on your system, run `bundle update --bundler`."
|
243
|
+
assert_includes e.message, "To install the missing version, run `gem install bundler:9999`"
|
244
|
+
refute_includes e.message, "can't find gem bundler (>= 0.a) with executable bundle"
|
245
|
+
end
|
246
|
+
|
212
247
|
def test_self_bin_path_no_exec_name
|
213
248
|
e = assert_raises ArgumentError do
|
214
249
|
Gem.bin_path 'a'
|
@@ -1590,7 +1625,7 @@ class TestGem < Gem::TestCase
|
|
1590
1625
|
|
1591
1626
|
assert_equal old_style, Gem.find_unresolved_default_spec("foo.rb")
|
1592
1627
|
assert_equal old_style, Gem.find_unresolved_default_spec("bar.rb")
|
1593
|
-
|
1628
|
+
assert_nil Gem.find_unresolved_default_spec("baz.rb")
|
1594
1629
|
|
1595
1630
|
Gem.clear_default_specs
|
1596
1631
|
|
@@ -1603,8 +1638,8 @@ class TestGem < Gem::TestCase
|
|
1603
1638
|
|
1604
1639
|
assert_equal new_style, Gem.find_unresolved_default_spec("foo.rb")
|
1605
1640
|
assert_equal new_style, Gem.find_unresolved_default_spec("bar.rb")
|
1606
|
-
|
1607
|
-
|
1641
|
+
assert_nil Gem.find_unresolved_default_spec("exec")
|
1642
|
+
assert_nil Gem.find_unresolved_default_spec("README")
|
1608
1643
|
end
|
1609
1644
|
|
1610
1645
|
def test_default_gems_use_full_paths
|
@@ -88,20 +88,21 @@ class TestGemBundlerVersionFinder < Gem::TestCase
|
|
88
88
|
bvf.stub(:bundler_version, v("2.1.1.1")) do
|
89
89
|
assert bvf.compatible?(util_spec("foo"))
|
90
90
|
assert bvf.compatible?(util_spec("bundler", "2.1.1.1"))
|
91
|
-
|
91
|
+
assert bvf.compatible?(util_spec("bundler", "2.1.1.a"))
|
92
|
+
assert bvf.compatible?(util_spec("bundler", "2.999"))
|
92
93
|
refute bvf.compatible?(util_spec("bundler", "1.999"))
|
93
|
-
refute bvf.compatible?(util_spec("bundler", "
|
94
|
+
refute bvf.compatible?(util_spec("bundler", "3.0.0"))
|
94
95
|
end
|
95
96
|
end
|
96
97
|
|
97
98
|
def test_filter
|
98
|
-
versions = %w[1 1.0 1.0.1.1 2.a 3 3.0]
|
99
|
+
versions = %w[1 1.0 1.0.1.1 2 2.a 2.0 2.1.1 3 3.a 3.0 3.1.1]
|
99
100
|
specs = versions.map { |v| util_spec("bundler", v) }
|
100
101
|
|
101
|
-
assert_equal %w[1 1.0 1.0.1.1 2.a 3 3.0], util_filter_specs(specs).map(&:version).map(&:to_s)
|
102
|
+
assert_equal %w[1 1.0 1.0.1.1 2 2.a 2.0 2.1.1 3 3.a 3.0 3.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
102
103
|
|
103
104
|
bvf.stub(:bundler_version, v("2.1.1.1")) do
|
104
|
-
|
105
|
+
assert_equal %w[2 2.a 2.0 2.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
105
106
|
end
|
106
107
|
bvf.stub(:bundler_version, v("1.1.1.1")) do
|
107
108
|
assert_equal %w[1 1.0 1.0.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
@@ -110,10 +111,10 @@ class TestGemBundlerVersionFinder < Gem::TestCase
|
|
110
111
|
assert_equal %w[1 1.0 1.0.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
111
112
|
end
|
112
113
|
bvf.stub(:bundler_version, v("2.a")) do
|
113
|
-
assert_equal %w[2.a], util_filter_specs(specs).map(&:version).map(&:to_s)
|
114
|
+
assert_equal %w[2 2.a 2.0 2.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
114
115
|
end
|
115
116
|
bvf.stub(:bundler_version, v("3")) do
|
116
|
-
assert_equal %w[3 3.0], util_filter_specs(specs).map(&:version).map(&:to_s)
|
117
|
+
assert_equal %w[3 3.a 3.0 3.1.1], util_filter_specs(specs).map(&:version).map(&:to_s)
|
117
118
|
end
|
118
119
|
end
|
119
120
|
|
@@ -114,8 +114,8 @@ class TestGemCommandManager < Gem::TestCase
|
|
114
114
|
assert_equal :both, check_options[:domain]
|
115
115
|
assert_equal true, check_options[:wrappers]
|
116
116
|
assert_equal Gem::Requirement.default, check_options[:version]
|
117
|
-
|
118
|
-
|
117
|
+
assert_nil check_options[:install_dir]
|
118
|
+
assert_nil check_options[:bin_dir]
|
119
119
|
|
120
120
|
#check settings
|
121
121
|
check_options = nil
|
@@ -238,7 +238,7 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
238
238
|
@cmd.handle_options %w[]
|
239
239
|
|
240
240
|
assert_equal false, @cmd.options[:check_dev]
|
241
|
-
|
241
|
+
assert_nil @cmd.options[:install_dir]
|
242
242
|
assert_equal true, @cmd.options[:user_install]
|
243
243
|
assert_equal Gem::Requirement.default, @cmd.options[:version]
|
244
244
|
assert_equal false, @cmd.options[:vendor]
|
@@ -358,7 +358,7 @@ class TestGemDependency < Gem::TestCase
|
|
358
358
|
dep.to_specs
|
359
359
|
end
|
360
360
|
|
361
|
-
assert_match "Could not find 'bundler' (3.5) required by reason.\nTo update to the
|
361
|
+
assert_match "Could not find 'bundler' (3.5) required by reason.\nTo update to the latest version installed on your system, run `bundle update --bundler`.\nTo install the missing version, run `gem install bundler:3.5`\n", e.message
|
362
362
|
end
|
363
363
|
|
364
364
|
Gem::BundlerVersionFinder.stub(:bundler_version_with_reason, ["2.0.0.pre.1", "reason"]) do
|
@@ -16,11 +16,9 @@ class TestGemExtRakeBuilder < Gem::TestCase
|
|
16
16
|
def test_class_build
|
17
17
|
create_temp_mkrf_file('task :default')
|
18
18
|
output = []
|
19
|
-
realdir = nil # HACK /tmp vs. /private/tmp
|
20
19
|
|
21
20
|
build_rake_in do |rake|
|
22
21
|
Dir.chdir @ext do
|
23
|
-
realdir = Dir.pwd
|
24
22
|
Gem::Ext::RakeBuilder.build 'mkrf_conf.rb', nil, @dest_path, output
|
25
23
|
end
|
26
24
|
|
@@ -38,11 +36,9 @@ class TestGemExtRakeBuilder < Gem::TestCase
|
|
38
36
|
def test_class_build_with_args
|
39
37
|
create_temp_mkrf_file('task :default')
|
40
38
|
output = []
|
41
|
-
realdir = nil # HACK /tmp vs. /private/tmp
|
42
39
|
|
43
40
|
build_rake_in do |rake|
|
44
41
|
Dir.chdir @ext do
|
45
|
-
realdir = Dir.pwd
|
46
42
|
non_empty_args_list = ['']
|
47
43
|
Gem::Ext::RakeBuilder.build 'mkrf_conf.rb', nil, @dest_path, output, non_empty_args_list
|
48
44
|
end
|
@@ -21,7 +21,7 @@ class TestGemInstaller < Gem::InstallerTestCase
|
|
21
21
|
super
|
22
22
|
common_installer_setup
|
23
23
|
|
24
|
-
if __name__ =~
|
24
|
+
if (self.class.method_defined?(:__name__) ? __name__ : name) =~ /\Atest_install(_|\Z)/
|
25
25
|
FileUtils.rm_r @spec.gem_dir
|
26
26
|
FileUtils.rm_r @user_spec.gem_dir
|
27
27
|
end
|
@@ -34,7 +34,7 @@ class TestGemInstaller < Gem::InstallerTestCase
|
|
34
34
|
|
35
35
|
super
|
36
36
|
|
37
|
-
Gem.configuration = @config
|
37
|
+
Gem.configuration = instance_variable_defined?(:@config) ? @config : nil
|
38
38
|
end
|
39
39
|
|
40
40
|
def test_app_script_text
|
@@ -663,7 +663,7 @@ gem 'other', version
|
|
663
663
|
assert_path_exists installed_exec
|
664
664
|
|
665
665
|
if symlink_supported?
|
666
|
-
|
666
|
+
assert File.symlink?(installed_exec)
|
667
667
|
return
|
668
668
|
end
|
669
669
|
|
@@ -1135,7 +1135,7 @@ dependencies: []
|
|
1135
1135
|
|
1136
1136
|
data = Marshal.load Gem::Util.inflate(Gem.read_binary(path))
|
1137
1137
|
|
1138
|
-
|
1138
|
+
assert_nil data.rubyforge_project
|
1139
1139
|
end
|
1140
1140
|
|
1141
1141
|
def test_emits_zulu_timestamps_properly
|
@@ -1156,7 +1156,7 @@ dependencies: []
|
|
1156
1156
|
assert_equal "blah", spec.name
|
1157
1157
|
assert_equal "1.3.5", spec.version.to_s
|
1158
1158
|
assert_equal Gem::Platform::RUBY, spec.platform
|
1159
|
-
|
1159
|
+
assert_nil spec.summary
|
1160
1160
|
assert_equal [], spec.files
|
1161
1161
|
|
1162
1162
|
assert_equal [], spec.test_files
|
@@ -1333,31 +1333,31 @@ dependencies: []
|
|
1333
1333
|
@a2.bindir = nil
|
1334
1334
|
@a2.executable = 'app'
|
1335
1335
|
|
1336
|
-
|
1336
|
+
assert_nil @a2.bindir
|
1337
1337
|
assert_equal %w[app lib/code.rb].sort, @a2.files
|
1338
1338
|
end
|
1339
1339
|
|
1340
1340
|
def test_extensions_equals_nil
|
1341
1341
|
@a2.instance_variable_set(:@extensions, nil)
|
1342
|
-
|
1342
|
+
assert_nil @a2.instance_variable_get(:@extensions)
|
1343
1343
|
assert_equal %w[lib/code.rb], @a2.files
|
1344
1344
|
end
|
1345
1345
|
|
1346
1346
|
def test_test_files_equals_nil
|
1347
1347
|
@a2.instance_variable_set(:@test_files, nil)
|
1348
|
-
|
1348
|
+
assert_nil @a2.instance_variable_get(:@test_files)
|
1349
1349
|
assert_equal %w[lib/code.rb], @a2.files
|
1350
1350
|
end
|
1351
1351
|
|
1352
1352
|
def test_executables_equals_nil
|
1353
1353
|
@a2.instance_variable_set(:@executables, nil)
|
1354
|
-
|
1354
|
+
assert_nil @a2.instance_variable_get(:@executables)
|
1355
1355
|
assert_equal %w[lib/code.rb], @a2.files
|
1356
1356
|
end
|
1357
1357
|
|
1358
1358
|
def test_extra_rdoc_files_equals_nil
|
1359
1359
|
@a2.instance_variable_set(:@extra_rdoc_files, nil)
|
1360
|
-
|
1360
|
+
assert_nil @a2.instance_variable_get(:@extra_rdoc_files)
|
1361
1361
|
assert_equal %w[lib/code.rb], @a2.files
|
1362
1362
|
end
|
1363
1363
|
|
@@ -2210,7 +2210,7 @@ dependencies: []
|
|
2210
2210
|
end
|
2211
2211
|
|
2212
2212
|
def test_allowed_push_host
|
2213
|
-
|
2213
|
+
assert_nil @a1.metadata['allowed_push_host']
|
2214
2214
|
assert_equal 'https://privategemserver.com', @a3.metadata['allowed_push_host']
|
2215
2215
|
end
|
2216
2216
|
|
@@ -3567,7 +3567,7 @@ end
|
|
3567
3567
|
|
3568
3568
|
assert_equal a, Gem::Specification.find_inactive_by_path('foo')
|
3569
3569
|
a.activate
|
3570
|
-
|
3570
|
+
assert_nil Gem::Specification.find_inactive_by_path('foo')
|
3571
3571
|
end
|
3572
3572
|
|
3573
3573
|
def test_load_default_gem
|
@@ -55,7 +55,7 @@ class TestGemStreamUI < Gem::TestCase
|
|
55
55
|
|
56
56
|
Timeout.timeout(0.1) do
|
57
57
|
answer = @sui.ask("what is your favorite color?")
|
58
|
-
|
58
|
+
assert_nil answer
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
@@ -79,7 +79,7 @@ class TestGemStreamUI < Gem::TestCase
|
|
79
79
|
|
80
80
|
Timeout.timeout(0.1) do
|
81
81
|
answer = @sui.ask_for_password("what is the airspeed velocity of an unladen swallow?")
|
82
|
-
|
82
|
+
assert_nil answer
|
83
83
|
end
|
84
84
|
end
|
85
85
|
|
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: 2.7.
|
4
|
+
version: 2.7.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jim Weirich
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2019-
|
13
|
+
date: 2019-06-14 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: builder
|
@@ -102,14 +102,14 @@ dependencies:
|
|
102
102
|
requirements:
|
103
103
|
- - "~>"
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version: '3.
|
105
|
+
version: '3.18'
|
106
106
|
type: :development
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
110
|
- - "~>"
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: '3.
|
112
|
+
version: '3.18'
|
113
113
|
description: ''
|
114
114
|
email:
|
115
115
|
- rubygems-developers@rubyforge.org
|
@@ -804,8 +804,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
804
804
|
- !ruby/object:Gem::Version
|
805
805
|
version: '0'
|
806
806
|
requirements: []
|
807
|
-
|
808
|
-
rubygems_version: 2.7.6
|
807
|
+
rubygems_version: 3.0.3
|
809
808
|
signing_key:
|
810
809
|
specification_version: 4
|
811
810
|
summary: ''
|