:date: 2018-12-26

============================
Wednesday, December 26, 2018
============================

Hamza worked on :ticket:`2765`. I tested it and updated the docs in
:ref:`lino.changes.2018` and :ref:`user.install`.

Yes, it installs, but when I create a sales invoice and try to print it, I get
a :message:`SyntaxError: invalid syntax (__init__.py, line 43)`. This is
because of a package pisa. I guess that we can remove this dependency since
pisa isn't used by any production site. Also https://pypi.org/project/pisa/
tells us to switch to xhtml2pdf, which in turn recommends to switch to
weasyprint.

The :mod:`lino_xl.lib.pisa` plugin was already deprecated earlier.
I deactivated the PisaBuildMethod in :mod:`lino.modlib.printing`.

The :mod:`lino.modlib.wkhtmltopdf` might get deprecated as well some day, but
the presence sheet in :mod:`lino_xl.lib.courses` still uses it.

I moved the dependencies for 'pisa' and 'django-wkhtmltopdf' from lino to book.

I removed appy as dependency from lino and updated :ref:`xl.specs.appypod` with
instructions for installing it manually.


Hamza and I found the explanation for :ticket:`2768`.
It was in :func:`lino.core.inject.collect_virtual_fields` :
If a model defines both a database field and a virtualfield of same name,
then the virtualfield must be ignored.