Skip to main content

No project description provided

Project description

PyAnsys Python PyPI GH-CI MIT Black pre-commit.ci status

This Ansys repository contains pre-commit hooks for different purposes. The following hooks are currently available:

  • add-license-headers: Add missing license headers to files by using REUSE . To use this hook, you must have REUSE implemented in your repository.

  • tech-review: Do a technical review of your repository according to Ansys repository requirements

How to install

The following sections provide instructions for installing the ansys-pre-commit-hooks package in two installation modes: user and developer.

For users

Before installing the package, to ensure that you have the latest version of pip, run this command:

python -m pip install -U pip

Then, to install the package, run this command:

python -m pip install ansys-pre-commit-hooks

For developers

Installing the package in developer mode allows you to modify and enhance the source code.

Before contributing to the project, ensure that you are familiar with the PyAnsys Developer’s Guide.

For a developer installation, you must follow these steps:

  1. Clone the repository with this command:

    git clone https://github.com/ansys/pre-commit-hooks
  2. Create a fresh-clean Python environment and activate it with these commands:

    # 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
  3. Ensure that you have the latest required build system tools by running this command:

    python -m pip install -U pip flit tox twine
  4. Install the project in editable mode by running one of these commands:

    # Install the minimum requirements
    python -m pip install -e .
    
    # Install the minimum + tests requirements
    python -m pip install -e .[tests]
    
    # Install the minimum + doc requirements
    python -m pip install -e .[doc]
    
    # Install all requirements
    python -m pip install -e .[tests,doc]
  5. Verify your development installation by running this command:

    tox

How to test it

This project takes advantage of tox. This tool automates common development tasks (similar to Makefile), but it is oriented towards Python development.

Using tox

While Makefile has rules, tox has environments. In fact, tox creates its own virtual environment so that anything being tested is isolated from the project to guarantee the project’s integrity.

These environment commands are provided:

  • tox -e style: Checks 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 successfully building the documentation.

Raw testing

If required, you can always call style commands, such as black, isort, and flake8, or unit testing commands, such as pytest, from the command line. However, calling these commands 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 by running this command:

python -m pip install pre-commit && pre-commit install

Documentation

For building documentation, you can run the usual rules provided in the Sphinx Makefile with a command that is formatted like this:

make -C doc/ html && your_browser_name doc/html/index.html

However, the recommended way of checking documentation integrity is by running tox with a command that is formatted like this:

tox -e doc && your_browser_name .tox/doc_out/index.html

Distributing

If you would like to create either source or wheel files, install the building requirements and then execute the build module with these commands:

python -m pip install .
python -m build
python -m twine check dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ansys_pre_commit_hooks-0.8.0.tar.gz (56.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ansys_pre_commit_hooks-0.8.0-py3-none-any.whl (48.0 kB view details)

Uploaded Python 3

File details

Details for the file ansys_pre_commit_hooks-0.8.0.tar.gz.

File metadata

  • Download URL: ansys_pre_commit_hooks-0.8.0.tar.gz
  • Upload date:
  • Size: 56.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for ansys_pre_commit_hooks-0.8.0.tar.gz
Algorithm Hash digest
SHA256 3196c13f141425335614200ee91b831bd285f54e6c502f111153f114d377d414
MD5 868d3be696d0aa4a916247f2c4665791
BLAKE2b-256 0a6751effd79d6f3f18be5ce0f40ca11c038543553cbaedfc797607580867c35

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansys_pre_commit_hooks-0.8.0.tar.gz:

Publisher: ci_cd.yml on ansys/pre-commit-hooks

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ansys_pre_commit_hooks-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ansys_pre_commit_hooks-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ff5fdbbbc8b93b1873b244fcdd225019f14a4f0d0189bd6bf945e553ca99cef
MD5 82712b1588089ca35a01bb512bd01d56
BLAKE2b-256 8d23a6aeb192a55d06e14667844cab3529a2d01b69a61bac21eb4d9fa2d8b0eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansys_pre_commit_hooks-0.8.0-py3-none-any.whl:

Publisher: ci_cd.yml on ansys/pre-commit-hooks

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page