[Distutils] pipenv best practices?
Chris Withers
chris at withers.org
Tue Jan 16 03:08:06 EST 2018
On 15/01/2018 19:46, Brett Cannon wrote:
>
> But I happen to know the answer to your pipenv questions, Chris, so I'll
> answer them here.
Continuing here then :-)
> So, with pipenv, what files do we version control for a project? both
> Pipfile and Pipfile.lock?
>
>
> Yes.
great, thanks! How does Pipfile.lock work in the context of a project
which may be installed on multiple operating systems with different
final package requirements?
> Hopefully one I missed from the docs: with the correct files source
> controlled, how do I reproduce the environment on another machine?
>
> pipenv install --ignore-pipfile
That's a surprising spelling. Why does Pipfile need to be ignored?
Surely Pipfile.lock will be consulted if present and used for the
explicit requirements?
> Last up, how should pipenv be used for library development? (ie: where
> dependencies and minimal constraints are expressed in setup.py and where
> you want to test against as many python versions and library
> combinations as you support).
>
>
> That doesn't fall under pipenv's purview. Think of pipenv as trying to
> make venv + pip easier to work with. Since you don't use pip to express
> dependencies for your library then you shouldn't with pipenv either. Or
> put another way, think of your pipfile as just a different format for a
> requirements.txt file, not a replacement for flit or setuptools.
Well, kinda, pipenv is shaping up to be the "replacement" for
pip+virtualenv, where the latter becomes just an implementation detail.
Would be great if it had a good story for that use case :-)
cheers,
Chris
More information about the Distutils-SIG
mailing list