python-poetry / python-poetry/poetry
`poetry show --solve` or enhance `--why`
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 34.3k
- Forks
- 2.5k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 30
Description
- I have searched the issues of this repo and believe that this is not a duplicate.
- I have searched the documentation and believe that my question is not covered.
Feature Request
Related: https://discord.com/channels/487711540787675139/487711540787675143/1015462018767147030
I want to see what is indirectly constraining my dependency from updating, whether that is my Python version or some other package. An example of usage would be to see why a package isn't being updated to the latest version seen on PyPi.
A format like https://discord.com/channels/487711540787675139/487711540787675143/1015470135663939614 would be nice
poetry show foo --solve:
Project requires foo >=4.2,<69
bar adds constraint <=50, union is now >=4.2,<=50
baz adds constraint >49, union is now 50
Selecting version 50 of package foo because of unified constraint >49,50
or
poetry show numpy --why --solve:
Project requires transformers which requires numpy >= 1.21.0
Latest version of numpy (1.22.2) requires Python >=3.8,<4.0, incompatible with current version (Python >=3.7,<4.0)
numpy 1.21.5 works.
Selecting version 1.21.5 of numpy because it works lol
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the poetry show --solve and poetry show numpy --why --solve entry points described in the issue, and review how dependency constraints and package versions are currently presented. Done means the command explains indirect constraints and version selection in a format comparable to the examples, including Python-version incompatibilities.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100