Skip to main content

pyprojects.toml dependencies version manager

Project description

Verset

A handy tool to manage dependencies of your python project. Meant to be used with poetry, but can adapt to other tools with minimal effort.

Usage

Commands:

  • comment: (default) update comments to match versions currently in use
  • clear: clear comments
  • apply: apply versions in comment, so they are tilde (~) required version
  • relax: apply versions in comment, so they are caret (^) required version
  • up: set every version as "*"

Example

Given those dependencies

[tool.poetry.dependencies]
docutils = ">= 0.12"
python = ">=3.8"

python-dateutil = {version="^2.8.2", optional=true}
jira = {version="^3.1.1", optional=true}
six = {version="^1.16", optional=true}
pygments = {version="^2.12.0", optional=true}

running verset in the project folder will update it to:

[tool.poetry.dependencies]
docutils = ">= 0.12" # 0.19
python = ">=3.8" # 3.10.10

python-dateutil = {version="^2.8.2", optional=true} # 2.8.2
jira = {version="^3.1.1", optional=true} # Not found
six = {version="^1.16", optional=true} # 1.16.0
pygments = {version="^2.12.0", optional=true} # 2.14.0

then, running verset apply in the project folder will update it to:

[tool.poetry.dependencies]
docutils = "~0.19" # >= 0.12
python = "~3.10.10" # >=3.8

python-dateutil = {version="~2.8.2", optional=true} # ^2.8.2
jira = {version="^3.1.1", optional=true} # Not found
six = {version="~1.16.0", optional=true} # ^1.16
pygments = {version="~2.14.0", optional=true} # ^2.12.0

and if you run it again, you are back to the original version (as tilde):

[tool.poetry.dependencies]
docutils = "~0.12" # ~0.19
python = "~3.8" # ~3.10.10

python-dateutil = {version="~2.8.2", optional=true} # ~2.8.2
jira = {version="^3.1.1", optional=true} # Not found
six = {version="~1.16", optional=true} # ~1.16.0
pygments = {version="~2.12.0", optional=true} # ~2.14.0

if you would like the more inclusive carret versions, just use veset relax:

[tool.poetry.dependencies]
docutils = "^0.19" # ~0.12
python = "^3.10.10" # ~3.8

python-dateutil = {version="^2.8.2", optional=true} # ~2.8.2
jira = {version="^3.1.1", optional=true} # Not found
six = {version="^1.16.0", optional=true} # ~1.16
pygments = {version="^2.14.0", optional=true} # ~2.12.0

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

verset-0.1.1.tar.gz (2.4 kB view details)

Uploaded Source

Built Distribution

verset-0.1.1-py3-none-any.whl (3.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: verset-0.1.1.tar.gz
  • Upload date:
  • Size: 2.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.10 Linux/6.2.10-zen1-1-zen

File hashes

Hashes for verset-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2a1fdb61a6417ef47c34d793eb4e68a1a66f6a56608065857cf9be6fd9df3a0b
MD5 9d3fce18857308c59f992d0e88122812
BLAKE2b-256 2e4fe19bc15f056f6e6a346215b4e7024f9e15751a19a9a82570cd63c21ce33f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verset-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.10 Linux/6.2.10-zen1-1-zen

File hashes

Hashes for verset-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1efbca721beb5b340118df71679258626e3c9e0630a10d9e6528c2826119aa3a
MD5 abfbde5484850af145bfa63da5c47544
BLAKE2b-256 2937c005f8e40066f97bd6add384c1d54fcc96d229d0b16a3019ac2f39a8d63e

See more details on using hashes here.

Supported by

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