diff options
author | Samuel Giddins <segiddins@segiddins.me> | 2017-10-20 14:19:32 -0500 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-08-03 09:29:56 +0900 |
commit | d761a0f6ffd443b3440ac5144edcdd8054db9c7c (patch) | |
tree | dd14a3ed0a4733c8a074a3db6e97a520d714d88c | |
parent | 2ccb3db5fbd642f7e70c38aca946b2e010ce338b (diff) |
[bundler/bundler] [Package] Always resolve remotely for --all-platforms
https://github.com/bundler/bundler/commit/e45d2272ea
-rw-r--r-- | lib/bundler/installer.rb | 2 | ||||
-rw-r--r-- | spec/bundler/commands/package_spec.rb | 19 |
2 files changed, 20 insertions, 1 deletions
diff --git a/lib/bundler/installer.rb b/lib/bundler/installer.rb index 5bc53a8b61..700f0a4737 100644 --- a/lib/bundler/installer.rb +++ b/lib/bundler/installer.rb @@ -296,7 +296,7 @@ module Bundler # returns whether or not a re-resolve was needed def resolve_if_needed(options) - if !@definition.unlocking? && !options["force"] && !Bundler.settings[:inline] && Bundler.default_lockfile.file? + if !@definition.unlocking? && !options["force"] && !options["all-platforms"] && !Bundler.settings[:inline] && Bundler.default_lockfile.file? return false if @definition.nothing_changed? && !@definition.missing_specs? end diff --git a/spec/bundler/commands/package_spec.rb b/spec/bundler/commands/package_spec.rb index 6f6d78d697..c22569171a 100644 --- a/spec/bundler/commands/package_spec.rb +++ b/spec/bundler/commands/package_spec.rb @@ -203,6 +203,25 @@ RSpec.describe "bundle package" do bundle "package --all-platforms" expect(bundled_app("vendor/cache/rack-1.0.0.gem")).to exist end + + it "does not attempt to install gems in without groups" do + install_gemfile! <<-G, forgotten_command_line_options(:without => "wo") + source "file:#{gem_repo1}" + gem "rack" + group :wo do + gem "weakling" + end + G + + bundle! :package, "all-platforms" => true + expect(bundled_app("vendor/cache/weakling-0.0.3.gem")).to exist + expect(the_bundle).to include_gem "rack 1.0" + expect(the_bundle).not_to include_gem "weakling" + + bundle! :install, forgotten_command_line_options(:without => "wo") + expect(the_bundle).to include_gem "rack 1.0" + expect(the_bundle).not_to include_gem "weakling" + end end context "with --frozen" do |