Manage dynamic plugins for Python applications
Go to file
Hervé Beraud de9b2fc6a1 Adding pre-commit
Introduced changes:
- pre-commit config and rules.
- Add pre-commit to pep8 gate, Flake8 is covered in the pre-commit hooks.
- Applying fixes for pre-commit compliance in all code.

Also commit hash will be used instead of version tags in pre-commit to
prevend arbitrary code from running in developer's machines.

pre-commit will be used to:
- trailing whitespace;
- Replaces or checks mixed line ending (mixed-line-ending);
- Forbid files which have a UTF-8 byte-order marker
  (check-byte-order-marker);
- Checks that non-binary executables have a proper
  shebang (check-executables-have-shebangs);
- Check for files that contain merge conflict strings
  (check-merge-conflict);
- Check for debugger imports and py37+ breakpoint()
  calls in python source (debug-statements);
- Attempts to load all yaml files to verify syntax (check-yaml);
- Run flake8 checks (flake8) (local)

For further details about tests please refer to:
https://github.com/pre-commit/pre-commit-hooks

Change-Id: I045fa1cd7932d960e1cf49b2c335c7acdeba0b46
Signed-off-by: Moisés Guimarães de Medeiros <moguimar@redhat.com>
2020-09-15 13:40:37 +02:00
doc Adding pre-commit 2020-09-15 13:40:37 +02:00
releasenotes Adding pre-commit 2020-09-15 13:40:37 +02:00
stevedore Adding pre-commit 2020-09-15 13:40:37 +02: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 Adding pre-commit 2020-09-15 13:40:37 +02:00
.stestr.conf Switch to stestr 2018-07-05 18:04:48 +07:00
.zuul.yaml Add Python3 victoria unit tests 2020-05-04 18:22:39 +02: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
lower-constraints.txt switch to importlib.metadata package 2020-07-06 08:39:52 -04:00
requirements.txt switch to importlib.metadata package 2020-07-06 08:39:52 -04:00
setup.cfg Drop Python 2.7 support 2020-04-21 15:14:10 +01:00
setup.py Drop Python 2.7 support 2020-04-21 15:14:10 +01:00
test-requirements.txt Adding pre-commit 2020-09-15 13:40:37 +02:00
tox.ini Adding pre-commit 2020-09-15 13:40:37 +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.