diff --git a/.bumpversion.toml b/.bumpversion.toml new file mode 100644 index 0000000..79ad09b --- /dev/null +++ b/.bumpversion.toml @@ -0,0 +1,26 @@ +# SPDX-FileCopyrightText: : 2024 Ludwig Hülk © Reiner Lemoine Institut +# SPDX-License-Identifier: MIT + +[tool.bumpversion] +current_version = "0.2.0" +parse = "(?P\\d+)\\.(?P\\d+)\\.(?P\\d+)" +serialize = ["{major}.{minor}.{patch}"] +search = "{current_version}" +replace = "{new_version}" +regex = false +ignore_missing_version = false +ignore_missing_files = false +tag = false +sign_tags = false +tag_name = "v{new_version}" +tag_message = "Bump version: {current_version} → {new_version}" +allow_dirty = false +commit = true +message = "Bump version: {current_version} → {new_version}" +commit_args = "" + +[[tool.bumpversion.files]] +filename = "pyproject.toml" + +[[tool.bumpversion.files]] +filename = "CITATION.cff" diff --git a/docs/development/release/index.md b/docs/development/release/index.md index 5925b70..c15430a 100644 --- a/docs/development/release/index.md +++ b/docs/development/release/index.md @@ -9,3 +9,16 @@ The software release has four main goals: The [RELEASE_PROCEDURE.md](https://github.com/rl-institut/super-repository/blob/production/RELEASE_PROCEDURE.md) contain detailed instructions to do a release. + +## Automated Versioning with Bumpversion + +**Bumpversion** is a tool for automated version management in software projects.
+It ensures consistent version updates across files and documentation.
+By specifying a part to increment (major, minor, or patch), Bumpversion updates +the version number and creates a Git commit or tag automatically. +This streamlines release workflows, reduces human error, and keeps project versioning synchronized. + +Install package: +💻 `pip install --upgrade bumpversion` + +For configuration, create a `.bumpversion.toml` file to specify versioning rules and affected files. diff --git a/requirements.txt b/requirements.txt index fd95412..2a7e4f9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,6 +2,7 @@ # SPDX-FileCopyrightText: 2023 Jonas Huber © Reiner Lemoine Institut # SPDX-License-Identifier: MIT +bumpversion mkdocs mkdocs-material mkdocstrings