pypa/setuptools_scm

the blessed package to manage your versions by scm tags

952

stars

2,597

commits

Python

primary language

Sep 7, 2026

updated

setuptools-scm.readthedocs.io/en/latest/
metadata
packaging
python
version-control

README

setuptools-scm Monorepo

This is the monorepo for the setuptools-scm ecosystem, containing two main projects:

Projects

setuptools-scm

The main package that extracts Python package versions from Git or Mercurial metadata and provides setuptools integration.

Read setuptools-scm documentation →

vcs-versioning

Core VCS versioning functionality extracted as a standalone library that can be used independently of setuptools.

Read vcs-versioning documentation →

Development

This workspace uses uv for dependency management.

Setup

# Install all packages with all dependency groups (tests, docs, etc.)
uv sync --all-packages --all-groups

Running Tests

# Run all tests
uv run pytest -n12

# Run tests for setuptools-scm only
uv run pytest setuptools-scm/testing_scm -n12

# Run tests for vcs-versioning only
uv run pytest vcs-versioning/testing_vcs -n12

Building Documentation

Documentation is shared across projects:

uv run mkdocs serve

License

Both projects are distributed under the terms of the MIT license.

Contributors

(top 30 of 146)

RonnyPfannschmidt

1,920 commits

jaraco

64 commits

pypa/setuptools_scm

the blessed package to manage your versions by scm tags

952

stars

2,597

commits

Python

primary language

Sep 7, 2026

updated

setuptools-scm.readthedocs.io/en/latest/
metadata
packaging
python
version-control

README

setuptools-scm Monorepo

This is the monorepo for the setuptools-scm ecosystem, containing two main projects:

Projects

setuptools-scm

The main package that extracts Python package versions from Git or Mercurial metadata and provides setuptools integration.

Read setuptools-scm documentation →

vcs-versioning

Core VCS versioning functionality extracted as a standalone library that can be used independently of setuptools.

Read vcs-versioning documentation →

Development

This workspace uses uv for dependency management.

Setup

# Install all packages with all dependency groups (tests, docs, etc.)
uv sync --all-packages --all-groups

Running Tests

# Run all tests
uv run pytest -n12

# Run tests for setuptools-scm only
uv run pytest setuptools-scm/testing_scm -n12

# Run tests for vcs-versioning only
uv run pytest vcs-versioning/testing_vcs -n12

Building Documentation

Documentation is shared across projects:

uv run mkdocs serve

License

Both projects are distributed under the terms of the MIT license.

Contributors

(top 30 of 146)

RonnyPfannschmidt

1,920 commits

jaraco

64 commits

Languages

Python

100.0%