Manage dynamic plugins for Python applications
Go to file
Elod Illes feac47186d Add local bindep.txt
As it was announced [1] global bindep-fallback.txt was removed and now
projects need to have a local bindep.txt to be able to install binary
dependencies for testing.

In documentation zuul job graphviz package ('dot' command) is needed.
Without that the job fails with:
    dot command 'dot' cannot be run (needed for graphviz output),
    check the graphviz_dot setting

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-June/007272.html

Change-Id: I5efddfc72e9dc0dd1b8b9e1e37708e1d30ef3c39
2019-06-27 12:59:31 +02:00
doc Cap Bandit below 1.6.0 and update Sphinx requirement 2019-05-16 16:30:18 +02:00
releasenotes Update master for stable/stein 2019-03-18 14:57:27 +00:00
stevedore update git.openstack.org to opendev 2019-04-25 01:07:11 +00:00
.gitignore Switch to stestr 2018-07-05 18:04:48 +07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:04 +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 Dropping the py35 testing 2019-04-16 04:43:57 +00: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
MANIFEST.in Include all images from docs in sdist 2013-06-12 14:03:31 -04:00
README.rst update git.openstack.org to opendev 2019-04-25 01:07:11 +00:00
announce.rst fix setuptools url 2017-06-08 16:05:52 +08:00
bindep.txt Add local bindep.txt 2019-06-27 12:59:31 +02:00
lower-constraints.txt Switch to stestr 2018-07-05 18:04:48 +07:00
requirements.txt Updated from global requirements 2017-11-16 11:28:42 +00:00
setup.cfg Dropping the py35 testing 2019-04-16 04:43:57 +00:00
setup.py Updated from global requirements 2017-03-02 11:56:14 +00:00
test-requirements.txt Cap Bandit below 1.6.0 and update Sphinx requirement 2019-05-16 16:30:18 +02:00
tox.ini Add local bindep.txt 2019-06-27 12:59:31 +02:00

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.