Modify

Opened 2 years ago

Closed 2 years ago

Last modified 7 months ago

#10126 closed defect (fixed)

dynfields.html produce Genshi UnicodeDecodeError with localized ticket type

Reported by: bsavelev Owned by: robguttman
Priority: normal Component: DynamicFieldsPlugin
Severity: normal Keywords: patch UnicodeDecodeError
Cc: Trac Release: 0.12

Description

Hello!
I use trac 0.12 and TracDynamicFields-1.2.3-py2.6 from latest svn/0.11

I have 2 ticket type in ru_RU.utf-8 locale:

задача
записка

When trac try to render dynfields.html its generate http 500 error with 'Genshi UnicodeDecodeError exception'

Attachments (0)

Change History (10)

comment:1 Changed 2 years ago by bsavelev

ticket-custom

[ticket-custom]
due_date = text
due_date.date = true
due_date.date_empty = true
due_date.label = Срок исполнения
due_date.show_when_type = задача
due_date.value =

comment:2 Changed 2 years ago by bsavelev

  • Trac Release changed from 0.11 to 0.12

comment:3 Changed 2 years ago by bsavelev

  • Keywords patch added
Index: rules.py
===================================================================
--- rules.py    (revision 11696)
+++ rules.py    (working copy)
@@ -229,6 +229,7 @@
         return None
     
     def update_spec(self, req, key, opts, spec):
+        from trac.util.text import to_unicode
         target = spec['target']
         trigger = spec['trigger']
         
@@ -237,7 +238,7 @@
         match = spec_re.match(key)
         if match:
             spec['op'] = match.groupdict()['op']
-            spec['trigger_value'] = opts[key]
+            spec['trigger_value'] = to_unicode(opts[key])
             spec['hide_always'] = \
                 str(self._is_always_hidden(req, key, opts, spec)).lower()
         else: # assume 'hide_always' or group rule

this patch works for me

comment:4 Changed 2 years ago by AdrianFritz

  • Keywords UnicodeDecodeError added

comment:5 Changed 2 years ago by robguttman

  • Status changed from new to assigned

bsavelev, thanks for these details and the patch. I will do some testing myself.

Question: is this unicode support sufficient for your needs or do you also need the internationalization support found in the (unmaintained) 0.12 branch of this plugin?

comment:6 Changed 2 years ago by bsavelev

thanks for plugin)

A: i18n is always good. I think the problem is not just me. it may relate to any who have non-ASCII types of tickets

comment:7 Changed 2 years ago by robguttman

(In [11699]) refs #10126: support unicode characters in trac.ini config.

comment:8 Changed 2 years ago by robguttman

  • Resolution set to fixed
  • Status changed from assigned to closed

This should be fixed now.

Parsing trac.ini directly to support case sensitivity (a fix I made last week) ended up breaking the unicode support that's built-in to Trac's config parser..

comment:9 Changed 16 months ago by rjollos

See also #10476 for a problem caused by [11655].

comment:10 Changed 7 months ago by rjollos

In 13650:

Bump version to 1.2.4. Refs #11378, #11118, #11523, #10126, #9605, #9986, #9996, #8971.

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.