From 99f17d002054d6485100eb472aa90a7841162b1e Mon Sep 17 00:00:00 2001 From: Mike Crute Date: Mon, 18 May 2015 20:30:58 -0700 Subject: Initial import --- .gitignore | 3 +++ README.txt | 24 ++++++++++++++++++++++++ moin_setuptools_loader/__init__.py | 25 +++++++++++++++++++++++++ setup.py | 10 ++++++++++ 4 files changed, 62 insertions(+) create mode 100644 .gitignore create mode 100644 README.txt create mode 100644 moin_setuptools_loader/__init__.py create mode 100644 setup.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0b116e4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/*.egg-info +*.pyc +.DS_Store diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..3c3c04b --- /dev/null +++ b/README.txt @@ -0,0 +1,24 @@ +Example entry point config :: + + entry_points={ + "moin.plugins.action": [ + ], + "moin.plugins.converter": [ + ], + "moin.plugins.events": [ + ], + "moin.plugins.filter": [ + ], + "moin.plugins.formatter": [ + ], + "moin.plugins.macro": [ + ], + "moin.plugins.parser": [ + ], + "moin.plugins.theme": [ + ], + "moin.plugins.userprefs": [ + ], + "moin.plugins.xmlrpc": [ + ], + } diff --git a/moin_setuptools_loader/__init__.py b/moin_setuptools_loader/__init__.py new file mode 100644 index 0000000..c45e062 --- /dev/null +++ b/moin_setuptools_loader/__init__.py @@ -0,0 +1,25 @@ +import pkg_resources +from MoinMoin import wikiutil +from MoinMoin.config import multiconfig + + +class SetuptoolsPluginLoader(multiconfig.DefaultConfig): + + _plugin_types = [ + "action", "converter", "events", "filter", "formatter", + "macro", "parser", "theme", "userprefs", "xmlrpc"] + + def __init__(self, siteid): + super(SetuptoolsPluginLoader, self).__init__(siteid) + + for kind in self._plugin_types: + wikiutil.wikiPlugins(kind, self) + self._load_setuptools_plugins(kind) + + def _load_setuptools_plugins(self, kind): + entry_key = "moin.plugins.{}".format(kind) + + for point in pkg_resources.iter_entry_points(entry_key): + point.load() + trimmed_name = ".".join(point.module_name.split(".")[:-1]) + self._site_plugin_lists[kind][point.name] = trimmed_name diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..7b7c36c --- /dev/null +++ b/setup.py @@ -0,0 +1,10 @@ +from setuptools import setup, find_packages + +setup( + name="CruteMoinSetuptoolsPluginLoader", + version="1.0", + description="", + author="Michael Crute ", + license="MIT", + packages=find_packages(), +) -- cgit v1.2.3