diff options
author | Akinori MUSHA <knu@idaemons.org> | 2017-11-28 17:44:12 +0900 |
---|---|---|
committer | Akinori MUSHA <knu@idaemons.org> | 2019-01-31 23:42:03 +0900 |
commit | 545b6e5820fa933ff2918913e758c6ccc1a55dfe (patch) | |
tree | bccdb89151fb4b410c98e3aeead270ba86b301a0 /activesupport/lib/active_support | |
parent | 23125378673bcc606b274027666a126573e136f8 (diff) | |
download | rails-545b6e5820fa933ff2918913e758c6ccc1a55dfe.tar.gz rails-545b6e5820fa933ff2918913e758c6ccc1a55dfe.tar.bz2 rails-545b6e5820fa933ff2918913e758c6ccc1a55dfe.zip |
Remove the Kernel#` override that turns ENOENT into nil
ActiveSupport overrides `` Kernel#` `` so that it would not raise
`Errno::ENOENT` but return `nil` instead (due to the last statement
`STDERR.puts` returning nil) if a given command were not found.
Because of this, you cannot safely say somthing like
`` `command`.chomp `` when ActiveSupport is loaded.
It turns out that this is an outdated monkey patch for Windows
platforms to emulate Unix behavior on an ancient version of Ruby, and
it should be removed by now.
Diffstat (limited to 'activesupport/lib/active_support')
-rw-r--r-- | activesupport/lib/active_support/core_ext/kernel.rb | 1 | ||||
-rw-r--r-- | activesupport/lib/active_support/core_ext/kernel/agnostics.rb | 13 |
2 files changed, 0 insertions, 14 deletions
diff --git a/activesupport/lib/active_support/core_ext/kernel.rb b/activesupport/lib/active_support/core_ext/kernel.rb index 0f4356fbdd..7708069301 100644 --- a/activesupport/lib/active_support/core_ext/kernel.rb +++ b/activesupport/lib/active_support/core_ext/kernel.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -require "active_support/core_ext/kernel/agnostics" require "active_support/core_ext/kernel/concern" require "active_support/core_ext/kernel/reporting" require "active_support/core_ext/kernel/singleton_class" diff --git a/activesupport/lib/active_support/core_ext/kernel/agnostics.rb b/activesupport/lib/active_support/core_ext/kernel/agnostics.rb deleted file mode 100644 index 403b5f31f0..0000000000 --- a/activesupport/lib/active_support/core_ext/kernel/agnostics.rb +++ /dev/null @@ -1,13 +0,0 @@ -# frozen_string_literal: true - -class Object - # Makes backticks behave (somewhat more) similarly on all platforms. - # On win32 `nonexistent_command` raises Errno::ENOENT; on Unix, the - # spawned shell prints a message to stderr and sets $?. We emulate - # Unix on the former but not the latter. - def `(command) #:nodoc: - super - rescue Errno::ENOENT => e - STDERR.puts "#$0: #{e}" - end -end |