Skip to main content

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 final tag 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 to final.

    If you bump the minor version from 1.0.0-beta2, it will become 1.1.0 instead of 1.1.0-final. You can still set a pre-release tag in the same command (e.g., ebump minor beta to get 1.1.0-beta0).

  • show action 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 bumpver library. It is a wrapper around it. You can still use bumpver library 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

ebump-0.1.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ebump-0.1.0-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

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

Hashes for ebump-0.1.0.tar.gz
Algorithm Hash digest
SHA256 727d9df7f01e42f88acc9e5be6d10985a34d5fae845ae51e48113fff016bd906
MD5 5bf88ac3a3ccf564bdc95f3490ebf6b8
BLAKE2b-256 c8eee42e386d517f788c6e43855d0b7160bc1c36ed6b6dfce91c3f28a2b58cbe

See more details on using hashes here.

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

Hashes for ebump-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3dfa58e20035d1aa18810f20173b03e79832822bf988a649de2a864ea585d004
MD5 e17c1dc886cf965b1f31f33e249e3ae0
BLAKE2b-256 f62e59c0eafe3f76c184c1fc0480c1d12b972c6ef84a19b13e5274b67662055c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page