From 4ef8bd187b715aca6a489f5d5fc7ed514a7d4eac Mon Sep 17 00:00:00 2001
From: Barry Warsaw <barry@python.org>
Date: Fri, 29 Jan 2016 14:27:02 -0500
Subject: [PATCH] Update our policy on wheels.

This improves the situation because it eliminates the constraints on packages
outside of pip, and leads to a reduction in <pkg>-whl packages in the archive.
---
 debian/python-policy.sgml | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/debian/python-policy.sgml b/debian/python-policy.sgml
index 0542536..398c129 100644
--- a/debian/python-policy.sgml
+++ b/debian/python-policy.sgml
@@ -458,13 +458,12 @@
         <p>
           <url id="http://legacy.python.org/dev/peps/pep-0427/"
                name="PEP 427">
-          defines a built-package format called "wheels", which is a zip
-          format archive containing Python code and a "dist-info" metadata
+          defines a built-package format called "wheels", a zip
+          archive containing Python code and a "dist-info" metadata
           directory, in a single file named with the .whl suffix.  As zip
           files, wheels containing pure-Python can be put on sys.path and
           modules in the wheel can be imported directly by Python's "import"
-          statement. (Importing extension modules from wheels is not yet
-          supported as of Python 3.4.)
+          statement.
         </p><p>
           Except as described below, packages must not build or provide
           wheels.  They are redundant to the established way of providing
@@ -475,18 +474,20 @@
         </p><p>
           A very limited set of wheel packages are available in the archive,
           but these support the narrow purpose of enabling
-          the <prgn>pip</prgn> tool, in a Debian policy compliant way.  The
-          set of packages providing wheels for this purpose are (by source
-          package name): chardet, distlib, html5lib, python-colorama,
-          python-pip, python-setuptools, python-urllib3, requests, and six.
+          the <prgn>pip</prgn>, <prgn>virtualenv</prgn>,
+          and <prgn>pyvenv</prgn> tools in a Debian policy compliant way.
+          These packages build their own dependent wheels through the use of
+          the <prgn>dirtbike</prgn> "rewheeling" tool, which takes installed
+          Debian packages and turns them back into wheels.  Only universal
+          wheels (i.e. pure-Python, Python 2 and 3 compatible packages) are
+          supported.  Since only the programs that require wheels need build
+          them, only they may provide <var>-whl</var> packages,
+          e.g. <package>python-pip-whl</package>.
         </p><p>
-          Wheel packages supporting <prgn>pyvenv</prgn> and <prgn>pip</prgn>
-          are named with the <var>python-</var> prefix, and the <var>-whl</var>
-          suffix, e.g. <package>python-chardet-whl</package>.  When these
-          binary packages are installed, their .whl files must be placed in
-          the /usr/share/python-wheels directory.  Such wheels must be built
-          with the <tt>--universal</tt> flag so as to generate wheels
-          compatible with both Python 2 and Python 3.
+          When these binary packages are installed, .whl files must be placed
+          in the /usr/share/python-wheels directory.  The location inside a
+          virtual environment will be rooted in the virtual environment,
+          instead of in /usr.
         </p>
       </sect>
       <sect id="package_names">
-- 
GitLab