Easy version bumping
Project description
ebump
Easy version bumping CLI for python projects.
ebump is a simple (opinionated) wrapper around the
bumpver library that provides an
easy-to-use CLI for version bumping in Python projects. It focuses on simplicity
and ease of use, making it ideal for developers and CI/CD pipelines and scripts.
Quick showcase
# Bump patch/minor/major versions
ebump patch # Example: 1.0.0 -> 1.0.1
ebump minor # Example: 1.0.1 -> 1.1.0
ebump major # Example: 1.5.4 -> 2.0.0
# Bumping (major/minor/patch) resets pre-release tag to final
ebump minor # Example: 1.0.0-beta2 -> 1.1.0
# Bump pre-release tags
ebump alpha # Example: 1.0.0-alpha4 -> 1.0.0-alpha5
ebump beta # Example: 1.0.0-alpha5 -> 1.0.0-beta0
ebump rc # Example: 1.0.0-beta3 -> 1.0.0-rc2
# Combined bump
ebump minor beta # Example: 1.0.0 -> 1.1.0-beta0
# Bump the current pre-release tag number
ebump tag # Example: 1.0.0-beta0 -> 1.0.0-beta1
# Make/ensure final version
ebump final # Example: 1.0.0-rc2 -> 1.0.0
# Running in dry mode (no file changes)
ebump patch --dry
Instalation / Usage
You can use ebump directly via uvx (recommended):
uvx ebump [PARAMS ...]
Or install it via pip:
pip install ebump
Why ebump?
Design differences with bumpver CLI:
-
Bumping
finaltag doesn't throw errors if the version is already final.Useful for CI/CD pipelines where you want to ensure the version is final without worrying about its current state.
-
Bumping one of the main version parts (
patch,minor,major) automatically resets any pre-release tag tofinal.If you bump the
minorversion from1.0.0-beta2, it will become1.1.0instead of1.1.0-final. You can still set a pre-release tag in the same command (e.g.,ebump minor betato get1.1.0-beta0). -
showaction to print the raw current version without any other text (useful for scripts). -
Simplified CLI with fewer options, focusing on the most common use cases.
What ebump is NOT
- It is not a replacement for
bumpverlibrary. It is a wrapper around it. You can still usebumpverlibrary directly for more complex use cases. - It does not aim to cover all use cases. It focuses on simplicity and ease of use.
🤝 Contributing
Contributions are welcome! Please ensure all QA checks and tests pass before opening a pull request.
🚀 Project starter provided by Cookie Pyrate
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ebump-0.1.0.tar.gz.
File metadata
- Download URL: ebump-0.1.0.tar.gz
- Upload date:
- Size: 6.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Manjaro Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
727d9df7f01e42f88acc9e5be6d10985a34d5fae845ae51e48113fff016bd906
|
|
| MD5 |
5bf88ac3a3ccf564bdc95f3490ebf6b8
|
|
| BLAKE2b-256 |
c8eee42e386d517f788c6e43855d0b7160bc1c36ed6b6dfce91c3f28a2b58cbe
|
File details
Details for the file ebump-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ebump-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Manjaro Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3dfa58e20035d1aa18810f20173b03e79832822bf988a649de2a864ea585d004
|
|
| MD5 |
e17c1dc886cf965b1f31f33e249e3ae0
|
|
| BLAKE2b-256 |
f62e59c0eafe3f76c184c1fc0480c1d12b972c6ef84a19b13e5274b67662055c
|