]> sipb.mit.edu Git - ikiwiki.git/blob - doc/bugs/rst_plugin_hangs_when_used_with_Python_3.mdwn
oops, wrong bug
[ikiwiki.git] / doc / bugs / rst_plugin_hangs_when_used_with_Python_3.mdwn
1 During ikiwiki make phase the rst process hangs:  
2 [ps output](http://dpaste.com/21TQQKT)  
3 [gdb backtrace 1](http://dpaste.com/0VQBW6D)   
4 [gdb backtrace 1](http://dpaste.com/1VHS88Y)  
5   
6 working with python 2.7  
7 [http://dpaste.com/0985A91](http://dpaste.com/0985A91)  
8 not working with python3.3~3.4  
9 [http://dpaste.com/0ACNK3W](http://dpaste.com/0ACNK3W)  
10   
11 > Retitled this bug report since it seems to be specific to Python 3.
12 >
13 > The `rst` plugin is probably more commonly used with Python 2.
14 > It seems likely that there is some Python-3-specific bug in `proxy.py`,
15 > perhaps introduced by [commit 154c4ea
16  "properly encode and decode from/to utf8 when sending rpc to ikiwiki"](
17 http://source.ikiwiki.branchable.com/?p=source.git;a=commitdiff;h=154c4ea9e65d033756330a7f8c5c0fa285380bf0).
18 >
19 > I can reproduce this on Debian by installing `python3-docutils`
20 > and changing the first line of `plugins/proxy.py`, the first
21 > line of `plugins/pythondemo`, the first line of `plugins/rst`
22 > and the `system()` call in `t/rst.t` to use `python3` instead
23 > of `python`. --[[smcv]]
24
25 looks like the problem is in proxy.py  
26 ml = _IkiWikiExtPluginXMLRPCHandler._read(in_fd).decode('utf8')  
27
28 without decode('utf8') is working
29
30 > That call was introduced
31 > [[to fix a bug under Python 2|bugs/crashes_in_the_python_proxy_even_if_disabled]]
32 > so it cannot just be removed, but perhaps it can be improved. This is
33 > probably related to
34 > [[this follow-up bug under Python 2|bugs/pythonproxy-utf8_again]]. --smcv