Comparison with other tools

Alternatives

General information

Package

Latest release

License

PEP 440 compatible

setuptools-git-versioning

2026

MIT

yes

setuptools-scm

2026

MIT

yes

versioningit

2025

MIT

yes

dunamai

2026

MIT

yes

versioneer

2023

Public domain

yes

miniver

2021

Public domain

no

setuptools-git-ver

2019

MIT

no

VCS support

Package

Git

Mercurial

Can be used in git submodules

Support for git-archive

setuptools-git-versioning

yes

no

yes

yes

setuptools-scm

yes

yes

yes

yes

versioningit

yes

yes

no

yes

dunamai

yes

yes

no

no

versioneer

yes

no

no

no

miniver

yes

no

no

no

setuptools-git-ver

yes

no

no

no

Development

Package

Documentation

Tests

Changelog

CI/CD

pre-commit

setuptools-git-versioning

site

yes

yes

yes

yes

setuptools-scm

site

yes

yes

yes

yes

versioningit

site

yes

yes

yes

yes

dunamai

site

yes

yes

yes

yes

versioneer

repo

yes

yes

yes

no

miniver

readme

yes

yes

yes

no

setuptools-git-ver

readme

no

no

no

no

Python version support

Package

Python support

Type hints

PyPy support

setuptools-git-versioning

3.7+

yes

yes

setuptools-scm

3.10+

yes

unknown

versioningit

3.8+

yes

yes

dunamai

3.5+

yes

unknown

versioneer

3.7+

no

unknown

miniver

3.5+

no

unknown

setuptools-git-ver

3.7+

no

unknown

OS support

Package

Linux

MacOS

Windows

setuptools-git-versioning

yes

yes

yes

setuptools-scm

yes

yes

yes

versioningit

yes

yes

yes

dunamai

yes

yes

yes

versioneer

yes

yes

yes

miniver

yes

yes

yes

setuptools-git-ver

yes

yes

yes

Configuration

Package

pyproject.toml

setup.py

setup.cfg

setuptools-git-versioning

yes

yes

no

setuptools-scm

yes

deprecated

deprecated

versioningit

yes

yes

no

dunamai

yes

yes

no

versioneer

no

deprecated

yes

miniver

no

yes

no

setuptools-git-ver

no

yes

no

Substitutions

Package

Commits count

Short SHA

Full SHA

setuptools-git-versioning

yes

yes

yes

setuptools-scm

yes

yes

no

versioningit

yes

yes

yes

dunamai

yes

yes

yes

versioneer

yes

yes

yes

miniver

yes

yes

no

setuptools-git-ver

yes

yes

no

Package

Branch

Branch name escape

setuptools-git-versioning

yes

yes

setuptools-scm

no

no

versioningit

yes

no

dunamai

yes

yes

versioneer

no

no

miniver

no

no

setuptools-git-ver

no

no

Package

Tag timestamp

Commit timestamp

Current timestamp

Env variable

setuptools-git-versioning

no

no

yes

yes

setuptools-scm

no

no

no

no

versioningit

yes

yes

yes

no

dunamai

no

yes

no

no

versioneer

no

no

no

no

miniver

no

no

no

no

setuptools-git-ver

no

no

no

no

Tag-based versioning

Package

Post (distance) version

Dirty version

Initial version

setuptools-git-versioning

yes

yes

yes

setuptools-scm

yes

yes

no

versioningit

yes

yes

yes

dunamai

yes

yes

no

versioneer

yes

no

no

miniver

no

no

no

setuptools-git-ver

yes

yes

no

Package

Remove tag prefix

Remove tag suffix

Select only tags matching template

setuptools-git-versioning

yes

yes

yes

setuptools-scm

no

no

no

versioningit

yes

yes

yes

dunamai

no

no

yes

versioneer

no

no

no

miniver

no

no

no

setuptools-git-ver

no

no

no

File-based versioning

Package

Read from file

Write to file

Use file commit history

setuptools-git-versioning

yes

no (but can be done using bash script)

yes

setuptools-scm

no

yes

no

versioningit

no

yes

no

dunamai

no

no (but can be done using bash script)

no

versioneer

yes

yes

no

miniver

no

yes

no

setuptools-git-ver

no

no

no

Callback-based versioning

Package

Use callback function to get version number

Use module variable as version number

setuptools-git-versioning

yes

yes

setuptools-scm

no

no

versioningit

yes

no

dunamai

no

no

versioneer

no

no

miniver

no

no

setuptools-git-ver

no

no

Misc

Package

Reuse functions in your code

Supports extensions

setuptools-git-versioning

yes

no

setuptools-scm

yes (discouraged)

no

versioningit

yes

yes

dunamai

yes

no

versioneer

yes

no

miniver

yes

no

setuptools-git-ver

no

no