Developer’s Guide#
Development Installation#
For development installation, we recommend using uv:
- Clone the repository: - git clone https://github.com/reidjohnson/hpipy.git cd hpipy 
- Create a virtual environment: - uv venv
- Install development dependencies: - uv pip install --requirements pyproject.toml --extra dev 
- Install and configure pre-commit hooks: - uv pip install pre-commit pre-commit install - You can run the hooks manually on all files with: - pre-commit run --all-files 
- Run the test suite to verify the installation: - uv run pytest 
Dependencies#
Optional dependencies for development:
- black 
- flake8 
- isort 
- mypy 
- pytest 
- pytest-cov 
- ruff 
- types-python-dateutil 
Test and Coverage#
Ensure that pytest and pytest-cov are installed:
uv run pip install pytest pytest-cov
To test the code:
uv run pytest hpipy -v
To test the code and produce a coverage report:
uv run pytest hpipy --cov-report html --cov=hpipy
To test the documentation:
uv run pip install -e .
uv run pytest --doctest-glob="*.rst" --doctest-modules docs
Documentation#
To build the documentation, run:
uv pip install -r ./docs/sphinx_requirements.txt
uv run sphinx-build -b html ./docs/source ./docs/_build