lemma-osu / synthetic-knn

Two-stage kNN imputation using synthetic data and treelists
0 stars 0 forks source link

synthetic-knn

Two-stage kNN imputation using synthetic data and treelists for predictive vegetation mapping.

This package is in active development.

Developer Guide

Setup

This project uses hatch to manage the development environment and build and publish releases. Make sure hatch is installed first:

$ pip install hatch

Now you can enter the development environment using:

$ hatch shell

This will install development dependencies in an isolated environment and drop you into a shell (use exit to leave).

Pre-commit

Use pre-commit to run linting, type-checking, and formatting:

$ pre-commit run --all-files

...or install it to run automatically before every commit with:

$ pre-commit install

Testing

Unit tests are not run by pre-commit, but can be run manually using hatch scripts:

$ hatch run test:all

Measure test coverage with:

$ hatch run test:coverage

Releasing

First, use hatch to update the version number.

$ hatch version [major|minor|patch]

Then, build and publish the release to PyPI with:

$ hatch clean
$ hatch build
$ hatch publish