Blog entries should be just another type of node¶
Sunday, November 5, 2023
Here is my summary after having played a full week with #5193 (Blog entries should be just another type of node).
Visible changes in publisher: Hierarchical pages now have previous/next links. Blog entries now have the same layout as hierarchical pages.
After my playing I think that we actually do not want previous/next links on blog entries. In the admin view yes, there we want to navigate also in display mode “detail”, but not on a publisher link. Such links are meant to be shared in social media where people get quickly distracted by every useless detail.
The lino.modlib.publisher
plugin is now used as menu group for
the three other CMS-specific plugins (blogs, pages and albums).
The new setting publisher.locations
replaces the
PublisherViews
choicelist.
A bug caused the “Start now” button on a background task to not work. We can now run these tasks manually.
TODO: Think about #5204 (About Site.user_linod, checkdata, checksummaries & Co)
I reviewed the __init__()
method of lino.modlib.linod.Procedure
.
Now it takes just the func object. That’s much easier to remember for
application developers. This optimization revealed an issue in
lino.core.choicelists
: the deconstruct()
method of a
ChoiceListField
must remove the choices keyword because the list of
choices of a ChoiceListField
does not influence whether we need a
migration or not. As a side effect, Choice
no longer needs to be
@deconstructible
. (See Friday, November 3, 2023 for details)
Removed duplicate definition of requests.BaseRequest.obj2url()
.
lino.modlib.users.User
is now lino.modlib.publisher.Publishable
lino_xl/lib/pages/fixtures/demo2.py
shows how to run a background
task from a script.
I changed Plugin._active
to Plugin.hidden
and renamed
Plugin.deactivate()
to Plugin.hide()
. You can now hide a plugin in
the get_plugin_configs
. I
removed the obsolete Plugin.disables_plugins
attribute.
The lino_xl.lib.topics
plugin is now more easy to integrate because the
InterestsByController
slave panel becomes invisible when the plugin
gets hidden.
The add_interest
action is no longer needed since
InterestsByController
has an insert button in the slave summary.
The files utils.py
and views.py
in lino_xl.lib.pages
were
no longer used. I removed them.
When the plugin specified as the menu group of another plugin has itself
a menu_group, then get_menu_group()
now returns the menu_group of the menu
group.