astral-sh / rye

a Hassle-Free Python Experience
https://rye.astral.sh
MIT License
13.47k stars 460 forks source link

Ability to show outdated dependencies in pyproject.toml #1302

Open marhoy opened 1 month ago

marhoy commented 1 month ago

First: I know about rye sync --update-all, which updates the lock-files and virtualenv with the latest dependency versions, given the restrictions in pyproject.toml and restrictions in the dependencies themselves.

Second: I'm assuming that you're using dependency-operator = "~=", which is the only thing that makes sense: The default value >= would e.g. silently update your dependencies to versions that are incompatible (e.g. from pydantic-1 to pydantic-2).

Given this, there is a need for an equivalent of poetry show -oaT, which shows you whether there are some newer versions of your dependencies, such that you can choose to manually update your restrictions in pyproject.toml, followed by a rye sync --update-all.

BTW: I'm also missing the equivalent of poetry show --tree --ansi, which shows you what packages (and versions) are required by each of your requirements. Yes, I know there is some information in the rye-generated lock-files, but it's not as detailed.

iamWing commented 3 weeks ago

Was just Googling if there's a way to have rye check outdated dependencies like how npm does it and come to second this!