Manage dynamic plugins for Python applications
Go to file
Matthew Watkins dcb8f59f24
Add missing/undeclared setuptools dependency
Change-Id: I918630982addaf9ff5d2192d73b6e703336cb4f8
Signed-off-by: Matthew Watkins <mwatkins@linuxfoundation.org>
2024-02-29 12:44:28 +00:00
doc remove unicode from code 2022-08-25 09:14:44 +08:00
releasenotes reno: Update master for unmaintained/yoga 2024-02-06 14:30:21 +00:00
stevedore pre-commit: Integrate bandit 2024-02-11 02:56:42 +09:00
.gitignore Drop Python 2.7 support 2020-04-21 15:14:10 +01:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:04 +00:00
.pre-commit-config.yaml pre-commit: Integrate bandit 2024-02-11 02:56:42 +09:00
.stestr.conf Switch to stestr 2018-07-05 18:04:48 +07:00
.zuul.yaml Moves supported python runtimes from version 3.8 to 3.10 2023-04-10 14:37:20 +09: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
README.rst update git.openstack.org to opendev 2019-04-25 01:07:11 +00:00
bindep.txt Add local bindep.txt 2019-06-27 12:59:31 +02:00
requirements.txt Add missing/undeclared setuptools dependency 2024-02-29 12:44:28 +00:00
setup.cfg Update python classifier in setup.cfg 2024-01-11 16:37:41 -08:00
setup.py Drop Python 2.7 support 2020-04-21 15:14:10 +01:00
test-requirements.txt pre-commit: Integrate bandit 2024-02-11 02:56:42 +09:00
tox.ini pre-commit: Integrate bandit 2024-02-11 02:56:42 +09: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.