======================= Wednesday, May 14, 2014 ======================= Tried to solve :srcref:`docs/tickets/97`. A real solution would require changes in `store.py` and `elems.py`, take much more time than I currently have and would bring unstability. I finally ended up by simply extending the workaround: the `GFK_HACK` regular expression used by :class:`lino.utils.instantiator.GenericForeignKeyConverter` didn't work when the value had been rendered by a request with a known requesting panel. The "Manage addresses" button is cool, but (1) it should be next to the address, not after the `eid_info`. And (2) we want it for every site where :mod:`lino.modlib.addresses` is installed. So I moved this code from :mod:`lino_welfare.modlib.pcsw` to :mod:`lino.modlib.contacts`. The test suite had some minor failures. Deleting a primary address now will clear the address fields of the partner. First session with Taavi ------------------------ Getting Lino development version to run on Windows. - The first thing he did was :ref:`lino.dev.install`. Main difficulties where pip itself, pycrypto and pylibtidy. The latter produced an `OSError: Could not libtidy using any of these names: libtidy,libtidy.so,libtidy-0.99.so.0,cygtidy-0-99-0,tidylib,libtidy.dylib,tidy` traceback. - The Lino test suite then failed because :class:`atelier.utils.SubProcessParent` had ``from __future__ import unicode_literals``, which caused a traceback ``TypeError: environment can only contain strings`` in the Python :mod:`subprocess` module. - Updated :ref:`lino.tutorial.polls`. - :mod:`lino.modlib.humanlinks` requires :class:`ml.contacts.Person` to be :class:`lino.mixins.human.Born`. But it wasn't. Because at some moment I thought that the default :class:`ml.contacts.Person` should be minimal. But meanwhile I'd say that indeed most contact managers have a birth date for their persons. - Taavi's first Lino application will have 3 models: Song, Concert and Performance Continued on :srcref:`docs/tickets/93` ----------------------------------------- - The DELETE key failed to invoke the DeleteSelected action (after converting this to a customizable action). Now it works again. And Lino is now able for the first time to handle custom hotkey definitions using :meth:`Lino.GridPanel.handle_key_event`. The system is not yet stable and cannot yet handle modifiers, but I am glad that a beginning is finally there. - The IBAN number of a :class:`ml.sepa.Account` was indeed not validated. Simply because I forgot to call :func:`super` in its :meth:`dd.Model.full_clean` method.