rubygems-update 3.2.26 → 3.2.27
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/Manifest.txt +2 -2
- data/bundler/CHANGELOG.md +15 -0
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli/check.rb +1 -1
- data/bundler/lib/bundler/definition.rb +6 -0
- 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_integration.rb +2 -0
- data/bundler/lib/bundler/settings.rb +9 -1
- data/bundler/lib/bundler/source/rubygems.rb +8 -1
- 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/version.rb +1 -1
- data/bundler/lib/bundler.rb +11 -17
- data/lib/rubygems/command_manager.rb +3 -3
- data/lib/rubygems/commands/build_command.rb +3 -3
- data/lib/rubygems/commands/cert_command.rb +2 -2
- 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 +5 -5
- 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/dependency_installer.rb +8 -8
- data/lib/rubygems/dependency_list.rb +1 -1
- data/lib/rubygems/doctor.rb +2 -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 +7 -7
- 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 +12 -12
- data/lib/rubygems/package_task.rb +2 -2
- data/lib/rubygems/platform.rb +1 -1
- data/lib/rubygems/rdoc.rb +1 -1
- data/lib/rubygems/remote_fetcher.rb +14 -20
- data/lib/rubygems/request.rb +5 -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 +4 -4
- 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.rb +1 -1
- data/lib/rubygems/resolver/specification.rb +1 -1
- data/lib/rubygems/resolver.rb +31 -31
- data/lib/rubygems/security/policy.rb +1 -1
- data/lib/rubygems/security/signer.rb +1 -1
- data/lib/rubygems/security.rb +5 -5
- data/lib/rubygems/security_option.rb +2 -2
- data/lib/rubygems/server.rb +2 -2
- data/lib/rubygems/source.rb +6 -6
- data/lib/rubygems/spec_fetcher.rb +5 -5
- data/lib/rubygems/specification.rb +9 -9
- data/lib/rubygems/specification_policy.rb +1 -1
- data/lib/rubygems/uninstaller.rb +6 -6
- data/lib/rubygems/uri.rb +102 -0
- data/lib/rubygems/user_interaction.rb +2 -2
- data/lib/rubygems/util/licenses.rb +1 -1
- data/lib/rubygems/validator.rb +2 -2
- data/lib/rubygems/version_option.rb +1 -1
- data/lib/rubygems.rb +15 -15
- data/rubygems-update.gemspec +1 -1
- data/test/rubygems/test_gem_commands_install_command.rb +25 -0
- data/test/rubygems/test_gem_remote_fetcher.rb +30 -0
- data/test/rubygems/test_gem_request.rb +30 -4
- data/test/rubygems/test_gem_resolver_installer_set.rb +18 -0
- data/test/rubygems/test_gem_uri.rb +32 -0
- metadata +5 -5
- data/lib/rubygems/uri_parser.rb +0 -34
- data/lib/rubygems/uri_parsing.rb +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ce1a1e494194a4df6708ff29699aa24f85cae78793b58ea82a9432d80fc7d58
|
4
|
+
data.tar.gz: 5a922a7db514f0b88f2b93aea3c830086362ee161f85146dd3f2fd7113e4c405
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49129d596674dd6f3ed1e5192ff959bcaee181eb9940871b75728d29f4bc09c18ab8edcccdd31de259048e3c58fec08738f7c065d345b701863ea4a5772ef980
|
7
|
+
data.tar.gz: c303eb6c77393bd3770e962b2bd3af13725af4626b952b2ea7ad012f85dd96879615306727ed1882935476087bd7f4222692dc602b9e891b9b66b9bd8d6fc14c
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
# 3.2.27 / 2021-09-03
|
2
|
+
|
3
|
+
## Enhancements:
|
4
|
+
|
5
|
+
* Redact credentails when printing URI. Pull request #4868 by intuxicated
|
6
|
+
* Prefer `require_relative` to `require` for internal requires. Pull
|
7
|
+
request #4858 by deivid-rodriguez
|
8
|
+
* Prioritise gems with higher version for fetching metadata, and stop
|
9
|
+
fetching once we find a valid candidate. Pull request #4843 by intuxicated
|
10
|
+
|
1
11
|
# 3.2.26 / 2021-08-17
|
2
12
|
|
3
13
|
## Enhancements:
|
data/Manifest.txt
CHANGED
@@ -485,9 +485,8 @@ lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
|
|
485
485
|
lib/rubygems/stub_specification.rb
|
486
486
|
lib/rubygems/text.rb
|
487
487
|
lib/rubygems/uninstaller.rb
|
488
|
+
lib/rubygems/uri.rb
|
488
489
|
lib/rubygems/uri_formatter.rb
|
489
|
-
lib/rubygems/uri_parser.rb
|
490
|
-
lib/rubygems/uri_parsing.rb
|
491
490
|
lib/rubygems/user_interaction.rb
|
492
491
|
lib/rubygems/util.rb
|
493
492
|
lib/rubygems/util/licenses.rb
|
@@ -678,6 +677,7 @@ test/rubygems/test_gem_stub_specification.rb
|
|
678
677
|
test/rubygems/test_gem_text.rb
|
679
678
|
test/rubygems/test_gem_uninstaller.rb
|
680
679
|
test/rubygems/test_gem_unsatisfiable_dependency_error.rb
|
680
|
+
test/rubygems/test_gem_uri.rb
|
681
681
|
test/rubygems/test_gem_uri_formatter.rb
|
682
682
|
test/rubygems/test_gem_util.rb
|
683
683
|
test/rubygems/test_gem_validator.rb
|
data/bundler/CHANGELOG.md
CHANGED
@@ -1,3 +1,18 @@
|
|
1
|
+
# 2.2.27 (September 3, 2021)
|
2
|
+
|
3
|
+
## Enhancements:
|
4
|
+
|
5
|
+
- Optimize some requires [#4887](https://github.com/rubygems/rubygems/pull/4887)
|
6
|
+
- Correctly redact credentials when using x-oauth-basic [#4866](https://github.com/rubygems/rubygems/pull/4866)
|
7
|
+
|
8
|
+
## Bug fixes:
|
9
|
+
|
10
|
+
- Add missing key `branches:` to template for GitHub Actions [#4883](https://github.com/rubygems/rubygems/pull/4883)
|
11
|
+
- Fix `bundle plugin install` detection of already installed plugins [#4869](https://github.com/rubygems/rubygems/pull/4869)
|
12
|
+
- Make plugin installation idempotent [#4864](https://github.com/rubygems/rubygems/pull/4864)
|
13
|
+
- Fix `bundle check` showing duplicated gems when multiple platforms are locked [#4854](https://github.com/rubygems/rubygems/pull/4854)
|
14
|
+
- Fix `bundle check` incorrectly considering cached gems [#4853](https://github.com/rubygems/rubygems/pull/4853)
|
15
|
+
|
1
16
|
# 2.2.26 (August 17, 2021)
|
2
17
|
|
3
18
|
## Enhancements:
|
@@ -4,8 +4,8 @@ module Bundler
|
|
4
4
|
# Represents metadata from when the Bundler gem was built.
|
5
5
|
module BuildMetadata
|
6
6
|
# begin ivars
|
7
|
-
@built_at = "2021-
|
8
|
-
@git_commit_sha = "
|
7
|
+
@built_at = "2021-09-03".freeze
|
8
|
+
@git_commit_sha = "b737e1c930".freeze
|
9
9
|
@release = true
|
10
10
|
# end ivars
|
11
11
|
|
@@ -15,7 +15,7 @@ module Bundler
|
|
15
15
|
definition.validate_runtime!
|
16
16
|
|
17
17
|
begin
|
18
|
-
definition.
|
18
|
+
definition.resolve_only_locally!
|
19
19
|
not_installed = definition.missing_specs
|
20
20
|
rescue GemNotFound, VersionConflict
|
21
21
|
Bundler.ui.error "Bundler can't satisfy your Gemfile's dependencies."
|
@@ -13,6 +13,7 @@ module Bundler
|
|
13
13
|
class MalformattedPlugin < PluginError; end
|
14
14
|
class UndefinedCommandError < PluginError; end
|
15
15
|
class UnknownSourceError < PluginError; end
|
16
|
+
class PluginInstallError < PluginError; end
|
16
17
|
|
17
18
|
PLUGIN_FILE_NAME = "plugins.rb".freeze
|
18
19
|
|
@@ -38,12 +39,11 @@ module Bundler
|
|
38
39
|
specs = Installer.new.install(names, options)
|
39
40
|
|
40
41
|
save_plugins names, specs
|
41
|
-
rescue PluginError
|
42
|
+
rescue PluginError
|
42
43
|
specs_to_delete = specs.select {|k, _v| names.include?(k) && !index.commands.values.include?(k) }
|
43
44
|
specs_to_delete.each_value {|spec| Bundler.rm_rf(spec.full_gem_path) }
|
44
45
|
|
45
|
-
|
46
|
-
Bundler.ui.error "Failed to install the following plugins: #{names_list}. The underlying error was: #{e.message}.\n #{e.backtrace.join("\n ")}"
|
46
|
+
raise
|
47
47
|
end
|
48
48
|
|
49
49
|
# Uninstalls plugins by the given names
|
@@ -245,10 +245,11 @@ module Bundler
|
|
245
245
|
# @param [Array<String>] names of inferred source plugins that can be ignored
|
246
246
|
def save_plugins(plugins, specs, optional_plugins = [])
|
247
247
|
plugins.each do |name|
|
248
|
+
next if index.installed?(name)
|
249
|
+
|
248
250
|
spec = specs[name]
|
249
|
-
|
250
|
-
|
251
|
-
Bundler.ui.info "Installed plugin #{name}" if installed
|
251
|
+
|
252
|
+
save_plugin(name, spec, optional_plugins.include?(name))
|
252
253
|
end
|
253
254
|
end
|
254
255
|
|
@@ -263,6 +264,22 @@ module Bundler
|
|
263
264
|
raise MalformattedPlugin, "#{PLUGIN_FILE_NAME} was not found in the plugin." unless plugin_file.file?
|
264
265
|
end
|
265
266
|
|
267
|
+
# Validates and registers a plugin.
|
268
|
+
#
|
269
|
+
# @param [String] name the name of the plugin
|
270
|
+
# @param [Specification] spec of installed plugin
|
271
|
+
# @param [Boolean] optional_plugin, removed if there is conflict with any
|
272
|
+
# other plugin (used for default source plugins)
|
273
|
+
#
|
274
|
+
# @raise [PluginInstallError] if validation or registration raises any error
|
275
|
+
def save_plugin(name, spec, optional_plugin = false)
|
276
|
+
validate_plugin! Pathname.new(spec.full_gem_path)
|
277
|
+
installed = register_plugin(name, spec, optional_plugin)
|
278
|
+
Bundler.ui.info "Installed plugin #{name}" if installed
|
279
|
+
rescue PluginError => e
|
280
|
+
raise PluginInstallError, "Failed to install plugin `#{spec.name}`, due to #{e.class} (#{e.message})"
|
281
|
+
end
|
282
|
+
|
266
283
|
# Runs the plugins.rb file in an isolated namespace, records the plugin
|
267
284
|
# actions it registers for and then passes the data to index to be stored.
|
268
285
|
#
|
@@ -419,7 +419,15 @@ module Bundler
|
|
419
419
|
elsif is_credential(key)
|
420
420
|
"[REDACTED]"
|
421
421
|
elsif is_userinfo(converted)
|
422
|
-
converted.
|
422
|
+
username, pass = converted.split(":", 2)
|
423
|
+
|
424
|
+
if pass == "x-oauth-basic"
|
425
|
+
username = "[REDACTED]"
|
426
|
+
else
|
427
|
+
pass = "[REDACTED]"
|
428
|
+
end
|
429
|
+
|
430
|
+
[username, pass].join(":")
|
423
431
|
else
|
424
432
|
converted
|
425
433
|
end
|
@@ -26,6 +26,13 @@ module Bundler
|
|
26
26
|
Array(options["remotes"]).reverse_each {|r| add_remote(r) }
|
27
27
|
end
|
28
28
|
|
29
|
+
def local_only!
|
30
|
+
@specs = nil
|
31
|
+
@allow_local = true
|
32
|
+
@allow_cached = false
|
33
|
+
@allow_remote = false
|
34
|
+
end
|
35
|
+
|
29
36
|
def local!
|
30
37
|
return if @allow_local
|
31
38
|
|
@@ -137,7 +144,7 @@ module Bundler
|
|
137
144
|
end
|
138
145
|
end
|
139
146
|
|
140
|
-
if
|
147
|
+
if installed?(spec) && !force
|
141
148
|
print_using_message "Using #{version_message(spec)}"
|
142
149
|
return nil # no post-install message
|
143
150
|
end
|
@@ -24,7 +24,7 @@ module Bundler
|
|
24
24
|
|
25
25
|
specs_for_dep = spec_for_dependency(dep, match_current_platform)
|
26
26
|
if specs_for_dep.any?
|
27
|
-
specs += specs_for_dep
|
27
|
+
match_current_platform ? specs += specs_for_dep : specs |= specs_for_dep
|
28
28
|
|
29
29
|
specs_for_dep.first.dependencies.each do |d|
|
30
30
|
next if d.type == :development
|
data/bundler/lib/bundler.rb
CHANGED
@@ -636,6 +636,12 @@ EOF
|
|
636
636
|
@rubygems = nil
|
637
637
|
end
|
638
638
|
|
639
|
+
def configure_gem_home_and_path(path = bundle_path)
|
640
|
+
configure_gem_path
|
641
|
+
configure_gem_home(path)
|
642
|
+
Bundler.rubygems.clear_paths
|
643
|
+
end
|
644
|
+
|
639
645
|
private
|
640
646
|
|
641
647
|
def eval_yaml_gemspec(path, contents)
|
@@ -656,29 +662,17 @@ EOF
|
|
656
662
|
raise GemspecError, Dsl::DSLError.new(msg, path, e.backtrace, contents)
|
657
663
|
end
|
658
664
|
|
659
|
-
def
|
660
|
-
|
661
|
-
configure_gem_home
|
662
|
-
bundle_path
|
663
|
-
end
|
664
|
-
|
665
|
-
def configure_gem_path(env = ENV)
|
666
|
-
blank_home = env["GEM_HOME"].nil? || env["GEM_HOME"].empty?
|
667
|
-
if !use_system_gems?
|
665
|
+
def configure_gem_path
|
666
|
+
unless use_system_gems?
|
668
667
|
# this needs to be empty string to cause
|
669
668
|
# PathSupport.split_gem_path to only load up the
|
670
669
|
# Bundler --path setting as the GEM_PATH.
|
671
|
-
|
672
|
-
elsif blank_home
|
673
|
-
possibles = [Bundler.rubygems.gem_dir, Bundler.rubygems.gem_path]
|
674
|
-
paths = possibles.flatten.compact.uniq.reject(&:empty?)
|
675
|
-
env["GEM_PATH"] = paths.join(File::PATH_SEPARATOR)
|
670
|
+
Bundler::SharedHelpers.set_env "GEM_PATH", ""
|
676
671
|
end
|
677
672
|
end
|
678
673
|
|
679
|
-
def configure_gem_home
|
680
|
-
Bundler::SharedHelpers.set_env "GEM_HOME",
|
681
|
-
Bundler.rubygems.clear_paths
|
674
|
+
def configure_gem_home(path)
|
675
|
+
Bundler::SharedHelpers.set_env "GEM_HOME", path.to_s
|
682
676
|
end
|
683
677
|
|
684
678
|
def tmp_home_path
|
@@ -5,9 +5,9 @@
|
|
5
5
|
# See LICENSE.txt for permissions.
|
6
6
|
#++
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
require_relative 'command'
|
9
|
+
require_relative 'user_interaction'
|
10
|
+
require_relative 'text'
|
11
11
|
|
12
12
|
##
|
13
13
|
# The command manager registers and installs all the individual sub-commands
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
require_relative '../command'
|
3
|
+
require_relative '../package'
|
4
|
+
require_relative '../version_option'
|
5
5
|
|
6
6
|
class Gem::Commands::BuildCommand < Gem::Command
|
7
7
|
include Gem::VersionOption
|
@@ -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
|