-
Notifications
You must be signed in to change notification settings - Fork 716
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use Conda lock files #5835
Comments
hey just wondering, but would something like this cause issues with portability? In my experience, one of the motivations for not locking all the underlying dependencies was to make it easier for By locking in the low level requirements, I would think that you could end up with a conda environment that becomes unusable on systems with different attributes such as ARM vs x86, Linux vs macOS, etc.. |
Hi @stevekm - apologies, only just discovered this comment. Yes, the lock files will not be as portable. For this reason, we will be providing three conda config profiles:
I'm about to put out the second part blog post about nf-core migration to Seqera Containers, where this is covered in more detail. Hope that makes sense! |
Conda
environment.yml
files are convenient and easy to use, but do not confer a high degree of reproducibility. Because lower level dependencies are not pinned, the exact build produced can change over time.To address this without losing the ease of use of
environment.yml
files, several community projects have emerged to create "lock files", comparable to the Javascriptnpm
community which haspackage.json
andpackage-lock.json
. The most popular for conda is conda-lock.We should automatically generate conda lock files and store them in git for modules, alongside the conda
environment.yml
files. We should have CI to regenerate these whenever there is an edit toenvironment.yml
.The text was updated successfully, but these errors were encountered: