use pipenv $cmd --keep-outdated
instead of locking all the dependencies in the Pipfile itself
#233
Labels
pipenv $cmd --keep-outdated
instead of locking all the dependencies in the Pipfile itself
#233
Currently our
Pipfile
uses notation like so:We manually add all our dependencies and their transitive dependencies so that when a new dev or CI does
pipen install
,pipenv
won't attempt to update outdated dependencies causing unexpected updates or drift between the dev env at the time of development to the CI env at time of test runs.This same effect can be achieved more simply by using
pipenv install --keep-outdated
.In our current method, we also can't easily do
pipenv install foo
because we have to go intoPipfile
and add all transitive dependencies when we want to add a single package. Additionally, this will get us into dependency hell at some point in the future because by pinning every version of every package, we lose the ability to intelligently resolve dependency versions and we will have to manually update many packages.The proposal is to add developer notes to tell people to use
--keep-outdated
and then add this flag to CI. We would go back to usingdep_x = "*"
in thePipfile
. In cases where we need to be above a certain version for a dependency or transitive dependency, we should explicitly comment the reasoning like so:The text was updated successfully, but these errors were encountered: