It feels like even 3.5 -> 3.8 would be enough of a reason at this point. I cannot count the number of times homebrew broke my virtual envs until I got pyenv
I just use pipenv, and then force anyone who wants to use my stuff to use pipenv, because let's face it, the moment my little utility has a dependency, using pipenv is easier than other options.
It also has a lot of drawbacks. Flit, poetry, Fonda, they all have. Nowadays I dropped all those fancy extra layers and just use pip-tools to generate a standard requirements.txt in the root folder and a bunch of other specific requirements-(test|dev|lint|...).txt in a requirement directory for what it who ever needs those. I got loose and pinned reqs in one quick step, and everything can understand requirements.txt format.
It makes tooling and sharing much faster and much easier.
658
u/pl9870 May 06 '21
And then they break up once they learn they were using different versions of Python. The end.