top | item 24337890

(no title)

brendawalsh | 5 years ago

I asked this a few weeks ago, and got 8 different answers.

discuss

order

idoubtit|5 years ago

After parsing the sibling threads, in this case there were only 4 distinct answers:

- Python -m venv + ./bin/activate + pip

- poetry

- pipenv

- pip (without isolation of projects)

You may add varying recommandations on the usage of OS python or a user installed one, but I think the same concern exists with most languages.

The main problem is that Python's mantra is supposed to be "There is only one way to do it". Less than two years ago, I read the official PEP doc about "Managing Application Dependencies", and it was a mess. pipenv was recommended (and still is), but there was a critical bug that ended in fatal errors on my development system.

nl|5 years ago

"Python -m venv + ./bin/activate + pip", pipenv and "pip (without isolation of projects)" are really all the same thing, just with different options (or a script around it).

Basically, start with "pip (without isolation of projects)" until it doesn't work for you because of library version clashes, then move to either pipenv or "Python -m venv + ./bin/activate + pip" (which are basically the same thing).

Poetry isn't as widely used.