Wednesday, August 3, 2016¶
What happens with Lino when Luc dies?¶
I opened #1095, a rather administrative ticket. The goal is to formulate an answer to the often-heard question “What happens with Lino when Luc dies?”. (No I don’t plan to die soon, but we all know that I will do it sooner or later, and we all want a Lino which is able to live without me).
Yesterday I had a chat with Alexa which confirmed the urgence of this ticket, and less than a few hours later Hamza Khchine for the first time pushed commits directly to the lino and book repositories.
I continued that direction and transferred GitHub ownership of the following repos from lsaffre to lino-framework (where Hamza Khchine has the same permissions as I):
I also renamed “lino-cosi” to “cosi”, “lino-welfare” to “welfare” and “lino-extjs6” to “extjs6”.
I changed the title of lino-framework from “Lino Framework” to “The Lino Core Team”.
I started a new document “Setting up your work environment” (now part of Run the Lino test suite) and updated some documentation pages in the community section.
I also finally wrote a Confidentiality Agreement. Thanks to IPWatchdog for providing a free sample. Such an agreement is needed if Rumma & Ko wants to grant individual freelancers access to production sites where confidential customer data is being hosted.
Setting up a work environment¶
I created a new virtualenv “lino” on my machine and tried the things I wrote in Run the Lino test suite. I did some changes:
removed ‘appy==0.9.3’ from install_requires in Lino (appy is required by XL, and the version restriction is no longer necessary.
removed ‘fuzzy’ from install_requires in XL
moved lino.modlib.print_pisa to lino_xl.lib.pisa
removed lino.utils.appy_pod
added metaphone to install_requires in Welfare (Hamza, why did you use some other repository in requirements.txt which had some warning when I tried to install it?)
adapted welfare/docs/specs/dupable_clients.rst because the phonetic words are slightly changed (but look okay).
One test in lino_book/docs/specs/dumps.rst was a little problematic because it failed with every little version change of some dependency. And of course it would never pass on both Python 2 & 3 at the same time. So I just changed
pm dump2py
so that it does no longer write thislino.core.site.Site.using_text()
string as a comment of the dump files.
I wrote a bash script install_dev_projects.sh
which I placed
in my ~/repositories
directory:
#!/bin/bash
set -e # exit on error
pip install -e atelier
pip install -e lino
pip install -e cd
pip install -e ee
pip install -e be
pip install -e eg
pip install -e xl
pip install -e noi
pip install -e cosi
pip install -e presto
pip install -e welfare
pip install -e patrols
pip install -e logos
pip install -e voga
This makes it easy to create a virgin virtualenv and test whether the installation works.
I adapted the setup.py
of some projects
I stopped to run the test suites under Py3 when I had the following in Lino Extensions Library:
from appy.pod.renderer import Renderer
File "/media/dell1tb/virtualenvs/lino3/lib/python3.5/site-packages/appy/__init__.py", line 126
print '%d method(s) patched from %s to %s (%s)' % \
Which shows that appy is not yet usable under Python 3. We should talk with Gaetan (author of appy) about who should do the work of porting it…