Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rubygem-bundler for openSUSE:Factory
checked in at 2021-08-27 21:43:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-bundler (Old)
and /work/SRC/openSUSE:Factory/.rubygem-bundler.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-bundler"
Fri Aug 27 21:43:32 2021 rev:53 rq:912491 version:2.2.24
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-bundler/rubygem-bundler.changes
2021-07-02 13:28:23.856327394 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-bundler.new.1899/rubygem-bundler.changes
2021-08-27 21:43:46.293961289 +0200
@@ -1,0 +2,48 @@
+Mon Jul 26 05:49:13 UTC 2021 - Stephan Kulow <[email protected]>
+
+updated to version 2.2.24
+ see installed CHANGELOG.md
+
+ # 2.2.24 (July 15, 2021)
+
+ ## Bug fixes:
+
+ - Fix development gem unintentionally removed on an edge case
[#4751](https://github.com/rubygems/rubygems/pull/4751)
+ - Fix dangling empty plugin hooks
[#4755](https://github.com/rubygems/rubygems/pull/4755)
+ - Fix `bundle plugin install --help` showing `bundle install`'s help
[#4756](https://github.com/rubygems/rubygems/pull/4756)
+ - Make sure `bundle check` shows uniq missing gems
[#4749](https://github.com/rubygems/rubygems/pull/4749)
+
+ ## Performance:
+
+ - Slightly speed up `bundler/setup`
[#4750](https://github.com/rubygems/rubygems/pull/4750)
+
+ # 2.2.23 (July 9, 2021)
+
+ ## Enhancements:
+
+ - Fix `bundle install` on truffleruby selecting incorrect variant for
`sorbet-static` gem [#4625](https://github.com/rubygems/rubygems/pull/4625)
+ - Spare meaningless warning on read-only bundle invocations
[#4724](https://github.com/rubygems/rubygems/pull/4724)
+
+ ## Bug fixes:
+
+ - Fix incorrect warning about duplicated gems in the Gemfile
[#4732](https://github.com/rubygems/rubygems/pull/4732)
+ - Fix `bundle plugin install foo` crashing
[#4734](https://github.com/rubygems/rubygems/pull/4734)
+
+ # 2.2.22 (July 6, 2021)
+
+ ## Enhancements:
+
+ - Never downgrade indirect dependencies when running `bundle update`
[#4713](https://github.com/rubygems/rubygems/pull/4713)
+ - Fix `getaddrinfo` errors not treated as fatal on non darwin platforms
[#4703](https://github.com/rubygems/rubygems/pull/4703)
+
+ ## Bug fixes:
+
+ - Fix `bundle update <gem>` sometimes hanging and `bundle lock --update`
not being able to update an insecure lockfile to the new format if it requires
downgrades [#4652](https://github.com/rubygems/rubygems/pull/4652)
+ - Fix edge case combination of DSL methods and duplicated sources causing
gems to not be found [#4711](https://github.com/rubygems/rubygems/pull/4711)
+ - Fix `bundle doctor` crashing when finding a broken symlink
[#4707](https://github.com/rubygems/rubygems/pull/4707)
+ - Fix incorrect re-resolve edge case
[#4700](https://github.com/rubygems/rubygems/pull/4700)
+ - Fix some gems being unintentionally locked under multiple lockfile
sections [#4701](https://github.com/rubygems/rubygems/pull/4701)
+ - Fix `--conservative` flag unexpectedly updating indirect dependencies
[#4692](https://github.com/rubygems/rubygems/pull/4692)
+
+
+-------------------------------------------------------------------
Old:
----
bundler-2.2.21.gem
New:
----
bundler-2.2.24.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-bundler.spec ++++++
--- /var/tmp/diff_new_pack.2qJb3Z/_old 2021-08-27 21:43:47.721962940 +0200
+++ /var/tmp/diff_new_pack.2qJb3Z/_new 2021-08-27 21:43:47.721962940 +0200
@@ -24,7 +24,7 @@
#
Name: rubygem-bundler
-Version: 2.2.21
+Version: 2.2.24
Release: 0
%define mod_name bundler
%define mod_full_name %{mod_name}-%{version}
++++++ bundler-2.2.21.gem -> bundler-2.2.24.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md 2021-06-23 15:25:56.000000000 +0200
+++ new/CHANGELOG.md 2021-07-15 17:00:51.000000000 +0200
@@ -1,3 +1,44 @@
+# 2.2.24 (July 15, 2021)
+
+## Bug fixes:
+
+ - Fix development gem unintentionally removed on an edge case
[#4751](https://github.com/rubygems/rubygems/pull/4751)
+ - Fix dangling empty plugin hooks
[#4755](https://github.com/rubygems/rubygems/pull/4755)
+ - Fix `bundle plugin install --help` showing `bundle install`'s help
[#4756](https://github.com/rubygems/rubygems/pull/4756)
+ - Make sure `bundle check` shows uniq missing gems
[#4749](https://github.com/rubygems/rubygems/pull/4749)
+
+## Performance:
+
+ - Slightly speed up `bundler/setup`
[#4750](https://github.com/rubygems/rubygems/pull/4750)
+
+# 2.2.23 (July 9, 2021)
+
+## Enhancements:
+
+ - Fix `bundle install` on truffleruby selecting incorrect variant for
`sorbet-static` gem [#4625](https://github.com/rubygems/rubygems/pull/4625)
+ - Spare meaningless warning on read-only bundle invocations
[#4724](https://github.com/rubygems/rubygems/pull/4724)
+
+## Bug fixes:
+
+ - Fix incorrect warning about duplicated gems in the Gemfile
[#4732](https://github.com/rubygems/rubygems/pull/4732)
+ - Fix `bundle plugin install foo` crashing
[#4734](https://github.com/rubygems/rubygems/pull/4734)
+
+# 2.2.22 (July 6, 2021)
+
+## Enhancements:
+
+ - Never downgrade indirect dependencies when running `bundle update`
[#4713](https://github.com/rubygems/rubygems/pull/4713)
+ - Fix `getaddrinfo` errors not treated as fatal on non darwin platforms
[#4703](https://github.com/rubygems/rubygems/pull/4703)
+
+## Bug fixes:
+
+ - Fix `bundle update <gem>` sometimes hanging and `bundle lock --update` not
being able to update an insecure lockfile to the new format if it requires
downgrades [#4652](https://github.com/rubygems/rubygems/pull/4652)
+ - Fix edge case combination of DSL methods and duplicated sources causing
gems to not be found [#4711](https://github.com/rubygems/rubygems/pull/4711)
+ - Fix `bundle doctor` crashing when finding a broken symlink
[#4707](https://github.com/rubygems/rubygems/pull/4707)
+ - Fix incorrect re-resolve edge case
[#4700](https://github.com/rubygems/rubygems/pull/4700)
+ - Fix some gems being unintentionally locked under multiple lockfile
sections [#4701](https://github.com/rubygems/rubygems/pull/4701)
+ - Fix `--conservative` flag unexpectedly updating indirect dependencies
[#4692](https://github.com/rubygems/rubygems/pull/4692)
+
# 2.2.21 (June 23, 2021)
## Security fixes:
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/build_metadata.rb
new/lib/bundler/build_metadata.rb
--- old/lib/bundler/build_metadata.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/build_metadata.rb 2021-07-15 17:00:51.000000000 +0200
@@ -4,8 +4,8 @@
# Represents metadata from when the Bundler gem was built.
module BuildMetadata
# begin ivars
- @built_at = "2021-06-23".freeze
- @git_commit_sha = "0b5db72094".freeze
+ @built_at = "2021-07-15".freeze
+ @git_commit_sha = "d78b1ee235".freeze
@release = true
# end ivars
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/cli/doctor.rb
new/lib/bundler/cli/doctor.rb
--- old/lib/bundler/cli/doctor.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/cli/doctor.rb 2021-07-15 17:00:51.000000000 +0200
@@ -100,8 +100,11 @@
files_not_readable_or_writable = []
files_not_rw_and_owned_by_different_user = []
files_not_owned_by_current_user_but_still_rw = []
+ broken_symlinks = []
Find.find(Bundler.bundle_path.to_s).each do |f|
- if !File.writable?(f) || !File.readable?(f)
+ if !File.exist?(f)
+ broken_symlinks << f
+ elsif !File.writable?(f) || !File.readable?(f)
if File.stat(f).uid != Process.uid
files_not_rw_and_owned_by_different_user << f
else
@@ -113,6 +116,13 @@
end
ok = true
+
+ if broken_symlinks.any?
+ Bundler.ui.warn "Broken links exist in the Bundler home. Please report
them to the offending gem's upstream repo. These files are:\n -
#{broken_symlinks.join("\n - ")}"
+
+ ok = false
+ end
+
if files_not_owned_by_current_user_but_still_rw.any?
Bundler.ui.warn "Files exist in the Bundler home that are owned by
another " \
"user, but are still readable/writable. These files are:\n -
#{files_not_owned_by_current_user_but_still_rw.join("\n - ")}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/cli/install.rb
new/lib/bundler/cli/install.rb
--- old/lib/bundler/cli/install.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/cli/install.rb 2021-07-15 17:00:51.000000000 +0200
@@ -104,7 +104,7 @@
private
def warn_if_root
- return if Bundler.settings[:silence_root_warning] || Bundler::WINDOWS ||
!Process.uid.zero?
+ return if Bundler.settings[:silence_root_warning] || Gem.win_platform?
|| !Process.uid.zero?
Bundler.ui.warn "Don't run Bundler as root. Bundler can ask for sudo " \
"if it is needed, and installing your bundle as root will break this "
\
"application for all non-root users on this machine.", :wrap => true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/cli/lock.rb new/lib/bundler/cli/lock.rb
--- old/lib/bundler/cli/lock.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/cli/lock.rb 2021-07-15 17:00:51.000000000 +0200
@@ -21,9 +21,13 @@
Bundler::Fetcher.disable_endpoint = options["full-index"]
update = options[:update]
+ conservative = options[:conservative]
+
if update.is_a?(Array) # unlocking specific gems
Bundler::CLI::Common.ensure_all_gems_in_lockfile!(update)
- update = { :gems => update, :lock_shared_dependencies =>
options[:conservative] }
+ update = { :gems => update, :conservative => conservative }
+ elsif update
+ update = { :conservative => conservative } if conservative
end
definition = Bundler.definition(update)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/cli/update.rb
new/lib/bundler/cli/update.rb
--- old/lib/bundler/cli/update.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/cli/update.rb 2021-07-15 17:00:51.000000000 +0200
@@ -27,9 +27,14 @@
raise InvalidOption, "Cannot specify --all along with specific
options."
end
+ conservative = options[:conservative]
+
if full_update
- # We're doing a full update
- Bundler.definition(true)
+ if conservative
+ Bundler.definition(:conservative => conservative)
+ else
+ Bundler.definition(true)
+ end
else
unless Bundler.default_lockfile.exist?
raise GemfileLockNotFound, "This Bundle hasn't been installed yet. "
\
@@ -43,7 +48,7 @@
end
Bundler.definition(:gems => gems, :sources => sources, :ruby =>
options[:ruby],
- :lock_shared_dependencies => options[:conservative],
+ :conservative => conservative,
:bundler => options[:bundler])
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/cli.rb new/lib/bundler/cli.rb
--- old/lib/bundler/cli.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/cli.rb 2021-07-15 17:00:51.000000000 +0200
@@ -14,6 +14,7 @@
COMMAND_ALIASES = {
"check" => "c",
"install" => "i",
+ "plugin" => "",
"list" => "ls",
"exec" => ["e", "ex", "exe"],
"cache" => ["package", "pack"],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/current_ruby.rb
new/lib/bundler/current_ruby.rb
--- old/lib/bundler/current_ruby.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/current_ruby.rb 2021-07-15 17:00:51.000000000 +0200
@@ -65,19 +65,19 @@
end
def mswin?
- Bundler::WINDOWS
+ Gem.win_platform?
end
def mswin64?
- Bundler::WINDOWS && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mswin64" && Bundler.local_platform.cpu == "x64"
+ Gem.win_platform? && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mswin64" && Bundler.local_platform.cpu == "x64"
end
def mingw?
- Bundler::WINDOWS && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mingw32" && Bundler.local_platform.cpu != "x64"
+ Gem.win_platform? && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mingw32" && Bundler.local_platform.cpu != "x64"
end
def x64_mingw?
- Bundler::WINDOWS && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mingw32" && Bundler.local_platform.cpu == "x64"
+ Gem.win_platform? && Bundler.local_platform != Gem::Platform::RUBY &&
Bundler.local_platform.os == "mingw32" && Bundler.local_platform.cpu == "x64"
end
(KNOWN_MINOR_VERSIONS + KNOWN_MAJOR_VERSIONS).each do |version|
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/definition.rb
new/lib/bundler/definition.rb
--- old/lib/bundler/definition.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/definition.rb 2021-07-15 17:00:51.000000000 +0200
@@ -56,10 +56,8 @@
@unlocking_bundler = false
@unlocking = unlock
else
- unlock = unlock.dup
@unlocking_bundler = unlock.delete(:bundler)
- unlock.delete_if {|_k, v| Array(v).empty? }
- @unlocking = !unlock.empty?
+ @unlocking = unlock.any? {|_k, v| !Array(v).empty? }
end
@dependencies = dependencies
@@ -106,8 +104,8 @@
@locked_platforms = []
end
- @locked_gem_sources = @locked_sources.select {|s|
s.is_a?(Source::Rubygems) }
- @multisource_allowed = @locked_gem_sources.any?(&:multiple_remotes?) &&
(sources.aggregate_global_source? || Bundler.frozen_bundle?)
+ locked_gem_sources = @locked_sources.select {|s|
s.is_a?(Source::Rubygems) }
+ @multisource_allowed = locked_gem_sources.size == 1 &&
locked_gem_sources.first.multiple_remotes? && Bundler.frozen_bundle?
if @multisource_allowed
unless sources.aggregate_global_source?
@@ -116,10 +114,9 @@
Bundler::SharedHelpers.major_deprecation 2, msg
end
- @sources.merged_gem_lockfile_sections!
+ @sources.merged_gem_lockfile_sections!(locked_gem_sources.first)
end
- @unlock[:gems] ||= []
@unlock[:sources] ||= []
@unlock[:ruby] ||= if @ruby_version && locked_ruby_version_object
@ruby_version.diff(locked_ruby_version_object)
@@ -132,9 +129,11 @@
@path_changes = converge_paths
@source_changes = converge_sources
- unless @unlock[:lock_shared_dependencies]
- eager_unlock = expand_dependencies(@unlock[:gems], true)
- @unlock[:gems] = @locked_specs.for(eager_unlock, [], false, false,
false).map(&:name)
+ if @unlock[:conservative]
+ @unlock[:gems] ||= @dependencies.map(&:name)
+ else
+ eager_unlock = expand_dependencies(@unlock[:gems] || [], true)
+ @unlock[:gems] = @locked_specs.for(eager_unlock, false, false,
false).map(&:name)
end
@dependency_changes = converge_dependencies
@@ -186,25 +185,15 @@
#
# @return [Bundler::SpecSet]
def specs
- @specs ||= begin
- begin
- specs = resolve.materialize(requested_dependencies)
- rescue GemNotFound => e # Handle yanked gem
- gem_name, gem_version = extract_gem_info(e)
- locked_gem = @locked_specs[gem_name].last
- raise if locked_gem.nil? || locked_gem.version.to_s != gem_version
|| !@remote
- raise GemNotFound, "Your bundle is locked to #{locked_gem} from
#{locked_gem.source}, but that version can " \
- "no longer be found in that source. That means
the author of #{locked_gem} has removed it. " \
- "You'll need to update your bundle to a version
other than #{locked_gem} that hasn't been " \
- "removed in order to install."
- end
- unless specs["bundler"].any?
- bundler =
sources.metadata_source.specs.search(Gem::Dependency.new("bundler",
VERSION)).last
- specs["bundler"] = bundler
- end
-
- specs
- end
+ @specs ||= add_bundler_to(resolve.materialize(requested_dependencies))
+ rescue GemNotFound => e # Handle yanked gem
+ gem_name, gem_version = extract_gem_info(e)
+ locked_gem = @locked_specs[gem_name].last
+ raise if locked_gem.nil? || locked_gem.version.to_s != gem_version ||
!@remote
+ raise GemNotFound, "Your bundle is locked to #{locked_gem} from
#{locked_gem.source}, but that version can " \
+ "no longer be found in that source. That means the
author of #{locked_gem} has removed it. " \
+ "You'll need to update your bundle to a version other
than #{locked_gem} that hasn't been " \
+ "removed in order to install."
end
def new_specs
@@ -236,17 +225,11 @@
end
def requested_specs
- @requested_specs ||= begin
- groups = requested_groups
- groups.map!(&:to_sym)
- specs_for(groups)
- end
+ specs_for(requested_groups)
end
def requested_dependencies
- groups = requested_groups
- groups.map!(&:to_sym)
- dependencies_for(groups)
+ dependencies_for(requested_groups)
end
def current_dependencies
@@ -256,11 +239,13 @@
end
def specs_for(groups)
+ groups = requested_groups if groups.empty?
deps = dependencies_for(groups)
- specs.for(expand_dependencies(deps))
+ add_bundler_to(resolve.materialize(expand_dependencies(deps)))
end
def dependencies_for(groups)
+ groups.map!(&:to_sym)
current_dependencies.reject do |d|
(d.groups & groups).empty?
end
@@ -498,9 +483,6 @@
attr_reader :sources
private :sources
- attr_reader :locked_gem_sources
- private :locked_gem_sources
-
def nothing_changed?
!@source_changes && !@dependency_changes && !@new_platform &&
!@path_changes && !@local_changes && !@locked_specs_incomplete_for_platform
end
@@ -511,6 +493,15 @@
private
+ def add_bundler_to(specs)
+ unless specs["bundler"].any?
+ bundler =
sources.metadata_source.specs.search(Gem::Dependency.new("bundler",
VERSION)).last
+ specs["bundler"] = bundler
+ end
+
+ specs
+ end
+
def precompute_source_requirements_for_indirect_dependencies?
sources.non_global_rubygems_sources.all?(&:dependency_api_available?) &&
!sources.aggregate_global_source?
end
@@ -628,35 +619,11 @@
end
end
- def converge_rubygems_sources
- return false unless multisource_allowed?
-
- return false if locked_gem_sources.empty?
-
- # Get the RubyGems remotes from the Gemfile
- actual_remotes = sources.rubygems_remotes
- return false if actual_remotes.empty?
-
- changes = false
-
- # If there is a RubyGems source in both
- locked_gem_sources.each do |locked_gem_source|
- # Merge the remotes from the Gemfile into the Gemfile.lock
- changes |= locked_gem_source.replace_remotes(actual_remotes,
Bundler.settings[:allow_deployment_source_credential_changes])
- end
-
- changes
- end
-
def converge_sources
- changes = false
-
- changes |= converge_rubygems_sources
-
# Replace the sources from the Gemfile with the sources from the
Gemfile.lock,
# if they exist in the Gemfile.lock and are `==`. If you can't find an
equivalent
# source in the Gemfile.lock, use the one from the Gemfile.
- changes |= sources.replace_sources!(@locked_sources)
+ changes = sources.replace_sources!(@locked_sources)
sources.all_sources.each do |source|
# If the source is unlockable and the current command allows an unlock
of
@@ -741,8 +708,6 @@
end
end
- unlock_source_unlocks_spec =
Bundler.feature_flag.unlock_source_unlocks_spec?
-
converged = []
@locked_specs.each do |s|
# Replace the locked dependency's source with the equivalent source
from the Gemfile
@@ -754,11 +719,6 @@
next if s.source.nil?
next if @unlock[:sources].include?(s.source.name)
- # XXX This is a backwards-compatibility fix to preserve the ability to
- # unlock a single gem by passing its name via `--source`. See issue
#3759
- # TODO: delete in Bundler 2
- next if unlock_source_unlocks_spec &&
@unlock[:sources].include?(s.name)
-
# If the spec is from a path source and it doesn't exist anymore
# then we unlock it.
@@ -770,7 +730,7 @@
# if we won't need the source (according to the lockfile),
# don't error if the path/git source isn't available
next if @locked_specs.
- for(requested_dependencies, [], false, true, false).
+ for(requested_dependencies, false, true, false).
none? {|locked_spec| locked_spec.source == s.source }
raise
@@ -789,8 +749,8 @@
end
resolve = SpecSet.new(converged)
- @locked_specs_incomplete_for_platform =
!resolve.for(expand_dependencies(requested_dependencies & deps),
@unlock[:gems], true, true)
- resolve = resolve.for(expand_dependencies(deps, true), @unlock[:gems],
false, false, false)
+ @locked_specs_incomplete_for_platform =
!resolve.for(expand_dependencies(requested_dependencies & deps), true, true)
+ resolve = SpecSet.new(resolve.for(expand_dependencies(deps, true),
false, false, false).reject{|s| @unlock[:gems].include?(s.name) })
diff = nil
# Now, we unlock any sources that do not have anymore gems pinned to it
@@ -912,14 +872,13 @@
end
def additional_base_requirements_for_resolve
- return [] unless @locked_gems
+ return [] unless @locked_gems && unlocking? &&
!sources.expired_sources?(@locked_gems.sources)
dependencies_by_name = dependencies.inject({}) {|memo, dep|
memo.update(dep.name => dep) }
@locked_gems.specs.reduce({}) do |requirements, locked_spec|
name = locked_spec.name
dependency = dependencies_by_name[name]
- next requirements unless dependency
next requirements if @locked_gems.dependencies[name] != dependency
- next requirements if dependency.source.is_a?(Source::Path)
+ next requirements if dependency &&
dependency.source.is_a?(Source::Path)
dep = Gem::Dependency.new(name, ">= #{locked_spec.version}")
requirements[name] = DepProxy.get_proxy(dep, locked_spec.platform)
requirements
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/dsl.rb new/lib/bundler/dsl.rb
--- old/lib/bundler/dsl.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/dsl.rb 2021-07-15 17:00:51.000000000 +0200
@@ -24,9 +24,6 @@
def initialize
@source = nil
@sources = SourceList.new
-
- @global_rubygems_sources = []
-
@git_sources = {}
@dependencies = []
@groups = []
@@ -48,7 +45,6 @@
@gemfiles << expanded_gemfile_path
contents ||= Bundler.read_file(@gemfile.to_s)
instance_eval(contents.dup.tap{|x| x.untaint if RUBY_VERSION < "2.7" },
gemfile.to_s, 1)
- check_primary_source_safety
rescue Exception => e # rubocop:disable Lint/RescueException
message = "There was an error " \
"#{e.is_a?(GemfileEvalError) ? "evaluating" : "parsing"} " \
@@ -107,8 +103,8 @@
if current = @dependencies.find {|d| d.name == dep.name }
deleted_dep = @dependencies.delete(current) if current.type ==
:development
- if current.requirement != dep.requirement
- unless deleted_dep
+ unless deleted_dep
+ if current.requirement != dep.requirement
return if dep.type == :development
update_prompt = ""
@@ -126,17 +122,14 @@
raise GemfileError, "You cannot specify the same gem twice with
different version requirements.\n" \
"You specified: #{current.name}
(#{current.requirement}) and #{dep.name} (#{dep.requirement})" \
"#{update_prompt}"
+ else
+ Bundler.ui.warn "Your Gemfile lists the gem #{current.name}
(#{current.requirement}) more than once.\n" \
+ "You should probably keep only one of them.\n" \
+ "Remove any duplicate entries and specify the gem
only once.\n" \
+ "While it's not a problem now, it could cause
errors if you change the version of one of them later."
end
- else
- Bundler.ui.warn "Your Gemfile lists the gem #{current.name}
(#{current.requirement}) more than once.\n" \
- "You should probably keep only one of them.\n" \
- "Remove any duplicate entries and specify the gem
only once.\n" \
- "While it's not a problem now, it could cause errors
if you change the version of one of them later."
- end
-
- if current.source != dep.source
- unless deleted_dep
+ if current.source != dep.source
return if dep.type == :development
raise GemfileError, "You cannot specify the same gem twice coming
from different sources.\n" \
"You specified that #{dep.name}
(#{dep.requirement}) should come from " \
@@ -168,7 +161,7 @@
elsif block_given?
with_source(@sources.add_rubygems_source("remotes" => source), &blk)
else
- @global_rubygems_sources << source
+ @sources.add_global_rubygems_remote(source)
end
end
@@ -222,6 +215,7 @@
end
def to_definition(lockfile, unlock)
+ check_primary_source_safety
Definition.new(lockfile, @dependencies, @sources, unlock, @ruby_version,
@optional_groups, @gemfiles)
end
@@ -453,12 +447,7 @@
end
def check_rubygems_source_safety
- @sources.global_rubygems_source = @global_rubygems_sources.shift
- return if @global_rubygems_sources.empty?
-
- @global_rubygems_sources.each do |source|
- @sources.add_rubygems_remote(source)
- end
+ return unless @sources.aggregate_global_source?
if Bundler.feature_flag.bundler_3_mode?
msg = "This Gemfile contains multiple primary sources. " \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/feature_flag.rb
new/lib/bundler/feature_flag.rb
--- old/lib/bundler/feature_flag.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/feature_flag.rb 2021-07-15 17:00:51.000000000 +0200
@@ -38,7 +38,6 @@
settings_flag(:print_only_version_number) { bundler_3_mode? }
settings_flag(:setup_makes_kernel_gem_public) { !bundler_3_mode? }
settings_flag(:suppress_install_using_messages) { bundler_3_mode? }
- settings_flag(:unlock_source_unlocks_spec) { !bundler_3_mode? }
settings_flag(:update_requires_all_flag) { bundler_4_mode? }
settings_flag(:use_gem_version_promoter_for_major_updates) {
bundler_3_mode? }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/fetcher/downloader.rb
new/lib/bundler/fetcher/downloader.rb
--- old/lib/bundler/fetcher/downloader.rb 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/fetcher/downloader.rb 2021-07-15 17:00:51.000000000
+0200
@@ -68,8 +68,7 @@
raise CertificateFailureError.new(uri)
rescue *HTTP_ERRORS => e
Bundler.ui.trace e
- case e.message
- when /host down:/, /getaddrinfo: nodename nor servname provided/
+ if e.is_a?(SocketError) || e.message =~ /host down:/
raise NetworkDownError, "Could not reach host #{uri.host}. Check
your network " \
"connection and try again."
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/index.rb new/lib/bundler/index.rb
--- old/lib/bundler/index.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/index.rb 2021-07-15 17:00:51.000000000 +0200
@@ -195,11 +195,7 @@
if base # allow all platforms when searching from a lockfile
dependency.matches_spec?(spec)
else
- if Gem::Platform.respond_to? :match_spec?
- dependency.matches_spec?(spec) && Gem::Platform.match_spec?(spec)
- else
- dependency.matches_spec?(spec) &&
Gem::Platform.match(spec.platform)
- end
+ dependency.matches_spec?(spec) && Gem::Platform.match_spec?(spec)
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/installer/standalone.rb
new/lib/bundler/installer/standalone.rb
--- old/lib/bundler/installer/standalone.rb 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/installer/standalone.rb 2021-07-15 17:00:51.000000000
+0200
@@ -3,7 +3,7 @@
module Bundler
class Standalone
def initialize(groups, definition)
- @specs = groups.empty? ? definition.requested_specs :
definition.specs_for(groups.map(&:to_sym))
+ @specs = definition.specs_for(groups)
end
def generate
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/installer.rb new/lib/bundler/installer.rb
--- old/lib/bundler/installer.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/installer.rb 2021-07-15 17:00:51.000000000 +0200
@@ -135,7 +135,7 @@
next
end
- mode = Bundler::WINDOWS ? "wb:UTF-8" : "w"
+ mode = Gem.win_platform? ? "wb:UTF-8" : "w"
require "erb"
content = if RUBY_VERSION >= "2.6"
ERB.new(template, :trim_mode => "-").result(binding)
@@ -144,7 +144,7 @@
end
File.write(binstub_path, content, :mode => mode, :perm => 0o777 &
~File.umask)
- if Bundler::WINDOWS || options[:all_platforms]
+ if Gem.win_platform? || options[:all_platforms]
prefix = "@ruby -x \"%~f0\" %*\n@exit /b %ERRORLEVEL%\n\n"
File.write("#{binstub_path}.cmd", prefix + content, :mode => mode)
end
@@ -182,7 +182,7 @@
executable_path = Pathname(spec.full_gem_path).join(spec.bindir,
executable).relative_path_from(bin_path)
executable_path = executable_path
- mode = Bundler::WINDOWS ? "wb:UTF-8" : "w"
+ mode = Gem.win_platform? ? "wb:UTF-8" : "w"
require "erb"
content = if RUBY_VERSION >= "2.6"
ERB.new(template, :trim_mode => "-").result(binding)
@@ -191,7 +191,7 @@
end
File.write("#{bin_path}/#{executable}", content, :mode => mode, :perm
=> 0o755)
- if Bundler::WINDOWS || options[:all_platforms]
+ if Gem.win_platform? || options[:all_platforms]
prefix = "@ruby -x \"%~f0\" %*\n@exit /b %ERRORLEVEL%\n\n"
File.write("#{bin_path}/#{executable}.cmd", prefix + content, :mode
=> mode)
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/lockfile_parser.rb
new/lib/bundler/lockfile_parser.rb
--- old/lib/bundler/lockfile_parser.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/lockfile_parser.rb 2021-07-15 17:00:51.000000000 +0200
@@ -1,16 +1,5 @@
# frozen_string_literal: true
-#--
-# Some versions of the Bundler 1.1 RC series introduced corrupted
-# lockfiles. There were two major problems:
-#
-# * multiple copies of the same GIT section appeared in the lockfile
-# * when this happened, those sections got multiple copies of gems
-# in those sections.
-#
-# As a result, Bundler 1.1 contains code that fixes the earlier
-# corruption. We will remove this fix-up code in Bundler 1.2.
-
module Bundler
class LockfileParser
attr_reader :sources, :dependencies, :specs, :platforms, :bundler_version,
:ruby_version
@@ -124,12 +113,7 @@
@sources << @current_source
when GIT
@current_source = TYPES[@type].from_lock(@opts)
- # Strip out duplicate GIT sections
- if @sources.include?(@current_source)
- @current_source = @sources.find {|s| s == @current_source }
- else
- @sources << @current_source
- end
+ @sources << @current_source
when GEM
@opts["remotes"] = Array(@opts.delete("remote")).reverse
@current_source = TYPES[@type].from_lock(@opts)
@@ -212,9 +196,7 @@
@current_spec = LazySpecification.new(name, version, platform)
@current_spec.source = @current_source
- # Avoid introducing multiple copies of the same spec (caused by
- # duplicate GIT sections)
- @specs[@current_spec.identifier] ||= @current_spec
+ @specs[@current_spec.identifier] = @current_spec
elsif spaces.size == 6
version = version.split(",").map(&:strip) if version
dep = Gem::Dependency.new(name, version)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-add.1
new/lib/bundler/man/bundle-add.1
--- old/lib/bundler/man/bundle-add.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-add.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-ADD" "1" "May 2021" "" ""
+.TH "BUNDLE\-ADD" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-add\fR \- Add gem to the Gemfile and run bundle install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-binstubs.1
new/lib/bundler/man/bundle-binstubs.1
--- old/lib/bundler/man/bundle-binstubs.1 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-binstubs.1 2021-07-15 17:00:51.000000000
+0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-BINSTUBS" "1" "May 2021" "" ""
+.TH "BUNDLE\-BINSTUBS" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-cache.1
new/lib/bundler/man/bundle-cache.1
--- old/lib/bundler/man/bundle-cache.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-cache.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-CACHE" "1" "May 2021" "" ""
+.TH "BUNDLE\-CACHE" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-cache\fR \- Package your needed \fB\.gem\fR files into your
application
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-check.1
new/lib/bundler/man/bundle-check.1
--- old/lib/bundler/man/bundle-check.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-check.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-CHECK" "1" "May 2021" "" ""
+.TH "BUNDLE\-CHECK" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-clean.1
new/lib/bundler/man/bundle-clean.1
--- old/lib/bundler/man/bundle-clean.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-clean.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-CLEAN" "1" "May 2021" "" ""
+.TH "BUNDLE\-CLEAN" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-clean\fR \- Cleans up unused gems in your bundler directory
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-config.1
new/lib/bundler/man/bundle-config.1
--- old/lib/bundler/man/bundle-config.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-config.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-CONFIG" "1" "May 2021" "" ""
+.TH "BUNDLE\-CONFIG" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-config\fR \- Set bundler configuration options
@@ -274,9 +274,6 @@
\fBtimeout\fR (\fBBUNDLE_TIMEOUT\fR): The seconds allowed before timing out
for network requests\. Defaults to \fB10\fR\.
.
.IP "\(bu" 4
-\fBunlock_source_unlocks_spec\fR (\fBBUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC\fR):
Whether running \fBbundle update \-\-source NAME\fR unlocks a gem with the
given name\. Defaults to \fBtrue\fR\.
-.
-.IP "\(bu" 4
\fBupdate_requires_all_flag\fR (\fBBUNDLE_UPDATE_REQUIRES_ALL_FLAG\fR):
Require passing \fB\-\-all\fR to \fBbundle update\fR when everything should be
updated, and disallow passing no options to \fBbundle update\fR\.
.
.IP "\(bu" 4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-config.1.ronn
new/lib/bundler/man/bundle-config.1.ronn
--- old/lib/bundler/man/bundle-config.1.ronn 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-config.1.ronn 2021-07-15 17:00:51.000000000
+0200
@@ -260,9 +260,6 @@
The location where RubyGems installs binstubs. Defaults to `Gem.bindir`.
* `timeout` (`BUNDLE_TIMEOUT`):
The seconds allowed before timing out for network requests. Defaults to
`10`.
-* `unlock_source_unlocks_spec` (`BUNDLE_UNLOCK_SOURCE_UNLOCKS_SPEC`):
- Whether running `bundle update --source NAME` unlocks a gem with the given
- name. Defaults to `true`.
* `update_requires_all_flag` (`BUNDLE_UPDATE_REQUIRES_ALL_FLAG`):
Require passing `--all` to `bundle update` when everything should be
updated,
and disallow passing no options to `bundle update`.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-doctor.1
new/lib/bundler/man/bundle-doctor.1
--- old/lib/bundler/man/bundle-doctor.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-doctor.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-DOCTOR" "1" "May 2021" "" ""
+.TH "BUNDLE\-DOCTOR" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-doctor\fR \- Checks the bundle for common problems
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-exec.1
new/lib/bundler/man/bundle-exec.1
--- old/lib/bundler/man/bundle-exec.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-exec.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-EXEC" "1" "May 2021" "" ""
+.TH "BUNDLE\-EXEC" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-exec\fR \- Execute a command in the context of the bundle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-gem.1
new/lib/bundler/man/bundle-gem.1
--- old/lib/bundler/man/bundle-gem.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-gem.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-GEM" "1" "May 2021" "" ""
+.TH "BUNDLE\-GEM" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-gem\fR \- Generate a project skeleton for creating a rubygem
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-info.1
new/lib/bundler/man/bundle-info.1
--- old/lib/bundler/man/bundle-info.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-info.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-INFO" "1" "May 2021" "" ""
+.TH "BUNDLE\-INFO" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-info\fR \- Show information for the given gem in your bundle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-init.1
new/lib/bundler/man/bundle-init.1
--- old/lib/bundler/man/bundle-init.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-init.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-INIT" "1" "May 2021" "" ""
+.TH "BUNDLE\-INIT" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-init\fR \- Generates a Gemfile into the current working directory
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-inject.1
new/lib/bundler/man/bundle-inject.1
--- old/lib/bundler/man/bundle-inject.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-inject.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-INJECT" "1" "May 2021" "" ""
+.TH "BUNDLE\-INJECT" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-inject\fR \- Add named gem(s) with version requirements to Gemfile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-install.1
new/lib/bundler/man/bundle-install.1
--- old/lib/bundler/man/bundle-install.1 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-install.1 2021-07-15 17:00:51.000000000
+0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-INSTALL" "1" "May 2021" "" ""
+.TH "BUNDLE\-INSTALL" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-list.1
new/lib/bundler/man/bundle-list.1
--- old/lib/bundler/man/bundle-list.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-list.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-LIST" "1" "May 2021" "" ""
+.TH "BUNDLE\-LIST" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-list\fR \- List all the gems in the bundle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-lock.1
new/lib/bundler/man/bundle-lock.1
--- old/lib/bundler/man/bundle-lock.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-lock.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-LOCK" "1" "May 2021" "" ""
+.TH "BUNDLE\-LOCK" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-lock\fR \- Creates / Updates a lockfile without installing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-open.1
new/lib/bundler/man/bundle-open.1
--- old/lib/bundler/man/bundle-open.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-open.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-OPEN" "1" "May 2021" "" ""
+.TH "BUNDLE\-OPEN" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-outdated.1
new/lib/bundler/man/bundle-outdated.1
--- old/lib/bundler/man/bundle-outdated.1 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-outdated.1 2021-07-15 17:00:51.000000000
+0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-OUTDATED" "1" "May 2021" "" ""
+.TH "BUNDLE\-OUTDATED" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-outdated\fR \- List installed gems with newer versions available
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-platform.1
new/lib/bundler/man/bundle-platform.1
--- old/lib/bundler/man/bundle-platform.1 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-platform.1 2021-07-15 17:00:51.000000000
+0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-PLATFORM" "1" "May 2021" "" ""
+.TH "BUNDLE\-PLATFORM" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-platform\fR \- Displays platform compatibility information
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-pristine.1
new/lib/bundler/man/bundle-pristine.1
--- old/lib/bundler/man/bundle-pristine.1 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-pristine.1 2021-07-15 17:00:51.000000000
+0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-PRISTINE" "1" "May 2021" "" ""
+.TH "BUNDLE\-PRISTINE" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-remove.1
new/lib/bundler/man/bundle-remove.1
--- old/lib/bundler/man/bundle-remove.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-remove.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-REMOVE" "1" "May 2021" "" ""
+.TH "BUNDLE\-REMOVE" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-remove\fR \- Removes gems from the Gemfile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-show.1
new/lib/bundler/man/bundle-show.1
--- old/lib/bundler/man/bundle-show.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-show.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-SHOW" "1" "May 2021" "" ""
+.TH "BUNDLE\-SHOW" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-update.1
new/lib/bundler/man/bundle-update.1
--- old/lib/bundler/man/bundle-update.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-update.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-UPDATE" "1" "May 2021" "" ""
+.TH "BUNDLE\-UPDATE" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-update\fR \- Update your gems to the latest available versions
@@ -79,7 +79,7 @@
.
.TP
\fB\-\-conservative\fR
-Use bundle install conservative update behavior and do not allow shared
dependencies to be updated\.
+Use bundle install conservative update behavior and do not allow indirect
dependencies to be updated\.
.
.SH "UPDATING ALL GEMS"
If you run \fBbundle update \-\-all\fR, bundler will ignore any previously
installed gems and resolve all dependencies again based on the latest versions
of all gems available in the sources\.
@@ -208,13 +208,13 @@
In short, by default, when you update a gem using \fBbundle update\fR, bundler
will update all dependencies of that gem, including those that are also
dependencies of another gem\.
.
.P
-To prevent updating shared dependencies, prior to version 1\.14 the only
option was the \fBCONSERVATIVE UPDATING\fR behavior in bundle install(1)
\fIbundle\-install\.1\.html\fR:
+To prevent updating indirect dependencies, prior to version 1\.14 the only
option was the \fBCONSERVATIVE UPDATING\fR behavior in bundle install(1)
\fIbundle\-install\.1\.html\fR:
.
.P
In this scenario, updating the \fBthin\fR version manually in the Gemfile(5),
and then running bundle install(1) \fIbundle\-install\.1\.html\fR will only
update \fBdaemons\fR and \fBeventmachine\fR, but not \fBrack\fR\. For more
information, see the \fBCONSERVATIVE UPDATING\fR section of bundle install(1)
\fIbundle\-install\.1\.html\fR\.
.
.P
-Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also
prevent shared dependencies from being updated\.
+Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also
prevent indirect dependencies from being updated\.
.
.SH "PATCH LEVEL OPTIONS"
Version 1\.14 introduced 4 patch\-level options that will influence how gem
versions are resolved\. One of the following options can be used:
\fB\-\-patch\fR, \fB\-\-minor\fR or \fB\-\-major\fR\. \fB\-\-strict\fR can be
added to further influence resolution\.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-update.1.ronn
new/lib/bundler/man/bundle-update.1.ronn
--- old/lib/bundler/man/bundle-update.1.ronn 2021-06-23 15:25:56.000000000
+0200
+++ new/lib/bundler/man/bundle-update.1.ronn 2021-07-15 17:00:51.000000000
+0200
@@ -80,7 +80,7 @@
Do not allow any gem to be updated past latest `--patch` | `--minor` |
`--major`.
* `--conservative`:
- Use bundle install conservative update behavior and do not allow shared
dependencies to be updated.
+ Use bundle install conservative update behavior and do not allow indirect
dependencies to be updated.
## UPDATING ALL GEMS
@@ -195,7 +195,7 @@
update all dependencies of that gem, including those that are also dependencies
of another gem.
-To prevent updating shared dependencies, prior to version 1.14 the only option
+To prevent updating indirect dependencies, prior to version 1.14 the only
option
was the `CONSERVATIVE UPDATING` behavior in [bundle
install(1)](bundle-install.1.html):
In this scenario, updating the `thin` version manually in the Gemfile(5),
@@ -203,7 +203,7 @@
but not `rack`. For more information, see the `CONSERVATIVE UPDATING` section
of [bundle install(1)](bundle-install.1.html).
-Starting with 1.14, specifying the `--conservative` option will also prevent
shared
+Starting with 1.14, specifying the `--conservative` option will also prevent
indirect
dependencies from being updated.
## PATCH LEVEL OPTIONS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle-viz.1
new/lib/bundler/man/bundle-viz.1
--- old/lib/bundler/man/bundle-viz.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle-viz.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE\-VIZ" "1" "May 2021" "" ""
+.TH "BUNDLE\-VIZ" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/bundle.1 new/lib/bundler/man/bundle.1
--- old/lib/bundler/man/bundle.1 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/bundle.1 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "BUNDLE" "1" "May 2021" "" ""
+.TH "BUNDLE" "1" "June 2021" "" ""
.
.SH "NAME"
\fBbundle\fR \- Ruby Dependency Management
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/man/gemfile.5
new/lib/bundler/man/gemfile.5
--- old/lib/bundler/man/gemfile.5 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/man/gemfile.5 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
-.TH "GEMFILE" "5" "May 2021" "" ""
+.TH "GEMFILE" "5" "June 2021" "" ""
.
.SH "NAME"
\fBGemfile\fR \- A format for describing gem dependencies for Ruby programs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/plugin/index.rb
new/lib/bundler/plugin/index.rb
--- old/lib/bundler/plugin/index.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/plugin/index.rb 2021-07-15 17:00:51.000000000 +0200
@@ -74,7 +74,10 @@
def unregister_plugin(name)
@commands.delete_if {|_, v| v == name }
@sources.delete_if {|_, v| v == name }
- @hooks.each {|_, plugin_names| plugin_names.delete(name) }
+ @hooks.each do |hook, names|
+ names.delete(name)
+ @hooks.delete(hook) if names.empty?
+ end
@plugin_paths.delete(name)
@load_paths.delete(name)
save_index
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/plugin/installer.rb
new/lib/bundler/plugin/installer.rb
--- old/lib/bundler/plugin/installer.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/plugin/installer.rb 2021-07-15 17:00:51.000000000 +0200
@@ -77,7 +77,7 @@
source_list = SourceList.new
source_list.add_git_source(git_source_options) if git_source_options
- source_list.global_rubygems_source = rubygems_source if rubygems_source
+ Array(rubygems_source).each {|remote|
source_list.add_global_rubygems_remote(remote) } if rubygems_source
deps = names.map {|name| Dependency.new name, version }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/plugin.rb new/lib/bundler/plugin.rb
--- old/lib/bundler/plugin.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/plugin.rb 2021-07-15 17:00:51.000000000 +0200
@@ -309,6 +309,8 @@
#
# @param [String] name of the plugin
def load_plugin(name)
+ return unless name && !name.empty?
+
# Need to ensure before this that plugin root where the rest of gems
# are installed to be on load path to support plugin deps. Currently not
# done to avoid conflicts
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/resolver.rb new/lib/bundler/resolver.rb
--- old/lib/bundler/resolver.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/resolver.rb 2021-07-15 17:00:51.000000000 +0200
@@ -21,7 +21,7 @@
base = SpecSet.new(base) unless base.is_a?(SpecSet)
resolver = new(source_requirements, base, gem_version_promoter,
additional_base_requirements, platforms)
result = resolver.start(requirements)
- SpecSet.new(result).for(requirements.reject{|dep|
dep.name.end_with?("\0") })
+ SpecSet.new(SpecSet.new(result).for(requirements.reject{|dep|
dep.name.end_with?("\0") }))
end
def initialize(source_requirements, base, gem_version_promoter,
additional_base_requirements, platforms)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/rubygems_ext.rb
new/lib/bundler/rubygems_ext.rb
--- old/lib/bundler/rubygems_ext.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/rubygems_ext.rb 2021-07-15 17:00:51.000000000 +0200
@@ -174,20 +174,36 @@
end
end
+ require "rubygems/platform"
+
class Platform
JAVA = Gem::Platform.new("java") unless defined?(JAVA)
MSWIN = Gem::Platform.new("mswin32") unless defined?(MSWIN)
MSWIN64 = Gem::Platform.new("mswin64") unless defined?(MSWIN64)
MINGW = Gem::Platform.new("x86-mingw32") unless defined?(MINGW)
X64_MINGW = Gem::Platform.new("x64-mingw32") unless defined?(X64_MINGW)
+ end
- undef_method :hash if method_defined? :hash
- def hash
- @cpu.hash ^ @os.hash ^ @version.hash
- end
+ Platform.singleton_class.module_eval do
+ unless Platform.singleton_methods.include?(:match_spec?)
+ def match_spec?(spec)
+ match_gem?(spec.platform, spec.name)
+ end
- undef_method :eql? if method_defined? :eql?
- alias_method :eql?, :==
+ def match_gem?(platform, gem_name)
+ match_platforms?(platform, Gem.platforms)
+ end
+
+ private
+
+ def match_platforms?(platform, platforms)
+ platforms.any? do |local_platform|
+ platform.nil? ||
+ local_platform == platform ||
+ (local_platform != Gem::Platform::RUBY && local_platform =~
platform)
+ end
+ end
+ end
end
require "rubygems/util"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/runtime.rb new/lib/bundler/runtime.rb
--- old/lib/bundler/runtime.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/runtime.rb 2021-07-15 17:00:51.000000000 +0200
@@ -12,12 +12,10 @@
def setup(*groups)
@definition.ensure_equivalent_gemfile_and_lockfile if
Bundler.frozen_bundle?
- groups.map!(&:to_sym)
-
# Has to happen first
clean_load_path
- specs = groups.any? ? @definition.specs_for(groups) : requested_specs
+ specs = @definition.specs_for(groups)
SharedHelpers.set_bundle_environment
Bundler.rubygems.replace_entrypoints(specs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/settings.rb new/lib/bundler/settings.rb
--- old/lib/bundler/settings.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/settings.rb 2021-07-15 17:00:51.000000000 +0200
@@ -44,7 +44,6 @@
silence_deprecations
silence_root_warning
suppress_install_using_messages
- unlock_source_unlocks_spec
update_requires_all_flag
use_gem_version_promoter_for_major_updates
].freeze
@@ -429,12 +428,8 @@
def global_config_file
if ENV["BUNDLE_CONFIG"] && !ENV["BUNDLE_CONFIG"].empty?
Pathname.new(ENV["BUNDLE_CONFIG"])
- else
- begin
- Bundler.user_bundle_path("config")
- rescue PermissionError, GenericSystemCallError
- nil
- end
+ elsif Bundler.rubygems.user_home && !Bundler.rubygems.user_home.empty?
+ Pathname.new(Bundler.rubygems.user_home).join(".bundle/config")
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/source/rubygems.rb
new/lib/bundler/source/rubygems.rb
--- old/lib/bundler/source/rubygems.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/source/rubygems.rb 2021-07-15 17:00:51.000000000 +0200
@@ -73,7 +73,7 @@
def can_lock?(spec)
return super unless multiple_remotes?
- spec.source.is_a?(Rubygems)
+ include?(spec.source)
end
def options
@@ -252,19 +252,6 @@
other_remotes.map(&method(:remove_auth)) ==
@remotes.map(&method(:remove_auth))
end
- def replace_remotes(other_remotes, allow_equivalent = false)
- return false if other_remotes == @remotes
-
- equivalent = allow_equivalent && equivalent_remotes?(other_remotes)
-
- @remotes = []
- other_remotes.reverse_each do |r|
- add_remote r.to_s
- end
-
- !equivalent
- end
-
def spec_names
if @allow_remote && dependency_api_available?
remote_specs.spec_names
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/source_list.rb
new/lib/bundler/source_list.rb
--- old/lib/bundler/source_list.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/source_list.rb 2021-07-15 17:00:51.000000000 +0200
@@ -28,8 +28,9 @@
@merged_gem_lockfile_sections
end
- def merged_gem_lockfile_sections!
+ def merged_gem_lockfile_sections!(replacement_source)
@merged_gem_lockfile_sections = true
+ @global_rubygems_source = replacement_source
end
def aggregate_global_source?
@@ -53,18 +54,17 @@
end
def add_rubygems_source(options = {})
- add_source_to_list Source::Rubygems.new(options), @rubygems_sources
+ new_source = Source::Rubygems.new(options)
+ return @global_rubygems_source if @global_rubygems_source == new_source
+
+ add_source_to_list new_source, @rubygems_sources
end
def add_plugin_source(source, options = {})
add_source_to_list Plugin.source(source).new(options), @plugin_sources
end
- def global_rubygems_source=(uri)
- @global_rubygems_source ||= rubygems_aggregate_class.new("remotes" =>
uri, "allow_local" => true)
- end
-
- def add_rubygems_remote(uri)
+ def add_global_rubygems_remote(uri)
global_rubygems_source.add_remote(uri)
global_rubygems_source
end
@@ -109,27 +109,26 @@
if merged_gem_lockfile_sections?
[combine_rubygems_sources]
else
- rubygems_sources.sort_by(&:to_s).uniq
+ rubygems_sources.sort_by(&:to_s)
end
end
# Returns true if there are changes
def replace_sources!(replacement_sources)
- return true if replacement_sources.empty?
+ return false if replacement_sources.empty?
- [path_sources, git_sources, plugin_sources].each do |source_list|
- source_list.map! do |source|
- replacement_sources.find {|s| s == source } || source
- end
- end
+ @path_sources, @git_sources, @plugin_sources =
map_sources(replacement_sources)
+
+ different_sources?(lock_sources, replacement_sources)
+ end
- replacement_rubygems = merged_gem_lockfile_sections? &&
- replacement_sources.detect {|s| s.is_a?(Source::Rubygems) }
- @global_rubygems_source = replacement_rubygems if replacement_rubygems
+ # Returns true if there are changes
+ def expired_sources?(replacement_sources)
+ return false if replacement_sources.empty?
- return true if !equal_sources?(lock_sources, replacement_sources) &&
!equivalent_sources?(lock_sources, replacement_sources)
+ lock_sources =
dup_with_replaced_sources(replacement_sources).lock_sources
- false
+ different_sources?(lock_sources, replacement_sources)
end
def local_only!
@@ -146,6 +145,24 @@
private
+ def dup_with_replaced_sources(replacement_sources)
+ new_source_list = dup
+ new_source_list.replace_sources!(replacement_sources)
+ new_source_list
+ end
+
+ def map_sources(replacement_sources)
+ [path_sources, git_sources, plugin_sources].map do |sources|
+ sources.map do |source|
+ replacement_sources.find {|s| s == source } || source
+ end
+ end
+ end
+
+ def different_sources?(lock_sources, replacement_sources)
+ !equal_sources?(lock_sources, replacement_sources) &&
!equivalent_sources?(lock_sources, replacement_sources)
+ end
+
def rubygems_aggregate_class
Source::Rubygems
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/spec_set.rb new/lib/bundler/spec_set.rb
--- old/lib/bundler/spec_set.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/spec_set.rb 2021-07-15 17:00:51.000000000 +0200
@@ -11,15 +11,14 @@
@specs = specs
end
- def for(dependencies, skip = [], check = false, match_current_platform =
false, raise_on_missing = true)
+ def for(dependencies, check = false, match_current_platform = false,
raise_on_missing = true)
handled = []
deps = dependencies.dup
specs = []
- skip += ["bundler"]
loop do
break unless dep = deps.shift
- next if handled.include?(dep) || skip.include?(dep.name)
+ next if handled.any?{|d| d.name == dep.name && (match_current_platform
|| d.__platform == dep.__platform) } || dep.name == "bundler"
handled << dep
@@ -46,11 +45,7 @@
specs << spec
end
- check ? true : SpecSet.new(specs)
- end
-
- def valid_for?(deps)
- self.for(deps, [], true)
+ check ? true : specs
end
def [](key)
@@ -77,7 +72,7 @@
end
def materialize(deps, missing_specs = nil)
- materialized = self.for(deps, [], false, true, !missing_specs).to_a
+ materialized = self.for(deps, false, true, !missing_specs)
materialized.group_by(&:source).each do |source, specs|
next unless specs.any?{|s| s.is_a?(LazySpecification) }
@@ -199,7 +194,7 @@
def spec_for_dependency(dep, match_current_platform)
specs_for_platforms = lookup[dep.name]
if match_current_platform
- GemHelpers.select_best_platform_match(specs_for_platforms,
Bundler.local_platform)
+ GemHelpers.select_best_platform_match(specs_for_platforms.select{|s|
Gem::Platform.match_spec?(s) }, Bundler.local_platform)
else
GemHelpers.select_best_platform_match(specs_for_platforms,
dep.__platform)
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler/version.rb new/lib/bundler/version.rb
--- old/lib/bundler/version.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler/version.rb 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
# frozen_string_literal: false
module Bundler
- VERSION = "2.2.21".freeze
+ VERSION = "2.2.24".freeze
def self.bundler_major_version
@bundler_major_version ||= VERSION.split(".").first.to_i
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bundler.rb new/lib/bundler.rb
--- old/lib/bundler.rb 2021-06-23 15:25:56.000000000 +0200
+++ new/lib/bundler.rb 2021-07-15 17:00:51.000000000 +0200
@@ -236,8 +236,9 @@
end
if warning
- user_home = tmp_home_path(warning)
- Bundler.ui.warn "#{warning}\nBundler will use `#{user_home}' as your
home directory temporarily.\n"
+ Bundler.ui.warn "#{warning}\n"
+ user_home = tmp_home_path
+ Bundler.ui.warn "Bundler will use `#{user_home}' as your home
directory temporarily.\n"
user_home
else
Pathname.new(home)
@@ -684,15 +685,13 @@
Bundler.rubygems.clear_paths
end
- def tmp_home_path(warning)
+ def tmp_home_path
Kernel.send(:require, "tmpdir")
SharedHelpers.filesystem_access(Dir.tmpdir) do
path = Bundler.tmp
at_exit { Bundler.rm_rf(path) }
path
end
- rescue RuntimeError => e
- raise e.exception("#{warning}\nBundler also failed to create a temporary
home directory':\n#{e}")
end
# @param env [Hash]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2021-06-23 15:25:56.000000000 +0200
+++ new/metadata 2021-07-15 17:00:51.000000000 +0200
@@ -1,7 +1,7 @@
--- !ruby/object:Gem::Specification
name: bundler
version: !ruby/object:Gem::Version
- version: 2.2.21
+ version: 2.2.24
platform: ruby
authors:
- Andr?? Arko
@@ -22,7 +22,7 @@
autorequire:
bindir: exe
cert_chain: []
-date: 2021-06-23 00:00:00.000000000 Z
+date: 2021-07-15 00:00:00.000000000 Z
dependencies: []
description: Bundler manages an application's dependencies through its entire
life,
across many machines, systematically and repeatably
@@ -354,7 +354,7 @@
- !ruby/object:Gem::Version
version: 2.5.2
requirements: []
-rubygems_version: 3.2.21
+rubygems_version: 3.2.24
signing_key:
specification_version: 4
summary: The best way to manage your application's dependencies