Manage dynamic plugins for Python applications
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Corey Bryant 6817543c30 Add Python 3 Train unit tests 1 month ago
doc Cap Bandit below 1.6.0 and update Sphinx requirement 3 months ago
releasenotes Update master for stable/stein 5 months ago
stevedore update git.openstack.org to opendev 4 months ago
.gitignore Switch to stestr 1 year ago
.gitreview OpenDev Migration Patch 4 months ago
.stestr.conf Switch to stestr 1 year ago
.travis.yml Clean up Python 2.6 related stuff 3 years ago
.zuul.yaml Add Python 3 Train unit tests 1 month ago
CONTRIBUTING.rst Workflow documentation is now in infra-manual 4 years ago
LICENSE add license 7 years ago
MANIFEST.in Include all images from docs in sdist 6 years ago
README.rst update git.openstack.org to opendev 4 months ago
announce.rst fix setuptools url 2 years ago
bindep.txt Add local bindep.txt 1 month ago
lower-constraints.txt Switch to stestr 1 year ago
requirements.txt Updated from global requirements 1 year ago
setup.cfg Add Python 3 Train unit tests 1 month ago
setup.py Updated from global requirements 2 years ago
test-requirements.txt Cap Bandit below 1.6.0 and update Sphinx requirement 3 months ago
tox.ini Add Python 3 Train unit tests 1 month ago

README.rst

stevedore -- Manage dynamic plugins for Python applications

Latest Version

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.