[Distutils] Proposal: "Install and save"
Chris Angelico
rosuav at gmail.com
Fri Jul 22 13:48:25 EDT 2016
In teaching my students how to use third-party Python modules, I
generally recommend starting every project with "python3 -m venv env",
and then install dependencies into the virtual environment. They then
need a requirements.txt to keep track of them. There are two workflows
for that:
$ pip install flask
$ pip freeze >requirements.txt
or:
$ echo flask >>requirements.txt
$ pip install -r requirements.txt
Over in the JavaScript world, npm has a much tidier way to do things.
I propose adding an equivalent to pip:
$ pip install --save flask
which will do the same as the second option above (or possibly write
it out with a version number as per 'pip freeze' - bikeshed away). As
well as cutting two commands down to one, it's heaps easier in the
multiple installation case - "pip install --save flask sqlalchemy
gunicorn" is much clearer than messing around with creating a
multi-line file; and the 'pip freeze' option always ends up listing
unnecessary dependencies.
Thoughts?
ChrisA
More information about the Distutils-SIG
mailing list