- Source code:
src/m4b_util/contains the application It is divided into Code used directly by a subcommand is in thesubcommandsfolder, while shared code is in thehelpersfolder - Tests:
tests/.
Lint and test your changes:
flake8
pytestTo run a single test, use pytest -s -k <test_name>.
- Write comments as full sentences and end them with a period.
PRs should provide a summary, test plan and issue number if applicable, then check that:
- New tests are added when needed.
- Documentation is updated.
flake8andpytesthave been run.- The full test suite passes.
Commit messages should be a continuation of the phrase concise and written in the imperative mood. Small, focused commits are preferred.
- Tests covering new behaviour.
- Consistent style: code formatted well, imports sorted, and linted with
flake8. - Clear documentation for any public API changes.
- Clean history and a helpful PR description.