[DRE-maint] Bug#584331: libbuilder-ruby1.8: an external plugin for redmine is broken when xml.instruct (which calls to_xs in builder)

Alban Browaeys prahal at yahoo.com
Thu Jun 3 09:21:19 UTC 2010


Package: libbuilder-ruby1.8
Version: 2.1.2-2
Severity: normal
Tags: patch

 I have installed redminemylyn connector to find out (after much hurdle) that it failed due to 
/usr/lib/ruby/1.8/active_support/core_ext/string/xchar.rb 
defining to_xs as fast_xs (no arguments) and /usr/lib/ruby/1.8/builder/xchar.rb defining it with n escape argument.
Thus when redminemylyn plugin (server side of the connector) does xml.instruct! into the xml template it produces 
"ActionView::TemplateError (wrong number of arguments (1 for 0)) on line #1 of vendor/plugins/redmine_mylyn_connector/app/views/mylyn_connector/projects/all.rxml:"
 line 1 behing xml.instruct!
 I believe this could be a widespread issue as builder is used quite a lot as is xml.instruct!
 though the component I use "redmine mylyn" is not in debian so ...
I do not knwow what was the best course of action so I added a rescue with text.to_xs() ie without arguments in builder xmlbase.rb, ie:
--- /home/prahal/xmlbase.rb.orig  2010-06-03 11:18:38.000000000 +0200
+++ /home/prahal/xmlbase.rb.new	2010-06-03 11:18:53.000000000 +0200
@@ -131,7 +131,11 @@
       end
     else
       def _escape(text)
-        text.to_xs((@encoding != 'utf-8' or $KCODE != 'UTF8'))
+        begin
+   text.to_xs((@encoding != 'utf-8' or $KCODE != 'UTF8'))
+        rescue
+   text.to_xs()
+        end
       end
     end
 

Cheers
Alban


-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.33-2-686 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages libbuilder-ruby1.8 depends on:
ii  libruby1.8                   1.8.7.249-3 Libraries necessary to run Ruby 1.

libbuilder-ruby1.8 recommends no packages.

libbuilder-ruby1.8 suggests no packages.

-- no debconf information

-- debsums errors found:
debsums: changed file /usr/lib/ruby/1.8/builder/xmlbase.rb (from libbuilder-ruby1.8 package)
-------------- next part --------------
--- /home/prahal/xmlbase.rb.orig	2010-06-03 11:18:38.000000000 +0200
+++ /home/prahal/xmlbase.rb.new	2010-06-03 11:18:53.000000000 +0200
@@ -131,7 +131,11 @@
       end
     else
       def _escape(text)
-        text.to_xs((@encoding != 'utf-8' or $KCODE != 'UTF8'))
+        begin
+	  text.to_xs((@encoding != 'utf-8' or $KCODE != 'UTF8'))
+        rescue
+	  text.to_xs()
+        end
       end
     end
 


More information about the Pkg-ruby-extras-maintainers mailing list