Dependencies

pyTooling.GitHub Package (Mandatory)

Manually Installing Package Requirements

Use the requirements.txt file to install all dependencies via pip3 or install the package directly from PyPI (see Installation/Updates).

pip3 install -U -r requirements.txt
pip install -U -r requirements.txt

Dependency List

Mandatory dependencies of the pyTooling.GitHub package.
Package Version License Dependencies

pyTooling[terminal]

≥10.1

Apache License 2.0

ruamel.yaml

≥0.19

MIT License

none

Gantt Charts (Optional)

When installed as pyTooling.GitHub[diagram], which Gantt Chart and the program’s --gantt option need:

Dependencies added by the diagram extra.
Package Version License Dependencies

matplotlib

≥3.10

Python Software Foundation License 2.0

Sphinx Domain ghactions (Optional)

When installed as pyTooling.GitHub[sphinx], which the ghactions domain needs. pyTooling.Sphinx requires Python 3.12 or newer, because Sphinx 9.1 does.

Dependencies added by the sphinx extra.
Package Version License Dependencies

pyTooling.Sphinx

≥1.0

Apache License 2.0

Unit Testing / Coverage (Optional)

Additional Python packages needed for testing and code coverage collection. These packages are only needed for developers or on a CI server.

Manually Installing Test Requirements

Use the tests/unit/requirements.txt file to install all dependencies via pip3. The file will recursively install the mandatory dependencies too.

pip3 install -U -r tests/unit/requirements.txt
pip install -U -r tests\unit\requirements.txt

Dependency List

Dependencies for unit testing and code coverage.
Package Version License Dependencies

Coverage

≥7.15

Apache License 2.0

none

matplotlib

≥3.10

Python Software Foundation License 2.0

pytest

≥9.1

MIT License

pytest-cov

≥7.1

MIT License

pytest-xdist

≥3.8

MIT License

pyTooling[terminal]

≥10.1

Apache License 2.0

pyTooling.Sphinx

≥1.0

Apache License 2.0

ruamel.yaml

≥0.19

MIT License

none

Application Testing (Optional)

Additional Python packages needed for testing the program pytooling-github as installed. These packages are only needed for developers or on a CI server.

Manually Installing Application Test Requirements

Use the tests/app/requirements.txt file to install all dependencies via pip3. The file will recursively install the mandatory dependencies too.

pip3 install -U -r tests/app/requirements.txt
pip install -U -r tests\app\requirements.txt

Dependency List

Dependencies for application testing.
Package Version License Dependencies

colorama

≥0.4

BSD 3-Clause Revised License

none

matplotlib

≥3.10

Python Software Foundation License 2.0

pytest

≥9.1

MIT License

pytest-xdist

≥3.8

MIT License

pyTooling[terminal]

≥10.1

Apache License 2.0

ruamel.yaml

≥0.19

MIT License

none

Sphinx Documentation (Optional)

Additional Python packages needed for building the documentation. These packages are only needed for developers or on a CI server.

Manually Installing Documentation Requirements

Use the doc/requirements.txt file to install all dependencies via pip3. The file will recursively install the mandatory dependencies too.

pip3 install -U -r doc/requirements.txt
pip install -U -r doc\requirements.txt

Dependency List

Dependencies for building the documentation.
Package Version License Dependencies

autoapi

≥2.0

Apache License 2.0

none

docutils_stubs

≥0.0

The Unlicense

pyTooling[terminal]

≥10.1

Apache License 2.0

pyTooling.Sphinx[reports]

≥1.0

Apache License 2.0

ruamel.yaml

≥0.19

MIT License

none

sphinx

≥9.1

BSD 2-Clause Simplified License

sphinx_autodoc_typehints

≥3.13

MIT License

sphinx-copybutton

≥0.5

MIT License

sphinx_design

≥0.7

MIT License

sphinx_rtd_theme

≥3.1

MIT License

sphinxcontrib-mermaid

≥2.1

BSD 2-Clause Simplified License

Packaging (Optional)

Additional Python packages needed for installation package generation. These packages are only needed for developers or on a CI server.

Building an Installation Package

pyproject.toml lists them as build requirements ([build-system]), so build installs them into an isolated build environment itself.

python3 -m build --wheel
python -m build --wheel

Dependency List

Dependencies for generating an installation package.
Package Version License Dependencies

pyTooling

≥10.1

Apache License 2.0

none

setuptools

≥84.0

MIT License

none

Publishing (CI-Server only)

Additional Python packages needed for publishing the generated installation package to e.g, PyPI or any equivalent services. These packages are only needed for maintainers or on a CI server.

Manually Installing Publishing Requirements

Use the dist/requirements.txt file to install all dependencies via pip3. The file will recursively install the mandatory dependencies too.

pip3 install -U -r dist/requirements.txt
pip install -U -r dist\requirements.txt

Dependency List

Dependencies for publishing the package.
Package Version License Dependencies

twine

≥7.0

Apache License 2.0

wheel

≥0.48

MIT License