Contributing¶
SkyLLH is an open-source project and contributions of all kinds are welcome. Whether you found a bug, have a feature request, or want to share an analysis tutorial, we encourage you to get involved.
Reporting issues¶
Bug reports and feature requests are tracked on the GitHub issue tracker.
When reporting a bug, please include:
A short, self-contained code snippet that reproduces the problem.
The SkyLLH version (
python -c "import skyllh; print(skyllh.__version__)").The Python version and operating system.
For feature requests, describe the use case and why the feature would be useful to the broader community.
Pull requests¶
Code contributions are made through pull requests on GitHub.
To submit a pull request:
Fork the skyllh repository and create a new branch from
master.Install the development dependencies:
pip install -e ".[dev]"Install the pre-commit hooks:
pre-commit installMake your changes and ensure the test suite passes:
pytestPush your branch and open a pull request against
master. Describe what the change does and reference any related issue.
Pull requests are reviewed by the maintainers. Feedback may be given before merging, so please check back after submission.
Contributing to tutorials¶
Tutorials are Jupyter notebooks stored under doc/sphinx/tutorials/ and
rendered into the documentation with nbsphinx.
To add a new tutorial:
Place your notebook in the appropriate subdirectory under
doc/sphinx/tutorials/.Add the notebook path (without the
.ipynbextension) todoc/sphinx/tutorials/index.rst.Ensure the notebook can be read without execution (
nbsphinx_execute = 'never'is the project default), so all output cells should be pre-computed and saved before committing.Open a pull request following the steps above.
Tutorials using IceCube’s public datasets are especially encouraged, as they help new users get started quickly.
Code style¶
SkyLLH uses ruff for linting and formatting.
The pre-commit hooks run ruff automatically on every commit. To check and
fix style issues manually:
ruff check --fix .
ruff format .