Python projects
This page describes Python projects I often use, on some of them being a maintainer.
Linters
graph LR;
ansible-lint --> ansible
pre-commit -.-> flake8
pre-commit -.-> doc8
pre-commit -.-> bandit
pre-commit -.-> bashate
pre-commit -.-> yamllint
pre-commit -.-> ansible-lint
pre-commit -.-> zuul-lint
flake8 -.-> flake8-black
flake8 -.-> flake8-mypy
flake8 -.-> flake8-docstrings
flake8 -.-> flake8-absolute-import
flake8 -.-> mccabe
flake8 -.-> pyflakes
flake8-black --> black
flake8-mypy --> mypy
flake8-docstrings --> pycodestyle
flake8 -.-> hacking
yamllint --> pyyaml
yamllint --> ruamel.yaml
zuul-lint --> pyyaml
classDef core fill:#f9f,stroke:#333,stroke-width:1px;
class doc8 core;
class ansible-lint core;
class zuul-lint core;
Unit and functional testing
graph LR;
tox --> pytest
tox --> stestr
tox --> sphinx
molecule --> ansible
molecule -.-> selinux
molecule -.-> docker
molecule -.-> libpod
molecule --> cookiecutter
molecule --> testinfra
subgraph pytest*
pytest -.-> pytest-molecule
pytest -.-> pytest-html
pytest -.-> pytest-sugar
pytest -.-> pytest-cov
pytest -.-> pytest-xdist
end
pytest-html -.-> ansi2html
pytest-molecule --> molecule
pytest-cov --> coverage
sphinx
stestr --> python-subunit
stestr --> testtools
stestr --> voluptuous
classDef core fill:#f9f,stroke:#333,stroke-width:1px;
class pytest-molecule core;
class molecule core;
class selinux core;
class cookiecutter core;
class testinfra core;
Packaging
graph LR;
pip --> wheel
pip --> setuptools
twine --> wheel
twine --> setuptools
pbr --> setuptools
virtualenv --> pip
reno
setuptools --> setuptools-scm
Other tools or libraries
graph LR;
git-review
jenkins-job-builder --> python-jenkins
jira