Skip to content

Contributing

Rakesh Singh edited this page Oct 23, 2026 · 1 revision

Contributing

New rules, tokenizers, formats, docs and tests are all welcome. The full guide, with development setup and the checks CI runs, is CONTRIBUTING.md. Everyone is expected to follow the Code of Conduct.

Picking an issue

  1. Browse good first issues or help wanted.
  2. Comment to ask for it, and wait until a maintainer assigns it to you before opening a PR. One assigned issue per person at a time. PRs for issues assigned to someone else are closed.
  3. If you're stuck or the issue is unclear, ask on the issue; questions are welcome.

Opening a pull request

  1. Fork, branch, and keep one logical change per PR.
  2. Run the checks locally:
    uv run ruff format . && uv run ruff check .
    uv run mypy
    uv run pytest -m "not slow"
  3. Add tests; behaviour changes need a line under ## [Unreleased] in CHANGELOG.md.
  4. Fill in the PR template and write "Closes #N" in the description.
  5. For your first PR, a maintainer has to approve the CI run; that's a GitHub safety feature, not a judgement on your PR.

How review works

  • CI must be green before review starts.
  • Expect comments: a first round of "changes requested" is normal.
  • Changes to the public API follow the deprecation policy in the README's Stability section.
  • PRs are merged once approved, CI is green and the branch is up to date with master.

Clone this wiki locally