[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Python Policy: Things to consider for Stretch



Ben Finney <ben+debian@benfinney.id.au> writes:

> * Address all the language around Python 2 versus Python 3 versus
>   Python general, and re-order or re-word to focus *primarily* on Python
>   3, with Python 2 treated as the still-supported legacy system.
>
> I'm maintaining a Bazaar branch for this, feel free to get it::
>
>     $ mkdir python.benfinney/ && cd python.benfinney/
>     $ bzr branch --bind http://vcs.whitetree.org/bzr/public/debian/python/python-defaults-debian/devel/

Ben Finney <ben+debian@benfinney.id.au> writes:

> Thank you, Scott! I'll proceed with the semantic changes that promote
> Python 3 to the primary position.

Those changes are now in the above branch. The summary of changes from
the commit messages:

    $ bzr log --log-format line --revision ancestor:..
    430: Ben Finney 2016-02-02 Re-phrase version distinctions to make Python 3 primary.
    429: Ben Finney 2016-02-01 When only Python 2 is specified, just use literal “2” major version.
    428: Ben Finney 2016-02-01 Use Python 3 examples where appropriate.
    427: Ben Finney 2016-01-31 Refine some grammar and punctuation.
    426: Ben Finney 2016-01-31 Distinguish “Python” the unversioned system versus “Python 2”.
    425: Ben Finney 2016-01-30 [merge] Merge from ‘python-defaults-debian’ mainline.

Also attached to this message as a Bazaar patch bundle.
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: ben+debian@benfinney.id.au-20160201192807-\
#   7ux9dchggw9s8znh
# target_branch: bzr+ssh://bzr.debian.org/bzr/pkg-python/python-\
#   defaults-debian/
# testament_sha1: 6a28ebdd010851ced1dfe1087d61b9a1dbded494
# timestamp: 2016-02-02 06:36:06 +1100
# base_revision_id: scott@kitterman.com-20160129221800-\
#   kkxuexf3v28q9ro0
# 
# Begin patch
=== modified file 'debian/python-policy.sgml'
--- debian/python-policy.sgml	revid:scott@kitterman.com-20160129221800-kkxuexf3v28q9ro0
+++ debian/python-policy.sgml	revid:ben+debian@benfinney.id.au-20160201192807-7ux9dchggw9s8znh
@@ -84,10 +84,12 @@
     <chapt id="python3">
       <heading>On the move to Python 3</heading>
 	<p>
-	  Debian currently supports two Python stacks, one for Python 2
-	  and one for Python 3.  The long term goal for Debian is to
+	  Debian currently supports two Python stacks, one for Python 3
+	  and one for Python 2.  The long term goal for Debian is to
 	  reduce this to one stack, dropping the Python 2 stack at some
 	  time.
+	</p>
+	<p>
 	  <url id="https://www.python.org/dev/peps/pep-0404/";
 	  name="PEP 404"> states that no more major Python 2 releases
 	  are planned, although the latest released minor version 2.7
@@ -112,10 +114,10 @@
 	  </item>
 	  <item>
 	    <p>
-	      Python libraries should be always packaged for Python 3
-	      if supported.  Python 2 libraries should be packaged, if
-	      applications found in the reverse dependencies are not
-	      yet supported by Python 3.
+	      Python libraries, if they support Python 3, should be always
+	      packaged for Python 3. If an application supports only Python
+	      2, the Python libraries for that application should also be
+	      packaged for Python 2.
 	    </p>
 	  </item>
 	  <item>
@@ -133,12 +135,12 @@
       <sect id="versions">
 	<heading>Versions</heading>
 	<p>
-	  At any given time, the binary package <package>python</package>
-	  will represent the current default Debian Python version. The
-	  binary package <package>python3</package> will represent the
-	  current Debian Python 3 version. As far as is reasonable, Python
-	  and Python 3 should be treated as separate runtime systems with
-	  minimal interdependencies.
+	  At any given time, the binary package <package>python3</package>
+	  will represent the current default Debian Python 3 version; the
+	  binary package <package>python</package> will represent the
+	  current default Debian Python 2 version. As far as is reasonable,
+	  Python 3 and Python 2 should be treated as separate runtime
+	  systems with minimal interdependencies.
 	</p>
 	<p>
 	  In some cases, Python policy explicitly references Python helper
@@ -150,15 +152,17 @@
 	  It is a design goal to fully specify required interfaces and
 	  functions in policy for Python 3 and to avoid enshrining specific
 	  implementation details in policy. Except as noted, policy for
-	  Python 3 is the same as Python with the addition of the version
-	  number as needed to distinguish them.
-	</p>
-	<p>
-	  The default Debian Python version should always be the latest
-	  stable upstream version that can be fully integrated in Debian.
+	  Python 2 is the same as Python 3 with the exception of the
+	  different major version number as needed to distinguish them.
+	</p>
+	<p>
+	  The default Debian Python version, for each of Python 3 and Python
+	  2, should always be the latest stable upstream version that can be
+	  fully integrated in Debian.
+	</p>
+	<p>
 	  There may be newer supported or unsupported versions included in
-	  the Debian if they are not fully integrated for a particular
-	  release.
+	  Debian if they are not fully integrated for a particular release.
 	</p>
 	<p>
 	  Apart from the default version, legacy versions of Python or beta
@@ -178,17 +182,17 @@
 	</p>
 
 	<p>
-	  The set of currently supported Python versions can be found in
-	  <file>/usr/share/python/debian_defaults</file>; the supported
-	  interface to this information is <prgn>/usr/bin/pyversions</prgn>.
 	  The set of currently supported Python 3 versions can be found
 	  in <file>/usr/share/python3/debian_defaults</file>; the supported
 	  interface to this information is
 	  through <prgn>/usr/bin/py3versions</prgn>.
+	  The set of currently supported Python 2 versions can be found in
+	  <file>/usr/share/python/debian_defaults</file>; the supported
+	  interface to this information is <prgn>/usr/bin/pyversions</prgn>.
 	</p>
 	<p>
-	  These files are in Python ConfigParser format. They define (in
-	  the <tt>DEFAULT</tt> section) the following options:
+	  These files are in Python <tt>configparser</tt> format. They
+	  define (in the <tt>DEFAULT</tt> section) the following options:
 	  <list>
 	    <item><tt>default-version</tt>: The name of the interpreter for
 	      the current default Debian Python.</item>
@@ -228,7 +232,7 @@
 	<p>
 	  Excluded are modules that cannot be included for licensing reasons
 	  (for example the <tt>profile</tt> module), for dependency tracking
-	  purposes (for example the GPL-licensed <tt>gdbm</tt> module) or
+	  purposes (for example the GPL-licensed <tt>gdbm</tt> module), or
 	  that should not be included for packaging reasons (for example
 	  the <tt>tk</tt> module which depends on Xorg).
 	</p>
@@ -241,27 +245,37 @@
 	  Documentation will be provided separately as well.
 	</p>
 	<p>
+	  At any time, the <package>python3</package> binary package must
+	  ensure that <file>/usr/bin/python3</file> is provided, as a
+	  symlink to the current <file>python3.<var>Y</var></file>
+	  executable. The package must depend on
+	  the <package>python3.<var>Y</var></package> package that installs
+	  the executable.
+	</p>
+	<p>
+	  The version of the <package>python3</package> package must be
+	  greater than or equal to 3.<var>Y</var> and lower than
+	  3.<var>Y+1</var>.
+	</p>
+	<p>
 	  At any time, the <package>python</package> binary package must
-	  ensure that <file>/usr/bin/python</file> is provided as a symlink
-	  to the current <file>python<var>X</var>.<var>Y</var></file>
-	  executable.
-	</p>
-	<p>
-	  The <package>python</package> binary package must also depend on
-	  the appropriate <package>python<var>X</var>.<var>Y</var></package>
-	  to ensure this runtime is installed.
-	</p>
-	<p>
-	  The version of the <package>python</package> binary package must
-	  be greater than or equal to <var>X</var>.<var>Y</var> and smaller
-	  than <var>X</var>.<var>Y+1</var>.
-	</p>
-	<p>
-	  Because upstream has started providing it, there will be a symlink
-	  for <file>/usr/bin/python2</file> for Wheezy and later releases.  See
-	  <url id="https://www.python.org/dev/peps/pep-0394/"; name="PEP 394">
-	  for details. Packages must be careful to depend on a sufficient
-	  version of <package>python</package> if they make use of this symlink.
+	  ensure that <file>/usr/bin/python2</file> is provided, as a
+	  symlink to the current <file>python2.<var>Y</var></file>
+	  executable. The package must depend on
+	  the <package>python2.<var>Y</var></package> package that installs
+	  the executable.
+	</p>
+	<p>
+	  The version of the <package>python</package> package must be
+	  greater than or equal to 2.<var>Y</var> and lower than
+	  2.<var>Y+1</var>.
+	</p>
+	<p>
+	  The <package>python</package> binary package must also ensure
+	  that <file>/usr/bin/python</file> is provided, as a symlink to the
+	  current <file>python2.<var>Y</var></file> executable. See
+	  <url id="https://www.python.org/dev/peps/pep-0394/"; name="PEP
+	  394"> for details.
 	</p>
       </sect>
 
@@ -280,31 +294,57 @@
 	<sect1 id="interpreter_name">
 	  <heading>Interpreter Name</heading>
 	  <p>
-	    Python scripts depending on the default Python version (see <ref
-	    id="base">) or not depending on a specific Python version should
-	    use <file>python</file> (without a version) as the interpreter name.
-	    </p>
-	  <p>
-	    Python scripts that only work with a specific Python version must
-	    explicitly use the versioned interpreter name
+	    The different Python major versions require different
+	    interpreters (see <ref id="base">).
+	  </p>
+	  <p>
+	    Python scripts that require the default Python 3 version should
+	    specify <file>python3</file> as the interpreter name.
+	  </p>
+	  <p>
+	    Python scripts that require the default Python 2 version should
+	    specify <file>python2</file> as the interpreter name.
+	  </p>
+	  <p>
+	    Python scripts may specify <file>python</file> as the
+	    interpreter name only if they do not require any particular
+	    version of Python.
+	  </p>
+	  <p>
+	    Python scripts that only work with a specific Python minor
+	    version must explicitly use the versioned interpreter name
 	    (<file>python<var>X</var>.<var>Y</var></file>).
 	  </p>
 	</sect1>
 	<sect1 id="interpreter_loc">
 	  <heading>Interpreter Location</heading>
 	  <p>
-	    The preferred specification for the Python interpreter is
-	    <file>/usr/bin/python</file> or
-	    <file>/usr/bin/python<var>X</var>.<var>Y</var></file>.
-	    This ensures that a Debian installation of Python is used
-	    and all dependencies on additional Python modules are met.
-	  </p>
-	  <p>
-	    Maintainers should not override the Debian Python interpreter using
-	    <file>/usr/bin/env python</file> or
-	    <file>/usr/bin/env python<var>X</var>.<var>Y</var></file>. This is
-	    not advisable as it bypasses Debian's dependency checking and makes
-	    the package vulnerable to incomplete local installations of Python.
+	    Python scripts should specify the Debian Python interpreter, to
+	    ensure that the Debian Python installation is used and all
+	    dependencies on additional Python modules are met.
+	  </p>
+	  <p>
+	    The preferred specification for the Python 3 interpreter is
+	    <file>/usr/bin/python3</file> (or
+	    <file>/usr/bin/python3.<var>Y</var></file> if it requires Python
+	    3.<var>Y</var>).
+	  </p>
+	  <p>
+	    The preferred specification for the Python 2 interpreter is
+	    <file>/usr/bin/python2</file> (or
+	    <file>/usr/bin/python2.<var>Y</var></file> if it requires Python
+	    2.<var>Y</var>).
+	  </p>
+	  <p>
+	    Scripts requiring the default Python 2 version may instead
+	    specify the interpreter <file>/usr/bin/python</file>.
+	  </p>
+	  <p>
+	    Maintainers should not override the Debian Python interpreter
+	    using <file>/usr/bin/env <var>name</var></file>. This is not
+	    advisable as it bypasses Debian's dependency checking and makes
+	    the package vulnerable to incomplete local installations of
+	    Python.
 	  </p>
 	</sect1>
       </sect>
@@ -323,11 +363,14 @@
 	  <tt>sys.path</tt>.
 	</p>
 	<p>
-	  Public Python modules must be installed in the system Python
-	  modules directory,
-	  <file>/usr/lib/python<var>X</var>.<var>Y</var>/dist-packages</file>.
-	  Public Python 3 modules must be installed in
-	  <file>/usr/lib/python3/dist-packages</file>.
+	  Public Python 3 modules must be installed in the system Python 3
+	  modules directory, <file>/usr/lib/python3/dist-packages</file>.
+	</p>
+	<p>
+	  Public Python 2 modules must be installed in the system Python 2
+	  modules directory
+	  <file>/usr/lib/python2.<var>Y</var>/dist-packages</file>, where
+	  2.<var>Y</var> is the Python 2 version.
 	</p>
 	<p>
 	  A special directory is dedicated to public Python modules
@@ -337,12 +380,12 @@
 	  Python 2.
 	</p>
 	<p>
-	  For a local installation by the administrator of Python 2, a
-	  special directory is reserved to Python modules which should only
-	  be available to this Python,
-	  <file>/usr/local/lib/python2.<var>Y</var>/site-packages</file> (and
-	  <file>/usr/local/lib/python3/site-packages</file> for all Python 3
-	  versions).
+	  For local installation of Python modules by the system
+	  administrator, special directories are reserved. The
+	  directory <file>/usr/local/lib/python3/site-packages</file> is in
+	  the Python 3 runtime module search path. The
+	  directory <file>/usr/local/lib/python2.<var>Y</var>/site-packages</file>
+	  is in the Python 2.<var>Y</var> runtime module search path.
 	</p>
 	<p>
 	  Additional information on appending site-specific paths to the
@@ -350,23 +393,23 @@
 	  the <tt>site</tt> module.
 	</p>
 	<p>
-	  When binary packages ship identical source code for multiple
-	  Python versions, for instance
+	  Python modules which work with multiple supported Python 2
+	  versions must install to version-specific locations, for instance
 	  <file>/usr/lib/python2.6/dist-packages/foo.py</file> and
-	  <file>/usr/lib/python2.7/dist-packages/foo.py</file>, these should
-	  point to a common file. Version-specific directories for identical
-	  source code are not required for Python 3 and must not be used for
-	  this.
-	</p>
-	<p>
+	  <file>/usr/lib/python2.7/dist-packages/foo.py</file>. These should
+	  point to a common file.
+	</p>
+	<p>
+	  Architecture-independent public Python 3 modules must be installed
+	  to <file>/usr/lib/python3/dist-packages</file>.
+	</p>
+	<p>
+	  Architecture-independent public Python 2 modules should be
+	  installed to <file>/usr/lib/python2.7/dist-packages</file>. The
+	  historical location for this was <file>/usr/share/pyshared</file>.
 	  Since Python 2.7 is the last Python 2 version and the only
-	  supported version in Wheezy and later releases, a common location
-	  to share arch-independent files across Python versions is no
-	  longer needed. Historically the location for this
-	  was <file>/usr/share/pyshared</file>. For Python 2.7, use
-	  of <file>/usr/lib/python2.7/dist-packages</file> is sufficient.
-	  For Python 3, a special location is not required, use
-	  <file>/usr/lib/python3/dist-packages</file>.
+	  supported version in Wheezy and later releases, a version-specific
+	  location is sufficient.
 	</p>
       </sect>
 
@@ -391,6 +434,7 @@
 	<p><enumlist>
 	  <item>
 	    <p>
+	      <file>/usr/share/python3/runtime.d/*.rtinstall</file>,
 	      <file>/usr/share/python/runtime.d/*.rtinstall</file>: These
 	      are called when a runtime is installed or becomes supported.
 	      The first argument is <tt>rtinstall</tt>, the second argument
@@ -403,24 +447,26 @@
 	  </item>
 	  <item>
 	    <p>
+	      <file>/usr/share/python3/runtime.d/*.rtremove</file>,
 	      <file>/usr/share/python/runtime.d/*.rtremove</file>: These are
 	      called when a runtime is removed or stops being supported. The
 	      first argument is <tt>rtremove</tt>, and the second argument
-	      is the affected runtime (for example
-	      <file>python<var>X</var>.<var>Y</var></file>).
+	      is the affected runtime (for
+	      example <file>python<var>X</var>.<var>Y</var></file>).
 	    </p>
 	  </item>
 	  <item>
 	    <p>
+	      <file>/usr/share/python3/runtime.d/*.rtupdate</file>,
 	      <file>/usr/share/python/runtime.d/*.rtupdate</file>: These are
 	      called when the default runtime changes. The first argument is
 	      either <tt>pre-rtupdate</tt>, called before changing the
 	      default runtime, or <tt>rtupdate</tt>, called when changing
 	      the default runtime, or <tt>post-rtupdate</tt>, called
 	      immediately afterwards. The second argument is the old default
-	      runtime (for example
-	      <file>python<var>X</var>.<var>Y</var></file>), and the third
-	      argument is the new default runtime (for example
+	      runtime (for
+	      example <file>python<var>X</var>.<var>Y</var></file>), and the
+	      third argument is the new default runtime (for example
 	      <file>python<var>X</var>.<var>Z</var></file>).
 	    </p>
 	  </item>
@@ -431,9 +477,13 @@
 	<heading>Documentation</heading>
 	<p>
 	  Python documentation is split out in separate binary packages
-	  <package>python<var>X</var>.<var>Y</var>-doc</package>. The binary
-	  package <package>python-doc</package> will always provide the
-	  documentation for the default Debian Python version.
+	  <package>python<var>X</var>.<var>Y</var>-doc</package>.
+	</p>
+	<p>
+	  The binary package <package>python3-doc</package> will always
+	  provide the documentation for the default Debian Python 3 version.
+	  The binary package <package>python-doc</package> will always
+	  provide the documentation for the default Debian Python 2 version.
 	</p>
 	<p>
 	  TODO: Policy for documentation of third party packages.
@@ -464,8 +514,8 @@
 	  be used by one version of Python.
 	</p>
 	<p>
-	  Some distributions link extensions to libpython, but this is not
-	  the case in Debian as symbols might as well be resolved by
+	  Debian Python does not link extensions to <file>libpython</file>
+	  (as is done in some operating systems). Symbols are resolved by
 	  <file>/usr/bin/python<var>X</var>.<var>Y</var></file> which is not
 	  linked to <file>libpython</file>.
 	</p>
@@ -515,81 +565,91 @@
 	  debug.
 	</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>, <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>
+	  A very limited set of wheel packages are available in the archive,
+	  but these support the narrow purpose of enabling
+	  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 3 and 2 compatible packages) are
+	  supported.  Since only the programs that require wheels need build
+	  them, only they may provide <file>-whl</file> packages,
+	  e.g. <package>python3-pip-whl</package>.
+	</p>
 	<p>
-          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>
+	  When these binary packages are installed, <file>*.whl</file> files
+	  must be placed in the <file>/usr/share/python-wheels</file>
+	  directory. The location inside a virtual environment will be
+	  rooted in the virtual environment, instead of <file>/usr</file>.
+	</p>
       </sect>
       <sect id="package_names">
 	<heading>Module Package Names</heading>
 	<p>
-	  Public modules used by other packages must have their binary
-	  package name prefixed with <package>python-</package>. It is
-	  recommended to use this prefix for all packages with public
+	  Public Python modules must be packages separately by major Python
+	  version, to preserve run time separation between Python 2 and
+	  Python 3.
+	</p>
+	<p>
+	  Public Python 3 modules used by other packages must have their
+	  binary package name prefixed with <package>python3-</package>.
+	  Public Python 2 modules used by other packages must have their
+	  binary package name prefixed with <package>python-</package>.
+	  It is recommended to use this prefix for all packages with public
 	  modules as they may be used by other packages in the future.
-	  Python 3 modules must be in a separate binary package prefixed
-	  with <package>python3-</package> to preserve run time separation
-	  between Python and Python 3.
 	</p>
 	<p>
-	  The binary package for module foo should preferably be named
-	  <package>python-<var>foo</var></package>, if the module name
-	  allows, but this is not required if the binary package ships
-	  multiple modules.  In the latter case the maintainer chooses the
-	  name of the module which represents the package the most.
+	  The binary package for module <var>foo</var> should preferably be
+	  named <package>python3-<var>foo</var></package> (for Python 3)
+	  or <package>python-<var>foo</var></package> (for Python 2), if the
+	  module name allows. This is not required if the binary package
+	  installs multiple modules, in which case the maintainer shall
+	  choose the name of the module which best represents the package.
 	</p>
 	<p>
 	  For subpackages such as <var>foo.bar</var>, the recommendation is
 	  to name the binary
-	  packages <package>python-<var>foo.bar</var></package>
-	  and <package>python3-<var>foo.bar</var></package>.
+	  package <package>python3-<var>foo.bar</var></package> (for Python
+	  3) or <package>python-<var>foo.bar</var></package> (for Python 2).
 	</p>
 	<p>
 	  Such a package should support the current Debian Python version,
 	  and more if possible (there are several tools to help implement
-	  this, see <ref id="packaging_tools">). For example, if Python 2.5,
-	  2.6, and 2.7 are supported, the Python statement
+	  this, see <ref id="packaging_tools">). For example, if Python 3.3,
+	  3.4, and 3.5 are supported, the Python statement
 	  <example>
 import foo
 	  </example>
-	  should import the module when the user is running any
-	  of <prgn>/usr/bin/python2.5</prgn>, <prgn>/usr/bin/python2.6</prgn>,
-	  and <prgn>/usr/bin/python2.7</prgn>. This requirement also
-	  applies to extension modules; binaries for all the supported
-	  Python versions should be included in a single package.
+	  should import the module when the program interpreter is any
+	  of <prgn>/usr/bin/python3.3</prgn>, <prgn>/usr/bin/python3.4</prgn>,
+	  and <prgn>/usr/bin/python3.5</prgn>. This requirement also applies
+	  to extension modules; binaries for all the supported Python
+	  versions should be included in a single package.
 	</p>
       </sect>
       <sect id="specifying_versions">
 	<heading>Specifying Supported Versions</heading>
 	<p>
-	  The optional <tt>X-Python-Version</tt> (preferred) or <tt>
-	  XS-Python-Version</tt> field in the general paragraph (the first one,
-	  for the source package) of <file>debian/control</file> were methods to
-	  specify the versions of Python (not versions of Python 3) supported by the
-	  source package (they are obsolete and can be removed now that there is only
-	  <package>python2.7</package>). Similarly, <tt>X-Python3-Version</tt> is
-	  used to specify the versions of Python 3 supported by the package.  When not
-	  specified, they default to all currently supported Python (or Python 3)
-	  versions.
-	</p>
-	<p>
-	  They are used by some packaging scripts to automatically generate
-	  appropriate Depends and Provides lines. The format of the field
-	  may be one of the following:
+	  The <file>debian/control</file> source paragraph may contain
+	  optional fields to specify the versions of Python the package
+	  supports.
+	</p>
+	<p>
+	  The optional <tt>X-Python3-Version</tt> field specifies the
+	  versions of Python 3 supported. When not specified, it defaults to
+	  all currently supported Python 3 versions.
+	</p>
+	<p>
+	  Similarly, the optional fields <tt>X-Python-Version</tt>
+	  or <tt>XS-Python-Version</tt> were used to specify the versions of
+	  Python 2 supported by the source package. They are obsolete and
+	  can be removed now that only Python 2.7 is supported.
+	</p>
+	<p>
+	  These fields are used by some packaging scripts to automatically
+	  generate appropriate Depends and Provides lines. The format of the
+	  field may be one of the following:
 	  <example>
 X-Python3-Version: &gt;= X.Y
 X-Python3-Version: &gt;= A.B, &lt;&lt; X.Y
@@ -599,21 +659,24 @@
 	</p>
 	<p>
 	  The keyword <tt>all</tt> means that the package supports any
-	  Python version available but might be deprecated in the future
+	  Python 2 version available but might be deprecated in the future
 	  since using version numbers is clearer than <tt>all</tt> and
 	  encodes more information. The keyword <tt>all</tt> is limited to
-	  Python versions and must be ignored for Python 3 versions. Lists
-	  of multiple individual versions (e.g. 2.4, 2.5, 2.6) work
-	  for <tt>XS-Python-Version</tt> and will continue to be supported,
-	  but are not recommended and are not supported
-	  by <tt>X-Python-Version</tt> or <tt>X-Python3-Version</tt> for
-	  Wheezy and later releases.
+	  Python 2 versions and must be ignored for Python 3 versions.
+	</p>
+	<p>
+	  A comma-separated list of multiple individual versions
+	  (e.g. <tt>3.3, 3.4, 3.5</tt>) in <tt>XS-Python-Version</tt> will
+	  continue to be supported, but is not recommended. The use of
+	  multiple individual versions in <tt>X-Python-Version</tt>
+	  or <tt>X-Python3-Version</tt> is not supported for Wheezy and
+	  later releases.
 	</p>
 	<p>
 	  The keyword <tt>current</tt> has been deprecated and used to mean
-	  that the package would only have to support a single version (even
-	  across default version changes). It must be ignored for Python 3
-	  versions.
+	  that the package would only have to support a single Python 2
+	  version (even across default version changes). It must be ignored
+	  for Python 3 versions.
 	</p>
 	<p>
 	  The use of <tt>XB-Python-Version</tt> in the binary package
@@ -628,31 +691,41 @@
       <sect id="dependencies">
 	<heading>Dependencies</heading>
 	<p>
-	  Packaged modules available for the default Python version (or many
-	  versions including the default) as described
-	  in <ref id="package_names"> must declare <tt>Depends:
-	  python&nbsp;(&gt;=&nbsp;<var>X</var>.<var>Y</var>)</tt>. If they
-	  require other modules to work, they must depend on the
-	  corresponding <package>python-foo</package>. They must not depend
-	  on any <package>python<var>X</var>.<var>Y</var>-foo</package>.
-	</p>
-	<p>
-	  All Python module packages and Python 3 binary extension packages must
-	  also declare a maximum version they support as currently built (this
-	  is accomplished by declaring a maximum version constraint strictly
-	  less than one higher than the current maxiumum version, i.e.
-	  <tt>Depends:
-	  python&nbsp;(&lt;&lt;&nbsp;<var>X</var>.<var>Y</var>)</tt>.
+	  Any package that installs modules for the default Python version
+	  (or many versions including the default) as described
+	  in <ref id="package_names">, must declare a dependency on the
+	  default Python runtime package. If it requires other modules to
+	  work, the package must declare dependencies on the corresponding
+	  packaged modules. The package must not declare dependency on any
+	  version-specific Python runtime or module package.
+	</p>
+	<p>
+	  For Python 3, the correct dependencies are <tt>Depends:
+	  python3&nbsp;(&gt;=&nbsp;3.<var>Y</var>)</tt> and any
+	  corresponding <package>python3-<var>foo</var></package> packages.
+	</p>
+	<p>
+	  For Python 2, the correct dependencies are <tt>Depends:
+	  python&nbsp;(&gt;=&nbsp;2.<var>Y</var>)</tt> and any
+	  corresponding <package>python-<var>foo</var></package> packages.
+	</p>
+	<p>
+	  Any package that installs Python modules or Python 3 binary
+	  extensions must also declare a maximum version it supports as
+	  currently built. This is accomplished by declaring a maximum
+	  version constraint strictly less than one higher than the current
+	  maximum version, i.e. <tt>Depends:
+	  python3&nbsp;(&lt;&lt;&nbsp;<var>X</var>.<var>Y</var>)</tt>.
 	</p>
       </sect>
 
       <sect id="provides">
 	<heading>Provides</heading>
 	<p>
-	  Python Provides in binary packages of the form
+	  Binary packages that declare Provides dependencies of the form
 	  <package>python<var>X</var>.<var>Y</var>-<var>foo</var></package>
 	  were never supported for Python 3 and are no longer useful for
-	  Python. They should be removed in the normal course of package
+	  Python 2. They should be removed in the normal course of package
 	  updates. Future provision of values for the substituation variable
 	  <tt>python:Provides</tt> is not guaranteed.
 	</p>
@@ -699,28 +772,50 @@
     <chapt id="programs">
       <heading>Python Programs</heading>
 
+      <sect id="interpreter-directive">
+	<heading>Interpreter directive (“Shebang”)</heading>
+	<p>
+	  Executables written for interpretation by Python must use an
+	  appropraite interpreter directive, or “shebang”, as the first line
+	  of the program. This line should be of the
+	  form <tt>#!<var>interpreter_location</var></tt>.
+	  See <ref id="interpreter_name"> for the interpreter name to use.
+	</p>
+	<p>
+	  As noted in <ref id="interpreter_loc">, the
+	  form <tt>#!/usr/bin/env <var>interpreter_name</var></tt> is
+	  deprecated.
+	</p>
+      </sect>
+
       <sect id="version_indep_progs">
 	<heading>Programs using the default Python</heading>
 	<p>
-	  Programs that can run with any version of Python must
-	  begin with <tt>#!/usr/bin/python</tt> or <tt>#!/usr/bin/env
-	  python</tt> (the former is strongly preferred). They must also
-	  specify a dependency on <package>python</package>, with a
-	  versioned dependency if necessary.
-	</p>
-	<p>
-	  If the program needs the Python module <tt>foo</tt>, it must
-	  depend on the real package providing this module, usually
-	  <package>python-foo</package> but this name might vary when the
-	  package ships multiple modules.
+	  A package that installs a program that can be run by any version
+	  of Python 3 must declare a dependency
+	  on <package>python3</package>, with a versioned dependency if
+	  necessary.
+	</p>
+	<p>
+	  A package that installs a program that can be run by any version
+	  of Python 2 must declare a dependency
+	  on <package>python2</package>, with a versioned dependency if
+	  necessary.
+	</p>
+	<p>
+	  If the program needs the public Python module <tt>foo</tt>, the
+	  package must depend on the binary package that installs
+	  the <tt>foo</tt> module. See <ref id="package_names"> for the
+	  naming of packages that install public Python modules.
 	</p>
 
 	<sect1 id="current_version_progs">
 	  <heading>Programs Shipping Private Modules</heading>
 	  <p>
-	    A program using <file>/usr/bin/python</file> as interpreter can
-	    come up with private Python modules. These modules should be
-	    installed in <file>/usr/share/<var>module</var></file>, or
+	    A program that specifies <prgn>python3</prgn>
+	    or <prgn>python</prgn> as its interpreter may require its own
+	    private Python modules. These modules should be installed
+	    in <file>/usr/share/<var>module</var></file>, or
 	    <file>/usr/lib/<var>module</var></file> if the modules are
 	    architecture-dependent (e.g. extensions).
 	  </p>
@@ -736,8 +831,8 @@
 	    Programs that have private compiled extensions must either
 	    handle multiple version support themselves, or declare a tight
 	    dependency on the current Python version (e.g. <tt>Depends:
-	    python&nbsp;(&gt;=&nbsp;2.7),
-	    python&nbsp;(&lt;&lt;&nbsp;2.8)</tt>.
+	    python3&nbsp;(&gt;=&nbsp;3.5),
+	    python3&nbsp;(&lt;&lt;&nbsp;3.6)</tt>.
 	  </p>
 	</sect1>
       </sect>
@@ -745,13 +840,13 @@
       <sect id="version_dep_progs">
 	<heading>Programs Using a Particular Python Version</heading>
 	<p>
-	  A program which requires a specific version of Python must
-	  begin with
-	  <tt>#!/usr/bin/python<var>X</var>.<var>Y</var></tt> (or
-	  <tt>#!/usr/bin/env python<var>X</var>.<var>Y</var></tt>). It
-	  must also specify a dependency on
+	  A program which requires a specific minor version of Python must
+	  specify the versioned
+	  interpreter <prgn>python<var>X</var>.<var>Y</var></tt>. The
+	  package that installs the programs must also specify a dependency
+	  on
 	  <package>python<var>X</var>.<var>Y</var></package> and on any
-	  package providing necessary modules.
+	  packages that install necessary modules.
 	</p>
 	<p>
 	  The notes on installation directories and byte-compilation
@@ -769,8 +864,8 @@
       <sect id="build_embedded">
 	<heading>Building Embedded Programs</heading>
 	<p>
-	  Programs which embed a Python interpreter must declare
-	  <tt>Build-Depends</tt> on
+	  Any package that installs a program which embeds a Python
+	  interpreter must declare <tt>Build-Depends</tt> on
 	  <package>python<var>X</var>.<var>Y</var>-dev</package>, where
 	  <var>X</var>.<var>Y</var> is the Python version the program
 	  builds against. It should be the current default Python version
@@ -809,20 +904,25 @@
     <appendix id="build_dependencies">
       <heading>Build Dependencies</heading>
       <p>
-	Build dependencies for Python dependent packages must be declared
+	Build dependencies for Python-dependent packages must be declared
 	for every Python version that the package is built for.
+      </p>
+      <p>
+	The <package>python3-all-dev</package> should be used when building
+	extensions for any or all Python 3 versions.
 	The <package>python-all-dev</package> should be used when building
-	extensions for any or all Python versions. To build for a specific
+	extensions for any or all Python 2 versions. To build for a specific
 	version or versions, declare <tt>Build-Depends</tt> on
 	<package>python<var>X</var>.<var>Y</var>-dev</package>.
       </p>
       <p>
-	Some applications and pure Python modules may be able to declare
-	<tt>Build-Depends</tt> on the runtime <package>python</package>
-	or <package>python-all</package> package, and not require
-	the <package>-dev</package> packages. A package that does not
-	require the <package>-dev</package> packages must not declare
-	<tt>Build-Depends</tt> on them.
+	Some applications and pure Python modules may be able to avoid
+	dependency on the <package>-dev</package> packages, and declare
+	<tt>Build-Depends</tt> on the runtime environment only
+	(<package>python3</package>, <package>python3-all</package>,
+	<package>python</package>, <package>python-all</package>). A package
+	that does not require the <package>-dev</package> packages must not
+	declare <tt>Build-Depends</tt> on them.
       </p>
 
       <p>
@@ -886,24 +986,26 @@
       <sect id="dh-python">
 	<heading><package>dh-python</package></heading>
 	<p>
-	 <package>dh-python</package> provides extensions
-	 for <package>debhelper</package> to make it easier to package
-	 Python modules and extensions. They calculate Python dependencies,
-	 add maintainer scripts to byte compile files, etc. Their use is not
-	 mandatory, but they are recommended by the Python maintainers.
+	  <package>dh-python</package> provides extensions
+	  for <package>debhelper</package> to make it easier to package
+	  Python modules and extensions. They calculate Python dependencies,
+	  add maintainer scripts to byte compile files, etc. Their use is
+	  not mandatory, but they are recommended by the Debian Python
+	  maintainers.
 	</p>
 	<p>
-	 See <tt>man dh_python2</tt> or <tt>man dh_python3</tt> for details.
+	  See <tt>man dh_python3</tt> or <tt>man dh_python2</tt> for
+	  details.
 	</p>
       </sect>
 
       <sect id="pybuild">
 	<heading>pybuild</heading>
 	<p>
-	 Pybuild is a Debian Python specific build system that invokes various
-	 build systems for requested Python versions in order to build modules
-	 and extensions.  It supports automatically building for multiple Python
-	 and Python 3 versions.
+	  Pybuild is a Debian Python specific build system that invokes
+	  various build systems for requested Python versions in order to
+	  build modules and extensions. It supports automatically building
+	  for multiple Python versions.
 	</p>
       </sect>
 

# Begin bundle
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
+LuSKcKEhLynLiA=
-- 
 \       “The Vatican is not a state.… a state must have people. There |
  `\    are no Vaticanians.… No-one gets born in the Vatican except by |
_o__)        an unfortunate accident.” —Geoffrey Robertson, 2010-09-18 |
Ben Finney

Reply to: