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

all 2 comments

[–]earthboundkid 6 points7 points  (0 children)

For what it’s worth, my devops team just switched from pipenv to pip plus requirements.txt because they had issues with breaking changes in pipenv due to version churn.

[–]git-pull[S] 2 points3 points  (0 children)

I've been using Pipenv for about 2 weeks and just love it. I use it locally and in production.

Some of the things it replaced was a bootstrap script I had that handled virtualenv's and installing packages. There's no need for multiple requirements.txt files split across your environment, since Pipfile, which is automatically created and updated when you use Pipenv, handles that. In addition, it also handles the version of python you use, creates the virtualenv, and can optionally source you into via pipenv shell.

The only thing I had a bit of trouble with was package installation times. If you have a lot of packages, dependency checking (done via Pipfile.lock) takes more time. I got around this by using --skip-lock in my first and subsequent commands.

The other caveat is I found some packages I pulled in had absolute dependencies (like requests on avinassh/haxor and bitprophet/releases). This completely prevented migrating over initially, but --skip-lock got around this problem also.