This project is archived and is in readonly mode.

ActiveSupport/parameterize incorrectly assumes you have set $KCODE='u'
Reported by Markús | March 21st, 2009 @ 11:55 AM | in 3.x
I'm developing a plugin which uses the AS method parameterize to create a url-like string. When I try to test the plugin, all tests result in the error undefined method ´normalize´ for ´whatever´:String. I'm using files created by script/generate plugin, so all should be correct, aside from the problem described by Ticket #1878.
Then I realize the problem was that active_support/multibyte wasn't being loaded for some reason. The reason is actually you have to set $KCODE = 'u' manually in your tests to force AS to load multibyte.
To reproduce de error, try to run this to simple scripts (I'm using ruby 1.8.7)
# Will fail with undefined method error
require 'rubygems'
require 'active_support'
puts "some random string".parameterize
# Will work
$KCODE = 'u'
require 'rubygems'
require 'active_support'
puts "some random string".parameterize
# => 'some-random-string'
I think this either an incorrect behavior of parameterize (it should skip 'normalize' if it's not defined) or an incorrect use of KCODE in active_support which I thought it was by default set to 'u' since the latter versions of Rails 1.x.
Comments and changes to this ticket
- 
         
- 
            
         Norman Clarke May 29th, 2010 @ 09:55 PM- Tag changed from 2.x, activesupport to 2.x, activesupport, invalid
 This is no longer the case after my recent changes to Inflector; normalizewas moved to the Unicode module and is invoked directly asUnicode.normalizerather than through the proxy as before.You can verify this by running the following code under 1.8.7 or 1.9.x: # encoding: utf-8 require "rubygems" # gem "activesupport", "3.0.0.beta3" require "active_support/inflector" p "olá mundo!".parameterize #=> "ola-mundo"
- 
         Rohit Arondekar July 28th, 2010 @ 10:26 AM- State changed from new to invalid
- Importance changed from  to 
 
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
<h2 style="font-size: 14px">Tickets have moved to Github</h2>
The new ticket tracker is available at <a href="https://github.com/rails/rails/issues">https://github.com/rails/rails/issues</a>
 Hector E. Gomez Morales
      Hector E. Gomez Morales
 Jeremy Kemper
      Jeremy Kemper
 Johannes Fahrenkrug
      Johannes Fahrenkrug
 Norman Clarke
      Norman Clarke
 Rohit Arondekar
      Rohit Arondekar