uv-dynamic-versioning

0.14.0 · active · verified Thu Apr 09

uv-dynamic-versioning is a plugin for `uv` (and `hatch`) that provides dynamic versioning capabilities for Python projects, typically by deriving versions from Git VCS tags. It's built on top of `setuptools_scm` and offers various configuration options for version formatting and bumping. The current version is 0.14.0, with frequent minor releases addressing features, bug fixes, and documentation.

Warnings

Install

Imports

Quickstart

Configure dynamic versioning in your `pyproject.toml` and then use `uv build` to build your project, allowing `uv-dynamic-versioning` to automatically determine and apply the version based on your VCS tags.

# pyproject.toml
[project]
name = "my-dynamic-project"
version = "0.0.0" # This placeholder will be overwritten by uv-dynamic-versioning

[tool.uv-dynamic-versioning]
# Optional: Specify version source and style
source = "git_archive"
style = "default"

# Terminal
pip install uv uv-dynamic-versioning
git init
git add .
git commit -m "Initial commit"
git tag 0.1.0
uv build

view raw JSON →