Skip to content

How to contribute

Prerequisites

Mandatory

Optional

Install the optional prerequisites

  • If you installed mise, you can simply run:
mise install

Hack

  • run make setup-venv so that uv inits a virtual environment with required dependencies (same as uv sync)

Update the dependencies

Run make upgrade-dependencies, this is the same as uv sync --upgrade

Code

  • run make tests to launch unit tests (same as `uv run poe test:cov)
  • run make lint to launch linters (same as uv run poe lint:all)

Pre-Commit

  • If you want to run pre-commit before each commit, run once make precommit-install
  • If you don't want to configure a pre-commit hook (your choice, pre-commit is run by the CICD anyway), you can run it when you want, use make precommit-run

Configure your editor

VSCode

{
  "[python]": {
    "editor.defaultFormatter": "charliermarsh.ruff",
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
      "source.organizeImports": "explicit",
      "source.fixAll": "explicit"
    }
  }
  "files.trimTrailingWhitespace": true,
  "files.insertFinalNewline": true,
  "files.trimFinalNewlines": true,
  "python.testing.unittestEnabled": false,
  "python.testing.pytestEnabled": true,
}

Others

  • Feel free to contribute any other editor configuration