update-pypi-deps

Crates.ioupdate-pypi-deps
lib.rsupdate-pypi-deps
version0.1.0
sourcesrc
created_at2024-06-10 09:54:33.324229
updated_at2024-06-10 09:54:33.324229
descriptionParse pypi dependencies from pyproject.toml and output the latest versions
homepage
repositoryhttps://github.com/Nathan Henrie/update-pypi-deps
max_upload_size
id1266913
size398,972
Nathan Henrie (n8henrie)

documentation

README

update-pypi-deps

master: master branch build status

Parse pypi dependencies from pyproject.toml and output the latest versions

Crates.io Docs.rs

NB: This is a low-investment toy / hobby project.

Features

  1. Parses a pyproject.toml
  2. Pulls out the dependencies and optional-dependencies
  3. Concurrently fetches the default pypi release (usually but not always the latest version) for each dependency in each of these
  4. Prints this out in a format easy to copy and paste back into your pyproject.toml

Introduction

Sometimes I want to update all of a python's project top-level dependencies to the latest version and see if it still works. If so, I commit the change. If not, I try to sort out which of the dependencies are holding me back and why. Most sane people will just use something like poetry or pip-tools, but after getting burned by investing time to learn Pipenv, I now prefer to do it the old fashioned way.

Quickstart

$ update-pypi-deps [ -i /path/to/pyproject.toml ]

Cargo

  • Install the rust toolchain in order to have cargo installed by following this guide.
  • run cargo install update-pypi-deps

nix

$ nix run github:n8henrie/update-pypi-deps

Troubleshooting / FAQ

  • This currently doesn't handle complex version constraints (like fauxmo>0.1,<0.6); it just reuses the same contraint it is given, but with a new version number
Commit count: 0

cargo fmt