skillfed

vcver

provide package versions with version control data.

vcver v0.2.12 498.9K downloads/30d#6,328 on PyPI1
Permissive license Abandoned released

What it is and what it does

vcver is a setup tool that automatically generates version strings for Python packages by reading version control metadata. It produces two types of versions: development versions (e.g., 1.1.dev10+master.abc123) that include commit count, branch, and change ID for debugging, and release versions (e.g., 1.1) taken directly from git tags. The tool is designed to work with setuptools during the build process and writes a VERSION file that can be included in source distributions.

The package solves the problem of keeping package versions in sync with version control without manual version bumping in setup.py. It distinguishes between release branches (where versions come from tags) and development branches (where versions are zeroed out to prevent accidental installation of development builds). All generated versions comply with PEP440.

Use it for:

  • Automatically version Python packages from git tags without manually updating setup.py for each release
  • Generate development version strings that encode branch and commit information for debugging build artifacts
  • Prevent accidental installation of development branch versions by zeroing out non-release branch versions
  • Include version metadata in source distributions via a generated VERSION file for offline builds

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

vcver generates version strings for Python packages by extracting version information from version control systems, producing development versions with commit metadata and release versions from tags.

No. The package is abandoned (last release 2021-08-10, no commits since) and targets legacy setuptools workflows. Only install if you have an existing project already using vcver and cannot migrate to actively maintained alternatives.

Install

vcver on PyPI

pip

pip install vcver

uv

uv add vcver

poetry

poetry add vcver

Installing vcver

Before you install

Low install friction with a single lightweight dependency (packaging). However, the package is abandoned—last release was 2021-08-10 with no commits since then. Use only if your project's versioning approach aligns with its design and you can maintain it yourself if needed.

License in practice

Licensed under MIT (permissive), so there are no restrictions on commercial or proprietary use. You may use, modify, and distribute the package freely as long as you retain the license notice.

Quickstart

# In setup.py
import vcver
setup(
    name='mypackage',
    setup_requires=['vcver'],
    vcver={'is_release': False, 'path': os.path.dirname(__file__)}
)
# vcver generates a VERSION file with the computed version string

Requires a version control repository (git, hg, etc.) or a VERSION file in the package directory; vcver will not work in a bare source tree without SCM metadata.

Verify before relying

  • Whether vcver works correctly with Python versions released after 2021-08-10, given the last release date and abandoned status
  • Current compatibility with modern setuptools build workflows versus the legacy setup.py-only approach documented

Package facts

License not declared (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — packaging
Maintenance abandoned — 1,830 days since the last release
Last repo commit
First released
Downloads 498,868/month — #6,328 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: vcver-0.2.12-py2.py3-none-any.whl

Development Status :: 4 - BetaLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.5Topic :: System :: Software Distribution

Tags

version control based versioningautomatic version from git tagsvcver version generationsetuptools version from scmdevelopment version stringspep440 version from vcs
version-control-integrationsetuptools-plugin

More Software Distribution packages