python-poetry / python-poetry/poetry
(🐞) `poetry install` keeps installing things that are already installed, when they were previously a git dependency
Open
Nobody has claimed this yet.
area/installer
kind/bug
status/confirmed
- Dominant language
- Python
- Stars
- 34.3k
- Forks
- 2.5k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 30
Description
- Poetry version: 1.2.2
- Python version: 3.10
- OS version and name: Windows 10 / wsl Ubuntu 22.04
- pyproject.toml:
[tool.poetry]
name = "poetry-test"
version = "0.1.0"
description = ""
authors = [""]
[tool.poetry.dependencies]
python = "^3.10"
pendulum = { git = "https://github.com/sdispater/pendulum.git", rev = "9d06ff3c9805869ccfc4163172b658482ec50087" }
#pendulum = "^2"
- [🚀] I am on the latest stable Poetry version, installed using a recommended method.
- [🚀] I have searched the issues of this repo and believe that this is not a duplicate.
- [🚀] I have consulted the FAQ and blog for any relevant entries or release notes.
- [🚀] If an exception occurs when executing a command, I executed it again in debug mode (
-vvvoption) and have included the output below.
Issue
Steps:
👉 poetry update
Updating dependencies
Resolving dependencies... (0.7s)
Package operations: 5 installs, 0 updates, 0 removals
• Installing six (1.16.0)
• Installing python-dateutil (2.8.2)
• Installing time-machine (2.8.2)
• Installing tzdata (2022.6)
• Installing pendulum (3.0.0a0 9d06ff3)
At this point we update the pendulum dependency to "^2", then continue
👉 poetry update
Updating dependencies
Resolving dependencies... (0.7s)
Package operations: 1 install, 1 update, 0 removals
• Installing pytzdata (2020.1)
• Updating pendulum (3.0.0a0 9d06ff3 -> 2.1.2)
👉 poetry install
Installing dependencies from lock file
Package operations: 0 installs, 1 update, 0 removals
• Updating pendulum (2.1.2 9d06ff3 -> 2.1.2)
👉
What The Glitch❓❓❓❓
• Updating pendulum (2.1.2 9d06ff3 -> 2.1.2)
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 supplied pyproject.toml and reproduce the sequence of poetry update, changing pendulum from the git revision to ^2, and poetry install. Trace how the lock file records the dependency source and how install compares the installed package; done means poetry install does not update pendulum when the installed version already matches the lock file.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, python
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100