зеркало из https://github.com/github/ruby.git
[rubygems/rubygems] Replace StandardError with Exception
We think it's unlikely that `rubygems/defaults/operating_system` could be shipped with a SyntaxError so StandardError could be better choice to prevent "false positives" errors. https://github.com/rubygems/rubygems/commit/1f73e784dd
This commit is contained in:
Родитель
34e073c0ca
Коммит
717ad64f41
|
@ -1332,7 +1332,7 @@ begin
|
|||
require 'rubygems/defaults/operating_system'
|
||||
rescue LoadError
|
||||
# Ignored
|
||||
rescue Exception => e
|
||||
rescue StandardError => e
|
||||
msg = "#{e.message}\n" \
|
||||
"Loading the rubygems/defaults/operating_system.rb file caused an error. " \
|
||||
"This file is owned by your OS, not by rubygems upstream. " \
|
||||
|
|
|
@ -10,12 +10,12 @@ class GemTest < Gem::TestCase
|
|||
pend "does not apply to truffleruby" if RUBY_ENGINE == 'truffleruby'
|
||||
|
||||
path = util_install_operating_system_rb <<-RUBY
|
||||
intentional synt'ax error
|
||||
intentionally_not_implemented_method
|
||||
RUBY
|
||||
|
||||
output = Gem::Util.popen(*ruby_with_rubygems_and_fake_operating_system_in_load_path(path), '-e', "'require \"rubygems\"'", {:err => [:child, :out]}).strip
|
||||
assert !$?.success?
|
||||
assert_includes output, "unterminated string meets end of file (SyntaxError)"
|
||||
assert_includes output, "undefined local variable or method `intentionally_not_implemented_method'"
|
||||
assert_includes output, "Loading the rubygems/defaults/operating_system.rb file caused an error. " \
|
||||
"This file is owned by your OS, not by rubygems upstream. " \
|
||||
"Please find out which OS package this file belongs to and follow the guidelines from your OS to report " \
|
||||
|
|
Загрузка…
Ссылка в новой задаче