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.