Issue #9806 has been updated by Yusuke Endoh.


I'm unfamiliar with URI spec, but I guess RFC 2732 is related.

http://www.ietf.org/rfc/rfc2732.txt

> This document incudes an update to the generic syntax for Uniform
> Resource Identifiers defined in RFC 2396 [URL].  It defines a syntax
> for IPv6 addresses and allows the use of "[" and "]" within a URI
> explicitly for this reserved purpose.

-- 
Yusuke Endoh <mame / tsg.ne.jp>


----------------------------------------
Bug #9806: URI#encode doesn't encode characters '[' and ']'.  They should be encoded as %5B and %5D respectively.
https://bugs.ruby-lang.org/issues/9806#change-46661

* Author: Charles Leu
* Status: Open
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: 2.2.0 and prior versions as well
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
The subject says it all.

IRB session demonstrating the problem:
charlez$ irb
head :001 > RUBY_VERSION
 => "2.2.0"
head :002 > require 'uri'
 => true
head :003 > my_str = '[ futsal club ]'
 => "[ futsal club ]"
head :004 > URI.encode(my_str)
 => "[%20futsal%20club%20]"
head :005 >

Note: Testing using JavaScript function encodeURI('[ futsal club ]') produces "%5B%20futsal%20club%20%5D" which is the correct result.



-- 
https://bugs.ruby-lang.org/