Skip to content

Contributing

Contributions are very welcome. Please file issues or submit pull requests in our GitHub repository. All contributors will be acknowledged, but must abide by our Code of Conduct.

Guidelines

  • Open an issue before creating a pull request so that other contributors can give feedback before you do a lot of work. Please use these labels:
    • please-add: a feature request
    • please-cleanup: request to clean up or refactor
    • please-fix: a bug report
  • Use Conventional Commits style for commits and for the titles of pull requests. Please use these labels:
    • is-cleanup: a refactoring (should refer to please-cleanup issue)
    • is-feature: a new feature (should refer to please-add issue)
    • is-fix: a bug fix (should refer to is-fix issue)

Setup

  1. Fork or clone the repository.
  2. `uv sync --extra dev" to install an editable version of this package along with all its dependencies (including developer dependencies).
  3. Use uv run COMMAND to run commands in the virtual environment. For example, use uv run doit list to see available commands and uv run doit COMMAND to run a command.

Alternatively:

  1. Create a fresh Python environment: uv venv
  2. Activate that environment: source .venv/bin/activate
  3. Install dependencies and editable version of package: uv pip install -e '.[dev]'

Actions

uv run doit list prints a list of available commands.

Command Action
build Build the Python package in the current directory.
coverage Run tests with coverage.
docs Generate documentation using MkDocs.
format Reformat code.
lint Check the code format.
params Regenerate default parameter filess.
test Run tests.
tidy Clean all build artifacts.

Publishing

Use twine upload --verbose -u __token__ -p your-pypi-access-token dist/*.