Friday, December 5, 2014

My decision where to place our new table OrphanedControllables (combined with our ticket docs/tickets/134) took some more time and caused some avalanches.

It is now called “Stale Controllables” (yet to translate).

north has passed away! Requiescat in pace! Everything that was in North is now integrated into Lino.

Moved BabelNamed, LanguageField, BabelCharField and BabelTextField to a new package lino.utils.mldbc.

Controllable is no longer in lino.modlib.mixins but in a new module lino.modlib.contenttypes (which extends django.contrib.contenttypes. system.HelpText is now contenttypes.HelpText.

API change: Applications who yield django.contrib.contenttypes in their lino.core.site.Site.get_installed_apps() should replace this by lino.modlib.contenttypes.

There are at least two problems with the new lino.modlib.contenttypes module:

  • we don’t have Django’s translation strings for django.contrib.contenttypes. Extending a non-Lino pure Django app is maybe a bit hackerish.
  • The Django trick of testing if M._meta.installed does not work as expected for models whose plugin has been overridden. So Lino applications should avoid to use this and should use dd.Site.is_installed() instead.

Checkin at 20:40 because the test suite passes. But I think that this weekend I might also be going to merge djangosite into Lino …