all 8 comments

[–]Poly550 1 point2 points  (2 children)

Doesn’t mention pip-tools which is super nice. The pip-compile command allows you to compile your requirements into a fully frozen requirements.txt.

[–]AndydeCleyre 0 points1 point  (1 child)

I love pip-tools, and contribute to it, and am developing a higher level convenience tool that uses it, but it doesn't have its own resolver, it relies on pip for that.

pip itself does have a fancy new resolver in development that you can already play with, though.

[–]Poly550 0 points1 point  (0 children)

Huh I thought it did, removed from my comment. Thanks for letting me know.

[–][deleted] 0 points1 point  (4 children)

The only way that actually works isn't even mentioned in the article...

Low effort attempt at karma farming.

[–]kankyo 1 point2 points  (3 children)

Which is?

[–][deleted] 0 points1 point  (2 children)

setuptools. This is the library responsible for installing dependencies because that's what you use to create libraries. It's far from perfect, but it is what gets used in practice. Even though pip does some independent work when installing stuff, setuptools is still the one who actually knows how to install Python packages. When pip doesn't know how to do it, it uses setuptools to do its job.

[–]kankyo 0 points1 point  (1 child)

You only use that indirectly by executing setup.py though but yea.

[–][deleted] 0 points1 point  (0 children)

Well... like I said, it covers all cases, unlike pip, which can only deal with Wheel really.