diff --git a/lib/rubygems/commands/cleanup_command.rb b/lib/rubygems/commands/cleanup_command.rb index 996733cef7..9c38b30657 100644 --- a/lib/rubygems/commands/cleanup_command.rb +++ b/lib/rubygems/commands/cleanup_command.rb @@ -15,6 +15,12 @@ class Gem::Commands::CleanupCommand < Gem::Command options[:dryrun] = true end + add_option('-n', '-d', '--dryrun', + 'Do not uninstall gems') do |value, options| + options[:dryrun] = true + end + deprecate_option('--dryrun', extra_msg: 'Use --dry-run instead') + add_option('-D', '--[no-]check-development', 'Check development dependencies while uninstalling', '(default: true)') do |value, options| @@ -41,7 +47,7 @@ class Gem::Commands::CleanupCommand < Gem::Command end def defaults_str # :nodoc: - "--no-dryrun" + "--no-dry-run" end def description # :nodoc: diff --git a/test/rubygems/test_gem_commands_cleanup_command.rb b/test/rubygems/test_gem_commands_cleanup_command.rb index 47d953d4dd..81f9a24db5 100644 --- a/test/rubygems/test_gem_commands_cleanup_command.rb +++ b/test/rubygems/test_gem_commands_cleanup_command.rb @@ -26,6 +26,17 @@ class TestGemCommandsCleanupCommand < Gem::TestCase assert @cmd.options[:dryrun] end + def test_handle_options_deprecated_dry_run + use_ui @ui do + @cmd.handle_options %w[--dryrun] + assert @cmd.options[:dryrun] + end + + assert_equal \ + "WARNING: The \"--dryrun\" option has been deprecated and will be removed in future versions of Rubygems. Use --dry-run instead\n", + @ui.error + end + def test_handle_options_n @cmd.handle_options %w[-n] assert @cmd.options[:dryrun]