The duplicate action is again visible for every user, not only for experts (users having
Fix #3745 (Lino says "partner: cannot be null" when trying to create a person).
Released to PyPI :
Released to PyPI :
Auto-fill ref field using custom rule : The
ref field of a client in
Lino Avanti ("Legacy file number") can now automatically find the next
available reference number. The current solution is hard-coded and just enough
to satisfy the customer's requirement. Not yet sure whether it makes sense to
generalize this feature.
Fixed two exceptions caused by a calendar entry with an
auto_type but no
owner (which is a checkdata problem because this case doesn't occur
theoretically). The checkdata message "Has auto_type but no owner." is now
fixable, it fixes the problem by setting the auto_type to None in that case.
Released Lino Extensions Library to PyPI.
Release to PyPI : lino 20.7.3 (just removed three dependencies, no functional changes)
Release to PyPI : lino 20.7.4, atelier, getlino, xl, avanti, tera, presto (several subtle changes, see blog)
Released to PyPI : welfare, weleup and welcht
Released to PyPI : Lino and XL
Released to PyPI : avanti (should fix a failure in getlino test suite: Exception: Problem installing fixture '/home/lino/lino/lino_local/avanti1/env/repositories/xl/lino_xl/lib/uploads/fixtures/demo2.py': 'nathalie' : no such user)
Several bug fixes.
Released XL 20.7.1 to PyPi.
Added a new method
Fixed a bug in
AnswersByResponse that caused remarks to always be
stored next to the first question of a poll. Fixed a bug that made it impossible
to edit the "My remark" field in
LINO_CACHE_ROOT is set (e.g. on Travis CI), Lino forgot to
add the site configuration directory to its list of config dirs. Another
problem was that these "non-local site config dirs" (for example
lino_book.projects.apc when run on travis) must come before the plugin
Last changes in
MyExpiringUploads is now a
dashboard item. Two new settings
Lino has a new admin command
The item_vat option (whether we want to include VAT in the price of the items
of an invoice) no longer depends on the VAT regime but is configurable
as a new plugin attribute
Released lino, xl and cosi to PyPI.
Changes in the
lino_xl.lib.products.PriceRule model) require a database
event_type has been renamed to
fee has been renamed to
Fixed #3637 (can only concatenate str (not "__proxy__") to str).
(1) runs on the populated demo data (and no longer on an empty database created by the django test runner)
(2) checks several variants of test_urls
(3) tests them for each user (unless
lino.core.site.Site.user_model is None)
Released Lino 20.5.1 and XL 20.4.2. With several internal optimizations that caused the test suites of book, presto, amici and welfare to fail.
Lino no longer allows several transitions for a same target state. Every state
of a workflow can have at most one "transition" action for entering this state.
This change imposes more discipline for application developers when designing a
workflow definition. It has the advantage that you can now access the transition
of a given state in order to change its configuration. For example
Lino Presto uses this to change the
lino_xl.lib.cal.MarkEventTookPlace transition. Added a new attribute
lino.core.workflows.State.transition and a new exception "Tried to add
another transition to <state name>". The
demo project is an example of an application that had to be adapted to this new
Added a new observable date range
Released Lino 20.4.1 and XL 20.4.2.
Released to PyPI : lino lino-xl
Fix ImportError: cannot import name 'ZERO_DURATION' from 'lino.utils.quantities'
has_open_movements choice to the
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.
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:
@classmethod def get_actor_label(cls): return None
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).
Fixed a bug that caused
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)
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".
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 : Sales invoices to
lino_xl.lib.eevat.VatRegimes.outside weren't handled correctly.