Package: rails
Version: 2.0.2-2
Severity: grave
Tags: patch
Justification: renders package unusable
Since I upgraded to ruby 1.8.7 from sid, my rails applications started
to break. The problem is that the core extension in activesupport in
2.0.x are not compatible with ruby 1.8.7.
To reproduce you can run the activesupport unit tests with ruby 1.8.7
installed.
I backported change f67b070facef6574df3c4386e3975242273fe456 from
upstream's git repo ("edge rails") to 2.0.2, and AFAICT everything works
now (e.g. activesupport unit tests all pass, and my applications work
again). Follows the patch attached.
Cheers,
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.25-2-686 (SMP w/1 CPU core)
Locale: LANG=pt_BR.utf8, LC_CTYPE=pt_BR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages rails depends on:
ii dpkg 1.14.19 package maintenance system for Deb
ii liberb-ruby 4.2 transitional dummy package
ii libpgsql-ruby1.8 0.7.9.2008.03.18-1 PostgreSQL interface for Ruby 1.8
ii libredcloth-ruby 3.0.99.0.svn.20060519-1 Textile module for Ruby 1.8
ii libruby [liberb- 4.2 Libraries necessary to run Ruby 1.
ii libruby1.8-extra 0.4 a bundle of additional libraries f
ii libsqlite3-ruby1 1.2.1-1 SQLite3 interface for Ruby 1.8
ii rake 0.8.1-3 a ruby build program
ii rdoc 4.2 Generate documentation from ruby s
ii ruby 4.2 An interpreter of object-oriented
ii ruby1.8 1.8.7-1 Interpreter of object-oriented scr
ii rubygems 1.1.1-1 package management framework for R
Versions of packages rails recommends:
ii irb 4.2 Interactive Ruby (irb)
ii libmocha-ruby1.8 0.5.6-1 Mocking and stubbing library for R
-- no debconf information
--
Antonio Terceiro <[EMAIL PROTECTED]>
http://people.softwarelivre.org/~terceiro/
GnuPG ID: 0F9CB28F
diff --git a/activesupport/lib/active_support/core_ext/string/unicode.rb b/activesupport/lib/active_support/core_ext/string/unicode.rb
index dd19fe5..844f7de 100644
--- a/activesupport/lib/active_support/core_ext/string/unicode.rb
+++ b/activesupport/lib/active_support/core_ext/string/unicode.rb
@@ -3,6 +3,12 @@ module ActiveSupport #:nodoc:
module String #:nodoc:
# Define methods for handling unicode data.
module Unicode
+ def self.included(base)
+ if '1.8.7'.respond_to?(:chars)
+ base.class_eval { remove_method :chars }
+ end
+ end
+
# +chars+ is a Unicode safe proxy for string methods. It creates and returns an instance of the
# ActiveSupport::Multibyte::Chars class which encapsulates the original string. A Unicode safe version of all
# the String methods are defined on this proxy class. Undefined methods are forwarded to String, so all of the