:date: 2016-08-06

========================
Saturday, August 6, 2016
========================

AttributeError: 'module' object has no attribute 'FFI'
======================================================

Ticket :ticket:`1119` (continued from yesterday). 
This morning I tried with an older version of cairocffi::

    $ pip install -U 'cairocffi<0.7'
    
VoilĂ ! Den seinen gibt es der Herr im Schlaf!

I shared this workaround on
https://github.com/SimonSapin/cairocffi/issues/62 and updated the
docstring of :mod:`lino.modlib.weasyprint`.


Lino looking for volunteers
===========================

This week Hamza and I worked a lot on optimizing the testing workflow
for Lino.  The :ref:`dev.testing` and :ref:`dev.runtests` pages need
to be updated to reflect what we learned.

As another answer to :ticket:`1095`, I would say that the
:ref:`dev.install` is good starting point for volunteer contributors
to join the core team.  I updated my email address on the
`VolunteerOpportunities
<https://wiki.python.org/moin/VolunteerOpportunities#Lino_application_developer>`__
page because it seems that :ticket:`854` is not yet solved.

Actually there are a few thing unclear in :ref:`book`: for example the
difference between Application Developers and Core Developers is not
clear.

It must become more clear about what the Core Team is. We have
**committers** (currently Hamza and I) and **newbies** (e.g. James,
Grigorij, Sandeep, Pierre). Rumma & Ko is ready to pay hourly rate to
*committers*, not to *newbies*. For newbies we offer free mentoring,
which is also a great thing. There should be clear information about
what a newbie needs to know in order to become a committer.

The :ref:`lino.dev` should focus on the things application developers
want to know: how to *use* Lino for writing their own application.
For the moment I would rather say that it is utopic to become an
independent Application Developer if you were not first member of the
Core Team. That's because the Lino API is not yet well enough
documented.

The :ref:`lino.team` should be for the core team, it should also talk
about the "supported applications" :ref:`noi`, :ref:`cosi`,
:ref:`voga`, :ref:`presto`, and (maybe) :ref:`welfare`.  Core
developers should know about these applications. Not as much as to
explain them to end-users, but they should be able to reproduce and
fix reported problems in these applications.
     
Prepayment invoices
===================

I worked for :ticket:`1059` and started to configure and test the new
`printed_text` field of `PaymentTerm`. Which immediately revealed a
first series of bugs:

The name :data:`E <lino.utils.xmlgen.html.E>` was not available in an
appy template, and the error reporting didn't work very well.

To be continued.