20130508 (Wednesday, 08 May 2013)

Schuldnerberatung

  • “Duplizieren ist total buggy” : zumindest in der momentanen Development-Version kriege ich keine Probleme reproduziert. Ich höre auf mit aktiver Suche und warte mal auf euer Feedback nach dem nächsten Release.
  • SiteConfig.master_budget (“Kopiervorlage für Budgets”)
  • Das Erstellen eines Budgets geht jetzt spürbar schneller, weil ich beim Kopieren jetzt select_related() und bulk_create() benutze.

Since bulk_create() doesn’t call full_clean and save(), it is possible to create invalid database rows. For example during my tests I had “Budget entry #%d has no account_type”. I am still experimenting with how to handle this. Here is a code draft for an “integrity test” that detects such cases:

>>> import os
>>> os.environ['DJANGO_SETTINGS_MODULE'] = 'lino_welfare.settings.demo'
>>> from lino.api.shell import *
>>> for model in (debts.Entry,):
...     for o in model.objects.all():
...         o.full_clean()

(Note: the above snippet os no longer tested with Lino, it has been copied to General overview of Lino Welfare)

Änderungen wurden nicht festgehalten

Ein Bug, den niemand bemerkt hatte: Lino-Welfare schrieb keinerlei lino.modlib.changes mehr. Behoben. djangosite sendet jetzt Signale pre_startup und post_startup statt einfach nur startup.

Dieser Bug fiel auf bei der Analyse des folgenden Problems, und die test cases in lino_welfare.tests.watchtim_tests decken jetzt auch diese Funktionalität grösstenteils ab.

Unerwünschte Neuzugänge

Ein Lauf mit tim2lino und watch_tim hatte ca 200 “Neuzugänge” geschaffen, die eigentlich gar keine waren. Subtile Änderungen in watchtim und der Dokumentation (watch_tim). Ausserdem akrybische unit tests in lino_welfare.tests.watchtim_tests.