From 80fa2df7d0ee6c60b46ac3d3a6731a8b29c008c8 Mon Sep 17 00:00:00 2001 From: Daniel Weindl Date: Tue, 21 Jan 2025 15:38:56 +0100 Subject: [PATCH] Doc: release process and contributions Document release process and update contributions guide. Closes #21. Closes #22. --- doc/contributing.rst | 47 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 6 deletions(-) diff --git a/doc/contributing.rst b/doc/contributing.rst index 6ca1bd9..85316ee 100644 --- a/doc/contributing.rst +++ b/doc/contributing.rst @@ -24,14 +24,49 @@ and formatting tools before each commit, helping to catch issues early. To set up the pre-commit hooks in your local environment, follow these steps: 1. Install `pre-commit` if you haven't already: - ```sh - pip install pre-commit - ``` + + .. code-block:: sh + + pip install pre-commit + # or install it together with the other development dependencies via + pip install -e .[dev] 2. Navigate to the project directory and run: - ```sh - pre-commit install - ``` + + .. code-block:: sh + + pre-commit install 3. You're all set! The pre-commit hooks will now run automatically before each commit. + +Building the Documentation +-------------------------- + +To build the documentation locally, you can use the following commands: + +.. code-block:: sh + + # install tox if you haven't already + pip install tox + # build the documentation + tox -e doc + # this will generate the HTML documentation in doc/_build/html + # you can open the documentation in your browser manually, or with + python -c "import webbrowser; webbrowser.open('doc/_build/html/index.html')" + +Release Process +--------------- + +To ensure a smooth release process, we follow these steps: + +1. Update the release notes in ``doc/CHANGELOG.rst`` with the latest changes + and version number. + +2. Create a `new release `__ + via GitHub, following the Python versioning specifier scheme + for the tag name (e.g., ``v1.0.0``). (For more information, see the + `PyPA guide `__.) + +3. The release will be automatically built and published to PyPI and Zenodo + by GitHub Actions. The documentation will also be updated on Read the Docs.