From: "George M. Harkin" Date: 2010-12-18T00:07:16+09:00 Subject: [ruby-core:33760] [Ruby 1.9-Bug#4167][Open] URI.encode encodes reserved character of # Bug #4167: URI.encode encodes reserved character of # http://redmine.ruby-lang.org/issues/show/4167 Author: George M. Harkin Status: Open, Priority: Normal ruby -v: ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux] URI.encode's default behavior is to follow RFC 2732 [http://tools.ietf.org/html/rfc2732] which includes # in the list of characters to URI encode. The updated RFC 3896 [http://tools.ietf.org/html/rfc3986#section-2.2] includes # in the list of reserved characters. This bug is present in Ruby 1.8 too. Observed behavior: require 'uri' enc = URI.encode("http://google.com/moo?testo=true#anchor21") => "http://google.com/moo?testo=true%23anchor21" Expected behavior: require 'uri' enc = URI.encode("http://google.com/moo?testo=true#anchor21") => "http://google.com/moo?testo=true#anchor21" ---------------------------------------- http://redmine.ruby-lang.org