bump
Bumps package version numbers
What it is and what it does
Bump is a command-line tool that automates version number increments in Python package metadata files. It reads version strings from setup.py and pyproject.toml, applies semantic versioning rules (major, minor, patch), and writes the updated version back to both files in sync. The tool supports configuration files (.bump or setup.cfg) to avoid repeating command-line options, and integrates with modern packaging tools like uv, poetry, and flit while maintaining backward compatibility with traditional setup.py-only projects.
You run it as a simple command in your project root—bump returns the new version number so you can capture it for release workflows, git tags, or environment variables. It handles pre-release identifiers and local version segments, and can reset subversions (e.g., bumping major from 1.2.3 to 2.0.0 instead of 2.2.3). The package depends on click for CLI handling, packaging for version parsing, toml for configuration, and first for utility functions.
Use it for:
- Automate version bumps in CI/CD pipelines before building and publishing releases.
- Keep setup.py and pyproject.toml synchronized during development without manual editing.
- Generate version numbers for git tags and release notes in shell scripts or Makefiles.
- Enforce consistent semantic versioning across a project without manual version string management.
- Configure per-project bump rules in .bump or setup.cfg to standardize team workflows.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Automatically increments version numbers in setup.py and pyproject.toml files, supporting semantic versioning with options to bump major, minor, or patch versions.
Yes, if you manage Python packages and want to automate version bumping. The tool is lightweight, permissively licensed, and has no known vulnerabilities. Install friction is low and maintenance is current. The aging status (205 days since last release) is not a concern given the recent commit and stable feature set; version bumping is a mature, narrow problem. Suitable for both traditional setup.py and modern pyproject.toml workflows.
Install
bump on PyPI
pip
pip install bumpuv
uv add bumppoetry
poetry add bumpInstalling bump
Before you install
Low friction to install; the package has aged since its last release 205 days ago but remains actively maintained with a recent commit. Four lightweight runtime dependencies (click, first, packaging, toml) pose no installation burden.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it suitable for most development workflows.
Quickstart
$ pip install bump
$ bump
1.0.1
Or with options:
$ bump --minor --reset
2.0.0
Requires Python 3.10 or later; must be run in a directory containing setup.py or pyproject.toml with a version field.
Verify before relying
- Whether the tool handles version strings in formats beyond PEP 440 or custom version schemes.
- Performance characteristics when processing large or complex package metadata files.
- Behavior when both setup.py and pyproject.toml have conflicting version values.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — click, first, packaging, toml |
| Maintenance | aging — 205 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 124,189/month — #11,883 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: bump-1.4.0-py3-none-any.whl
Keywords: bump, increment, package, 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
bump-my-versionAutomates version number management in projects…
permissive · top 5,000 on PyPI
pip-upgraderAn interactive CLI tool that upgrades Python…
permissive · top 15,000 on PyPI
tbumptbump automates version bumping in your project…
permissive · top 15,000 on PyPI
bumpversionA command-line tool that automates version…
permissive · top 5,000 on PyPI
bump2versionA command-line tool that automates version…
permissive · top 5,000 on PyPI
semverParse, compare, and manipulate semantic version…
permissive · top 1,000 on PyPI
bumpverBumpVer is a CLI tool that searches for and…
permissive · top 15,000 on PyPI
version-parserParses version strings in multiple formats…
permissive · top 15,000 on PyPI
release-tagAutomatically creates and optionally pushes…
permissive · top 15,000 on PyPI
node-semverParses and compares semantic version strings…
permissive · top 5,000 on PyPI