I’d like to be able to set up a large number (~100) of virtualenvs on a single system. Many of these virtualenvs will share the same dependencies of the same version although some may have different versions of those dependencies. Suppose I have envs A, B and C all using
requests 2.20.0 and env D using 2.22.0.
If I simply run pip installs for all of the envs, I’ll have three copies of
requests 2.20.0 on my file system. Is there any standard pattern to avoid that wasted disk space? So for example to have the actual
requests 2.20.0 sit in some sort of cache and have each of the virtualenvs either symlink to that folder from its
site-packages or to reference that folder with a line in a .pth file.
Sort of the equivalent of
pip install -e but against a local cache of packages.
Doing this would also make spinning up a new virtualenv that includes most of the same packages super fast as they wouldn’t need to be downloaded from anywhere, copied or installed.