1 [[!template id=gitbranch branch=chrysn/more-proxy-utf8-fail author="[[chrysn]]"]]
3 the recently introduced fixes for [[crashes in the python proxy even if disabled]]
4 caused the typical python2 implicit conversion failures ("'ascii' codec
5 can't...") on my debian sid system -- to fix it, i had to revert commit 154c4ea9e.
7 i did not dig down all the way to the xml / xmlrpc modules, but my impression
8 is that some module changed its behavior between stable and sid and now
9 generates `unicode` strings instead of `str`.
11 a [[patch]] to allow both versions by inspecting the types and en-/decoding on
12 demand should work both for anarcat's and my case. i did not test the python3
13 version, but i'm pretty sure it was already broken after the abovementioned
18 > update 2014-06-29: the problem persists, but i found it is not trivial to
19 > reproduce. to demonstrate, use this test plugin:
21 > #!/usr/bin/env python
22 > # -*- coding: utf-8 -*-
24 > from proxy import IkiWikiProcedureProxy
26 > def preprocess(self, proxy, *args):
27 > return repr(self.rpc('pagetype', 'schön'))
29 > proxy = IkiWikiProcedureProxy(__name__)
30 > proxy.hook('preprocess', preprocess, id='testdirective')
33 > note that when the 'schön' is stored in a variable, the exception changes --
34 > it seems to me that the issue is related to the way exceptions are encoded.
36 > the suggested patch still applies and solves the issue. --[[chrysn]]