Contributing & Docstrings#
Contributing#
Note
This project is currently not accepting external contributions as it is part of ongoing thesis work. Once the thesis is submitted, contribution guidelines will be published.
For bug reports and feature requests, please open an issue on GitHub.
Pull Request Guidelines#
When contributions are open:
Fork the repository
Create a feature branch (
git checkout -b feature/my-feature)Make changes and add tests
Run the full test suite (
pytest)Run code quality checks (
ruff format . && ruff check --fix . && mypy)Commit with a descriptive message
Push and open a pull request
Docstring Style#
BAM Engine uses NumPy-style docstrings. See the NumPy docstring guide for the format specification.
Example:
def my_function(param1: float, param2: int) -> bool:
"""
Short description of the function.
Longer description if needed.
Parameters
----------
param1 : float
Description of param1.
param2 : int
Description of param2.
Returns
-------
bool
Description of return value.
Examples
--------
>>> my_function(1.0, 2)
True
"""
pass
Release Checklist#
Update version in
src/bamengine/__init__.pyUpdate
release_history.rstRun full test suite:
pytestRun code quality checks:
ruff format . && ruff check --fix . && mypyBuild docs:
cd docs && sphinx-build -b html . _build/htmlTag release:
git tag vX.Y.ZBuild and publish:
python -m build && twine upload dist/*