Manage dynamic plugins for Python applications
Go to file
OpenStack Release Bot e4ef5d0df4 Update reno for stable/rocky
Change-Id: I7c0686a713d9e302f47f41c04cc3b3f2b1f79f6b
2018-07-26 12:42:39 +00:00
doc fix tox python3 overrides 2018-06-06 16:17:02 -04:00
releasenotes Update reno for stable/rocky 2018-07-26 12:42:39 +00:00
stevedore Add an ExtensionManager.items() method 2017-08-10 16:01:58 -04:00
.gitignore Switch to stestr 2018-07-05 18:04:48 +07:00
.gitreview Update .gitreview after moving the repository 2014-02-07 20:40:10 +00:00
.stestr.conf Switch to stestr 2018-07-05 18:04:48 +07:00
.travis.yml Clean up Python 2.6 related stuff 2015-11-26 18:09:38 +08:00
.zuul.yaml add lower-constraints job 2018-03-24 21:03:12 -04:00
announce.rst fix setuptools url 2017-06-08 16:05:52 +08:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:40 +00:00
LICENSE add license 2012-06-19 14:33:24 -04:00
lower-constraints.txt Switch to stestr 2018-07-05 18:04:48 +07:00
MANIFEST.in Include all images from docs in sdist 2013-06-12 14:03:31 -04:00
README.rst Trivial: Update pypi url to new url 2018-04-21 09:21:32 +08:00
requirements.txt Updated from global requirements 2017-11-16 11:28:42 +00:00
setup.cfg Follow the new PTI for document build 2018-01-08 12:28:50 -06:00
setup.py Updated from global requirements 2017-03-02 11:56:14 +00:00
test-requirements.txt Switch to stestr 2018-07-05 18:04:48 +07:00
tox.ini Remove unnecessary py27 testenv 2018-07-06 08:27:28 +07:00

stevedore -- Manage dynamic plugins for Python applications

Latest Version

Downloads

image

Python makes loading code dynamically easy, allowing you to configure and extend your application by discovering and loading extensions ("plugins") at runtime. Many applications implement their own library for doing this, using __import__ or importlib. stevedore avoids creating yet another extension mechanism by building on top of setuptools entry points. The code for managing entry points tends to be repetitive, though, so stevedore provides manager classes for implementing common patterns for using dynamically loaded extensions.