:date: 2017-09-25 ========================== Monday, September 25, 2017 ========================== Coverage and Atelier ==================== I continued to work in :ref:`atelier` for :ticket:`2074`. The default values for :envvar:`coverage_command` and :envvar:`prep_command` have changed and are now defined :mod:`atelier.invlib.ns` together with the others. I completely removed special handling of projects having a :xfile:`pytest.ini` file. One visible result is that the test coverage of atelier increased from 20% to 40% (under Python 3). Under Python 3, in :mod:`rstgen.sphinxconf.insert_input`, I had a TypeError :message:`a bytes-like object is required, not 'str'`. Had to do with the ``from io import BytesIO as StringIO`` in that module. It was about decoding the output of a subprocess... In :mod:`rstgen.sphinxconf.blog` I had:: WARNING: Inline emphasis start-string without end-string. but funnily only under Python 3. It took me some time to figure out that it was caused by:: from builtins import map It seems that the :func:`map` function has the following docstring under Python 3:: map(func, *iterables) –> map object I fixed the problem by just removing the import statement, together with similar lines for ``range`` and ``object``. I continue to not understan the purpose of these imports. Optimizations in :ref:`avanti` =============================== I checked in the code changes I did on Saturday. Users can now filter clients by coaching type. :class:`lino_xl.lib.coachings.Coachable` mixin. The :xfile:`presence_sheet.weasy.html` template didn't show the names. Fixed. And it now shows the state (and remark) of the :class:`lino_xl.lib.cal.Guest` object if such an object exists. If no Guest object exists, it continues to print eiterh X or blank based on the end_date and start_date of the enrolment. TODO: ATM this is still a single template used by both :ref:`avanti` and :ref:`voga`. Their usage is quite different though, and I guess that sooner or later we will need to split this template into two. The interesting question will then be how to keep as much as possible within a common base template. The :attr:`quick_search_fields` of :class:`lino_avanti.lib.avanti.Client` now includes the :attr:`ref` field. The detail window of :class:`lino_avanti.lib.courses.Enrolment` now also shows the data problem messages (i.e. :class:`lino.modlib.checkdata.MessagesByController` which now uses a summary panel and whose detail_layout I optimized). Documentation ============= I moved the docstrings from the :mod:`lino_xl.lib.coachings` module to the :ref:`specs.coachings` page. Lino surprised me once more: The help text of the :attr:`coaching_type ` field is indeed given in the :ref:`specs.coachings` page. release@avanti ============== I upgraded their production site because all items of :ticket:`2075` are done.