:date: 2019-07-12 ===================== Friday, July 12, 2019 ===================== About front ends and renderers ============================== I checked in my work on :ticket:`3110`. The test suite passes again. The data checker is still missing, but this is less urgent. The :attr:`lino.modlib.memo.Plugin.front_end` setting is now ready for beta testing on a site with two web front ends. We must sometimes produce absolute URIs (e.g. when parsing a notification message to an email), and sometimes relative URIs (e.g. when rendering it in the summary panel of the comments per ticket). Lino now uses the `BASE `__ tag when sending notification emails. This avoids us adding an option to the memo parser which would instruct it to generate absolute URIs. Not sure whether email clients support it, though. To be observed. The difference is visible e.g. in :mod:`lino_book.projects.team.tests.test_notify`. Before today the body of a notification email was:: (22/12/2016 19:45) Robin a comment? Now it is:: (22/12/2016 19:45) Robin a comment? Note that only comments are previewable. The body of a notification message has currently no preview. That's because notification messages aren't shown often, so we can parse them on the fly when needed. You might say here that currently the *are* shown often, namely in the dashboard (:class:`notify.MyMessages`). But I have the feeling that this dashboard item will go away since nobody reads notifications in the dashboard. The difference between a "front end" (i.e. a plugin) and a "renderer" is not clear. Maybe we should merge them. Maybe we should change `ar.renderer` to `ar.front_end`. En attendant we can use `ar.renderer.front_end`. TODO: Note the difference between Site and Kernel : Site contains the "configuration", which is available after instantiation of the :setting:`SITE`. Kernel contains the "run-time environment" of a :setting:`SITE` and is available only after startup. Maybe we should rename "kernel" to "rte" to make this more evident. I started a new page :ref:`dev.story`. The memo parser currently always produces relative URIs I removed the :class:`MailRenderer` class in :mod:`lino.core.renderer` because it was no longer needed. En passant I reviewed some parts of the book.