Skip to main content

Bump Python package dependencies in pyproject.toml

Project description

bump-dependencies

Python - bump your package dependencies

Update dependency specifiers in pyproject.toml to latest versions



Installation:

Install from PyPI:

pip install bump-dependencies

Usage:

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)

About:

bump_dependencies is a Python CLI program that generates a new packaging configuration file (pyproject.toml) file with updated package 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 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:

  • dependencies list 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.0
      • foo~=1.0
      • foo>=1
  • will not update dependency specifiers with version identifier containing comparison operator: <, <=, !=
    • example:
      • foo<2.0
      • foo>=1,<2
      • foo > 1.0, != 1.0.1
  • will not update unversioned dependency specifiers
    • example:
      • foo
      • foo[bar]
  • will not update direct reference dependency specifiers
    • example:
      • foo @ https://github.com/foo/foo/archive/1.0.0.zip
      • foo @ file:///builds/foo-1.0.0-py3-none-any.whl

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

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

bump_dependencies-0.1.1.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

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

bump_dependencies-0.1.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file bump_dependencies-0.1.1.tar.gz.

File metadata

  • Download URL: bump_dependencies-0.1.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for bump_dependencies-0.1.1.tar.gz
Algorithm Hash digest
SHA256 8d38e31f5bd80c6c833e403e6103bae9d180cee0e19ab7839d40e887b092f10f
MD5 c69cd02ba822f1eb540bc4f90df26b64
BLAKE2b-256 c297aec96e8762a21647b23236a269c11958f7a622af5c596504ebbcf86ccd64

See more details on using hashes here.

File details

Details for the file bump_dependencies-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for bump_dependencies-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 80a0b4ae13b1b13b017c4e76fc49904caebba52bcd76208954477f065107ddb4
MD5 57c636e2abfcc2536b5f33d0ede9d479
BLAKE2b-256 cce0c4b97e472f71ad73a2ca149cb7d99d8df8f02ad2d1b480d031241aef5e33

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