diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rubygems.rb | 6 | ||||
-rw-r--r-- | lib/rubygems/commands/update_command.rb | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/lib/rubygems.rb b/lib/rubygems.rb index c018492150..d24c07d55a 100644 --- a/lib/rubygems.rb +++ b/lib/rubygems.rb @@ -1188,6 +1188,12 @@ An Array (#{env.inspect}) was passed in from #{caller[3]} class << self ## + # RubyGems distributors (like operating system package managers) can + # disable RubyGems update by setting this to error message printed to + # end-users on gem update --system instead of actual update. + attr_accessor :disable_system_update_message + + ## # Hash of loaded Gem::Specification keyed by name attr_reader :loaded_specs diff --git a/lib/rubygems/commands/update_command.rb b/lib/rubygems/commands/update_command.rb index ca407ee33e..052d9f9245 100644 --- a/lib/rubygems/commands/update_command.rb +++ b/lib/rubygems/commands/update_command.rb @@ -262,6 +262,11 @@ command to remove old versions. # Update RubyGems software to the latest version. def update_rubygems + if Gem.disable_system_update_message + alert_error Gem.disable_system_update_message + return + end + check_update_arguments version, requirement = rubygems_target_version |