-
-
Notifications
You must be signed in to change notification settings - Fork 481
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
Minimize conda environment #34626
Comments
This comment has been minimized.
This comment has been minimized.
comment:2
Thanks for investigating this. That's quite a dramatic difference. Could you post a list of the packages in the difference with sizes please? |
We don't need jupyter-packaging (explicitly, maybe only some dependencies) so conda is able to handle the dependency tree. Part of sagemath#34626. Moreover, its not working with the conda 3.11 test: https://github.com/sagemath/sage/actions/runs/4906896658/jobs/8761652608
Some of these (as noted in #35627) are only build dependencies (not runtime dependencies) of some Python packages:
(None of these help explain the multi-gigabyte difference.) It may be useful to mark these packages somehow because also in the Sage distribution, we don't actually need to install them into our venv; it suffices to build wheels for them. |
The dev-conda environment contains quite a lot of packages that are not directly needed to compile or run sage, but only to compile one of sage's dependencies. Since conda already takes care of building the dependency tree (and only including runtime dependencies in it), there is no need to include the deep-dependencies in the environment file. Doing so just unnecessary bloats up the install time and size.
In fact,
du -hs /opt/conda/envs/**
showsthat the sage-dev environment is very large and there is a lot of room for improvement. The second env in the above list corresponds to the following env:
This env has been created using https://github.com/conda-incubator/conda-tree minimizing function (which only takes the leaves of the dependency tree) and then manually going through the remaining dependencies to see which ones are not needed by sage (see comments). Sage compiles within this env, but I've not yet run the doctests. I propose to include this env file directly, replacing the existing automatically generated
sage-dev
.Comments about whether the packages without any comments are used/needed are welcome.
To see which packages are still rather big, use
CC: @isuruf @dimpase @saraedum @mkoeppe @slel
Component: build
Author: Tobias Diez
Issue created by migration from https://trac.sagemath.org/ticket/34626
The text was updated successfully, but these errors were encountered: