[poposal for preparing a pep] sharing package installations between virtualenvs

RonnyPfannschmidt <[email protected]>
Newsgroups gmane.comp.python.distutils.devel
Message-ID <[email protected]>
hi everyone,

i just did a little spring cleaning, and while i cleaned up my
~/Projects folder - the vast amount of that was virtualenvs with roughly
the same packages installed - each about 500 mb for like 2-5 mb of code

this seems excessively wasteful - my impression is that ~98% of the
files seem to be duplicate.

since the impending eol of python2 and the multi python version
capabilities of python3 compiled code caches, i'd like to create a
proposal for a shared folder structure


$LIB/python/shared-packages/ should be a root folder in which unpacked
wheels would reside

at a initial iteration this solution would suffer from the expanding
python path issue since each package would have a toplevel sys.path entry.

on order to later on speed this up a simple api can be provided that
makes python aware of the metatadata locations and the map
toplevel/namespace names directly to import locations


for example like

shared-packages.pth

    import sys;sys.path.insert(0,
"$LIB/python/shared-packages/shared_packages_support-1.0-py3.whl/");
import
shared_packages_support;sys.path.pop(0);shared_packages_support.enable()

shared_packages.json

    {

      "pytest": "pytest-3.8.8-py2.py3.whl";

    }


in the aftermath, when shared packages support and fast import/metadata
for shared packages where implemented, the sizes of most virtualenvs
would shrink significantly


-- Ronny
--
Distutils-SIG mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mm3/mailman3/lists/distutils-sig.python.org/
Message archived at https://mail.python.org/mm3/archives/list/[email protected]/message/JWX7VFJRLWVIIBP4NZ5MEPRVCYTV4ZJT/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.