DEV Community

Cover image for Pipfile and Pipenv : the future of Python dependencies management

Pipfile and Pipenv : the future of Python dependencies management

Julien Tanay on November 22, 2017

Yes, I heared you. pip is a great tool and has been around for quite a long time. But for 3 years or so, people (contributors) have been looking fo...
Collapse
 
radumas profile image
Raphael Dumas • • Edited

I wanted to have pipenv shell be the default integrated terminal in VSCode on Windows. Here are the settings I modified:

    "terminal.integrated.shell.windows": "C:/Anaconda3/Scripts/pipenv.exe",
    "terminal.integrated.shellArgs.windows": ["shell"]

This works when an integrated terminal is opened. However, there doesn't seem to be saved history within a pipenv shell session (there would normally be history saved for a cmd session).

Is there a way to set up a command history so you can up-arrow for previous commands?

Collapse
 
djiit profile image
Julien Tanay •

Hi there! On Unix you could try something like SHELL=/usr/bin/zsh pipenv shell. Sadly I don't know the Windows equivalent, but the idea is : force-set your shell when running the pipenv cmd.

Cheers

Collapse
 
radumas profile image
Raphael Dumas •

Oops, my comment was incomplete. I meant it works in VSCode in Windows, but my outstanding issue is a lack of command history in the pipenv shell

Collapse
 
rhymes profile image
rhymes •

Loving pipenv (+ pyenv for multiple Python versions) so far.

The only thing that seems to be lacking is I can't find an easy way to know which packages have new available versions (like "bundle outdated" or "yarn outdated").

Did you find a solution?

Collapse
 
djiit profile image
Julien Tanay •

There is pipenv check which uses the safety package from the guys at pyup.io and checks if there is any security update on major libraries -- but it won't cover all the packages updates.

Collapse
 
rhymes profile image
rhymes •

Just leaving this here:

pipenv does have an "outdated" command according to this issue github.com/kennethreitz/pipenv/iss...

$ pipenv update --dry-run
Collapse
 
djiit profile image
Julien Tanay •

Nice! Thanks ;)

Collapse
 
yaguirre profile image
Yorman Aguirre •

Hello from the future, I just start using pipenv. It was very useful your post.

Thanks :D

Collapse
 
djiit profile image
Julien Tanay •

Thanks for tour message! I'm happy this little post can help 🙏

Collapse
 
k4ml profile image
Kamal Mustafa •

Last I check pipenv, it still have issue with packages in private vcs repo.

Collapse
 
k4ml profile image
Kamal Mustafa •

Look like the PR has been merged, I'll give it another try.

github.com/kennethreitz/pipenv/pul...