rubygems-update 3.1.4 → 3.1.6
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 +17 -0
- data/Manifest.txt +2 -3
- data/Rakefile +1 -1
- data/bundler/lib/bundler/build_metadata.rb +1 -1
- data/lib/rubygems/core_ext/kernel_require.rb +25 -35
- data/lib/rubygems/ssl_certs/{index.rubygems.org → rubygems.org}/GlobalSignRootCA.pem +0 -0
- data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
- data/lib/rubygems/test_case.rb +1 -0
- data/lib/rubygems.rb +13 -10
- data/rubygems-update.gemspec +1 -1
- data/test/rubygems/test_bundled_ca.rb +7 -3
- data/test/rubygems/test_kernel.rb +19 -0
- data/test/rubygems/test_require.rb +104 -0
- data/util/update_bundled_ca_certificates.rb +1 -3
- metadata +5 -6
- data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
- data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf1897c1f4290a7c09ac7fc031441915d225aaa7ffab473229a244310eaa39ac
|
4
|
+
data.tar.gz: d6aef4fc02c767b99957e4dfaff7818399b9fb59de550d23bee19256b618a5f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2421931e30162b92a93891c80eb17bd3d78a135da9019f49a18ce701bf4ca1fa7731260f4cc6de1342a74accceb8df21024ccd5042cbefa9a89cf67c69528a54
|
7
|
+
data.tar.gz: 131eb583b3864dec611fab7574a8ebf75cc796288ed2a4c43e96d6b53d24509f282e83fa36b2851ad5e5c21b6d8f78fc3fadc3da974575428b3489d3d28d3a88
|
data/History.txt
CHANGED
@@ -1,5 +1,22 @@
|
|
1
1
|
# coding: UTF-8
|
2
2
|
|
3
|
+
=== 3.1.6 / 2021-01-26
|
4
|
+
|
5
|
+
Minor enhancements:
|
6
|
+
|
7
|
+
* Improve require. Pull request #3133 by David Rodríguez.
|
8
|
+
* Simplify nested gem activation exceptions. Pull request #3450 by David
|
9
|
+
Rodríguez.
|
10
|
+
* Fix correctness and performance regression in `require`. Pull request
|
11
|
+
#3639 by David Rodríguez.
|
12
|
+
|
13
|
+
=== 3.1.5 / 2020-12-09
|
14
|
+
|
15
|
+
Minor enhancements:
|
16
|
+
|
17
|
+
* Add GlobalSign Root CA - R3 cert and remove outdated certs. Pull request #4100
|
18
|
+
by Aditya Prakash.
|
19
|
+
|
3
20
|
=== 3.1.4 / 2020-06-03
|
4
21
|
|
5
22
|
Minor enhancements:
|
data/Manifest.txt
CHANGED
@@ -497,9 +497,8 @@ lib/rubygems/spec_fetcher.rb
|
|
497
497
|
lib/rubygems/specification.rb
|
498
498
|
lib/rubygems/specification_policy.rb
|
499
499
|
lib/rubygems/ssl_certs/.document
|
500
|
-
lib/rubygems/ssl_certs/
|
501
|
-
lib/rubygems/ssl_certs/rubygems.
|
502
|
-
lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem
|
500
|
+
lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
|
501
|
+
lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
|
503
502
|
lib/rubygems/stub_specification.rb
|
504
503
|
lib/rubygems/syck_hack.rb
|
505
504
|
lib/rubygems/test_case.rb
|
data/Rakefile
CHANGED
@@ -151,7 +151,7 @@ file "pkg/rubygems-#{v}.tgz" => "pkg/rubygems-#{v}" do
|
|
151
151
|
sh "7z a -ttar rubygems-#{v}.tar rubygems-#{v}"
|
152
152
|
sh "7z a -tgzip rubygems-#{v}.tgz rubygems-#{v}.tar"
|
153
153
|
else
|
154
|
-
sh "tar -czf rubygems-#{v}.tgz rubygems-#{v}"
|
154
|
+
sh "tar -czf rubygems-#{v}.tgz --owner=rubygems:0 --group=rubygems:0 rubygems-#{v}"
|
155
155
|
end
|
156
156
|
end
|
157
157
|
end
|
@@ -39,49 +39,40 @@ module Kernel
|
|
39
39
|
|
40
40
|
path = path.to_path if path.respond_to? :to_path
|
41
41
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
safe_lp = lp.dup.tap(&Gem::UNTAINT)
|
48
|
-
begin
|
49
|
-
if File.symlink? safe_lp # for backward compatibility
|
50
|
-
next
|
51
|
-
end
|
52
|
-
rescue SecurityError
|
53
|
-
RUBYGEMS_ACTIVATION_MONITOR.exit
|
54
|
-
raise
|
55
|
-
end
|
56
|
-
|
42
|
+
if spec = Gem.find_unresolved_default_spec(path)
|
43
|
+
# Ensure -I beats a default gem
|
44
|
+
resolved_path = begin
|
45
|
+
rp = nil
|
46
|
+
load_path_check_index = Gem.load_path_insert_index - Gem.activated_gem_paths
|
57
47
|
Gem.suffixes.each do |s|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
48
|
+
$LOAD_PATH[0...load_path_check_index].each do |lp|
|
49
|
+
safe_lp = lp.dup.tap(&Gem::UNTAINT)
|
50
|
+
begin
|
51
|
+
if File.symlink? safe_lp # for backward compatibility
|
52
|
+
next
|
53
|
+
end
|
54
|
+
rescue SecurityError
|
55
|
+
RUBYGEMS_ACTIVATION_MONITOR.exit
|
56
|
+
raise
|
57
|
+
end
|
58
|
+
|
59
|
+
full_path = File.expand_path(File.join(safe_lp, "#{path}#{s}"))
|
60
|
+
if File.file?(full_path)
|
61
|
+
rp = full_path
|
62
|
+
break
|
63
|
+
end
|
62
64
|
end
|
65
|
+
break if rp
|
63
66
|
end
|
64
|
-
|
65
|
-
end
|
66
|
-
rp
|
67
|
-
end
|
68
|
-
|
69
|
-
if resolved_path
|
70
|
-
begin
|
71
|
-
RUBYGEMS_ACTIVATION_MONITOR.exit
|
72
|
-
return gem_original_require(resolved_path)
|
73
|
-
rescue LoadError
|
74
|
-
RUBYGEMS_ACTIVATION_MONITOR.enter
|
67
|
+
rp
|
75
68
|
end
|
76
|
-
end
|
77
69
|
|
78
|
-
if spec = Gem.find_unresolved_default_spec(path)
|
79
70
|
begin
|
80
71
|
Kernel.send(:gem, spec.name, Gem::Requirement.default_prerelease)
|
81
72
|
rescue Exception
|
82
73
|
RUBYGEMS_ACTIVATION_MONITOR.exit
|
83
74
|
raise
|
84
|
-
end
|
75
|
+
end unless resolved_path
|
85
76
|
end
|
86
77
|
|
87
78
|
# If there are no unresolved deps, then we can use just try
|
@@ -157,8 +148,7 @@ module Kernel
|
|
157
148
|
RUBYGEMS_ACTIVATION_MONITOR.enter
|
158
149
|
|
159
150
|
begin
|
160
|
-
if load_error.message.
|
161
|
-
(load_error.message.end_with?(path) and Gem.try_activate(path))
|
151
|
+
if load_error.message.end_with?(path) and Gem.try_activate(path)
|
162
152
|
require_again = true
|
163
153
|
end
|
164
154
|
ensure
|
File without changes
|
@@ -0,0 +1,21 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
|
3
|
+
A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
|
4
|
+
Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
|
5
|
+
MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
|
6
|
+
A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
|
7
|
+
hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
|
8
|
+
RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
|
9
|
+
gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
|
10
|
+
KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
|
11
|
+
QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
|
12
|
+
XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
|
13
|
+
DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
|
14
|
+
LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
|
15
|
+
RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
|
16
|
+
jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
|
17
|
+
6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
|
18
|
+
mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
|
19
|
+
Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
|
20
|
+
WD9f
|
21
|
+
-----END CERTIFICATE-----
|
data/lib/rubygems/test_case.rb
CHANGED
data/lib/rubygems.rb
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
require 'rbconfig'
|
10
10
|
|
11
11
|
module Gem
|
12
|
-
VERSION = "3.1.
|
12
|
+
VERSION = "3.1.6".freeze
|
13
13
|
end
|
14
14
|
|
15
15
|
# Must be first since it unloads the prelude from 1.9.2
|
@@ -659,22 +659,25 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
|
|
659
659
|
|
660
660
|
index = $LOAD_PATH.index RbConfig::CONFIG['sitelibdir']
|
661
661
|
|
662
|
-
index
|
662
|
+
index || 0
|
663
|
+
end
|
664
|
+
|
665
|
+
##
|
666
|
+
# The number of paths in the `$LOAD_PATH` from activated gems. Used to
|
667
|
+
# prioritize `-I` and `ENV['RUBYLIB`]` entries during `require`.
|
668
|
+
|
669
|
+
def self.activated_gem_paths
|
670
|
+
@activated_gem_paths ||= 0
|
663
671
|
end
|
664
672
|
|
665
673
|
##
|
666
674
|
# Add a list of paths to the $LOAD_PATH at the proper place.
|
667
675
|
|
668
676
|
def self.add_to_load_path(*paths)
|
669
|
-
|
677
|
+
@activated_gem_paths = activated_gem_paths + paths.size
|
670
678
|
|
671
|
-
|
672
|
-
|
673
|
-
$LOAD_PATH.insert(insert_index, *paths)
|
674
|
-
else
|
675
|
-
# we are probably testing in core, -I and RUBYLIB don't apply
|
676
|
-
$LOAD_PATH.unshift(*paths)
|
677
|
-
end
|
679
|
+
# gem directories must come after -I and ENV['RUBYLIB']
|
680
|
+
$LOAD_PATH.insert(Gem.load_path_insert_index, *paths)
|
678
681
|
end
|
679
682
|
|
680
683
|
@yaml_loaded = false
|
data/rubygems-update.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = "rubygems-update"
|
5
|
-
s.version = "3.1.
|
5
|
+
s.version = "3.1.6"
|
6
6
|
s.authors = ["Jim Weirich", "Chad Fowler", "Eric Hodel", "Luis Lavena", "Aaron Patterson", "Samuel Giddins", "André Arko", "Evan Phoenix", "Hiroshi SHIBATA"]
|
7
7
|
s.email = ["", "", "drbrain@segment7.net", "luislavena@gmail.com", "aaron@tenderlovemaking.com", "segiddins@segiddins.me", "andre@arko.net", "evan@phx.io", "hsbt@ruby-lang.org"]
|
8
8
|
|
@@ -51,12 +51,16 @@ if ENV["CI"] || ENV["TEST_SSL"]
|
|
51
51
|
assert_https('rubygems.org')
|
52
52
|
end
|
53
53
|
|
54
|
-
def
|
55
|
-
assert_https('rubygems.
|
54
|
+
def test_accessing_www_rubygems
|
55
|
+
assert_https('www.rubygems.org')
|
56
|
+
end
|
57
|
+
|
58
|
+
def test_accessing_staging
|
59
|
+
assert_https('staging.rubygems.org')
|
56
60
|
end
|
57
61
|
|
58
62
|
def test_accessing_new_index
|
59
|
-
assert_https('
|
63
|
+
assert_https('index.rubygems.org')
|
60
64
|
end
|
61
65
|
|
62
66
|
end
|
@@ -91,6 +91,25 @@ class TestKernel < Gem::TestCase
|
|
91
91
|
refute $:.any? { |p| %r{a-1/bin} =~ p }
|
92
92
|
end
|
93
93
|
|
94
|
+
def test_gem_failing_inside_require_doesnt_cause_double_exceptions
|
95
|
+
File.write("activate.rb", "gem('a', '= 999')\n")
|
96
|
+
|
97
|
+
require "open3"
|
98
|
+
|
99
|
+
output, _ = Open3.capture2e(
|
100
|
+
{ "GEM_HOME" => Gem.paths.home },
|
101
|
+
Gem.ruby,
|
102
|
+
"-I",
|
103
|
+
File.expand_path("../../lib", __dir__),
|
104
|
+
"-r",
|
105
|
+
"./activate.rb"
|
106
|
+
)
|
107
|
+
|
108
|
+
load_errors = output.split("\n").select { |line| line.include?("Could not find")}
|
109
|
+
|
110
|
+
assert_equal 1, load_errors.size
|
111
|
+
end
|
112
|
+
|
94
113
|
def test_gem_bundler
|
95
114
|
quick_gem 'bundler', '1'
|
96
115
|
quick_gem 'bundler', '2.a'
|
@@ -45,6 +45,35 @@ class TestGemRequire < Gem::TestCase
|
|
45
45
|
refute require(path), "'#{path}' was not yet required"
|
46
46
|
end
|
47
47
|
|
48
|
+
def test_respect_loaded_features_caching_like_standard_require
|
49
|
+
dir = Dir.mktmpdir("test_require", @tempdir)
|
50
|
+
|
51
|
+
lp1 = File.join dir, 'foo1'
|
52
|
+
foo1 = File.join lp1, 'foo.rb'
|
53
|
+
|
54
|
+
FileUtils.mkdir_p lp1
|
55
|
+
File.open(foo1, 'w') { |f| f.write "class Object; HELLO = 'foo1' end" }
|
56
|
+
|
57
|
+
lp = $LOAD_PATH.dup
|
58
|
+
|
59
|
+
$LOAD_PATH.unshift lp1
|
60
|
+
assert_require 'foo'
|
61
|
+
assert_equal "foo1", ::Object::HELLO
|
62
|
+
|
63
|
+
lp2 = File.join dir, 'foo2'
|
64
|
+
foo2 = File.join lp2, 'foo.rb'
|
65
|
+
|
66
|
+
FileUtils.mkdir_p lp2
|
67
|
+
File.open(foo2, 'w') { |f| f.write "class Object; HELLO = 'foo2' end" }
|
68
|
+
|
69
|
+
$LOAD_PATH.unshift lp2
|
70
|
+
refute_require 'foo'
|
71
|
+
assert_equal "foo1", ::Object::HELLO
|
72
|
+
ensure
|
73
|
+
$LOAD_PATH.replace lp
|
74
|
+
Object.send :remove_const, :HELLO if Object.const_defined? :HELLO
|
75
|
+
end
|
76
|
+
|
48
77
|
# Providing -I on the commandline should always beat gems
|
49
78
|
def test_dash_i_beats_gems
|
50
79
|
a1 = util_spec "a", "1", {"b" => "= 1"}, "lib/test_gem_require_a.rb"
|
@@ -120,6 +149,24 @@ class TestGemRequire < Gem::TestCase
|
|
120
149
|
Object.send :remove_const, :HELLO if Object.const_defined? :HELLO
|
121
150
|
end
|
122
151
|
|
152
|
+
def test_dash_i_respects_default_library_extension_priority
|
153
|
+
skip "extensions don't quite work on jruby" if Gem.java_platform?
|
154
|
+
|
155
|
+
dash_i_ext_arg = util_install_extension_file('a')
|
156
|
+
dash_i_lib_arg = util_install_ruby_file('a')
|
157
|
+
|
158
|
+
lp = $LOAD_PATH.dup
|
159
|
+
|
160
|
+
begin
|
161
|
+
$LOAD_PATH.unshift dash_i_lib_arg
|
162
|
+
$LOAD_PATH.unshift dash_i_ext_arg
|
163
|
+
assert_require 'a'
|
164
|
+
assert_match(/a\.rb$/, $LOADED_FEATURES.last)
|
165
|
+
ensure
|
166
|
+
$LOAD_PATH.replace lp
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
123
170
|
def test_concurrent_require
|
124
171
|
Object.const_set :FILE_ENTERED_LATCH, Latch.new(2)
|
125
172
|
Object.const_set :FILE_EXIT_LATCH, Latch.new(1)
|
@@ -364,6 +411,17 @@ class TestGemRequire < Gem::TestCase
|
|
364
411
|
assert_equal 0, times_called
|
365
412
|
end
|
366
413
|
|
414
|
+
def test_second_gem_require_does_not_resolve_path_manually_before_going_through_standard_require
|
415
|
+
a1 = util_spec "a", "1", nil, "lib/test_gem_require_a.rb"
|
416
|
+
install_gem a1
|
417
|
+
|
418
|
+
assert_require "test_gem_require_a"
|
419
|
+
|
420
|
+
stub(:gem_original_require, ->(path) { assert_equal "test_gem_require_a", path }) do
|
421
|
+
require "test_gem_require_a"
|
422
|
+
end
|
423
|
+
end
|
424
|
+
|
367
425
|
def test_realworld_default_gem
|
368
426
|
testing_ruby_repo = !ENV["GEM_COMMAND"].nil?
|
369
427
|
skip "this test can't work under ruby-core setup" if testing_ruby_repo || java_platform?
|
@@ -539,4 +597,50 @@ class TestGemRequire < Gem::TestCase
|
|
539
597
|
$VERBOSE = old_verbose
|
540
598
|
end
|
541
599
|
|
600
|
+
def util_install_extension_file(name)
|
601
|
+
spec = quick_gem name
|
602
|
+
util_build_gem spec
|
603
|
+
|
604
|
+
spec.extensions << "extconf.rb"
|
605
|
+
write_file File.join(@tempdir, "extconf.rb") do |io|
|
606
|
+
io.write <<-RUBY
|
607
|
+
require "mkmf"
|
608
|
+
CONFIG['LDSHARED'] = '$(TOUCH) $@ ||'
|
609
|
+
create_makefile("#{name}")
|
610
|
+
RUBY
|
611
|
+
end
|
612
|
+
|
613
|
+
write_file File.join(@tempdir, "#{name}.c") do |io|
|
614
|
+
io.write <<-C
|
615
|
+
void Init_#{name}() { }
|
616
|
+
C
|
617
|
+
end
|
618
|
+
|
619
|
+
write_file File.join(@tempdir, "depend")
|
620
|
+
|
621
|
+
spec.files += ["extconf.rb", "depend", "#{name}.c"]
|
622
|
+
|
623
|
+
so = File.join(spec.gem_dir, "#{name}.#{RbConfig::CONFIG["DLEXT"]}")
|
624
|
+
refute_path_exists so
|
625
|
+
|
626
|
+
path = Gem::Package.build spec
|
627
|
+
installer = Gem::Installer.at path
|
628
|
+
installer.install
|
629
|
+
assert_path_exists so
|
630
|
+
|
631
|
+
spec.gem_dir
|
632
|
+
end
|
633
|
+
|
634
|
+
def util_install_ruby_file(name)
|
635
|
+
dir_lib = Dir.mktmpdir("test_require_lib", @tempdir)
|
636
|
+
dash_i_lib_arg = File.join dir_lib
|
637
|
+
|
638
|
+
a_rb = File.join dash_i_lib_arg, "#{name}.rb"
|
639
|
+
|
640
|
+
FileUtils.mkdir_p File.dirname a_rb
|
641
|
+
File.open(a_rb, 'w') { |f| f.write "# #{name}.rb" }
|
642
|
+
|
643
|
+
dash_i_lib_arg
|
644
|
+
end
|
645
|
+
|
542
646
|
end
|
@@ -5,14 +5,12 @@ require 'fileutils'
|
|
5
5
|
|
6
6
|
URIS = [
|
7
7
|
URI('https://rubygems.org'),
|
8
|
+
URI('https://www.rubygems.org'),
|
8
9
|
URI('https://index.rubygems.org'),
|
9
10
|
URI('https://staging.rubygems.org'),
|
10
|
-
URI('https://fastly.rubygems.org'),
|
11
|
-
URI('https://rubygems.global.ssl.fastly.net'),
|
12
11
|
].freeze
|
13
12
|
|
14
13
|
HOSTNAMES_TO_MAP = [
|
15
|
-
'rubygems.global.ssl.fastly.net',
|
16
14
|
'rubygems.org',
|
17
15
|
'index.rubygems.org'
|
18
16
|
].freeze
|
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.1.
|
4
|
+
version: 3.1.6
|
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-26 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
|
@@ -578,9 +578,8 @@ files:
|
|
578
578
|
- lib/rubygems/specification.rb
|
579
579
|
- lib/rubygems/specification_policy.rb
|
580
580
|
- lib/rubygems/ssl_certs/.document
|
581
|
-
- lib/rubygems/ssl_certs/
|
582
|
-
- lib/rubygems/ssl_certs/rubygems.
|
583
|
-
- lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem
|
581
|
+
- lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
|
582
|
+
- lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
|
584
583
|
- lib/rubygems/stub_specification.rb
|
585
584
|
- lib/rubygems/syck_hack.rb
|
586
585
|
- lib/rubygems/test_case.rb
|
@@ -820,7 +819,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
820
819
|
- !ruby/object:Gem::Version
|
821
820
|
version: '0'
|
822
821
|
requirements: []
|
823
|
-
rubygems_version: 3.0.3
|
822
|
+
rubygems_version: 3.0.3.1
|
824
823
|
signing_key:
|
825
824
|
specification_version: 4
|
826
825
|
summary: RubyGems is a package management framework for Ruby.
|
data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs
|
3
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
4
|
-
d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j
|
5
|
-
ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL
|
6
|
-
MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3
|
7
|
-
LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug
|
8
|
-
RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm
|
9
|
-
+9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW
|
10
|
-
PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM
|
11
|
-
xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB
|
12
|
-
Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3
|
13
|
-
hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg
|
14
|
-
EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF
|
15
|
-
MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA
|
16
|
-
FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec
|
17
|
-
nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z
|
18
|
-
eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF
|
19
|
-
hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2
|
20
|
-
Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe
|
21
|
-
vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep
|
22
|
-
+OkuE6N36B9K
|
23
|
-
-----END CERTIFICATE-----
|
@@ -1,25 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU
|
3
|
-
MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs
|
4
|
-
IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290
|
5
|
-
MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux
|
6
|
-
FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h
|
7
|
-
bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v
|
8
|
-
dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt
|
9
|
-
H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9
|
10
|
-
uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX
|
11
|
-
mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX
|
12
|
-
a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN
|
13
|
-
E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0
|
14
|
-
WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD
|
15
|
-
VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0
|
16
|
-
Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU
|
17
|
-
cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx
|
18
|
-
IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN
|
19
|
-
AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH
|
20
|
-
YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5
|
21
|
-
6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC
|
22
|
-
Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX
|
23
|
-
c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a
|
24
|
-
mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ=
|
25
|
-
-----END CERTIFICATE-----
|