skillfed

autosemver

Tools to handle automatic semantic versioning in python

autosemver v1.0.0 99.0K downloads/30d#13,043 on PyPI5
Copyleft license GPLv3 Abandoned released

What it is and what it does

Autosemver is a setup.py integration tool that automatically derives semantic versions for Python packages by reading git repository metadata—tags, commit messages, and special markers like 'Sem-Ver:' or '* Incompatible'. You add a single line (autosemver=True) to your setup.py, and the tool generates version strings compliant with the semantic versioning standard without requiring manual version bumps in code.

The package has no runtime dependencies and is designed to run at build time. However, it is no longer maintained: the last commit was 2022-07-09 and the final release was 2020-11-13. For projects starting now, this represents a significant risk—there is no active support for compatibility with modern Python or build workflows, and any bugs or breaking changes in the ecosystem will not be addressed.

Use it for:

  • Eliminate manual version string edits in setup.py by deriving versions automatically from git history.
  • Enforce semantic versioning discipline by parsing commit messages for breaking-change markers during the build process.
  • Streamline build pipelines that need consistent, git-derived version numbers without extra configuration steps.
  • Maintain existing projects already using autosemver when migration to other tools is not feasible.

Worth the install?

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

Automatically generates semantic versions for Python packages by parsing git tags and commit messages, integrating directly into setup.py to eliminate manual version management.

No. The package is abandoned (no maintenance since 2020-11-13, last commit 2022-07-09) and carries copyleft licensing. For new projects, consider actively maintained alternatives. Only install autosemver if you are maintaining an existing codebase already using it and cannot migrate.

Install

autosemver on PyPI

pip

pip install autosemver

uv

uv add autosemver

poetry

poetry add autosemver

Installing autosemver

Before you install

High install friction: the package is abandoned (last commit 2022-07-09, no releases since 2020-11-13) and has not been maintained for over 2100 days. No runtime dependencies, but the stalled maintenance status makes it a risky choice for new projects.

License in practice

Licensed under GPLv3 (copyleft). Any project that bundles or distributes this package must also release its source code under a compatible open-source license.

Quickstart

pip install autosemver

# In setup.py:
setup(
    name='some-package',
    install_requires=['autosemver'],
    setup_requires=['autosemver'],
    autosemver=True,
)

Requires git repository with semantic version tags and/or commit messages containing 'Sem-Ver:' or '* Incompatible' markers to function; git must be installed and the package must be run from within a git repository.

Verify before relying

  • Whether the package works with modern Python versions (python_support unspecified in metadata)
  • Current compatibility with recent build tools and git workflows
  • Whether the package's git-based version extraction still functions reliably in contemporary CI/CD environments

Package facts

License GPLv3 (copyleft)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 2,100 days since the last release
Last repo commit
First released
Downloads 99,013/month — #13,043 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: autosemver-1.0.0.tar.gz

Tags

automatic semantic versioninggit-based version generationsemantic version from git tagspython package versioning automationsetup.py version managementsemver from commit messages
version-managementgit-integrationabandoned

More Build Tools packages