diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2021-07-25 13:03:09 +0200 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2021-07-27 09:25:56 +0900 |
commit | 9ac89fe35e0ddbf28be436c275e1de5287e35c23 (patch) | |
tree | fc44743c51b27d712cc17e4b3d8678b89fff8b42 | |
parent | 24aca87def4944ebb6bf9e7173dd41920dc10e7a (diff) |
[rubygems/rubygems] The `--quiet` should still display warnings
The is the previous intentional behaviour until
https://github.com/rubygems/bundler/commit/ca0676cb1c638e0b9747ea8c18f28adf82cc01de.
In my opinion, that previous behaviour was better and should be
restored, because we want our users to always see warnings and fix them.
And the original issue that motivated the change is fixable by other
means, namely through `BUNDLE_SILENCE_ROOT_WARNING`, or through
`BUNDLE_SILENCE_DEPRECATIONS` in general. Finally, the --quiet option is
still documented as "only print errors and warnings".
So this PR essentially reverts
https://github.com/rubygems/bundler/commit/ca0676cb1c638e0b9747ea8c18f28adf82cc01de
for the above reasons.
https://github.com/rubygems/rubygems/commit/35f2254dfc
-rw-r--r-- | lib/bundler/cli/cache.rb | 2 | ||||
-rw-r--r-- | lib/bundler/cli/doctor.rb | 2 | ||||
-rw-r--r-- | lib/bundler/cli/install.rb | 2 | ||||
-rw-r--r-- | lib/bundler/cli/update.rb | 2 | ||||
-rw-r--r-- | spec/bundler/commands/install_spec.rb | 18 |
5 files changed, 20 insertions, 6 deletions
diff --git a/lib/bundler/cli/cache.rb b/lib/bundler/cli/cache.rb index 9cd6133879..c8698ed7e3 100644 --- a/lib/bundler/cli/cache.rb +++ b/lib/bundler/cli/cache.rb @@ -9,7 +9,7 @@ module Bundler end def run - Bundler.ui.level = "error" if options[:quiet] + Bundler.ui.level = "warn" if options[:quiet] Bundler.settings.set_command_option_if_given :path, options[:path] Bundler.settings.set_command_option_if_given :cache_path, options["cache-path"] diff --git a/lib/bundler/cli/doctor.rb b/lib/bundler/cli/doctor.rb index 959b1b5e04..c28997bc7d 100644 --- a/lib/bundler/cli/doctor.rb +++ b/lib/bundler/cli/doctor.rb @@ -61,7 +61,7 @@ module Bundler end def run - Bundler.ui.level = "error" if options[:quiet] + Bundler.ui.level = "warn" if options[:quiet] Bundler.settings.validate! check! diff --git a/lib/bundler/cli/install.rb b/lib/bundler/cli/install.rb index 5e39e2a36d..c86d8d31e3 100644 --- a/lib/bundler/cli/install.rb +++ b/lib/bundler/cli/install.rb @@ -8,7 +8,7 @@ module Bundler end def run - Bundler.ui.level = "error" if options[:quiet] + Bundler.ui.level = "warn" if options[:quiet] warn_if_root diff --git a/lib/bundler/cli/update.rb b/lib/bundler/cli/update.rb index cf6a5b26d3..1adcaef67c 100644 --- a/lib/bundler/cli/update.rb +++ b/lib/bundler/cli/update.rb @@ -9,7 +9,7 @@ module Bundler end def run - Bundler.ui.level = "error" if options[:quiet] + Bundler.ui.level = "warn" if options[:quiet] Plugin.gemfile_install(Bundler.default_gemfile) if Bundler.feature_flag.plugins? diff --git a/spec/bundler/commands/install_spec.rb b/spec/bundler/commands/install_spec.rb index 478ee9c38a..789fd9b5c0 100644 --- a/spec/bundler/commands/install_spec.rb +++ b/spec/bundler/commands/install_spec.rb @@ -585,7 +585,20 @@ RSpec.describe "bundle install with gem sources" do end describe "when requesting a quiet install via --quiet" do - it "should be quiet" do + it "should be quiet if there are no warnings" do + bundle "config set force_ruby_platform true" + + gemfile <<-G + source "#{file_uri_for(gem_repo1)}" + gem 'rack' + G + + bundle :install, :quiet => true + expect(out).to be_empty + expect(err).to be_empty + end + + it "should still display warnings and errors" do bundle "config set force_ruby_platform true" create_file("install_with_warning.rb", <<~RUBY) @@ -611,8 +624,9 @@ RSpec.describe "bundle install with gem sources" do G bundle :install, :quiet => true, :raise_on_error => false, :env => { "RUBYOPT" => "-r#{bundled_app("install_with_warning.rb")}" } + expect(out).to be_empty expect(err).to include("Could not find gem 'non-existing-gem'") - expect(err).not_to include("BOOOOO") + expect(err).to include("BOOOOO") end end |