PyAnsys Tools Versioning#
Utilities for backwards and forwards server support.
How to install#
At least two installation modes are provided: user and developer.
For users#
In order to install PyAnsys Tools Versioning, make sure you have the latest version of pip. To do so, run:
python -m pip install -U pip
Then, you can simply execute:
python -m pip install pyansys-tools-versioning
For developers#
Installing PyAnsys Tools Versioning in developer mode allows you to modify the source and enhance it.
Before contributing to the project, please refer to the PyAnsys Developer’s guide. You will need to follow these steps:
Start by cloning this repository:
git clone https://github.com/ansys/pyansys-tools-versioning
Create a fresh-clean Python environment and activate it:
# Create a virtual environment python -m venv .venv # Activate it in a POSIX system source .venv/bin/activate # Activate it in Windows CMD environment .venv\Scripts\activate.bat # Activate it in Windows Powershell .venv\Scripts\Activate.ps1
Make sure you have the latest required build system and doc, testing, and CI tools:
python -m pip install -U pip flit tox python -m pip install -r requirements/requirements_build.txt python -m pip install -r requirements/requirements_doc.txt python -m pip install -r requirements/requirements_tests.txt
Install the project in editable mode:
python -m pip install --editable pyansys-tools-versioning
Finally, verify your development installation by running:
tox
How to testing#
This project takes advantage of tox. This tool allows to automate common development tasks (similar to Makefile) but it is oriented towards Python development.
Using tox#
As Makefile has rules, tox has environments. In fact, the tool creates its own virtual environment so anything being tested is isolated from the project in order to guarantee project’s integrity. The following environments commands are provided:
tox -e style: will check for coding style quality.
tox -e py: checks for unit tests.
tox -e py-coverage: checks for unit testing and code coverage.
tox -e doc: checks for documentation building process.
Raw testing#
If required, you can always call the style commands (black, isort, flake8…) or unit testing ones (pytest) from the command line. However, this does not guarantee that your project is being tested in an isolated environment, which is the reason why tools like tox exist.
A note on pre-commit#
The style checks take advantage of pre-commit. Developers are not forced but encouraged to install this tool via:
python -m pip install pre-commit && pre-commit install
Documentation#
For building documentation, you can either run the usual rules provided in the Sphinx Makefile, such us:
make -C doc/ html && your_browser_name doc/html/index.html
However, the recommended way of checking documentation integrity is using:
tox -e doc && your_browser_name .tox/doc_out/index.html
Distributing#
If you would like to create either source or wheel files, start by installing the building requirements and then executing the build module:
python -m pip install -r requirements/requirements_build.txt
python -m build
python -m twine check dist/*