mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Remove the deprecated override of Kernel#open in open-uri
This was deprecated in 2.7 to resolve [Misc #15893].
This commit is contained in:
parent
3a4be429b5
commit
a73b5cc556
Notes:
git
2020-08-16 23:42:10 +09:00
2 changed files with 1 additions and 36 deletions
|
@ -3,27 +3,6 @@ require 'uri'
|
||||||
require 'stringio'
|
require 'stringio'
|
||||||
require 'time'
|
require 'time'
|
||||||
|
|
||||||
module Kernel
|
|
||||||
private
|
|
||||||
alias open_uri_original_open open # :nodoc:
|
|
||||||
class << self
|
|
||||||
alias open_uri_original_open open # :nodoc:
|
|
||||||
end
|
|
||||||
|
|
||||||
def open(name, *rest, **kw, &block) # :nodoc:
|
|
||||||
if (name.respond_to?(:open) && !name.respond_to?(:to_path)) ||
|
|
||||||
(name.respond_to?(:to_str) &&
|
|
||||||
%r{\A[A-Za-z][A-Za-z0-9+\-\.]*://} =~ name &&
|
|
||||||
(uri = URI.parse(name)).respond_to?(:open))
|
|
||||||
warn('calling URI.open via Kernel#open is deprecated, call URI.open directly or use URI#open', uplevel: 1)
|
|
||||||
URI.open(name, *rest, **kw, &block)
|
|
||||||
else
|
|
||||||
open_uri_original_open(name, *rest, **kw, &block)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
module_function :open
|
|
||||||
end
|
|
||||||
|
|
||||||
module URI
|
module URI
|
||||||
# Allows the opening of various resources including URIs.
|
# Allows the opening of various resources including URIs.
|
||||||
#
|
#
|
||||||
|
@ -49,9 +28,7 @@ module URI
|
||||||
(uri = URI.parse(name)).respond_to?(:open)
|
(uri = URI.parse(name)).respond_to?(:open)
|
||||||
uri.open(*rest, &block)
|
uri.open(*rest, &block)
|
||||||
else
|
else
|
||||||
open_uri_original_open(name, *rest, &block)
|
super
|
||||||
# After Kernel#open override is removed:
|
|
||||||
#super
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -68,18 +68,6 @@ class TestOpenURI < Test::Unit::TestCase
|
||||||
@proxies.each_with_index {|k, i| ENV[k] = @old_proxies[i] }
|
@proxies.each_with_index {|k, i| ENV[k] = @old_proxies[i] }
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_deprecated_kernel_open
|
|
||||||
with_http {|srv, dr, url|
|
|
||||||
srv.mount_proc("/foo200", lambda { |req, res| res.body = "foo200" } )
|
|
||||||
assert_warning(/calling URI.open via Kernel#open is deprecated, call URI.open directly/) {
|
|
||||||
open("#{url}/foo200") {|f|
|
|
||||||
assert_equal("200", f.status[0])
|
|
||||||
assert_equal("foo200", f.read)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_200_uri_open
|
def test_200_uri_open
|
||||||
with_http {|srv, dr, url|
|
with_http {|srv, dr, url|
|
||||||
srv.mount_proc("/urifoo200", lambda { |req, res| res.body = "urifoo200" } )
|
srv.mount_proc("/urifoo200", lambda { |req, res| res.body = "urifoo200" } )
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue