1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
# Contributing
## Local development checks
Run these before opening a PR:
```sh
./.venv/bin/pytest tests/ --cov=simplebayes --cov-fail-under=100 -v
./.venv/bin/flake8 simplebayes tests
./.venv/bin/pylint simplebayes tests --fail-under=10
```
Optional but recommended:
```sh
./.venv/bin/pytest tests/test_api_endpoints.py -v
./.venv/bin/pytest tests/test_concurrency.py -v
```
## CI parity
CI should run:
- full tests with 100% coverage gate
- lint checks
- packaging/build validation
When API behavior changes, include endpoint contract tests for status codes and payloads.
## Release and versioning
- Use semantic version tags (for example, `v2.2.0`).
- Keep backward compatibility unless intentionally releasing a breaking change.
- If breaking API or contract changes are introduced, bump the major version before release tagging.
|