Contributing¶
Contributions are made through pull requests. Build and test locally, keep the source clean, and follow the project conventions below.
Before You Commit¶
Run make lint to check the source. It bundles five checks: cformat (C++
formatting), cinclude (#include ordering), flake8 (Python style and the
79-character line limit), checkascii (ASCII-only bytes), and checktws (no
trailing whitespace). All sources are UTF-8, Unix LF, ASCII-only, and carry a
modeline at the end of file. The Coding Style Guide page is the canonical reference.
Add tests for new behaviour. Python tests in tests/ are preferred; add a C++
gtest only when the behaviour cannot or should not be exercised from Python.
See Testing for how to run them.
Pull Requests¶
Reference the related issue without closing keywords – write “Related to #725” rather than “fixes #725”, so that issue management is not driven by commit or PR text. Keep the subject concise and describe the change clearly.