bundler 2.2.6 → 2.2.7
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bundler might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/lib/bundler/build_metadata.rb +2 -2
- data/lib/bundler/cli/cache.rb +1 -0
- data/lib/bundler/definition.rb +1 -0
- data/lib/bundler/feature_flag.rb +0 -1
- data/lib/bundler/fetcher.rb +0 -1
- data/lib/bundler/gem_helper.rb +8 -6
- data/lib/bundler/installer.rb +0 -17
- data/lib/bundler/installer/standalone.rb +14 -0
- data/lib/bundler/lazy_specification.rb +1 -1
- data/lib/bundler/man/bundle-add.1 +1 -1
- data/lib/bundler/man/bundle-binstubs.1 +1 -1
- data/lib/bundler/man/bundle-cache.1 +1 -1
- data/lib/bundler/man/bundle-check.1 +1 -1
- data/lib/bundler/man/bundle-clean.1 +1 -1
- data/lib/bundler/man/bundle-config.1 +4 -4
- data/lib/bundler/man/bundle-config.1.ronn +3 -3
- data/lib/bundler/man/bundle-doctor.1 +1 -1
- data/lib/bundler/man/bundle-exec.1 +1 -1
- data/lib/bundler/man/bundle-gem.1 +1 -1
- data/lib/bundler/man/bundle-info.1 +1 -1
- data/lib/bundler/man/bundle-init.1 +1 -1
- data/lib/bundler/man/bundle-inject.1 +1 -1
- data/lib/bundler/man/bundle-install.1 +1 -1
- data/lib/bundler/man/bundle-list.1 +1 -1
- data/lib/bundler/man/bundle-lock.1 +1 -1
- data/lib/bundler/man/bundle-open.1 +1 -1
- data/lib/bundler/man/bundle-outdated.1 +1 -1
- data/lib/bundler/man/bundle-platform.1 +1 -1
- data/lib/bundler/man/bundle-pristine.1 +1 -1
- data/lib/bundler/man/bundle-remove.1 +1 -1
- data/lib/bundler/man/bundle-show.1 +1 -1
- data/lib/bundler/man/bundle-update.1 +1 -1
- data/lib/bundler/man/bundle-viz.1 +1 -1
- data/lib/bundler/man/bundle.1 +1 -1
- data/lib/bundler/man/gemfile.5 +1 -1
- data/lib/bundler/resolver.rb +32 -17
- data/lib/bundler/resolver/spec_group.rb +1 -4
- data/lib/bundler/settings.rb +1 -1
- data/lib/bundler/source/git.rb +1 -1
- data/lib/bundler/source/rubygems.rb +0 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +7 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +1 -1
- data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +11 -0
- data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +1 -1
- data/lib/bundler/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f8e9970b2d4991ebf1dd972107e05ecd32951bdfa797ed6c36d6abf7a703ea1
|
4
|
+
data.tar.gz: 0d0ecd48d724a845003397e3ecb2bd063a2ab666522e3c37806175ecfe6a02f3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 345c9fdec8f29fdc67469a1d8cda01428120c1dc87c5db079449c388d02f3779942403ee719737ec8b95b9cd2fd0d0a06a6f26b2aa2d5c354aacff97a6ba8baa
|
7
|
+
data.tar.gz: 0aad39443512928b799c817eb78641e2bb7e0637937f26894ceda1bb250292fd5be44e0e61e714679bd07cac8ded827f6107934f90511ef00547837fa3292e8a
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,22 @@
|
|
1
|
+
# 2.2.7 (January 26, 2021)
|
2
|
+
|
3
|
+
## Enhancements:
|
4
|
+
|
5
|
+
- Improve error messages when dependency on bundler conflicts with running version [#4308](https://github.com/rubygems/rubygems/pull/4308)
|
6
|
+
- Avoid showing platforms with requirements in error messages [#4310](https://github.com/rubygems/rubygems/pull/4310)
|
7
|
+
- Introduce disable_local_revision_check config [#4237](https://github.com/rubygems/rubygems/pull/4237)
|
8
|
+
- Reverse rubygems require mixin with bundler standalone [#4299](https://github.com/rubygems/rubygems/pull/4299)
|
9
|
+
|
10
|
+
## Bug fixes:
|
11
|
+
|
12
|
+
- Fix releasing from a not yet pushed branch [#4309](https://github.com/rubygems/rubygems/pull/4309)
|
13
|
+
- Install cache only once if it already exists [#4304](https://github.com/rubygems/rubygems/pull/4304)
|
14
|
+
- Fix `force_ruby_platform` no longer being respected [#4302](https://github.com/rubygems/rubygems/pull/4302)
|
15
|
+
|
16
|
+
## Performance:
|
17
|
+
|
18
|
+
- Fix resolver dependency comparison [#4289](https://github.com/rubygems/rubygems/pull/4289)
|
19
|
+
|
1
20
|
# 2.2.6 (January 18, 2021)
|
2
21
|
|
3
22
|
## 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-01-
|
8
|
-
@git_commit_sha = "
|
7
|
+
@built_at = "2021-01-27".freeze
|
8
|
+
@git_commit_sha = "7bc7ecb660".freeze
|
9
9
|
@release = true
|
10
10
|
# end ivars
|
11
11
|
|
data/lib/bundler/cli/cache.rb
CHANGED
data/lib/bundler/definition.rb
CHANGED
@@ -913,6 +913,7 @@ module Bundler
|
|
913
913
|
metadata_dependencies.each do |dep|
|
914
914
|
source_requirements[dep.name] = sources.metadata_source
|
915
915
|
end
|
916
|
+
source_requirements[:default_bundler] = source_requirements["bundler"] || source_requirements[:default]
|
916
917
|
source_requirements["bundler"] = sources.metadata_source # needs to come last to override
|
917
918
|
source_requirements
|
918
919
|
end
|
data/lib/bundler/feature_flag.rb
CHANGED
@@ -27,7 +27,6 @@ module Bundler
|
|
27
27
|
|
28
28
|
(1..10).each {|v| define_method("bundler_#{v}_mode?") { major_version >= v } }
|
29
29
|
|
30
|
-
settings_flag(:allow_bundler_dependency_conflicts) { bundler_3_mode? }
|
31
30
|
settings_flag(:allow_offline_install) { bundler_3_mode? }
|
32
31
|
settings_flag(:auto_clean_without_path) { bundler_3_mode? }
|
33
32
|
settings_flag(:cache_all) { bundler_3_mode? }
|
data/lib/bundler/fetcher.rb
CHANGED
data/lib/bundler/gem_helper.rb
CHANGED
@@ -116,19 +116,21 @@ module Bundler
|
|
116
116
|
|
117
117
|
def git_push(remote = nil)
|
118
118
|
remote ||= default_remote
|
119
|
-
perform_git_push remote
|
119
|
+
perform_git_push "#{remote} refs/heads/#{current_branch}"
|
120
120
|
perform_git_push "#{remote} refs/tags/#{version_tag}"
|
121
121
|
Bundler.ui.confirm "Pushed git commits and release tag."
|
122
122
|
end
|
123
123
|
|
124
124
|
def default_remote
|
125
|
-
|
126
|
-
|
125
|
+
remote_for_branch, status = sh_with_status(%W[git config --get branch.#{current_branch}.remote])
|
126
|
+
return "origin" unless status.success?
|
127
127
|
|
128
|
-
remote_for_branch
|
129
|
-
|
128
|
+
remote_for_branch.strip
|
129
|
+
end
|
130
130
|
|
131
|
-
|
131
|
+
def current_branch
|
132
|
+
# We can replace this with `git branch --show-current` once we drop support for git < 2.22.0
|
133
|
+
sh(%w[git rev-parse --abbrev-ref HEAD]).gsub(%r{\Aheads/}, "").strip
|
132
134
|
end
|
133
135
|
|
134
136
|
def allowed_push_host
|
data/lib/bundler/installer.rb
CHANGED
@@ -82,7 +82,6 @@ module Bundler
|
|
82
82
|
|
83
83
|
if resolve_if_needed(options)
|
84
84
|
ensure_specs_are_compatible!
|
85
|
-
warn_on_incompatible_bundler_deps
|
86
85
|
load_plugins
|
87
86
|
options.delete(:jobs)
|
88
87
|
else
|
@@ -265,22 +264,6 @@ module Bundler
|
|
265
264
|
end
|
266
265
|
end
|
267
266
|
|
268
|
-
def warn_on_incompatible_bundler_deps
|
269
|
-
bundler_version = Gem::Version.create(Bundler::VERSION)
|
270
|
-
@definition.specs.each do |spec|
|
271
|
-
spec.dependencies.each do |dep|
|
272
|
-
next if dep.type == :development
|
273
|
-
next unless dep.name == "bundler".freeze
|
274
|
-
next if dep.requirement.satisfied_by?(bundler_version)
|
275
|
-
|
276
|
-
Bundler.ui.warn "#{spec.name} (#{spec.version}) has dependency" \
|
277
|
-
" #{SharedHelpers.pretty_dependency(dep)}" \
|
278
|
-
", which is unsatisfied by the current bundler version #{VERSION}" \
|
279
|
-
", so the dependency is being ignored"
|
280
|
-
end
|
281
|
-
end
|
282
|
-
end
|
283
|
-
|
284
267
|
def install_in_parallel(size, standalone, force = false)
|
285
268
|
spec_installations = ParallelInstaller.call(self, @definition.specs, size, standalone, force)
|
286
269
|
spec_installations.each do |installation|
|
@@ -15,6 +15,7 @@ module Bundler
|
|
15
15
|
file.puts "ruby_engine = RUBY_ENGINE"
|
16
16
|
file.puts "ruby_version = RbConfig::CONFIG[\"ruby_version\"]"
|
17
17
|
file.puts "path = File.expand_path('..', __FILE__)"
|
18
|
+
file.puts reverse_rubygems_kernel_mixin
|
18
19
|
paths.each do |path|
|
19
20
|
file.puts %($:.unshift File.expand_path("\#{path}/#{path}"))
|
20
21
|
end
|
@@ -48,5 +49,18 @@ module Bundler
|
|
48
49
|
error_message = "#{spec.name} #{spec.version} has an invalid gemspec"
|
49
50
|
raise Gem::InvalidSpecificationException.new(error_message)
|
50
51
|
end
|
52
|
+
|
53
|
+
def reverse_rubygems_kernel_mixin
|
54
|
+
<<~END
|
55
|
+
kernel = (class << ::Kernel; self; end)
|
56
|
+
[kernel, ::Kernel].each do |k|
|
57
|
+
if k.private_method_defined?(:gem_original_require)
|
58
|
+
k.send(:remove_method, :require)
|
59
|
+
k.send(:define_method, :require, k.instance_method(:gem_original_require))
|
60
|
+
k.send(:private, :require)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
END
|
64
|
+
end
|
51
65
|
end
|
52
66
|
end
|
@@ -140,7 +140,7 @@ module Bundler
|
|
140
140
|
# explicitly add a more specific platform.
|
141
141
|
#
|
142
142
|
def ruby_platform_materializes_to_ruby_platform?
|
143
|
-
!Bundler.most_specific_locked_platform?(Gem::Platform::RUBY)
|
143
|
+
!Bundler.most_specific_locked_platform?(Gem::Platform::RUBY) || Bundler.settings[:force_ruby_platform]
|
144
144
|
end
|
145
145
|
end
|
146
146
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-BINSTUBS" "1" "
|
4
|
+
.TH "BUNDLE\-BINSTUBS" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-binstubs\fR \- Install the binstubs of the listed gems
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-CACHE" "1" "
|
4
|
+
.TH "BUNDLE\-CACHE" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-cache\fR \- Package your needed \fB\.gem\fR files into your application
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-CHECK" "1" "
|
4
|
+
.TH "BUNDLE\-CHECK" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-check\fR \- Verifies if dependencies are satisfied by installed gems
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-CLEAN" "1" "
|
4
|
+
.TH "BUNDLE\-CLEAN" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-clean\fR \- Cleans up unused gems in your bundler directory
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-CONFIG" "1" "
|
4
|
+
.TH "BUNDLE\-CONFIG" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-config\fR \- Set bundler configuration options
|
@@ -136,9 +136,6 @@ Any periods in the configuration keys must be replaced with two underscores when
|
|
136
136
|
The following is a list of all configuration keys and their purpose\. You can learn more about their operation in bundle install(1) \fIbundle\-install\.1\.html\fR\.
|
137
137
|
.
|
138
138
|
.IP "\(bu" 4
|
139
|
-
\fBallow_bundler_dependency_conflicts\fR (\fBBUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS\fR): Allow resolving to specifications that have dependencies on \fBbundler\fR that are incompatible with the running Bundler version\.
|
140
|
-
.
|
141
|
-
.IP "\(bu" 4
|
142
139
|
\fBallow_deployment_source_credential_changes\fR (\fBBUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES\fR): When in deployment mode, allow changing the credentials to a gem\'s source\. Ex: \fBhttps://some\.host\.com/gems/path/\fR \-> \fBhttps://user_name:password@some\.host\.com/gems/path\fR
|
143
140
|
.
|
144
141
|
.IP "\(bu" 4
|
@@ -184,6 +181,9 @@ The following is a list of all configuration keys and their purpose\. You can le
|
|
184
181
|
\fBdisable_local_branch_check\fR (\fBBUNDLE_DISABLE_LOCAL_BRANCH_CHECK\fR): Allow Bundler to use a local git override without a branch specified in the Gemfile\.
|
185
182
|
.
|
186
183
|
.IP "\(bu" 4
|
184
|
+
\fBdisable_local_revision_check\fR (\fBBUNDLE_DISABLE_LOCAL_REVISION_CHECK\fR): Allow Bundler to use a local git override without checking if the revision present in the lockfile is present in the repository\.
|
185
|
+
.
|
186
|
+
.IP "\(bu" 4
|
187
187
|
\fBdisable_multisource\fR (\fBBUNDLE_DISABLE_MULTISOURCE\fR): When set, Gemfiles containing multiple sources will produce errors instead of warnings\. Use \fBbundle config unset disable_multisource\fR to unset\.
|
188
188
|
.
|
189
189
|
.IP "\(bu" 4
|
@@ -133,9 +133,6 @@ the environment variable `BUNDLE_LOCAL__RACK`.
|
|
133
133
|
The following is a list of all configuration keys and their purpose. You can
|
134
134
|
learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
135
135
|
|
136
|
-
* `allow_bundler_dependency_conflicts` (`BUNDLE_ALLOW_BUNDLER_DEPENDENCY_CONFLICTS`):
|
137
|
-
Allow resolving to specifications that have dependencies on `bundler` that
|
138
|
-
are incompatible with the running Bundler version.
|
139
136
|
* `allow_deployment_source_credential_changes` (`BUNDLE_ALLOW_DEPLOYMENT_SOURCE_CREDENTIAL_CHANGES`):
|
140
137
|
When in deployment mode, allow changing the credentials to a gem's source.
|
141
138
|
Ex: `https://some.host.com/gems/path/` -> `https://user_name:password@some.host.com/gems/path`
|
@@ -178,6 +175,9 @@ learn more about their operation in [bundle install(1)](bundle-install.1.html).
|
|
178
175
|
* `disable_local_branch_check` (`BUNDLE_DISABLE_LOCAL_BRANCH_CHECK`):
|
179
176
|
Allow Bundler to use a local git override without a branch specified in the
|
180
177
|
Gemfile.
|
178
|
+
* `disable_local_revision_check` (`BUNDLE_DISABLE_LOCAL_REVISION_CHECK`):
|
179
|
+
Allow Bundler to use a local git override without checking if the revision
|
180
|
+
present in the lockfile is present in the repository.
|
181
181
|
* `disable_multisource` (`BUNDLE_DISABLE_MULTISOURCE`):
|
182
182
|
When set, Gemfiles containing multiple sources will produce errors
|
183
183
|
instead of warnings.
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-INFO" "1" "
|
4
|
+
.TH "BUNDLE\-INFO" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-info\fR \- Show information for the given gem in your bundle
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-INIT" "1" "
|
4
|
+
.TH "BUNDLE\-INIT" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-init\fR \- Generates a Gemfile into the current working directory
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-INJECT" "1" "
|
4
|
+
.TH "BUNDLE\-INJECT" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-inject\fR \- Add named gem(s) with version requirements to Gemfile
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-INSTALL" "1" "
|
4
|
+
.TH "BUNDLE\-INSTALL" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-install\fR \- Install the dependencies specified in your Gemfile
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-OPEN" "1" "
|
4
|
+
.TH "BUNDLE\-OPEN" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-OUTDATED" "1" "
|
4
|
+
.TH "BUNDLE\-OUTDATED" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-outdated\fR \- List installed gems with newer versions available
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-PLATFORM" "1" "
|
4
|
+
.TH "BUNDLE\-PLATFORM" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-platform\fR \- Displays platform compatibility information
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-PRISTINE" "1" "
|
4
|
+
.TH "BUNDLE\-PRISTINE" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-pristine\fR \- Restores installed gems to their pristine condition
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-SHOW" "1" "
|
4
|
+
.TH "BUNDLE\-SHOW" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-show\fR \- Shows all the gems in your bundle, or the path to a gem
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-UPDATE" "1" "
|
4
|
+
.TH "BUNDLE\-UPDATE" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-update\fR \- Update your gems to the latest available versions
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "BUNDLE\-VIZ" "1" "
|
4
|
+
.TH "BUNDLE\-VIZ" "1" "January 2021" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
|
data/lib/bundler/man/bundle.1
CHANGED
data/lib/bundler/man/gemfile.5
CHANGED
data/lib/bundler/resolver.rb
CHANGED
@@ -37,7 +37,6 @@ module Bundler
|
|
37
37
|
additional_base_requirements.each {|d| @base_dg.add_vertex(d.name, d) }
|
38
38
|
@platforms = platforms
|
39
39
|
@gem_version_promoter = gem_version_promoter
|
40
|
-
@allow_bundler_dependency_conflicts = Bundler.feature_flag.allow_bundler_dependency_conflicts?
|
41
40
|
@use_gvp = Bundler.feature_flag.use_gem_version_promoter_for_major_updates? || !@gem_version_promoter.major?
|
42
41
|
@lockfile_uses_separate_rubygems_sources = Bundler.feature_flag.disable_multisource?
|
43
42
|
end
|
@@ -138,7 +137,6 @@ module Bundler
|
|
138
137
|
nested.reduce([]) do |groups, (version, specs)|
|
139
138
|
next groups if locked_requirement && !locked_requirement.satisfied_by?(version)
|
140
139
|
spec_group = SpecGroup.new(specs)
|
141
|
-
spec_group.ignores_bundler_dependencies = @allow_bundler_dependency_conflicts
|
142
140
|
groups << spec_group
|
143
141
|
end
|
144
142
|
else
|
@@ -165,10 +163,7 @@ module Bundler
|
|
165
163
|
sg_ruby = sg.copy_for([Gem::Platform::RUBY])
|
166
164
|
next unless sg_ruby
|
167
165
|
|
168
|
-
|
169
|
-
sg_all_platforms_deps = sg_all_platforms.dependencies_for_activated_platforms.map(&:dep)
|
170
|
-
|
171
|
-
selected_sgs.insert(-2, sg_ruby) if sg_ruby_deps != sg_all_platforms_deps
|
166
|
+
selected_sgs.insert(-2, sg_ruby)
|
172
167
|
end
|
173
168
|
selected_sgs
|
174
169
|
end
|
@@ -211,6 +206,10 @@ module Bundler
|
|
211
206
|
requirement.matches_spec?(spec) || spec.source.is_a?(Source::Gemspec)
|
212
207
|
end
|
213
208
|
|
209
|
+
def dependencies_equal?(dependencies, other_dependencies)
|
210
|
+
dependencies.map(&:dep) == other_dependencies.map(&:dep)
|
211
|
+
end
|
212
|
+
|
214
213
|
def relevant_sources_for_vertex(vertex)
|
215
214
|
if vertex.root?
|
216
215
|
[@source_requirements[vertex.name]]
|
@@ -329,10 +328,16 @@ module Bundler
|
|
329
328
|
def version_conflict_message(e)
|
330
329
|
# only show essential conflicts, if possible
|
331
330
|
conflicts = e.conflicts.dup
|
332
|
-
|
333
|
-
|
334
|
-
|
331
|
+
|
332
|
+
if conflicts["bundler"]
|
333
|
+
conflicts.replace("bundler" => conflicts["bundler"])
|
334
|
+
else
|
335
|
+
conflicts.delete_if do |_name, conflict|
|
336
|
+
deps = conflict.requirement_trees.map(&:last).flatten(1)
|
337
|
+
!Bundler::VersionRanges.empty?(*Bundler::VersionRanges.for_many(deps.map(&:requirement)))
|
338
|
+
end
|
335
339
|
end
|
340
|
+
|
336
341
|
e = Molinillo::VersionConflict.new(conflicts, e.specification_provider) unless conflicts.empty?
|
337
342
|
|
338
343
|
solver_name = "Bundler"
|
@@ -360,15 +365,25 @@ module Bundler
|
|
360
365
|
:additional_message_for_conflict => lambda do |o, name, conflict|
|
361
366
|
if name == "bundler"
|
362
367
|
o << %(\n Current Bundler version:\n bundler (#{Bundler::VERSION}))
|
363
|
-
other_bundler_required = !conflict.requirement.requirement.satisfied_by?(Gem::Version.new(Bundler::VERSION))
|
364
|
-
end
|
365
368
|
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
369
|
+
conflict_dependency = conflict.requirement
|
370
|
+
conflict_requirement = conflict_dependency.requirement
|
371
|
+
other_bundler_required = !conflict_requirement.satisfied_by?(Gem::Version.new(Bundler::VERSION))
|
372
|
+
|
373
|
+
if other_bundler_required
|
374
|
+
o << "\n\n"
|
375
|
+
|
376
|
+
candidate_specs = @source_requirements[:default_bundler].specs.search(conflict_dependency)
|
377
|
+
if candidate_specs.any?
|
378
|
+
target_version = candidate_specs.last.version
|
379
|
+
new_command = [File.basename($PROGRAM_NAME), "_#{target_version}_", *ARGV].join(" ")
|
380
|
+
o << "Your bundle requires a different version of Bundler than the one you're running.\n"
|
381
|
+
o << "Install the necessary version with `gem install bundler:#{target_version}` and rerun bundler using `#{new_command}`\n"
|
382
|
+
else
|
383
|
+
o << "Your bundle requires a different version of Bundler than the one you're running, and that version could not be found.\n"
|
384
|
+
end
|
385
|
+
end
|
386
|
+
elsif conflict.locked_requirement
|
372
387
|
o << "\n"
|
373
388
|
o << %(Running `bundle update` will rebuild your snapshot from scratch, using only\n)
|
374
389
|
o << %(the gems in your Gemfile, which may resolve the conflict.\n)
|
@@ -6,7 +6,7 @@ module Bundler
|
|
6
6
|
include GemHelpers
|
7
7
|
|
8
8
|
attr_accessor :name, :version, :source
|
9
|
-
attr_accessor :
|
9
|
+
attr_accessor :activated_platforms
|
10
10
|
|
11
11
|
def initialize(all_specs)
|
12
12
|
@all_specs = all_specs
|
@@ -20,7 +20,6 @@ module Bundler
|
|
20
20
|
@specs = Hash.new do |specs, platform|
|
21
21
|
specs[platform] = select_best_platform_match(all_specs, platform)
|
22
22
|
end
|
23
|
-
@ignores_bundler_dependencies = true
|
24
23
|
end
|
25
24
|
|
26
25
|
def to_specs
|
@@ -41,7 +40,6 @@ module Bundler
|
|
41
40
|
return unless platforms.any?
|
42
41
|
|
43
42
|
copied_sg = self.class.new(@all_specs)
|
44
|
-
copied_sg.ignores_bundler_dependencies = @ignores_bundler_dependencies
|
45
43
|
copied_sg.activated_platforms = platforms
|
46
44
|
copied_sg
|
47
45
|
end
|
@@ -98,7 +96,6 @@ module Bundler
|
|
98
96
|
if spec = specs.first
|
99
97
|
spec.dependencies.each do |dep|
|
100
98
|
next if dep.type == :development
|
101
|
-
next if @ignores_bundler_dependencies && dep.name == "bundler".freeze
|
102
99
|
dependencies[platform] << DepProxy.get_proxy(dep, platform)
|
103
100
|
end
|
104
101
|
end
|
data/lib/bundler/settings.rb
CHANGED
@@ -7,7 +7,6 @@ module Bundler
|
|
7
7
|
autoload :Validator, File.expand_path("settings/validator", __dir__)
|
8
8
|
|
9
9
|
BOOL_KEYS = %w[
|
10
|
-
allow_bundler_dependency_conflicts
|
11
10
|
allow_deployment_source_credential_changes
|
12
11
|
allow_offline_install
|
13
12
|
auto_clean_without_path
|
@@ -20,6 +19,7 @@ module Bundler
|
|
20
19
|
disable_checksum_validation
|
21
20
|
disable_exec_load
|
22
21
|
disable_local_branch_check
|
22
|
+
disable_local_revision_check
|
23
23
|
disable_multisource
|
24
24
|
disable_shared_gems
|
25
25
|
disable_version_check
|
data/lib/bundler/source/git.rb
CHANGED
@@ -148,7 +148,7 @@ module Bundler
|
|
148
148
|
|
149
149
|
changed = cached_revision && cached_revision != git_proxy.revision
|
150
150
|
|
151
|
-
if changed && !@unlocked && !git_proxy.contains?(cached_revision)
|
151
|
+
if !Bundler.settings[:disable_local_revision_check] && changed && !@unlocked && !git_proxy.contains?(cached_revision)
|
152
152
|
raise GitError, "The Gemfile lock is pointing to revision #{shortref_for_display(cached_revision)} " \
|
153
153
|
"but the current branch in your local override for #{name} does not contain such commit. " \
|
154
154
|
"Please make sure your branch is up to date."
|
@@ -353,7 +353,6 @@ module Bundler
|
|
353
353
|
def installed_specs
|
354
354
|
@installed_specs ||= Index.build do |idx|
|
355
355
|
Bundler.rubygems.all_specs.reverse_each do |spec|
|
356
|
-
next if spec.name == "bundler"
|
357
356
|
spec.source = self
|
358
357
|
if Bundler.rubygems.spec_missing_extensions?(spec, false)
|
359
358
|
Bundler.ui.debug "Source #{self} is ignoring #{spec} because it is missing extensions"
|
@@ -26,6 +26,13 @@ module Bundler::Molinillo
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
+
# (see Bundler::Molinillo::SpecificationProvider#dependencies_equal?)
|
30
|
+
def dependencies_equal?(dependencies, other_dependencies)
|
31
|
+
with_no_such_dependency_error_handling do
|
32
|
+
specification_provider.dependencies_equal?(dependencies, other_dependencies)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
29
36
|
# (see Bundler::Molinillo::SpecificationProvider#name_for)
|
30
37
|
def name_for(dependency)
|
31
38
|
with_no_such_dependency_error_handling do
|
@@ -121,7 +121,7 @@ module Bundler::Molinillo
|
|
121
121
|
t = ''.dup
|
122
122
|
depth = 2
|
123
123
|
tree.each do |req|
|
124
|
-
t << ' ' * depth << req
|
124
|
+
t << ' ' * depth << printable_requirement.call(req)
|
125
125
|
unless tree.last == req
|
126
126
|
if spec = conflict.activated_by_name[name_for(req)]
|
127
127
|
t << %( was resolved to #{version_for_spec.call(spec)}, which)
|
@@ -45,6 +45,17 @@ module Bundler::Molinillo
|
|
45
45
|
true
|
46
46
|
end
|
47
47
|
|
48
|
+
# Determines whether two arrays of dependencies are equal, and thus can be
|
49
|
+
# grouped.
|
50
|
+
#
|
51
|
+
# @param [Array<Object>] dependencies
|
52
|
+
# @param [Array<Object>] other_dependencies
|
53
|
+
# @return [Boolean] whether `dependencies` and `other_dependencies` should
|
54
|
+
# be considered equal.
|
55
|
+
def dependencies_equal?(dependencies, other_dependencies)
|
56
|
+
dependencies == other_dependencies
|
57
|
+
end
|
58
|
+
|
48
59
|
# Returns the name for the given `dependency`.
|
49
60
|
# @note This method should be 'pure', i.e. the return value should depend
|
50
61
|
# only on the `dependency` parameter.
|
@@ -807,7 +807,7 @@ module Bundler::Molinillo
|
|
807
807
|
|
808
808
|
possibilities.reverse_each do |possibility|
|
809
809
|
dependencies = dependencies_for(possibility)
|
810
|
-
if current_possibility_set && current_possibility_set.dependencies
|
810
|
+
if current_possibility_set && dependencies_equal?(current_possibility_set.dependencies, dependencies)
|
811
811
|
current_possibility_set.possibilities.unshift(possibility)
|
812
812
|
else
|
813
813
|
possibility_sets.unshift(PossibilitySet.new(dependencies, [possibility]))
|
data/lib/bundler/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bundler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- André Arko
|
@@ -22,7 +22,7 @@ authors:
|
|
22
22
|
autorequire:
|
23
23
|
bindir: exe
|
24
24
|
cert_chain: []
|
25
|
-
date: 2021-01-
|
25
|
+
date: 2021-01-27 00:00:00.000000000 Z
|
26
26
|
dependencies: []
|
27
27
|
description: Bundler manages an application's dependencies through its entire life,
|
28
28
|
across many machines, systematically and repeatably
|
@@ -351,7 +351,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
351
351
|
- !ruby/object:Gem::Version
|
352
352
|
version: 2.5.2
|
353
353
|
requirements: []
|
354
|
-
rubygems_version: 3.
|
354
|
+
rubygems_version: 3.2.7
|
355
355
|
signing_key:
|
356
356
|
specification_version: 4
|
357
357
|
summary: The best way to manage your application's dependencies
|