rubygems-update 3.2.26 → 3.2.30
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +60 -0
- data/Manifest.txt +12 -3
- data/bundler/CHANGELOG.md +50 -1
- data/bundler/README.md +1 -1
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli/check.rb +1 -1
- data/bundler/lib/bundler/cli/gem.rb +19 -2
- data/bundler/lib/bundler/cli/info.rb +11 -4
- data/bundler/lib/bundler/cli/issue.rb +4 -3
- data/bundler/lib/bundler/cli/remove.rb +1 -2
- data/bundler/lib/bundler/cli.rb +1 -0
- data/bundler/lib/bundler/compact_index_client.rb +2 -2
- data/bundler/lib/bundler/definition.rb +16 -6
- data/bundler/lib/bundler/digest.rb +71 -0
- data/bundler/lib/bundler/errors.rb +18 -2
- data/bundler/lib/bundler/fetcher.rb +2 -1
- data/bundler/lib/bundler/friendly_errors.rb +5 -30
- data/bundler/lib/bundler/gem_helper.rb +6 -17
- data/bundler/lib/bundler/installer.rb +0 -1
- data/bundler/lib/bundler/plugin/installer.rb +2 -0
- data/bundler/lib/bundler/plugin.rb +23 -6
- data/bundler/lib/bundler/rubygems_ext.rb +4 -0
- data/bundler/lib/bundler/rubygems_gem_installer.rb +20 -4
- data/bundler/lib/bundler/rubygems_integration.rb +28 -9
- data/bundler/lib/bundler/runtime.rb +1 -1
- data/bundler/lib/bundler/settings.rb +9 -1
- data/bundler/lib/bundler/source/git.rb +22 -4
- data/bundler/lib/bundler/source/rubygems.rb +43 -72
- data/bundler/lib/bundler/source.rb +2 -0
- data/bundler/lib/bundler/source_list.rb +4 -0
- data/bundler/lib/bundler/spec_set.rb +1 -1
- data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +2 -1
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +1 -1
- data/bundler/lib/bundler/vendor/connection_pool/LICENSE +20 -0
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +19 -21
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +57 -0
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +39 -74
- data/bundler/lib/bundler/vendor/fileutils/LICENSE.txt +22 -0
- data/bundler/lib/bundler/vendor/molinillo/LICENSE +9 -0
- data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +82 -0
- data/bundler/lib/bundler/vendor/thor/LICENSE.md +20 -0
- data/bundler/lib/bundler/vendor/uri/LICENSE.txt +22 -0
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/lib/bundler/worker.rb +2 -2
- data/bundler/lib/bundler.rb +13 -18
- data/lib/rubygems/command_manager.rb +3 -3
- data/lib/rubygems/commands/build_command.rb +3 -3
- data/lib/rubygems/commands/cert_command.rb +15 -8
- data/lib/rubygems/commands/check_command.rb +4 -4
- data/lib/rubygems/commands/cleanup_command.rb +3 -3
- data/lib/rubygems/commands/contents_command.rb +2 -2
- data/lib/rubygems/commands/dependency_command.rb +3 -3
- data/lib/rubygems/commands/environment_command.rb +1 -1
- data/lib/rubygems/commands/fetch_command.rb +3 -3
- data/lib/rubygems/commands/generate_index_command.rb +2 -2
- data/lib/rubygems/commands/help_command.rb +1 -1
- data/lib/rubygems/commands/info_command.rb +2 -2
- data/lib/rubygems/commands/install_command.rb +12 -11
- data/lib/rubygems/commands/list_command.rb +2 -2
- data/lib/rubygems/commands/lock_command.rb +1 -1
- data/lib/rubygems/commands/mirror_command.rb +1 -1
- data/lib/rubygems/commands/open_command.rb +2 -2
- data/lib/rubygems/commands/outdated_command.rb +4 -4
- data/lib/rubygems/commands/owner_command.rb +4 -4
- data/lib/rubygems/commands/pristine_command.rb +5 -5
- data/lib/rubygems/commands/push_command.rb +4 -4
- data/lib/rubygems/commands/query_command.rb +3 -3
- data/lib/rubygems/commands/rdoc_command.rb +3 -3
- data/lib/rubygems/commands/search_command.rb +2 -2
- data/lib/rubygems/commands/server_command.rb +3 -3
- data/lib/rubygems/commands/setup_command.rb +6 -6
- data/lib/rubygems/commands/signin_command.rb +2 -2
- data/lib/rubygems/commands/signout_command.rb +1 -1
- data/lib/rubygems/commands/sources_command.rb +4 -4
- data/lib/rubygems/commands/specification_command.rb +4 -4
- data/lib/rubygems/commands/stale_command.rb +1 -1
- data/lib/rubygems/commands/uninstall_command.rb +3 -3
- data/lib/rubygems/commands/unpack_command.rb +5 -5
- data/lib/rubygems/commands/update_command.rb +9 -9
- data/lib/rubygems/commands/which_command.rb +1 -1
- data/lib/rubygems/commands/yank_command.rb +4 -4
- data/lib/rubygems/config_file.rb +1 -1
- data/lib/rubygems/core_ext/tcpsocket_init.rb +2 -2
- data/lib/rubygems/defaults.rb +1 -1
- data/lib/rubygems/dependency_installer.rb +8 -8
- data/lib/rubygems/dependency_list.rb +1 -1
- data/lib/rubygems/doctor.rb +2 -2
- data/lib/rubygems/errors.rb +1 -2
- data/lib/rubygems/exceptions.rb +1 -1
- data/lib/rubygems/gem_runner.rb +3 -3
- data/lib/rubygems/gemcutter_utilities.rb +2 -2
- data/lib/rubygems/indexer.rb +2 -2
- data/lib/rubygems/install_default_message.rb +2 -2
- data/lib/rubygems/install_message.rb +2 -2
- data/lib/rubygems/install_update_options.rb +2 -2
- data/lib/rubygems/installer.rb +8 -8
- data/lib/rubygems/local_remote_options.rb +1 -1
- data/lib/rubygems/mock_gem_ui.rb +1 -1
- data/lib/rubygems/package/tar_reader.rb +1 -1
- data/lib/rubygems/package.rb +36 -46
- data/lib/rubygems/package_task.rb +2 -2
- data/lib/rubygems/platform.rb +2 -1
- data/lib/rubygems/query_utils.rb +4 -4
- data/lib/rubygems/rdoc.rb +1 -1
- data/lib/rubygems/remote_fetcher.rb +16 -22
- data/lib/rubygems/request/connection_pools.rb +1 -1
- data/lib/rubygems/request/http_pool.rb +1 -1
- data/lib/rubygems/request.rb +7 -5
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +1 -1
- data/lib/rubygems/request_set/lockfile.rb +1 -1
- data/lib/rubygems/request_set.rb +5 -5
- data/lib/rubygems/requirement.rb +1 -1
- data/lib/rubygems/resolver/git_specification.rb +1 -1
- data/lib/rubygems/resolver/installer_set.rb +3 -3
- data/lib/rubygems/resolver/molinillo/LICENSE +9 -0
- data/lib/rubygems/resolver/molinillo.rb +1 -1
- data/lib/rubygems/resolver/set.rb +0 -1
- data/lib/rubygems/resolver/specification.rb +1 -1
- data/lib/rubygems/resolver.rb +31 -31
- data/lib/rubygems/s3_uri_signer.rb +4 -5
- data/lib/rubygems/security/policy.rb +6 -4
- data/lib/rubygems/security/signer.rb +4 -5
- data/lib/rubygems/security.rb +54 -20
- data/lib/rubygems/security_option.rb +2 -2
- data/lib/rubygems/server.rb +2 -2
- data/lib/rubygems/source/git.rb +2 -2
- data/lib/rubygems/source.rb +7 -7
- data/lib/rubygems/spec_fetcher.rb +5 -5
- data/lib/rubygems/specification.rb +12 -12
- data/lib/rubygems/specification_policy.rb +2 -2
- data/lib/rubygems/uninstaller.rb +6 -6
- data/lib/rubygems/uri.rb +111 -0
- data/lib/rubygems/user_interaction.rb +3 -3
- data/lib/rubygems/util/licenses.rb +1 -1
- data/lib/rubygems/util.rb +1 -1
- data/lib/rubygems/validator.rb +2 -2
- data/lib/rubygems/version_option.rb +1 -1
- data/lib/rubygems.rb +16 -16
- data/rubygems-update.gemspec +1 -1
- data/test/rubygems/helper.rb +4 -12
- data/test/rubygems/private_ec_key.pem +9 -0
- data/test/rubygems/test_gem.rb +59 -71
- data/test/rubygems/test_gem_commands_cert_command.rb +63 -4
- data/test/rubygems/test_gem_commands_install_command.rb +25 -0
- data/test/rubygems/test_gem_package.rb +27 -26
- data/test/rubygems/test_gem_platform.rb +1 -0
- data/test/rubygems/test_gem_remote_fetcher.rb +30 -0
- data/test/rubygems/test_gem_request.rb +35 -9
- data/test/rubygems/test_gem_resolver_installer_set.rb +18 -0
- data/test/rubygems/test_gem_security.rb +32 -4
- data/test/rubygems/test_gem_source_fetch_problem.rb +10 -0
- data/test/rubygems/test_gem_specification.rb +228 -232
- data/test/rubygems/test_gem_uri.rb +39 -0
- metadata +18 -9
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb +0 -66
- data/lib/rubygems/uri_parser.rb +0 -34
- data/lib/rubygems/uri_parsing.rb +0 -23
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../security'
|
4
4
|
|
5
5
|
class Gem::Commands::CertCommand < Gem::Command
|
6
6
|
def initialize
|
@@ -43,6 +43,11 @@ class Gem::Commands::CertCommand < Gem::Command
|
|
43
43
|
options[:key] = open_private_key(key_file)
|
44
44
|
end
|
45
45
|
|
46
|
+
add_option('-A', '--key-algorithm ALGORITHM',
|
47
|
+
'Select which key algorithm to use for --build') do |algorithm, options|
|
48
|
+
options[:key_algorithm] = algorithm
|
49
|
+
end
|
50
|
+
|
46
51
|
add_option('-s', '--sign CERT',
|
47
52
|
'Signs CERT with the key from -K',
|
48
53
|
'and the certificate from -C') do |cert_file, options|
|
@@ -89,14 +94,14 @@ class Gem::Commands::CertCommand < Gem::Command
|
|
89
94
|
def open_private_key(key_file)
|
90
95
|
check_openssl
|
91
96
|
passphrase = ENV['GEM_PRIVATE_KEY_PASSPHRASE']
|
92
|
-
key = OpenSSL::PKey
|
97
|
+
key = OpenSSL::PKey.read File.read(key_file), passphrase
|
93
98
|
raise OptionParser::InvalidArgument,
|
94
99
|
"#{key_file}: private key not found" unless key.private?
|
95
100
|
key
|
96
101
|
rescue Errno::ENOENT
|
97
102
|
raise OptionParser::InvalidArgument, "#{key_file}: does not exist"
|
98
|
-
rescue OpenSSL::PKey::
|
99
|
-
raise OptionParser::InvalidArgument, "#{key_file}: invalid RSA key"
|
103
|
+
rescue OpenSSL::PKey::PKeyError, ArgumentError
|
104
|
+
raise OptionParser::InvalidArgument, "#{key_file}: invalid RSA, DSA, or EC key"
|
100
105
|
end
|
101
106
|
|
102
107
|
def execute
|
@@ -170,7 +175,8 @@ class Gem::Commands::CertCommand < Gem::Command
|
|
170
175
|
raise Gem::CommandLineError,
|
171
176
|
"Passphrase and passphrase confirmation don't match" unless passphrase == passphrase_confirmation
|
172
177
|
|
173
|
-
|
178
|
+
algorithm = options[:key_algorithm] || Gem::Security::DEFAULT_KEY_ALGORITHM
|
179
|
+
key = Gem::Security.create_key(algorithm)
|
174
180
|
key_path = Gem::Security.write key, "gem-private_key.pem", 0600, passphrase
|
175
181
|
|
176
182
|
return key, key_path
|
@@ -255,13 +261,14 @@ For further reading on signing gems see `ri Gem::Security`.
|
|
255
261
|
key_file = File.join Gem.default_key_path
|
256
262
|
key = File.read key_file
|
257
263
|
passphrase = ENV['GEM_PRIVATE_KEY_PASSPHRASE']
|
258
|
-
options[:key] = OpenSSL::PKey
|
264
|
+
options[:key] = OpenSSL::PKey.read key, passphrase
|
265
|
+
|
259
266
|
rescue Errno::ENOENT
|
260
267
|
alert_error \
|
261
268
|
"--private-key not specified and ~/.gem/gem-private_key.pem does not exist"
|
262
269
|
|
263
270
|
terminate_interaction 1
|
264
|
-
rescue OpenSSL::PKey::
|
271
|
+
rescue OpenSSL::PKey::PKeyError
|
265
272
|
alert_error \
|
266
273
|
"--private-key not specified and ~/.gem/gem-private_key.pem is not valid"
|
267
274
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../version_option'
|
4
|
+
require_relative '../validator'
|
5
|
+
require_relative '../doctor'
|
6
6
|
|
7
7
|
class Gem::Commands::CheckCommand < Gem::Command
|
8
8
|
include Gem::VersionOption
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../dependency_list'
|
4
|
+
require_relative '../uninstaller'
|
5
5
|
|
6
6
|
class Gem::Commands::CleanupCommand < Gem::Command
|
7
7
|
def initialize
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../version_option'
|
5
5
|
|
6
6
|
class Gem::Commands::DependencyCommand < Gem::Command
|
7
7
|
include Gem::LocalRemoteOptions
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../version_option'
|
5
5
|
|
6
6
|
class Gem::Commands::FetchCommand < Gem::Command
|
7
7
|
include Gem::LocalRemoteOptions
|
@@ -1,10 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../install_update_options'
|
4
|
+
require_relative '../dependency_installer'
|
5
|
+
require_relative '../local_remote_options'
|
6
|
+
require_relative '../validator'
|
7
|
+
require_relative '../version_option'
|
8
8
|
|
9
9
|
##
|
10
10
|
# Gem installer command line tool
|
@@ -169,7 +169,7 @@ You can use `i` command instead of `install`.
|
|
169
169
|
end
|
170
170
|
|
171
171
|
def install_from_gemdeps # :nodoc:
|
172
|
-
|
172
|
+
require_relative '../request_set'
|
173
173
|
rs = Gem::RequestSet.new
|
174
174
|
|
175
175
|
specs = rs.install_from_gemdeps options do |req, inst|
|
@@ -244,11 +244,11 @@ You can use `i` command instead of `install`.
|
|
244
244
|
|
245
245
|
def load_hooks # :nodoc:
|
246
246
|
if options[:install_as_default]
|
247
|
-
|
247
|
+
require_relative '../install_default_message'
|
248
248
|
else
|
249
|
-
|
249
|
+
require_relative '../install_message'
|
250
250
|
end
|
251
|
-
|
251
|
+
require_relative '../rdoc'
|
252
252
|
end
|
253
253
|
|
254
254
|
def show_install_errors(errors) # :nodoc:
|
@@ -257,7 +257,8 @@ You can use `i` command instead of `install`.
|
|
257
257
|
errors.each do |x|
|
258
258
|
return unless Gem::SourceFetchProblem === x
|
259
259
|
|
260
|
-
|
260
|
+
require_relative "../uri"
|
261
|
+
msg = "Unable to pull data from '#{Gem::Uri.new(x.source.uri).redacted}': #{x.error.message}"
|
261
262
|
|
262
263
|
alert_warning msg
|
263
264
|
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../spec_fetcher'
|
5
|
+
require_relative '../version_option'
|
6
6
|
|
7
7
|
class Gem::Commands::OutdatedCommand < Gem::Command
|
8
8
|
include Gem::LocalRemoteOptions
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../gemcutter_utilities'
|
5
|
+
require_relative '../text'
|
6
6
|
|
7
7
|
class Gem::Commands::OwnerCommand < Gem::Command
|
8
8
|
include Gem::Text
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../package'
|
4
|
+
require_relative '../installer'
|
5
|
+
require_relative '../version_option'
|
6
6
|
|
7
7
|
class Gem::Commands::PristineCommand < Gem::Command
|
8
8
|
include Gem::VersionOption
|
@@ -138,7 +138,7 @@ extensions will be restored.
|
|
138
138
|
gem = spec.cache_file
|
139
139
|
|
140
140
|
unless File.exist? gem or options[:only_executables] or options[:only_plugins]
|
141
|
-
|
141
|
+
require_relative '../remote_fetcher'
|
142
142
|
|
143
143
|
say "Cached gem for #{spec.full_name} not found, attempting to fetch..."
|
144
144
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../gemcutter_utilities'
|
5
|
+
require_relative '../package'
|
6
6
|
|
7
7
|
class Gem::Commands::PushCommand < Gem::Command
|
8
8
|
include Gem::LocalRemoteOptions
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../query_utils'
|
4
|
+
require_relative '../deprecate'
|
5
5
|
|
6
6
|
class Gem::Commands::QueryCommand < Gem::Command
|
7
7
|
extend Gem::Deprecate
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../version_option'
|
4
|
+
require_relative '../rdoc'
|
5
5
|
require 'fileutils'
|
6
6
|
|
7
7
|
class Gem::Commands::RdocCommand < Gem::Command
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../server'
|
4
|
+
require_relative '../deprecate'
|
5
5
|
|
6
6
|
class Gem::Commands::ServerCommand < Gem::Command
|
7
7
|
extend Gem::Deprecate
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
2
|
+
require_relative '../command'
|
3
3
|
|
4
4
|
##
|
5
5
|
# Installs RubyGems itself. This command is ordinarily only available from a
|
@@ -348,7 +348,7 @@ By default, this RubyGems will install gem as:
|
|
348
348
|
rm_rf dir
|
349
349
|
end
|
350
350
|
|
351
|
-
|
351
|
+
require_relative '../rdoc'
|
352
352
|
|
353
353
|
fake_spec = Gem::Specification.new 'rubygems', Gem::VERSION
|
354
354
|
def fake_spec.full_gem_path
|
@@ -407,7 +407,7 @@ By default, this RubyGems will install gem as:
|
|
407
407
|
cp File.join("bundler", bundler_spec.bindir, e), File.join(bundler_bin_dir, e)
|
408
408
|
end
|
409
409
|
|
410
|
-
|
410
|
+
require_relative '../installer'
|
411
411
|
|
412
412
|
Dir.chdir("bundler") do
|
413
413
|
built_gem = Gem::Package.build(bundler_spec)
|
@@ -596,7 +596,7 @@ abort "#{deprecation_message}"
|
|
596
596
|
end
|
597
597
|
|
598
598
|
def uninstall_old_gemcutter
|
599
|
-
|
599
|
+
require_relative '../uninstaller'
|
600
600
|
|
601
601
|
ui = Gem::Uninstaller.new('gemcutter', :all => true, :ignore => true,
|
602
602
|
:version => '< 0.4')
|
@@ -605,7 +605,7 @@ abort "#{deprecation_message}"
|
|
605
605
|
end
|
606
606
|
|
607
607
|
def regenerate_binstubs
|
608
|
-
|
608
|
+
require_relative "pristine_command"
|
609
609
|
say "Regenerating binstubs"
|
610
610
|
|
611
611
|
args = %w[--all --only-executables --silent]
|
@@ -618,7 +618,7 @@ abort "#{deprecation_message}"
|
|
618
618
|
end
|
619
619
|
|
620
620
|
def regenerate_plugins
|
621
|
-
|
621
|
+
require_relative "pristine_command"
|
622
622
|
say "Regenerating plugins"
|
623
623
|
|
624
624
|
args = %w[--all --only-plugins --silent]
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../remote_fetcher'
|
4
|
+
require_relative '../spec_fetcher'
|
5
|
+
require_relative '../local_remote_options'
|
6
6
|
|
7
7
|
class Gem::Commands::SourcesCommand < Gem::Command
|
8
8
|
include Gem::LocalRemoteOptions
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../version_option'
|
5
|
+
require_relative '../package'
|
6
6
|
|
7
7
|
class Gem::Commands::SpecificationCommand < Gem::Command
|
8
8
|
include Gem::LocalRemoteOptions
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../version_option'
|
4
|
+
require_relative '../uninstaller'
|
5
5
|
require 'fileutils'
|
6
6
|
|
7
7
|
##
|
@@ -1,9 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../version_option'
|
4
|
+
require_relative '../security_option'
|
5
|
+
require_relative '../remote_fetcher'
|
6
|
+
require_relative '../package'
|
7
7
|
|
8
8
|
# forward-declare
|
9
9
|
|
@@ -1,13 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../command_manager'
|
4
|
+
require_relative '../dependency_installer'
|
5
|
+
require_relative '../install_update_options'
|
6
|
+
require_relative '../local_remote_options'
|
7
|
+
require_relative '../spec_fetcher'
|
8
|
+
require_relative '../version_option'
|
9
|
+
require_relative '../install_message' # must come before rdoc for messaging
|
10
|
+
require_relative '../rdoc'
|
11
11
|
|
12
12
|
class Gem::Commands::UpdateCommand < Gem::Command
|
13
13
|
include Gem::InstallUpdateOptions
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../local_remote_options'
|
4
|
+
require_relative '../version_option'
|
5
|
+
require_relative '../gemcutter_utilities'
|
6
6
|
|
7
7
|
class Gem::Commands::YankCommand < Gem::Command
|
8
8
|
include Gem::LocalRemoteOptions
|
data/lib/rubygems/config_file.rb
CHANGED
@@ -11,10 +11,10 @@ module CoreExtensions
|
|
11
11
|
IPV4_DELAY_SECONDS = 0.1
|
12
12
|
|
13
13
|
def initialize(host, serv, *rest)
|
14
|
-
mutex = Mutex.new
|
14
|
+
mutex = Thread::Mutex.new
|
15
15
|
addrs = []
|
16
16
|
threads = []
|
17
|
-
cond_var = ConditionVariable.new
|
17
|
+
cond_var = Thread::ConditionVariable.new
|
18
18
|
|
19
19
|
Addrinfo.foreach(host, serv, nil, :STREAM) do |addr|
|
20
20
|
Thread.report_on_exception = false if defined? Thread.report_on_exception = ()
|
data/lib/rubygems/defaults.rb
CHANGED
@@ -73,7 +73,7 @@ module Gem
|
|
73
73
|
# Path to specification files of default gems.
|
74
74
|
|
75
75
|
def self.default_specifications_dir
|
76
|
-
File.join(Gem.default_dir, "specifications", "default")
|
76
|
+
@default_specifications_dir ||= File.join(Gem.default_dir, "specifications", "default")
|
77
77
|
end
|
78
78
|
|
79
79
|
##
|
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
2
|
+
require_relative '../rubygems'
|
3
|
+
require_relative 'dependency_list'
|
4
|
+
require_relative 'package'
|
5
|
+
require_relative 'installer'
|
6
|
+
require_relative 'spec_fetcher'
|
7
|
+
require_relative 'user_interaction'
|
8
|
+
require_relative 'available_set'
|
9
|
+
require_relative 'deprecate'
|
10
10
|
|
11
11
|
##
|
12
12
|
# Installs a gem along with all its dependencies from local and remote gems.
|
data/lib/rubygems/doctor.rb
CHANGED
data/lib/rubygems/errors.rb
CHANGED
@@ -171,8 +171,7 @@ module Gem
|
|
171
171
|
# An English description of the error.
|
172
172
|
|
173
173
|
def wordy
|
174
|
-
|
175
|
-
"Unable to download data from #{@source.uri} - #{@error.message}"
|
174
|
+
"Unable to download data from #{Gem::Uri.new(@source.uri).redacted} - #{@error.message}"
|
176
175
|
end
|
177
176
|
|
178
177
|
##
|