> > In r1126 [1] I've removed the use of to_unicode from adjust_value, it
> > should work all right since we are now using the CP decoding filter,
> > anyway if you (for example Max and Jorge that I think need this
> > feature) start experiencing problems we will just revert this change,
> > it's just an attempt to reduce monkeypatching here and there. ;-)
>
> I appreciate the idea but not the results. ;-)
The problem is that with the current setup there is no way it would work
without to_unicode kludge.
See, when I pass unicode string to field.display() it calls validator which
turns it into utf-8 string which then fails when Kid interprets it as ascii
string.
May be we should fix the validator to do nothing in from_python but I'm far
from sure. May be we should call adjust_value with convert=False whatever that
means to skip validator. May be you'd better just put to_unicode back. ;-)
One thing we should do for sure is to add a unit test which exercises
unicode-related behaviour. I added primitive test_unicode_input() testcase to
test_widgets.py. It passes with to_unicode() in-place and fails without.
Please put to_unicode() back and then look for better solution. ;-)
One pain with Kid is that once this encoded-string slips in and Kid fails it
gives incomprehensible error message. May be we should try to detect such
errors ourselves to at least fail in a meaningful way. I mean adding something
like this to adjust_value():
if isinstance(value, str):
try:
unicode(value)
except UnicodeDecodeError:
raise ValueError("Non-unicode string in %s: %r" % (self, value))
Max.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"TurboGears Trunk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/turbogears-trunk
-~----------~----~----~----~------~----~------~--~---