Mercurial > piecrust2
diff piecrust/plugins/base.py @ 305:9ae23409d6e9
plugins: Change how plugins are loaded. Add a `plugins` command.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Sun, 22 Mar 2015 22:20:18 -0700 |
parents | 5dbab01daaba |
children | 7122976bc751 |
line wrap: on
line diff
--- a/piecrust/plugins/base.py Thu Mar 19 22:05:30 2015 -0700 +++ b/piecrust/plugins/base.py Sun Mar 22 22:20:18 2015 -0700 @@ -47,7 +47,6 @@ def __init__(self, app): self.app = app self._plugins = None - self._pluginsMeta = None self._componentCache = {} @property @@ -96,7 +95,6 @@ from piecrust.plugins.builtin import BuiltInPlugin self._plugins = [BuiltInPlugin()] - self._pluginsMeta = {self._plugins[0].name: False} for p in self.app.config.get('site/plugins'): self._loadPlugin(p) @@ -106,9 +104,10 @@ def _loadPlugin(self, plugin_name): try: - mod = importlib.import_module(plugin_name) - except ImportError: - logger.error("Failed to load plugin '%s'.") + mod = importlib.import_module('piecrust_' + plugin_name) + except ImportError as ex: + logger.error("Failed to load plugin '%s'." % plugin_name) + logger.error(ex) return plugin_class = getattr(mod, '__piecrust_plugin__', None)