From: naruse@... Date: 2014-12-29T07:48:28+00:00 Subject: [ruby-core:67199] [ruby-trunk - Bug #10669] [Rejected] Incorrect url parsing in 2.2.0 Issue #10669 has been updated by Yui NARUSE. Status changed from Open to Rejected RFC3986 reg-name allows "()". ---------------------------------------- Bug #10669: Incorrect url parsing in 2.2.0 https://bugs.ruby-lang.org/issues/10669#change-50677 * Author: Sam Saffron * Status: Rejected * Priority: Normal * Assignee: * Category: * Target version: * ruby -v: 2.2.0 * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN ---------------------------------------- Ruby 2.2 is incorrectly treating invalid URLs as correct due to parser change. Ruby 2.2.0 ``` irb(main):001:0> require 'uri' => true irb(main):002:0> URI.parse("http://hello.com()") => # irb(main):003:0> ``` Ruby 2.1 ``` require 'uri' => true irb(main):002:0> URI.parse("http://hello.com()") URI::InvalidURIError: the scheme http does not accept registry part: hello.com() (or bad hostname?) from /home/sam/.rbenv/versions/2.1.2.discourse/lib/ruby/2.1.0/uri/generic.rb:214:in `initialize' from /home/sam/.rbenv/versions/2.1.2.discourse/lib/ruby/2.1.0/uri/http.rb:84:in `initialize' from /home/sam/.rbenv/versions/2.1.2.discourse/lib/ruby/2.1.0/uri/common.rb:214:in `new' from /home/sam/.rbenv/versions/2.1.2.discourse/lib/ruby/2.1.0/uri/common.rb:214:in `parse' from /home/sam/.rbenv/versions/2.1.2.discourse/lib/ruby/2.1.0/uri/common.rb:747:in `parse' from (irb):2 from /home/sam/.rbenv/versions/2.1.2.discourse/bin/irb:11:in `
' ``` This is a breaking change. -- https://bugs.ruby-lang.org/