| hide | |
|---|---|
|
To set up a development environment for quatrex, we recommend using
conda. You can follow similar steps as in
the installation instructions, with
one key difference being that you should install the quatrex package
in editable mode.
pip install --editable .- Open an issue on GitHub describing the feature or bug you want to address.
- Create a new branch for your feature or bugfix.
- Make your changes and commit them with clear commit messages.
- Push your branch to GitHub and open a pull request.
- Wait for code review and address any feedback.
As described in the installation instructions, we provide several example configurations, input files, and reference outputs that we use for testing and development.
This data is tracked using Git LFS. We do not use GitHub's built-in large file storage, as it has some bandwidth limitations. Instead, we use ETH Zürich's GitLab instance to host the LFS files in this project.
To update the LFS files, you will need to have write access to the GitLab project. The files can be read without authentication.
- Follow PEP 8 style guidelines for Python code. We recommend using black for automatic code formatting.
- Write clear and concise docstrings for all functions and classes in
accordance with the NumPy documentation
style. You can
also make references to other parts of the API documentation using
standard markdown syntax, that
mkapiwill automatically convert for you. - Try to include unit tests for new features and bug fixes. We use pytest as our testing framework, including pytest-mpi for MPI-based tests.
- Try to ensure that all tests pass locally, including style checks. We use pre-commit to manage our pre-commit hooks.
The documentation is built using the Material for
mkdocs framework with the
mkapi plugin to automatically
generate API reference documentation. The documentation is automatically
built and hosted on GitHub Pages. To build the documentation locally,
run:
mkdocs serve