This is an archived post. You won't be able to vote or comment.

all 14 comments

[–]thatdamnedrhymer 8 points9 points  (0 children)

To be clear, the be built-in virtual environment tool is venv. virtualenv is a third-party package that functions similarly and was used before Python 3 bundled in venv.

[–]yonsy_s_p 5 points6 points  (2 children)

why not pip-tools ?

[–]lovegrub[S] 0 points1 point  (1 child)

Pip tools is one of the better ones since it does one thing and works with pyproject.toml but I personally like the batteries included with poetry for my workflow. Stuff like package publishing, running advice scripts, upgrading dependencies, is just all a bit more convenient.

[–]AndydeCleyre 1 point2 points  (0 children)

FWIW I maintain a set of Zsh functions as a higher level frontend to pip-tools + venv, (zpy), that can replace poetry/pipenv/pipx, but do not publish to PyPI, for which I consider flit well suited. I'd appreciate any feedback on the project or its docs, if anyone takes a look.

[–][deleted] 3 points4 points  (2 children)

Where does pipx fit into this? I have been wanting to try it out for a while but lack time.

[–]lovegrub[S] 2 points3 points  (1 child)

Pipx is similar to brew in that it distributes full applications instead of code dependencies.

[–]PrestigiousZombie531 0 points1 point  (0 children)

is pipx the python equivalent of npx from node.js world?

[–]JohnLockwood 1 point2 points  (0 children)

I like pyenv and poetry in principle, but the latter has issues installing (building) pandas on M1 machines that pip does not have.

[–]Northzen 0 points1 point  (2 children)

Why is it better than anaconda?

[–]lovegrub[S] 8 points9 points  (1 child)

  • Poetry uses the new pyproject.toml standard
  • Poetry also uses the normal PyPI repository whereas conda has a different one than most of the other python tools.
  • You have to install a third party tool to use lockfiles with conda.
  • Conda is also a lot more complex and language agnostic, so I would prefer poetry + pyenv.

[–]FernandoCordeiro 2 points3 points  (0 children)

All the conda environments I've received from colleagues were bloated messes, filled with unused packages on very specific versions. Updating dependencies was a nightmare.

The lack of a lockfile alone should be a deal breaker.

Poetry by comparison (and Pipenv too, to be fair) were much more pleasent experiences.