Contributing¶
Welcome to cellarr-se. Contributions of all kinds are appreciated — bug reports, documentation improvements, and code changes.
All contributors are expected to be open, considerate, reasonable, and respectful. When in doubt, the Python Software Foundation’s Code of Conduct is a good reference.
Issue Reports¶
If you encounter a bug or have a feature request, please open an issue on the issue tracker. Include:
Your operating system and Python version
Steps to reproduce the problem
A minimal example that demonstrates the issue
Documentation Improvements¶
Documentation lives in the docs/ folder alongside the source code. To build it locally:
tox -e docs
python3 -m http.server --directory docs/_build/html
Then open http://localhost:8000 in your browser.
Code Contributions¶
Set up a development environment¶
git clone https://github.com/CellArr/cellarr-se.git
cd cellarr-se
pip install -e ".[testing]"
Or with micromamba/conda:
micromamba create -n cellarr-se -c conda-forge python=3.11 pip -y
micromamba run -n cellarr-se pip install -e ".[testing]"
Workflow¶
Open an issue to discuss non-trivial changes before starting work.
Create a branch:
git checkout -b my-feature
Make your changes. Add unit tests for new behaviour.
Run the test suite:
pytest tests/ # or via tox tox
Run the linter:
ruff check src/ tests/ ruff format --check src/ tests/
Commit and push, then open a pull request against
main.
Releases (maintainers)¶
Ensure all tests pass on
main.Tag the commit:
git tag v0.1.0 && git push origin v0.1.0The CI pipeline will build the wheel and publish to PyPI automatically on tag push. Requires
TWINE_USERNAMEandTWINE_PASSWORDset as CI/CD variables (TWINE_USERNAME=__token__,TWINE_PASSWORD=<your-pypi-token>).
Note¶
This project was scaffolded with PyScaffold and BiocSetup.