This is the 2020 change log for The lino-book package. General information about how to read and maintain this document in Documenting changes.


Released to PyPI : lino lino-xl

Fix ImportError: cannot import name 'ZERO_DURATION' from 'lino.utils.quantities'


The has_open_movements choice to the observed_events parameter field of the lino_xl.lib.contacts.Partners table didn't work and was not tested. Fixed it and added test coverage in ledger: General accounting.


New method lino.core.tablerequest.TableRequest.gen_insert_button() is a generalized and no longer hackerish implementation of the hackerish solution used in the calview monthly view until now.

When the label of a table is None, the ExtJS front-end now suppresses the header of the grid panel (including the "open in own window" button). This is used by the slave tables in the detail layouts of the calendar views. But note that you cannot simply set label = None on the actor because that default value is overridden by the model's verbose_name_plural. So to get an actor without label you be more explicit and say:

def get_actor_label(cls):
    return None


Released to PyPI : react


New feature: every voucher model can now define its own workflow rules. This change required the workflow state field of vouchers to move from the Voucher model to the implementing MTI child models. This requires manual changes in the restore.py file when migrating existing data.


Released to PyPI : lino 20.1.1 and xl 20.1.4 (because amici, presto etc are failing on travis).


show_complexity_factors() no longer counts actions with no_params_window.


Fixed a bug that caused lino.core.choicelists.ChoiceList.preferred_width to be 4 for all choicelists. Wrote a new doctest utility lino.api.doctest.show_choicelists() so that application maintainers can easily cover these in their specs. Usage example is The apc demo project.


Released to PyPI : lino 20.1.0 and xl 20.1.3

Don't use get_head_lines for notify (Lino 26c8a9c11)

Fixed #3470 (Lino sets wrong booking direction in suggested bank statement item) and #3471 (Deleting a voucher item does not refresh the grid).

ItemsByVoucher now uses default display_mode for financial vouchers.

Fixed #3473 (eevat declaration doesn't generate movements). Added an exception "SumDeclarationField may not be payable" to avoid the pitfall.


Released lino-book 20.1.1 to make it installable via pip.

Changed the designation "Uploads" to "Upload files".


New plugin lino.modlib.publisher.

Changes in lino.modlib.notify.


Changes in lino_xl.lib.ledger and lino_xl.lib.vat. Fix booking direction of returnable VAT.

Done #3459 (Move calendar view from "cal" to a separate plugin lino_xl.lib.calview). One consequence for data migration: DailyPlannerRow has moved from cal to calview


The ShowInsert action now has a more specific help text.

lino_xl.lib.ledger.JournalsOverview has now display_mode "summary".

Released Lino Extensions Library 20.1.2.

More bugfixes in lino_xl.lib.eevat and lino_xl.lib.vat.


Released Lino Care 20.1.0 and The lino-book package 20.1.0 just to get the Travis CI builds green. Released Lino Extensions Library 20.1.1 for Lino Così.

More bugfixes in lino_xl.lib.eevat : Sales invoices to lino_xl.lib.eevat.VatRegimes.outside weren't handled correctly.


Released to PyPI : lino-react 20.1.0, lino-amici 20.1.0, XL 20.1.0