If your application uses Conda to manage dependencies, you face a dilemma. On the one hand, you want to pin all your dependencies to specific versions, so you get reproducible builds. On the other hand, once you’ve pinned everything, upgrades become difficult: you’ll start encountering the infamous The following specifications were found to be incompatible with each other
error.
Ideally you’d be able to both have a consistent, reproducible build, and still be able to quickly change your dependencies. And you can do this—with a little understanding, and a bit more work.
In this article you’ll learn:
- Three ways of specifying your dependencies, and how they impede and/or enable reproducibility and upgrades.
- Why in practice you want to have two different dependency files.
- How to use a third-party tool,
conda-lock
, to easily maintain these two different files.
from Planet Python
via read more
No comments:
Post a Comment