= Proposed Self Contained Change: System Python = https://fedoraproject.org/wiki/Changes/System_Python Change owner(s): * Miro Hrončok <mhroncok AT redhat DOT com> * Petr Viktorin * Robert Kuska * Charalampos Stratakis Separate several subpackages form the python3 packages - a system-python(-libs) that can be required by various tools that consider themselves "system tools". == Detailed Description == python3 package to be split in several more subpackages: * system-python-libs - a subset of standard Python library considered essential to run "system tools" requiring Python * system-python - /usr/bin/system-python binary (interpreter) for the tools to be able to run, provides system-python(abi) * python3-libs brings in the remaining subset of standard Python library and will require system-python-libs, thus packages requiring it (directly or indirectly) will get the entire standard Python library * python3 still requires python3-libs and provides python(abi) The term "system tool" in this context means any package where a maintainer wishes to require system-python package instead of python3 package. Any package requiring "python(abi) = 3.x" (currently all Python modules and apps) will still bring in the entire standard library and thus will not be affected by this change in any way. Since this dependency is automatically generated, macros will be provided to remove it and depend on "system-python(abi) = 3.x" instead. If a package maintainer wishes to depend on system-python instead of python3 it is their responsibility to cooperate with the maintainers of all the Python dependencies of their package and do the same thing there. For example consider package foo requiring python3-bar; if foo's maintainer wishes to require system-python instead of python3, they must be sure to make sure python3-bar does this as well, otherwise the depednency chain would bring in python3 package anyway. == Scope == Proposal owners: * determine what the essential subset of the standard library is (investigate packages that later might become "system tools") * split the subset into a subpackage system-python-libs * create system-python binary and package * invent macros to change the requirement of python-abi * test if present packages requiring python3 or python-abi = 3.x work Other developers: N/A (not a System Wide Change) Release engineering: N/A (not a System Wide Change) List of deliverables: N/A (not a System Wide Change) Policies and guidelines: * introduce a change to Python packaging guidelines for package maintainers to be able to profit from this change (after the implementation is ready) Trademark approval: N/A (not needed for this Change) -- Jan Kuřík Platform & Fedora Program Manager Red Hat Czech s.r.o., Purkynova 99/71, 612 45 Brno, Czech Republic -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx http://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx