libreoffice 4 and python 3http://www.315ok.org/blogfolder/libreoffice-4-and-python-3http://www.315ok.org/logo.png
libreoffice 4 and python 3
The problem is to be able, from a Python 2 process running POD, to talk to LibreOffice 4 which is based on Python3. There is a mode where POD forks a new Python process for talking to LibreOffice. This mode is enabled by using parameter "pythonWithUnoPath" when calling appy.pod.renderer.Renderer's constructor. If, for this parameter, you specify the absolute path to a Python-3-UNO-enabled Python interpreter, with Appy >= revision 548 it will work.
For example, with Ubuntu >= 13.10, the UNO-enabled Python-3 interpreter used by LibreOffice is /usr/bin/python3. So call the renderer with this param:
pythonWithUnoPath="/usr/bin/python3"
When the Python 2 process running POD will need to call LibreOffice, it will fork a Python 3 process that will execute script appy/pod/converter.py, that, for Appy >= revision 548, is the only part of the framework whose code currently works from Python2.4 to Python 3 included.
You will need to wait for upcoming Appy 0.9.0 to have this functionality in a published Appy version. I will publish it as soon as possible. In the meanwhile, get the Appy trunk from bazaar.