Actions
Bug #19756
openURI::HTTP.build does not accept a host of `_gateway`, but `URI.parse` will.
Status:
Open
Assignee:
-
Target version:
-
ruby -v:
ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]
Description
I noticed a difference in behavior between URI::HTTP.build
and URI.parse
. URI::HTTP.build
will not accept host:
value of _gateway
, but URI.parse
will.
Steps To Reproduce¶
URI::HTTP.build(host: "_gateway")
vs.
URI.parse("http://_gateway")
Expected Results¶
Both raise the same exception, or return the same URI object.
Actual Results¶
URI::HTTP.build(host: "_gateway")
/usr/share/ruby/uri/generic.rb:601:in `check_host': bad component(expected host component): _gateway (URI::InvalidComponentError)
from /usr/share/ruby/uri/generic.rb:640:in `host='
from /usr/share/ruby/uri/generic.rb:673:in `hostname='
from /usr/share/ruby/uri/generic.rb:190:in `initialize'
from /usr/share/ruby/uri/generic.rb:136:in `new'
from /usr/share/ruby/uri/generic.rb:136:in `build'
from /usr/share/ruby/uri/http.rb:61:in `build'
from (irb):2:in `<main>'
from /usr/local/share/gems/gems/irb-1.7.0/exe/irb:9:in `<top (required)>'
from /usr/local/bin/irb:25:in `load'
from /usr/local/bin/irb:25:in `<main>'
URI.parse("https://_gateway")
# => #<URI::HTTPS https://_gateway>
Additional Information¶
$ gem list uri
uri (default: 0.12.1)
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0