bump-my-version
Version bump your Python project
What it is and what it does
Bump My Version is a maintained refactor of the bumpversion project, designed to automate version number management throughout a project's development lifecycle. It parses version strings according to configurable patterns, increments version components (major, minor, patch, or custom parts), and replaces version strings across project files. It supports semantic versioning, calendar versioning, and arbitrary custom schemes via regex-based parsing and serialization rules.
The tool integrates with source control by committing version changes and creating release tags. It reads configuration from pyproject.toml or .bumpversion.toml files and provides a CLI built on click and rich for interactive and scripted use. Common workflows include bumping versions before releases, automating pre-release numbering, and querying the next version number in build pipelines.
Use it for:
- Automate version bumping in CI/CD pipelines before building and publishing releases
- Manage pre-release versions (dev, rc, final) with automatic numbering based on commit distance
- Update version strings consistently across multiple project files (setup.py, __init__.py, docs, etc.)
- Generate release tags and commit messages automatically when cutting a new version
- Query the next version number in build scripts without modifying the project state
- Support custom versioning schemes beyond semantic versioning (e.g., calendar-based or internal numbering)
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Automates version number management in projects by parsing, incrementing, and serializing version strings across multiple files, with support for semantic versioning, calendar versioning, and custom schemes.
Yes. Bump My Version is actively maintained, has no known vulnerabilities, and solves a common release-engineering problem with low install friction. It is suitable for projects of any size that need automated, consistent version management. The permissive MIT license and broad Python version support (3.9+) make it a safe dependency. Install it if your project cuts releases and you want to eliminate manual version-number edits.
Install
bump-my-version on PyPI
pip
pip install bump-my-versionuv
uv add bump-my-versionpoetry
poetry add bump-my-versionInstalling bump-my-version
Before you install
Low friction install with a pure-Python wheel. Active maintenance (last commit 2026-08-10) and recent release (2026-08-06). Nine runtime dependencies are all well-established CLI and data-validation libraries (click, pydantic, rich, tomlkit), suggesting a stable, maintainable codebase.
License in practice
MIT License permits commercial and private use, modification, and redistribution with minimal restrictions—standard permissive terms suitable for most projects.
Quickstart
pip install bump-my-version
bump-my-version sample-config --no-prompt --destination .bumpversion.toml
bump-my-version show current_version
bump-my-version bump patch
Requires Python 3.9 or later. Git repository recommended for commit and tag operations.
Verify before relying
- Whether httpx2 is a typo for httpx and what HTTP operations the package performs
- Scope and frequency of breaking changes in the maintained fork relative to the original bumpversion project
Package facts
| License | MIT License Copyright (c) 2013-2014 Filip Noetzel Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 9 — click, httpx2, pydantic-settings, pydantic, questionary, rich, rich-click, tomlkit, wcmatch |
| Maintenance | actively maintained — 8 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 955,796/month — #4,646 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: bump_my_version-1.5.1-py3-none-any.whl
Keywords: bumpversion, release, version
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
bumpAutomatically increments version numbers in…
permissive · top 15,000 on PyPI
bump2versionA command-line tool that automates version…
permissive · top 5,000 on PyPI
bumpversionA command-line tool that automates version…
permissive · top 5,000 on PyPI
IncrementalIncremental is a CalVer version manager that…
permissive · top 5,000 on PyPI
keepachangelogParse, manipulate, and generate changelog files…
permissive · top 15,000 on PyPI
python-semantic-releaseAutomates semantic versioning and release…
permissive · top 5,000 on PyPI
release-tagAutomatically creates and optionally pushes…
permissive · top 15,000 on PyPI
tbumptbump automates version bumping in your project…
permissive · top 15,000 on PyPI
bumpverBumpVer is a CLI tool that searches for and…
permissive · top 15,000 on PyPI
inventree-ipn-generatorAutomatically generates and assigns Internal…
permissive · top 15,000 on PyPI