-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SolveFailure with experimental installer and editable dependency #7622
Comments
please provide a way to reproduce: a sample git repository would work, or a docker container is an approach some folk prefer. |
to be painfully honest, I don't think it's likely that I'll have time for that any time soon. I realize this is the curse of the open source maintainer, to get lots of bugs filed and not enough info to reproduce. :( Hopefully this bug sitting open will attract other people who find themselves having the same issue, or maybe I'll find an extra hour or two to play around with setting up other git repos. All our users will just end up using the internal (downgrade/disable new installer) workaround for the time being. |
probably best just close this then. fwiw I took your pyproject.toml fragment and invented a repository around it and it worked fine. So there's definitely not enough to go on here and no prospect of anything happening without further input. |
This is strikingly similar to the bug I found hidden in one installer test, see #7498 (comment) |
there are approximately 100 issues that look like this in the sense that they're a |
Well, I say is similar because they happen in the same line numbers with almost the same error message So, I think the installer was unintentionally released with this bug, relying on the "valid" test results. Bringing here the discussion, the following test is invalid and has very similar error, only change dependency name, and keeping the But why is the test passing? For the following reasons:
poetry/tests/installation/test_installer.py Lines 1147 to 1166 in 3e32a4f
|
this discussion belongs in #7498: if and when you understand what's going on then we can try and decide whether it has any connection to the issue here. |
I understand your reasoning, but I have to disagree. This is way bigger than #7498, which only uncovered the issue (rather than introduce it). |
afaik we (certainly I but I think also you) don't have any idea what's going on in either #7498 or here
speculating that they are the same is all very well, but please deal with #7498 in #7498. if understanding that brings some insight here, super. |
they're very much not the same thing but investigating did bring insight, so we'll call it a score draw ;-) pretty sure this is a duplicate of #7574, please close |
You're right, I have no idea 🤣
Agreed :-) |
I am one of @petergaultney's coworkers. I can try to build a toy repo to reproduce this if needed. Give me a day or two. |
In the process of recreating this I believe I've isolated what caused our error. Whether or not you all consider this an error, I'll leave for you all to decide/explain. We specify an internal package ( My team and I can work around this, so it isn't a blocker for us, but something for the poetry team to be aware of if you are not already. If you all decide to close this that's fine. Or if you decide this is an issue you all want to solve that's fine too. Thanks! |
with the modern installer, poetry should respect sources defined in pyproject.toml even for build requirements. that it previously didn't was #3249, it sounds as though you've found the workaround for that and gotten so used to it that you're now not prepared for the fixed behaviour! |
we don't want to specify the build source in the pyproject.toml, because then poetry falls back to the known slow behavior with accessing non-default, secondary package indexes. This leads to a factor of ten increase in lock times, which isn't sustainable (and actually one of the main reasons we switched to poetry is that it handles lock times better than the competition because of its optimizations around PyPI). Unless the new installer somehow magically solves the slow lock times with other indexes enabled? |
the modern installer does not use pip. relying on pip configuration to influence poetry behaviour was always an ugly workaround: poetry is not pip, so it sounds as though this is completely understood, there will be no changes, we should close this issue down if you believe you have unusual or interesting requirements re secondary package indexes - and I would say that wanting to use them only for build requirements counts as unusual - then you might want to chip in on #6713. I'm fairly sure that's a use case that no-one has considered. Possibly it's so weird that you won't get any traction anyway, but you don't know unless you ask! |
this issue drifted and eventually settled on "we know how to fix this but we don't like to use secondary repositories because slow". That should be addressed in 1.5.0 by supplemental (or explicit) repositories. This can be closed. |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
-vvv
option) and have included the output below.Issue
Hi! Using
poetry config experimental.new-installer false
makes this go away - all of our developers have been on 1.3.2 until recently, but a few upgraded and our monorepo does not work for them anymore.Downgrading is one workaround, but the easier one is just disabling 'no longer experimental' installer which, unfortunately, still seems somewhat experimental to us.
I don't really have any more information about this that I know to be relevant, but I'll try to answer any questions you have.
The text was updated successfully, but these errors were encountered: