Skip to content

Contributing

  • Keep source tests alongside each package’s tests/ directory.
  • Run pixi run -e bun bun run test for local tests and pixi run -e bun bun run coverage for the coverage gates used by CI and pre-push.
  • Keep direct Pixi dependency versions exactly pinned in pixi.toml and refresh pixi.lock when they change.
  • Python build tooling and Twine stay in the Pixi Python feature; Bun remains in its separate environment.
  • Lefthook runs staged-file Ruff/Biome checks, Convco validates commit messages, and pre-push runs the coverage task.

Commit messages use Conventional Commits form (validated by Convco). Prefix every SDK-defined exception class (Python or TypeScript) with QgisSdk and export only prefixed exception names.