.. _DEP:
Dependencies
############
.. |img-pyVersioning-lib-status| image:: https://img.shields.io/librariesio/release/pypi/pyVersioning
:alt: Libraries.io status for latest release
:height: 22
:target: https://libraries.io/github/Paebbels/pyVersioning
.. |img-pyVersioning-vul-status| image:: https://img.shields.io/snyk/vulnerabilities/github/Paebbels/pyVersioning
:alt: Snyk Vulnerabilities for GitHub Repo
:height: 22
:target: https://img.shields.io/snyk/vulnerabilities/github/Paebbels/pyVersioning
+------------------------------------------+------------------------------------------+
| `Libraries.io `_ | Vulnerabilities Summary |
+==========================================+==========================================+
| |img-pyVersioning-lib-status| | |img-pyVersioning-vul-status| |
+------------------------------------------+------------------------------------------+
.. _DEP/package:
pyVersioning Package (Mandatory)
********************************
.. rubric:: Manually Installing Package Requirements
Use the :file:`requirements.txt` file to install all dependencies via ``pip3`` or install the package directly from
PyPI (see :ref:`INSTALL`).
.. tab-set::
.. tab-item:: Linux/macOS
:sync: Linux
.. code-block:: bash
pip3 install -U -r requirements.txt
.. tab-item:: Windows
:sync: Windows
.. code-block:: powershell
pip install -U -r requirements.txt
.. rubric:: Dependency List
+---------------------------------------------------------------------------+-------------+------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Package** | **Version** | **License** | **Dependencies** |
+===========================================================================+=============+==========================================================================================+========================================================================================================================================================+
| `pyTooling[terminal] `__ | ≥8.2 | `Apache License, 2.0 `__ | * colorama |
+---------------------------------------------------------------------------+-------------+------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| `ruamel.yaml `__ | ≥0.18 | `MIT `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------------+-------------+------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
.. _DEP/testing:
Unit Testing (Optional)
***********************
Unit Testing / Coverage / Type Checking (Optional)
==================================================
Additional Python packages needed for testing, code coverage collection and static type checking. These packages are
only needed for developers or on a CI server, thus sub-dependencies are not evaluated further.
.. rubric:: Manually Installing Test Requirements
Use the :file:`tests/requirements.txt` file to install all dependencies via ``pip3``. The file will recursively install
the mandatory dependencies too.
.. tab-set::
.. tab-item:: Linux/macOS
:sync: Linux
.. code-block:: bash
pip install -U -r tests/requirements.txt
.. tab-item:: Windows
:sync: Windows
.. code-block:: powershell
pip3 install -U -r tests\requirements.txt
.. rubric:: Dependency List - Unit Testing
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| **Package** | **Version** | **License** | **Dependencies** |
+=====================================================================+=============+========================================================================================+======================+
| `pytest `__ | ≥8.3 | `MIT `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| `pytest-cov `__ | ≥6.0 | `MIT `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| `Coverage `__ | ≥7.6 | `Apache License, 2.0 `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| `mypy `__ | ≥1.15 | `MIT `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| `typing-extensions `__ | ≥4.12 | `PSF-2.0 `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
| `lxml `__ | ≥5.3 | `BSD 3-Clause `__ | *Not yet evaluated.* |
+---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+
.. _DEP/documentation:
Sphinx Documentation (Optional)
*******************************
Additional Python packages needed for documentation generation. These packages are only needed for developers or on a
CI server, thus sub-dependencies are not evaluated further.
.. rubric:: Manually Installing Documentation Requirements
Use the :file:`doc/requirements.txt` file to install all dependencies via ``pip3``. The file will recursively install
the mandatory dependencies too.
.. tab-set::
.. tab-item:: Linux/macOS
:sync: Linux
.. code-block:: bash
pip install -U -r doc/requirements.txt
.. tab-item:: Windows
:sync: Windows
.. code-block:: powershell
pip3 install -U -r doc\requirements.txt
.. rubric:: Dependency List
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Package** | **Version** | **License** | **Dependencies** |
+=================================================================================================+==============+==========================================================================================================+======================================================================================================================================================+
| `pyTooling `__ | ≥8.2 | `Apache License, 2.0 `__ | *None* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `Sphinx `__ | ≥8.2 | `BSD 3-Clause `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinx_rtd_theme `__ | ≥3.0 | `MIT `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinxcontrib-autoprogram `__ | ≥0.1.9 | `BSD 2-Clause `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinxcontrib-mermaid `__ | ≥1.0 | `BSD `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `autoapi `__ | ≥2.0.1 | `Apache License, 2.0 `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinx_design `__ | ≥0.6 | `MIT `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinx-copybutton `__ | ≥0.5 | `MIT `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinx_autodoc_typehints `__ | ≥3.1 | `MIT `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `sphinx_reports `__ | ≥0.7 | `Apache License, 2.0 `__ | *Not yet evaluated.* |
+-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
.. todo:: sphinx-reports
.. _DEP/packaging:
Packaging (Optional)
********************
Additional Python packages needed for installation package generation. These packages are only needed for developers or
on a CI server, thus sub-dependencies are not evaluated further.
.. rubric:: Manually Installing Packaging Requirements
Use the :file:`build/requirements.txt` file to install all dependencies via ``pip3``. The file will recursively
install the mandatory dependencies too.
.. tab-set::
.. tab-item:: Linux/macOS
:sync: Linux
.. code-block:: bash
pip install -U -r build/requirements.txt
.. tab-item:: Windows
:sync: Windows
.. code-block:: powershell
pip3 install -U -r build\requirements.txt
.. rubric:: Dependency List
+----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Package** | **Version** | **License** | **Dependencies** |
+============================================================================+==============+==========================================================================================================+======================================================================================================================================================+
| `pyTooling `__ | ≥8.2 | `Apache License, 2.0 `__ | *None* |
+----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
| `wheel `__ | ≥0.45 | `MIT `__ | *Not yet evaluated.* |
+----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+
.. _DEP/publishing:
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, thus sub-dependencies are not evaluated
further.
.. rubric:: Manually Installing Publishing Requirements
Use the :file:`dist/requirements.txt` file to install all dependencies via ``pip3``. The file will recursively
install the mandatory dependencies too.
.. tab-set::
.. tab-item:: Linux/macOS
:sync: Linux
.. code-block:: bash
pip install -U -r dist/requirements.txt
.. tab-item:: Windows
:sync: Windows
.. code-block:: powershell
pip3 install -U -r dist\requirements.txt
.. rubric:: Dependency List
+----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+
| **Package** | **Version** | **License** | **Dependencies** |
+==========================================================+==============+===========================================================================================+======================+
| `wheel `__ | ≥0.45 | `MIT `__ | *Not yet evaluated.* |
+----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+
| `Twine `__ | ≥6.1 | `Apache License, 2.0 `__ | *Not yet evaluated.* |
+----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+