bump-dependencies
Bump Python package dependencies
Update dependency specifiers in pyproject.toml to latest compatible versions
- Copyright (c) 2025-2026 Corey Goldberg
- Development: GitHub
- Download/Install: PyPI
- License: MIT
About:
bump_dependencies is a Python CLI program that generates a new packaging
configuration file (pyproject.toml) file with updated compatible package
dependencies.
- for more information on declaring dependencies in a configuration file, see the PyPA pyproject.toml specification
- for more information on version specifiers, see PEP 440 and the PyPA Version Specifiers specification
- for more information on dependency specifiers, see PEP 508 and the PyPA Dependency Specifiers specification
- for more information on dependency groups, see PEP 735 and the PyPA Dependency Groups specification
Requirements:
- Python 3.10+
Installation:
Install from PyPI:
pip install bump-dependencies
CLI Options:
usage: bump_dependencies [-h] [--dry-run] [--path PATH]
options:
-h, --help show this help message and exit
--dry-run don't write changes to pyproject.toml
--path PATH path to pyproject.toml (defaults to current directory)
Usage:
Install from PyPI with pipx, Run:
pipx install bump-dependencies
bump_dependencies
Clone Repo, Create/Activate Virtual Environment, Install from Source, Run:
git clone git@github.com:cgoldberg/bump-dependencies.git
cd ./bump-dependencies
python3 -m venv venv
source venv/bin/activate
pip install .
bump_dependencies
Example:
If your pyproject.toml contains this:
[project]
... some metadata ...
dependencies = ["matplotlib~=3.9", "requests==2.29.0"]
[project.optional-dependencies]
socks = ["PySocks>=1.5.6"]
[dependency-groups]
dev = ["black==23.9.1", "ruff==0.9.5"]
test = ["pytest>8", "pytest-mock>=3.11"]
It will update dependency specifiers to the latest compatible versions available on PyPI:
[project]
... some metadata ...
dependencies = ["matplotlib~=3.10.3", "requests==2.32.4"]
[project.optional-dependencies]
socks = ["PySocks>=1.7.1"]
[dependency-groups]
dev = ["black==25.1.0", "ruff==0.12.1"]
test = ["pytest>8.4.1", "pytest-mock>=3.14.1"]
Which sections of pyproject.toml will be updated?
It will update dependency specifiers listed in various sections of pyproject.toml:
dependencieslist from[project]section- dependency lists from
[project.optional-dependencies]section - dependency lists from
[dependency-groups]section
Which dependency specifiers will be updated?
- will only update dependency specifiers with version identifier
containing comparison operator:
==,===,~=,>,>=- example:
foo==1.0.0foo~=1.0foo>=1
- example:
- will not update dependency specifiers with version identifier
containing comparison operator:
<,<=,!=- example:
foo<2.0foo>=1,<2foo > 1.0, != 1.0.1
- example:
- will not update unversioned dependency specifiers
- example:
foofoo[bar]
- example:
- will not update direct reference dependency specifiers
- example:
foo @ https://github.com/foo/foo/archive/1.0.0.zipfoo @ file:///builds/foo-1.0.0-py3-none-any.whl
- example:
Supported comparison operators in version identifiers:
==: version matching===: arbitrary equality~=: compatible release>: exclusive ordered comparison>=: inclusive ordered comparison
Unsupported comparison operators in version identifiers:
<: exclusive ordered comparison<=: inclusive ordered comparison!=: version exclusion
Release files for bump-dependencies 0.1.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bump_dependencies-0.1.10.tar.gz | 8.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bump_dependencies-0.1.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.6 kB
Release files / bump_dependencies-0.1.10.tar.gz
| Download URL | bump_dependencies-0.1.10.tar.gz |
|---|---|
| Size | 8.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3f1c5b1124f15c69e3c37fb89767cb5013521dc0657532f64e4a056a90269267
|
|
BLAKE2b-256 checksum How to use checksums |
c9c69246211be5181c24b4d7839feed7e53ae6eb0a33ceea66d185662dfee4ee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / bump_dependencies-0.1.10-py3-none-any.whl
| Download URL | bump_dependencies-0.1.10-py3-none-any.whl |
|---|---|
| Size | 7.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e52eda6f2fb64b274dabeab87865e9553f3dabedb654f13f8c1a0e8d114bc4d0
|
|
BLAKE2b-256 checksum How to use checksums |
46815c90b5e7e39f74a09a75eedd7ceda07ff407b12b392d520c0a6219626979
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|