We are happy about all contributions! 👍
- Ensure that the bug was not already reported under GitHub issues
- If the bug wasn't already reported, open a new issue with a clear description of the problem and if possible with a minimal working example.
- please add the version number to the issue:
import gstools_core
print(gstools_core.__version__)Open a new issue with your idea or suggestion and we'd love to discuss about it.
- Fork the repo on GitHub
- Add yourself to AUTHORS.md (if you want to).
- Add tests to the bottom of the respective file.
- We use rustfmt format the code.
Please use the script
cargo fmtafter you have written your code. - We use clippy as the linter.
Please use the script
cargo clippyafter you have written your code. - Push to your fork and submit a pull request.
The steps shown here use uv, but every other Python package manager will work too.
- First, create a virtual environment with
uv venv .venvor similar, maybe you have to source it withsource .venv/bin/activate. - Next, install maturin for building the Python package with
uv tool install maturin. - Now, you can build the crate and install it as a Python module into the current venv with
maturin develop - For perfomance testing, you can compile the code optimized with
maturin develop --release. - If you install GSTools into the same venv with
uv pip install gstools, it will automatically use the local GSTools Core package installed with maturin.