Pelican Plugins

AutoLoader Plugin 1.1.0 for Pelican Released

AutoLoader is a plugin for Pelican, a static site generator written in Python.

AutoLoader is a “meta plugin” in that it doesn’t directly affect your Pelican site, but rather works to make your other plugins better. By way of background, Pelican 4.5 added the ability to autoload plugins that exist in the pelican.plugins namespace. This plugin allows you to extend this autoload ability to any arbitrary namespace. In particlar, it defaults to extending this ability to my minchin.pelican.plugins namespace, and thus will autoload my other plugins, if installed. It can also be used to add plugin autoloading to earlier version of Pelican.

This Release

This release adds the ability to disable auto-loading of specific plugins. In particular, it defaults to no longer trying to load pelican.plugins.signals and pelican.plugins._utils which are modules within the pelican.plugins namespace, but are not actually plugins.

Upgrading

The simplest way to upgrade (or install) AutoLoader is to use pip:

pip install minchin.pelican.plugins.autoloader --upgrade

No configuration changes are needed.

If you want to use these new features, define AUTOLOADER_PLUGIN_BLACKLIST in your pelicanconf.py:

# pelicanconf.py

from minchin.pelican.plugins import autoloader

AUTOLOADER_PLUGIN_BLACKLIST = autoloader.DEFAULT_PLUGIN_BLACKLIST + [
    "pelican.plugins.misbehaving_plugin",
    # other plugins
]

Known Issues

  • the release machinery used relies on invoke, but an update has been pushed with now supports Python 3.10.
  • plugins activated by AutoLoader do not show running pelican-plugins. (pelican-plugins was a script added by Pelican 4.5 to show namespace plugins currently active). AutoLoader however should be itself listed (although likely as pelican.plugins.autoloader).

Other posts


Other posts under Pelican Plugins



Comments

There are no comments yet. Will you add the first one?

Add a Comment

You can use the Markdown syntax to format your comment.

or alternately, send me your thoughts at minchinweb [at] gmail.com

Comment Atom Feed (for this post)