Contributing
Contributing
Thank you for contributing to SUP! Please:
- Use
pre-commithooks (Black, Ruff, Isort, Pyupgrade, MyPy where applicable) - Write tests (pytest + Hypothesis) and keep coverage healthy
- Include clear commit messages and small focused PRs
- Discuss larger changes via an RFC (see RFCs section)
Deprecation policy and RFCs
- Follow the Versioning and Stability policy in
versioning.md. - Any language removal or breaking change requires an RFC with:
- Problem statement, alternatives considered, migration path
- Deprecation horizon (≥1 MINOR), lint hint or auto-fix if feasible
- Impact on tooling (LSP/formatter/transpiler) and ecosystem
- Deprecations must be surfaced in diagnostics and docs; removals only in next MAJOR.
Setup:
pip install -r requirements-dev.txt # or use pipx/venv
pre-commit install
pytest -q