4 ms·
...until you need to use a Conda library, or until a transitive dependency suddenly breaks everything https://github.com/pypa/pip/issues/9204 https://github.co
by dbsmith83 5y ago
...until you need to use a Conda library, or until a transitive dependency suddenly breaks everything
https://github.com/pypa/pip/issues/9204 https://github.com/pypa/pip/issues/9204
- smitty1e 5y agoI guess Conda has its audience, but I would scoff at using anything absolutely requiring it.
- dbsmith83 5y agoSeveral years ago when I had to build a custom package manager/build tool to solve this use case, I wish I could've just scoffed :)
- sonthonax 5y agoPoetry won’t help you either with a transitive dependency conflict. The problem is that Python just doesn’t have the concept of nested dependencies. And it’s too much of an arse to change the module loading code to work with a Node style pattern. The solution to that problem is probably to do ‘pip —-ignore-installed’ and hope for the best, because without a fundamental change to how Python loads modules no fancy package manager will help you.
- orf 5y agoIt does very explicitly help you with a transient dependency conflict by outlining exactly what the conflict is and, if possible, resolving it by downgrading a dependency.
- sonthonax 5y agoPIP will show you what conflicts as well. It's also not that hard to work out anyway.
- orf 5y agoOnly recently, in part because of Poetry itself. And “it’s not hard” is too much - it’s a problem that shouldn’t exist. And doesn’t, with Poetry. If you’re using pip with some ad-hoc pinning you’re just using a terrible homemade version of poetry and you’re leaving a lot on the table for no real reason. It’s great. Use it. You won’t want to go back.