question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Documentation should describe what pipenv does and who it's for

See original GitHub issue

Looking at the docs, we learn that:

  • pipenv is “python dev workflow for humans” – that sounds good, I’m a human with a python dev workflow
  • it’s “the officially recommended Python packaging tool”
  • it “bring[s] the best of all packaging worlds to the Python world”
  • it solves “multi-faceted” problems
  • it “replaces … manual pip calls”

Basically what I get from this is that everyone should be using pipenv because it solves all the problems that other tools solved but better. What I don’t get from it is any indication of what it actually does. This is especially confusing since AFAICT it doesn’t actually solve any of my packaging problems.

I asked about this on twitter, and as far as I can tell the conclusion is that pipenv is targeted specifically at solving one specific problem in Python development: when you’re working on an application you’ll be deploying into a virtualenv (e.g. a django website), and want to control the dependencies used in the virtualenv, keep them consistent across your team, manage upgrades in a systematic way, etc.

I write Python libraries. I use pip and virtualenv and requirements.txt files a lot. For example:

  • Creating ad-hoc virtualenvs to test particular combinations of python/library versions to reproduce reported issues
  • Installing packages for general use into my user environment
  • Recording which packages are needed to run tests, or build the docs, or format the source code, for convenience of other devs and for use in CI (e.g. test-requirements.txt, rtd-requirements.txt)

So far as I can tell, all of these are out-of-scope of pipenv, right? It’s simply not intended at all to help developers like me? Or is it?

It would be very helpful if the docs could start with some information about who this project is intended for and what problems it’s trying to help them solve.

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Reactions:45
  • Comments:8 (6 by maintainers)

github_iconTop GitHub Comments

9reactions
kennethreitzcommented, Feb 13, 2018

It’s targeted at people building applications.

8reactions
njsmithcommented, Feb 4, 2018

(To be clear, this isn’t at all a criticism of pipenv itself – it’s totally reasonable for it to be targeted at a specific use case. It should just make that clear to avoid over-promising 😃.)

Read more comments on GitHub >

github_iconTop Results From Across the Web

Pipenv: A Guide to the New Python Packaging Tool
Pipenv is a packaging tool for Python that solves some common problems associated with the typical workflow using pip, virtualenv, and the good...
Read more >
pipenv Documentation - Read the Docs
Pipenv is a tool that aims to bring the best of all packaging worlds (bundler, composer, npm, cargo, yarn, etc.) to the. Python...
Read more >
Basic Usage of Pipenv - Python Packaging Authority
This document covers some of Pipenv's more basic features. ... You can also specify $ pipenv install -r path/to/requirements.txt to import a requirements ......
Read more >
pipenv Documentation
Pipenv is a tool that aims to bring the best of all packaging worlds (bundler, composer, npm, cargo, yarn, etc.) to the. Python...
Read more >
Advanced Usage of Pipenv — pipenv 11.7.2 documentation
Pipenv includes the safety package, and will use it to scan your dependency graph for known security vulnerabilities! Example: $ cat Pipfile [packages]...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found