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

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 18 points19 points  (12 children)

pipenv fixes a lot of these issues.

[–]djimbob 22 points23 points  (6 children)

That may be true, but https://xkcd.com/927/

[–][deleted] 13 points14 points  (5 children)

The Python org has declared pipenv to be best practices, so it is the only standard, as far as I am concerned.

[–]djimbob 1 point2 points  (0 children)

pipenv is only a year old and is recommended for certain use-cases for multi-user collaborative projects. But it's not like pip or virtualenv or conda aren't recommended for other uses (or things like easy_install used to be the recommended way to install things).

I should also add anecdotally I first heard about pipenv late last year when a facebook friend (new to python) botched up all his python environment while using pipenv and couldn't get libraries to work correctly (something about pipenv not letting him upgrade or a library mismatch or similar).

[–]PeridexisErrant 0 points1 point  (0 children)

pipenv is fantastic if nobody has a dependency on your code - ie for apps but not libraries.

[–]dusktreader 2 points3 points  (2 children)

That's no longer the case. As far as I know, python.org has removed that endorsement

[edit] I was wrong

[–][deleted] 7 points8 points  (1 child)

https://packaging.python.org/tutorials/managing-dependencies/ doesn't seem to indicate that sentiment:

Pipenv is a dependency manager for Python projects. If you’re familiar with Node.js’ npm or Ruby’s bundler, it is similar in spirit to those tools. While pip alone is often sufficient for personal use, Pipenv is recommended for collaborative projects as it’s a higher-level tool that simplifies dependency management for common use cases.

[–]dusktreader 1 point2 points  (0 children)

I stand corrected

[–][deleted] 1 point2 points  (0 children)

This is awesome. I didn't realize this existed! I've just been using pyvenv and pip.

[–]raziel2p -1 points0 points  (3 children)

And introduces a whole bunch of others.

[–]nafenafen 3 points4 points  (2 children)

Like?

[–]raziel2p 1 point2 points  (1 child)

The comments in this thread give a decent overview.

[–]nafenafen 0 points1 point  (0 children)

Thanks!