Your message dated Mon, 18 Sep 2017 18:21:04 +0000
with message-id <[email protected]>
and subject line Bug#872581: fixed in python3-defaults 3.6.2-1
has caused the Debian Bug report #872581,
regarding python3-defaults: Please convert SGML to DocBook XML
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
872581: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872581
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: python3
Version: 3.5.3-3
Severity: normal
Tags: patch

As discussed at DebConf, debiandoc SGML is obsolete and will be
removed from Debian.

Patches attached, one for the format change itself, the other
for rules, dependencies etc.

Python 2 bug is #872421
From 0dca8587cbb052c67053878dd2819a553594e57f Mon Sep 17 00:00:00 2001
From: "W. Martin Borgert" <[email protected]>
Date: Fri, 18 Aug 2017 09:44:19 +0200
Subject: [PATCH 1/2] change format from debiandoc SGML to DocBook/XML

---
 debian/python-policy.dbk  | 695 +++++++++++++++++++++++++++++++++++++++++++++
 debian/python-policy.sgml | 702 ----------------------------------------------
 2 files changed, 695 insertions(+), 702 deletions(-)
 create mode 100644 debian/python-policy.dbk
 delete mode 100644 debian/python-policy.sgml

diff --git a/debian/python-policy.dbk b/debian/python-policy.dbk
new file mode 100644
index 0000000..866119e
--- /dev/null
+++ b/debian/python-policy.dbk
@@ -0,0 +1,695 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd";>
+<book lang="en">
+<bookinfo>
+      <title>Debian Python Policy</title>
+      <author>
+	<personname><firstname>Neil</firstname> <surname>Schemenauer</surname></personname>
+	<email>[email protected]</email>
+      </author>
+      <author>
+	<personname><firstname>Matthias</firstname> <surname>Klose</surname></personname>
+	<email>[email protected]</email>
+      </author>
+      <author>
+	<personname><firstname>Gregor</firstname> <surname>Hoffleit</surname></personname>
+	<email>[email protected]</email>
+      </author>
+      <author>
+        <personname><firstname>Josselin</firstname> <surname>Mouette</surname></personname>
+	<email>[email protected]</email>
+      </author>
+      <author>
+        <personname><firstname>Joe</firstname> <surname>Wreschnig</surname></personname>
+	<email>[email protected]</email>
+      </author>
+      <edition>version 0.4.1.0</edition>
+
+      <abstract><para>
+	This document describes the packaging of Python within the
+	Debian GNU/Linux distribution and the policy requirements for
+	packaged Python programs and modules.
+      </para></abstract>
+
+      <copyright><year>1999</year> <year>2001</year> <year>2003</year> <year>2006</year> <holder>Software in the
+	  Public Interest</holder></copyright>
+	<legalnotice>
+	<para>
+	  This manual is free software; you can redistribute it and/or
+	  modify it under the terms of the GNU General Public License
+	  as published by the Free Software Foundation; either version
+	  2 of the License, or (at your option) any later version.
+	</para>
+	<para>
+	  This is distributed in the hope that it will be useful, but
+	  WITHOUT ANY WARRANTY; without even the implied warranty of
+	  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
+	  the GNU General Public License for more details.
+	</para>
+	<para>
+	  A copy of the GNU General Public License is available as
+	  <literal>/usr/share/common-licences/GPL</literal> in the Debian GNU/Linux
+	  distribution or on the World Wide Web at
+	  <ulink url="http://www.gnu.org/copyleft/gpl.html";
+	  >The GNU Public Licence</ulink>.
+	</para>
+	<para>
+	  You can also obtain it by writing to the
+	  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+	  Boston, MA 02111-1307, USA.
+	</para>
+      </legalnotice>
+    </bookinfo><chapter id="python">
+      <title>Python Packaging</title>
+      <section id="versions">
+	<title>Versions</title>
+	<para>
+	  At any given time, the package <literal>python</literal> will
+	  represent the current default Debian Python version.
+	</para>
+	<para>
+	  The default Debian Python version should alway be the latest stable
+	  upstream release that can be integrated in the distribution.
+	</para>
+	<para>
+	  Apart from the default version, legacy versions of Python
+	  or beta versions of future releases
+	  may be included as well in the distribution, as long as they
+	  are needed by other packages, or as long as it seems
+	  reasonable to provide them.  (Note: For the scope of this
+	  document, Python versions are synonymous to feature
+	  releases, i.e. Python 2.0 and 2.0.1 are subminor versions of
+	  the same Python version 2.0, but Python 2.1 and 2.2 are
+	  indeed different versions.)
+	</para>
+	<para>
+	  For any version, the main package must be called
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>.
+	</para>
+
+	<para>
+	  The set of currently supported python versions can be found
+	  in <filename>/usr/share/python/debian_defaults</filename>.
+	</para>
+
+      </section>
+
+      <section id="base">
+	<title>Main package</title>
+	<para>
+	  For every Python version provided in the distribution, the
+	  package <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>
+	  shall comprise a complete distribution for
+	  <emphasis>deployment</emphasis> of Python scripts and applications. The
+	  package includes the binary
+	  <filename>/usr/bin/python<replaceable>X</replaceable>.<replaceable>Y</replaceable></filename> and
+	  all modules of the upstream Python distribution.
+	</para>
+	<para>
+	  Excluded are any modules that depend on
+	  non-<emphasis>required</emphasis> packages, they will be provided in
+	  separate packages.  Some tools and files for the
+	  <emphasis>development</emphasis> of Python modules are split off in a
+	  separate package
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-dev</literal>.
+	  Documentation will be provided separately as well.
+	</para>
+	<para>
+	  At any time, the <literal>python</literal> package must contain
+	  a symlink <filename>/usr/bin/python</filename> to the the appropriate binary
+	  <filename>/usr/bin/python<replaceable>X</replaceable>.<replaceable>Y</replaceable></filename>. The
+	  <literal>python</literal> package must also depend on the
+	  appropriate <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>
+	  to ensure this binary is installed. The version of the
+	  <literal>python</literal> package must be greater than or equal to
+	  <replaceable>X</replaceable>.<replaceable>Y</replaceable> and smaller than <replaceable>X</replaceable>.<replaceable>Y+1</replaceable>.
+	</para>
+      </section>
+
+      <section id="interpreter">
+        <title>Python Interpreter</title>
+        <section id="interpreter_name">
+          <title>Interpreter Name</title>
+          <para>
+	    Python scripts depending on the default Python version (see <xref
+	    linkend="base"/>) or not depending on a specific Python version should
+	    use <filename>python</filename> (unversioned) as the interpreter name.
+	    </para>
+          <para>
+	    Python scripts that only work with a specific Python version must
+	    explicitly use the versioned interpreter name
+	    (<filename>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></filename>).
+          </para>
+        </section>
+        <section id="interpreter_loc">
+          <title>Interpreter Location</title>
+          <para>
+	    The preferred specification for the Python interpreter is
+            <filename>/usr/bin/python</filename> or
+            <filename>/usr/bin/python<replaceable>X</replaceable>.<replaceable>Y</replaceable></filename>.
+	    This ensures that a Debian installation of python is used
+	    and all dependencies on additional python modules are met.
+          </para>
+          <para>
+	    If a maintainer would like to provide the user with the
+	    possibility to override the Debian Python interpreter, he
+	    may want to use <filename>/usr/bin/env python</filename> or
+	    <filename>/usr/bin/env python<replaceable>X</replaceable>.<replaceable>Y</replaceable></filename>.
+	    However this is not advisable as it bypasses Debian's dependency
+	    checking and makes the package vulnerable to incomplete local
+	    installations of python.
+	  </para>
+        </section>
+      </section>
+
+      <section id="paths">
+	<title>Module Path</title>
+	<para>
+	  The module search path for Debian has been amended to
+	  include a directory tree in /usr/local at the beginning of
+	  the path. By default, sys.path is searched in the following
+	  order:
+	  <programlisting>
+/usr/lib/python<replaceable>XY</replaceable>.zip
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/plat-linux2
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/lib-tk
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/lib-dynload
+/usr/local/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/site-packages
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/site-packages
+/var/lib/python-support/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>
+/usr/lib/python<replaceable>X</replaceable>.<replaceable>Y</replaceable>/site-packages/<replaceable>module-dir</replaceable>
+/usr/lib/site-python
+	  </programlisting>
+	</para>
+	<para>
+	  The use of the <filename>/usr/lib/site-python</filename> directory
+	  is deprecated. The directory may be dropped from the path in
+	  a future version.  The /usr/lib/python<replaceable>XY</replaceable>.zip
+	  archive appeared in python2.3; it is not currently used in
+	  Debian.  Modules should not install directly to the
+	  <filename>/var/lib/python-support</filename> directory; it is for
+	  use by <xref linkend="pysupport"/>.
+	</para>
+      </section>
+
+      <section id="docs">
+	<title>Documentation</title>
+	<para>
+	  Python documentation is split out in separate packages
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-doc</literal>. The package
+	  <literal>python-doc</literal> will always provide the documentation
+	  for the default Debian Python version.
+	</para>
+	<para>
+	  TODO: Policy for documentation of third party packages.
+	</para>
+      </section>
+    </chapter>
+
+    <chapter id="module_packages">
+      <title>Packaged Modules</title>
+      <para>
+	The goal of these policies is to reduce the work necessary for
+	Python transitions. Python modules are internally very
+	dependent on a specific Python version. However, we want to
+	automate recompiling modules when possible, either during the
+	upgrade itself (re-bytecompiling pyc and pyo files) or shortly
+	thereafter with automated rebuilds (to handle C
+	extensions). These policies encourage automated dependency
+	generation and loose version bounds whenever possible.
+	</para>
+      <section>
+	<title>Types of Python Modules</title>
+	<para>
+	  There are two kinds of Python modules, "pure" Python
+	  modules, and extension modules. Pure Python modules are
+	  Python source code that works across many versions of
+	  Python. Extensions are C code compiled and linked against a
+	  specific version of the libpython library, and so can only
+	  be used by one version of Python.
+	</para>
+	<para>
+          Python packages are directories containing at least a
+          <filename>__init__.py</filename>, other modules, extensions and
+          packages (A package in the Python sense is unrelated to a
+          Debian package). Python packages must be packaged into the
+          same directory (as done by upstream). Splitting components
+          of a package across directories changes the import order and
+          may confuse documentation tools and IDEs.
+	</para>
+	<para>
+	  There are two ways to distribute Python modules. Public
+	  modules are installed in one of the directories listed
+	  in <xref linkend="paths"/>. They are accessible to any
+	  program. Private modules are installed in a directory such
+	  as <filename>/usr/share/<replaceable>packagename</replaceable></filename>
+	  or <filename>/usr/lib/<replaceable>packagename</replaceable></filename>. They are
+	  generally only accessible to a specific program or suite of
+	  programs included in the same package.
+	</para>
+      </section>
+      <section id="package_names">
+	<title>Module Package Names</title>
+	<para>
+	  Public modules should be packaged with a name
+	  of <literal>python-<replaceable>foo</replaceable></literal>,
+	  where <replaceable>foo</replaceable> is the name of the module. Such a
+	  package should support the current Debian Python version,
+	  and more if possible (there are several tools to help
+	  implement this, see <xref linkend="packaging_tools"/>). For
+	  example, if Python 2.3, 2.4, and 2.5 are supported, the
+	  Python command
+	  <programlisting>
+import foo
+	  </programlisting>
+	  should import the module when the user is running any
+	  of <filename>/usr/bin/python2.3</filename>, <filename>/usr/bin/python2.4</filename>,
+	  and <filename>/usr/bin/python2.5</filename>. This requirement also
+	  applies to extension modules; binaries for all the supported
+	  Python versions should be included in a single package.
+	</para>
+      </section>
+      <section id="specifying_versions">
+	<title>Specifying Supported Versions</title>
+	<para>
+	  The <literal>XS-Python-Version</literal> field
+	  in <filename>debian/control</filename> specifies the versions of
+	  Python supported by the package. This is used to track
+	  packages during Python transitions, and is also used by some
+	  packaging scripts to automatically generate appropriate
+	  Depends and Provides lines. The format of the field may be
+	  one of the following:
+	  <programlisting>
+XS-Python-Version: all
+XS-Python-Version: current
+XS-Python-Version: current, &gt;= X.Y
+XS-Python-Version: &gt;= X.Y
+XS-Python-Version: &gt;= A.B, &lt;&lt; X.Y
+XS-Python-Version: A.B, X.Y
+	  </programlisting>
+	  Where "all" means the package supports any Python version
+	  available, and "current" means it supports Debian's current
+	  Python version. Explicit Versions or version ranges can also
+	  be used.
+	</para>
+	<para>
+	  Your control file should also have a line:
+	  <programlisting>
+XB-Python-Version: ${python:Versions}
+	  </programlisting>
+	  The python:Versions is substituted by the supported Python
+	  versions of the binary package, based on
+	  <literal>XS-Python-Version</literal>. (If you are not using
+	  <filename>dh_python</filename> you will need to handle this
+	  substitution yourself.) The format of the field
+	  <literal>XB-Python-Version</literal> is the same as the
+	  <literal>XS-Python-Version</literal> field for packages not containing
+	  extensions. Packages with extensions must list the versions
+	  explicitely.
+	</para>
+	<para>
+	  If your package is used by another module or application
+	  that requires a specific Python version, it should also
+	  <literal>Provide: python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-foo</literal> for
+	  each version it supports.
+	</para>
+      </section>
+
+      <section id="dependencies">
+	<title>Dependencies</title>
+	<para>
+	  Packaged modules available for the default Python version
+	  (or many versions including the default) as described
+	  in <xref linkend="package_names"/> must depend on "<literal>python
+	  (&gt;= <replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>)". If they
+	  require other modules to work, they must depend on the
+	  corresponding <literal>python-foo</literal>. They must not
+	  depend on
+	  any <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-foo</literal>.
+	</para>
+	<para>
+	  Packaged modules available for one particular version of Python must
+	  depend on the corresponding
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal> package instead.
+	  If they need other modules, they must depend on the corresponding
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-foo</literal> packages, and
+	  must not depend on any <literal>python-foo</literal>.
+	</para>
+      </section>
+
+      <section id="provides">
+	<title>Provides</title>
+	<para>
+          Provides in packages of the form
+          <literal>python-<replaceable>foo</replaceable></literal> must be specified,
+          if the package contains an extension for more than one
+          python version. Provides should also be added on request of
+          maintainers who depend on a non-default python version.
+	</para>
+	<para>
+	  Packaged modules available for one particular version of Python must
+	  depend on the corresponding
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal> package instead.
+	  If they need other modules, they must depend on the corresponding
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-foo</literal> packages, and
+	  must not depend on any <literal>python-foo</literal>.
+	</para>
+      </section>
+
+      <section id="bytecompilation">
+        <title>Modules Bytecompilation</title>
+	<para>
+	  If a package provides any binary-independent modules
+	  (<filename>foo.py</filename> files), the corresponding bytecompiled
+	  modules (<filename>foo.pyc</filename> files) and optimized modules
+	  (<filename>foo.pyo</filename> files) must not ship in the
+	  package. Instead, they should be generated in the package's
+	  postinst, and removed in the package's prerm. The package's
+	  prerm has to make sure that both <filename>foo.pyc</filename> and
+	  <filename>foo.pyo</filename> are removed.
+	</para>
+	<para>
+          A package should only byte-compile the files which belong to
+          the package.
+	</para>
+	<para>
+          The file <filename>/etc/python/debian_config</filename> allows
+          configuration how modules should be byte-compiled. The
+          postinst scripts should respect these settings.
+	</para>
+	<para>
+          Modules in private installation directories and in
+          <filename>/usr/lib/site-python</filename> should be byte-compiled,
+          when the default python version changes.
+	</para>
+      </section>
+    </chapter>
+
+    <chapter id="programs">
+      <title>Python Programs</title>
+
+      <section id="version_indep_progs">
+	<title>Programs using the default python</title>
+	<para>
+	  Programs that can run with any version of Python must
+	  begin with <literal>#!/usr/bin/python</literal> or <literal>#!/usr/bin/env
+	  python</literal> (the former is preferred). They must also
+	  specify a dependency on <literal>python</literal>, with a
+	  versioned dependency if necessary.
+	</para>
+	<para>
+	  If the program needs the python module <literal>foo</literal>,
+	  it must depend on <literal>python-foo</literal>.
+	</para>
+
+        <section id="current_version_progs">
+          <title>Programs Shipping Private Modules</title>
+	  <para>
+	    A program using <filename>/usr/bin/python</filename> as
+	    interpreter can come up with private Python modules. These
+	    modules should be installed in
+	    <literal>/usr/share/<replaceable>module</replaceable></literal>, or
+	    <literal>/usr/lib/<replaceable>module</replaceable></literal> if the modules are
+	    architecture-dependent (e.g. extensions).
+	  </para>
+	  <para>
+	    <filename>/usr/lib/site-python</filename> is deprecated and should
+	    no longer be used for this purpose.
+	  </para>
+	  <para>
+	    The rules explained in <xref linkend="bytecompilation"/> apply to
+	    those private modules: the bytecompiled modules must not
+	    be shipped with the package, they should be generated in
+	    the package's postinst, using the current default Python
+	    version, and removed in the prerm. Modules should be
+	    bytecompiled using the current default Python version.
+	  </para>
+	  <para>
+	    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. <literal>Depends: python (&gt;= 2.4), python (&lt;= 2.5)</literal>. No 
+	    tools currently exist to alleviate this situation.
+	  </para>
+	</section>
+      </section>
+
+      <section id="version_dep_progs">
+	<title>Programs Using a Particular Python Version</title>
+	<para>
+	  A program which requires a specific version of Python must
+	  begin with
+	  <literal>#!/usr/bin/python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal> (or
+	  <literal>#!/usr/bin/env python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>). It
+	  must also specify a dependency on
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal> and on
+	  any <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-foo</literal>
+	  package providing necessary modules. It should not depend on
+	  any <literal>python-foo</literal> package, unless it
+	  requires a specific version of the package (since virtual
+	  packages cannot be versioned). If this is the case, it
+	  should depend on both the virtual package and the main
+	  package (e.g. <literal>Depends: python2.4-foo, python-foo (>=
+	  1.0)</literal>).
+	</para>
+	<para>
+	  The notes on installation directories and bytecompilation
+	  for programs that support any version of Python also apply
+	  to programs supporting only a single Python version. Modules
+	  to be bytecompiled should use the same Python version as the
+	  package itself.
+	</para>
+      </section>
+    </chapter>
+
+    <chapter id="embed">
+      <title>Programs Embedding Python</title>
+
+      <section id="build_embedded">
+	<title>Building Embedded Programs</title>
+	<para>
+	  Programs which embed a Python interpreter must declare a
+	  <literal>Build-Depends</literal> on
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-dev</literal>, where
+	  python<replaceable>X</replaceable>.<replaceable>Y</replaceable> is the python version the program
+	  builds against. It should be the current default python version
+	  unless the program doesn't work correctly with this version.
+	</para>
+      </section>
+
+      <section id="embedded_deps">
+	<title>Embedded Python Dependencies</title>
+	<para>
+	  Dependencies for programs linking against the shared Python
+	  library will be automatically created by
+	  <filename>dpkg-shlibdeps</filename>. The
+	  <literal>libpython<replaceable>X</replaceable>.<replaceable>Y</replaceable>.so.<replaceable>Z</replaceable></literal> library
+	  the program is built against is provided by the
+	  <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal> package.
+	</para>
+      </section>
+    </chapter>
+
+    <chapter id="other">
+      <title>Interaction with Locally Installed Python Versions</title>
+      <para>
+	As long as you don't install other versions of Python in your
+	path, Debian's Python versions won't be affected by a new
+	version.
+      </para>
+      <para>
+	If you install a different subrelease of the version of python
+	you've got installed, you'll need to be careful to install all
+	the modules you use for that version of python too.
+      </para>
+
+    </chapter>
+
+    <appendix id="build_dependencies">
+      <title>Build Dependencies</title>
+      <para>
+	Build dependencies for Python dependent packages must be
+	declared for every Python version that the package is built
+	for. The <literal>python-all-dev</literal> should be used when
+	building modules for any or all Python versions. To build for
+	a specific version or versions, Build-Depend on
+	<literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-dev</literal>.
+      </para>
+      <para>
+	Some applications and pure Python modules may be able to
+	depend only on <literal>python</literal>
+	or <literal>python-all</literal> and not require the -dev
+	packages.
+      </para>
+
+      <para>
+	Build-Depend on at least:
+	<programlisting>
+Build-Depends: python2.3 (>= 2.3-1)
+Build-Depends: python2.4 (>= 2.4-1)
+Build-Depends: python (>= 2.3.5-7)
+Build-Depends: python-all
+
+Build-Depends: python2.3-dev (>= 2.3-1)
+Build-Depends: python2.4-dev (>= 2.4-1)
+Build-Depends: python-dev (>= 2.3.5-7)
+Build-Depends: python-all-dev
+	</programlisting>
+      </para>
+      <para>
+	If you use either <literal>python-support</literal> or
+	<literal>python-central</literal> you must additionally
+	Build-Depend on those. If you are using <filename>dh_python</filename>
+	at all, you must Build-Depend on <literal>python</literal>, as
+	<literal>debhelper</literal> does not depend on it.
+      </para>
+    </appendix>
+
+    <appendix id="packaging_tools">
+      <title>Packaging Tools</title>
+      <para>
+	This section describes the various tools to help package
+	Python programs and modules for Debian. Although none of these
+	tools are mandatory, their use is strongly encouraged, as the
+	above policy has been designed with them in mind (and vice
+	versa). This appendix is just an overview. If you use these
+	tools, you should read their full documentation.
+      </para>
+      <section id="pysupport">
+	<title>python-support</title>
+	<para>
+	  The python-support system provides a simple way to
+	  bytecompile pure Python modules and manage dependencies. It
+	  integrates with <literal>debhelper</literal>. When using
+	  python-support, you should install your modules
+	  to <filename>/usr/share/python-support/<replaceable>package</replaceable></filename>
+	  rather than the standard Python directories. python-support
+	  will then handle compiling the modules and making
+	  appropriate symbolic links for installed Python versions to
+	  find them,
+	  substitute <literal>${python:Depends}</literal>, <literal>${python:Versions}</literal>,
+	  and <literal>${python:Provides}</literal> in your control file, and
+	  manage bytecompilation in your postinst/prerm.
+	</para>
+	<para>
+	  To use it, call <filename>dh_pysupport</filename>
+	  before <filename>dh_python</filename>, and make sure you've
+	  installed the modules in the right place:
+	  <programlisting>
+PREFIX := debian/python-package/usr
+...
+install:
+	...
+	./setup.py install --no-compile \
+		--install-lib=$(PREFIX)/share/python-support/python-package
+binary-indep: build install
+	...
+	dh_pysupport
+	dh_python
+	...
+	  </programlisting>
+	</para>
+	<para>
+	  python-support can also manage private modules. To use this
+	  feature, pass a list of directories to be managed by
+	  python-support to <filename>dh_pysupport</filename>
+	  and <filename>dh_python</filename>. python-support cannot handle
+	  compiled extensions.
+	</para>
+      </section>
+
+      <section id="pycentral">
+	<title>python-central</title>
+	<para>
+	  python-central provides another way to manage Python
+	  modules. It integrates with <literal>debhelper</literal>,
+	  but can also be used without it. When using python-central,
+	  you should install your modules normally. It will then move
+	  them to its private directory, and manage the same things
+	  python-support does.
+	</para>
+	<para>
+	  To use it, call <filename>dh_pycentral</filename>
+	  before <filename>dh_python</filename>:
+	  <programlisting>
+install:
+	...
+	./setup.py install
+
+binary-indep: build install
+	...
+	dh_pycentral
+	dh_python
+	...
+	  </programlisting>
+	</para>
+	<para>
+	  python-central can handle compiled extensions for multiple
+	  Python versions. If you want python-central to handle
+	  private modules, you must pass the list of directories
+	  containing them to <filename>dh_python</filename> (but
+	  not <filename>dh_pycentral</filename>).
+	</para>
+	<para>
+          If python-central should not move the files to its private
+          directory, use<filename>DH_PYCENTRAL=nomove dh_pycentral</filename>
+          instead.
+	</para>
+	<para>
+          Examples for source packages using python-central are
+          pyenchant, python-imaging (modules and extensions),
+          pyparallel (modules only).
+	</para>
+      </section>
+
+      <section id="cdbs">
+	<title>CDBS</title>
+	<para>
+	  FIXME: Someone familiar with CDBS should write this part.
+	</para>
+      </section>
+
+    </appendix>
+
+    <appendix id="upgrade">
+      <title>Upgrade Procedure</title>
+      <para>
+	This section describes the procedure for the upgrade when the
+	default python version is changed in the <literal>unstable</literal>
+	distribution, requiring recompilation of many python-related
+	packages.
+      </para>
+      <para>
+	<orderedlist>
+	  <listitem>
+	    <para>
+	      Have a long and heated discussion.
+	    </para>
+	  </listitem>
+	  <listitem>
+	    <para>
+	      The Debian Python maintainer decides for the new default Debian
+	      Python version and announces the upgrade.
+	    </para>
+	  </listitem>
+	  <listitem>
+	    <para>
+	      Upload of the python core metapackages <literal>python</literal>,
+	      <literal>python-dev</literal>, <literal>python-doc</literal> and
+	      several <literal>python-<replaceable>module</replaceable></literal>, depending on
+	      the new <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable></literal>,
+	      <literal>python<replaceable>X</replaceable>.<replaceable>Y</replaceable>-dev</literal> and so on.
+	    </para>
+	  </listitem>
+	  <listitem>
+	    <para>
+	      The release team schedules rebuilds for packages that
+	      may need it. Packages that require manual work get
+	      updated and uploaded.
+	    </para>
+	  </listitem>
+	</orderedlist>
+      </para>
+    </appendix>
+  </book>
diff --git a/debian/python-policy.sgml b/debian/python-policy.sgml
deleted file mode 100644
index 5b5e3c2..0000000
--- a/debian/python-policy.sgml
+++ /dev/null
@@ -1,702 +0,0 @@
-<!doctype debiandoc system>
-
-<debiandoc>
-  <book>
-    <titlepag>
-      <title>Debian Python Policy</title>
-      <author>
-	<name>Neil Schemenauer</name>
-	<email>[email protected]</email>
-      </author>
-      <author>
-	<name>Matthias Klose</name>
-	<email>[email protected]</email>
-      </author>
-      <author>
-	<name>Gregor Hoffleit</name>
-	<email>[email protected]</email>
-      </author>
-      <author>
-        <name>Josselin Mouette</name>
-	<email>[email protected]</email>
-      </author>
-      <author>
-        <name>Joe Wreschnig</name>
-	<email>[email protected]</email>
-      </author>
-      <version>version 0.4.1.0</version>
-
-      <abstract>
-	This document describes the packaging of Python within the
-	Debian GNU/Linux distribution and the policy requirements for
-	packaged Python programs and modules.
-      </abstract>
-
-      <copyright>
-	<copyrightsummary>
-	  Copyright &copy; 1999, 2001, 2003, 2006 Software in the
-	  Public Interest
-	</copyrightsummary>
-	<p>
-	  This manual is free software; you can redistribute it and/or
-	  modify it under the terms of the GNU General Public License
-	  as published by the Free Software Foundation; either version
-	  2 of the License, or (at your option) any later version.
-	</p>
-	<p>
-	  This is distributed in the hope that it will be useful, but
-	  WITHOUT ANY WARRANTY; without even the implied warranty of
-	  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
-	  the GNU General Public License for more details.
-	</p>
-	<p>
-	  A copy of the GNU General Public License is available as
-	  <tt>/usr/share/common-licences/GPL</tt> in the Debian GNU/Linux
-	  distribution or on the World Wide Web at
-	  <url id="http://www.gnu.org/copyleft/gpl.html";
-	  name="The GNU Public Licence">.
-	</p>
-	<p>
-	  You can also obtain it by writing to the
-	  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-	  Boston, MA 02111-1307, USA.
-	</p>
-      </copyright>
-    </titlepag>
-
-    <toc detail="sect1">
-
-    <chapt id="python">
-      <heading>Python Packaging</heading>
-      <sect id="versions">
-	<heading>Versions</heading>
-	<p>
-	  At any given time, the package <package>python</package> will
-	  represent the current default Debian Python version.
-	</p>
-	<p>
-	  The default Debian Python version should alway be the latest stable
-	  upstream release that can be integrated in the distribution.
-	</p>
-	<p>
-	  Apart from the default version, legacy versions of Python
-	  or beta versions of future releases
-	  may be included as well in the distribution, as long as they
-	  are needed by other packages, or as long as it seems
-	  reasonable to provide them.  (Note: For the scope of this
-	  document, Python versions are synonymous to feature
-	  releases, i.e. Python 2.0 and 2.0.1 are subminor versions of
-	  the same Python version 2.0, but Python 2.1 and 2.2 are
-	  indeed different versions.)
-	</p>
-	<p>
-	  For any version, the main package must be called
-	  <package>python<var>X</var>.<var>Y</var></package>.
-	</p>
-
-	<p>
-	  The set of currently supported python versions can be found
-	  in <file>/usr/share/python/debian_defaults</file>.
-	</p>
-
-      </sect>
-
-      <sect id="base">
-	<heading>Main package</heading>
-	<p>
-	  For every Python version provided in the distribution, the
-	  package <package>python<var>X</var>.<var>Y</var></package>
-	  shall comprise a complete distribution for
-	  <em>deployment</em> of Python scripts and applications. The
-	  package includes the binary
-	  <file>/usr/bin/python<var>X</var>.<var>Y</var></file> and
-	  all modules of the upstream Python distribution.
-	</p>
-	<p>
-	  Excluded are any modules that depend on
-	  non-<em>required</em> packages, they will be provided in
-	  separate packages.  Some tools and files for the
-	  <em>development</em> of Python modules are split off in a
-	  separate package
-	  <package>python<var>X</var>.<var>Y</var>-dev</package>.
-	  Documentation will be provided separately as well.
-	</p>
-	<p>
-	  At any time, the <package>python</package> package must contain
-	  a symlink <file>/usr/bin/python</file> to the the appropriate binary
-	  <file>/usr/bin/python<var>X</var>.<var>Y</var></file>. The
-	  <package>python</package> package must also depend on the
-	  appropriate <package>python<var>X</var>.<var>Y</var></package>
-	  to ensure this binary is installed. The version of the
-	  <package>python</package> 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>
-      </sect>
-
-      <sect id="interpreter">
-        <heading>Python Interpreter</heading>
-        <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> (unversioned) as the interpreter name.
-	    </p>
-          <p>
-	    Python scripts that only work with a specific Python 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>
-	    If a maintainer would like to provide the user with the
-	    possibility to override the Debian Python interpreter, he
-	    may want to use <file>/usr/bin/env python</file> or
-	    <file>/usr/bin/env python<var>X</var>.<var>Y</var></file>.
-	    However 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>
-
-      <sect id="paths">
-	<heading>Module Path</heading>
-	<p>
-	  The module search path for Debian has been amended to
-	  include a directory tree in /usr/local at the beginning of
-	  the path. By default, sys.path is searched in the following
-	  order:
-	  <example>
-/usr/lib/python<var>XY</var>.zip
-/usr/lib/python<var>X</var>.<var>Y</var>
-/usr/lib/python<var>X</var>.<var>Y</var>/plat-linux2
-/usr/lib/python<var>X</var>.<var>Y</var>/lib-tk
-/usr/lib/python<var>X</var>.<var>Y</var>/lib-dynload
-/usr/local/lib/python<var>X</var>.<var>Y</var>/site-packages
-/usr/lib/python<var>X</var>.<var>Y</var>/site-packages
-/var/lib/python-support/python<var>X</var>.<var>Y</var>
-/usr/lib/python<var>X</var>.<var>Y</var>/site-packages/<var>module-dir</var>
-/usr/lib/site-python
-	  </example>
-	</p>
-	<p>
-	  The use of the <file>/usr/lib/site-python</file> directory
-	  is deprecated. The directory may be dropped from the path in
-	  a future version.  The /usr/lib/python<var>XY</var>.zip
-	  archive appeared in python2.3; it is not currently used in
-	  Debian.  Modules should not install directly to the
-	  <file>/var/lib/python-support</file> directory; it is for
-	  use by <ref id="pysupport">.
-	</p>
-      </sect>
-
-      <sect id="docs">
-	<heading>Documentation</heading>
-	<p>
-	  Python documentation is split out in separate packages
-	  <package>python<var>X</var>.<var>Y</var>-doc</package>. The package
-	  <package>python-doc</package> will always provide the documentation
-	  for the default Debian Python version.
-	</p>
-	<p>
-	  TODO: Policy for documentation of third party packages.
-	</p>
-      </sect>
-    </chapt>
-
-    <chapt id="module_packages">
-      <heading>Packaged Modules</heading>
-      <p>
-	The goal of these policies is to reduce the work necessary for
-	Python transitions. Python modules are internally very
-	dependent on a specific Python version. However, we want to
-	automate recompiling modules when possible, either during the
-	upgrade itself (re-bytecompiling pyc and pyo files) or shortly
-	thereafter with automated rebuilds (to handle C
-	extensions). These policies encourage automated dependency
-	generation and loose version bounds whenever possible.
-      <sect>
-	<heading>Types of Python Modules</heading>
-	<p>
-	  There are two kinds of Python modules, "pure" Python
-	  modules, and extension modules. Pure Python modules are
-	  Python source code that works across many versions of
-	  Python. Extensions are C code compiled and linked against a
-	  specific version of the libpython library, and so can only
-	  be used by one version of Python.
-	</p>
-	<p>
-          Python packages are directories containing at least a
-          <file>__init__.py</file>, other modules, extensions and
-          packages (A package in the Python sense is unrelated to a
-          Debian package). Python packages must be packaged into the
-          same directory (as done by upstream). Splitting components
-          of a package across directories changes the import order and
-          may confuse documentation tools and IDEs.
-	</p>
-	<p>
-	  There are two ways to distribute Python modules. Public
-	  modules are installed in one of the directories listed
-	  in <ref id="paths">. They are accessible to any
-	  program. Private modules are installed in a directory such
-	  as <file>/usr/share/<var>packagename</var></file>
-	  or <file>/usr/lib/<var>packagename</var></file>. They are
-	  generally only accessible to a specific program or suite of
-	  programs included in the same package.
-	</p>
-      </sect>
-      <sect id="package_names">
-	<heading>Module Package Names</heading>
-	<p>
-	  Public modules should be packaged with a name
-	  of <package>python-<var>foo</var></package>,
-	  where <var>foo</var> is the name of the module. 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.3, 2.4, and 2.5 are supported, the
-	  Python command
-	  <example>
-import foo
-	  </example>
-	  should import the module when the user is running any
-	  of <prgn>/usr/bin/python2.3</prgn>, <prgn>/usr/bin/python2.4</prgn>,
-	  and <prgn>/usr/bin/python2.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 <tt>XS-Python-Version</tt> field
-	  in <file>debian/control</file> specifies the versions of
-	  Python supported by the package. This is used to track
-	  packages during Python transitions, and is also 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>
-XS-Python-Version: all
-XS-Python-Version: current
-XS-Python-Version: current, >= X.Y
-XS-Python-Version: >= X.Y
-XS-Python-Version: >= A.B, << X.Y
-XS-Python-Version: A.B, X.Y
-	  </example>
-	  Where "all" means the package supports any Python version
-	  available, and "current" means it supports Debian's current
-	  Python version. Explicit Versions or version ranges can also
-	  be used.
-	</p>
-	<p>
-	  Your control file should also have a line:
-	  <example>
-XB-Python-Version: ${python:Versions}
-	  </example>
-	  The python:Versions is substituted by the supported Python
-	  versions of the binary package, based on
-	  <tt>XS-Python-Version</tt>. (If you are not using
-	  <prgn>dh_python</prgn> you will need to handle this
-	  substitution yourself.) The format of the field
-	  <tt>XB-Python-Version</tt> is the same as the
-	  <tt>XS-Python-Version</tt> field for packages not containing
-	  extensions. Packages with extensions must list the versions
-	  explicitely.
-	</p>
-	<p>
-	  If your package is used by another module or application
-	  that requires a specific Python version, it should also
-	  <tt>Provide: python<var>X</var>.<var>Y</var>-foo</tt> for
-	  each version it supports.
-	</p>
-      </sect>
-
-      <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 depend on "<package>python
-	  (&gt;=&nbsp;<var>X</var>.<var>Y</var></package>)". 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>
-	  Packaged modules available for one particular version of Python must
-	  depend on the corresponding
-	  <package>python<var>X</var>.<var>Y</var></package> package instead.
-	  If they need other modules, they must depend on the corresponding
-	  <package>python<var>X</var>.<var>Y</var>-foo</package> packages, and
-	  must not depend on any <package>python-foo</package>.
-	</p>
-      </sect>
-
-      <sect id="provides">
-	<heading>Provides</heading>
-	<p>
-          Provides in packages of the form
-          <package>python-<var>foo</var></package> must be specified,
-          if the package contains an extension for more than one
-          python version. Provides should also be added on request of
-          maintainers who depend on a non-default python version.
-	</p>
-	<p>
-	  Packaged modules available for one particular version of Python must
-	  depend on the corresponding
-	  <package>python<var>X</var>.<var>Y</var></package> package instead.
-	  If they need other modules, they must depend on the corresponding
-	  <package>python<var>X</var>.<var>Y</var>-foo</package> packages, and
-	  must not depend on any <package>python-foo</package>.
-	</p>
-      </sect>
-
-      <sect id="bytecompilation">
-        <heading>Modules Bytecompilation</heading>
-	<p>
-	  If a package provides any binary-independent modules
-	  (<file>foo.py</file> files), the corresponding bytecompiled
-	  modules (<file>foo.pyc</file> files) and optimized modules
-	  (<file>foo.pyo</file> files) must not ship in the
-	  package. Instead, they should be generated in the package's
-	  postinst, and removed in the package's prerm. The package's
-	  prerm has to make sure that both <file>foo.pyc</file> and
-	  <file>foo.pyo</file> are removed.
-	</p>
-	<p>
-          A package should only byte-compile the files which belong to
-          the package.
-	</p>
-	<p>
-          The file <file>/etc/python/debian_config</file> allows
-          configuration how modules should be byte-compiled. The
-          postinst scripts should respect these settings.
-	</p>
-	<p>
-          Modules in private installation directories and in
-          <file>/usr/lib/site-python</file> should be byte-compiled,
-          when the default python version changes.
-	</p>
-      </sect>
-    </chapt>
-
-    <chapt id="programs">
-      <heading>Python Programs</heading>
-
-      <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 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 <package>python-foo</package>.
-	</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
-	    <tt>/usr/share/<var>module</var></tt>, or
-	    <tt>/usr/lib/<var>module</var></tt> if the modules are
-	    architecture-dependent (e.g. extensions).
-	  </p>
-	  <p>
-	    <file>/usr/lib/site-python</file> is deprecated and should
-	    no longer be used for this purpose.
-	  </p>
-	  <p>
-	    The rules explained in <ref id="bytecompilation"> apply to
-	    those private modules: the bytecompiled modules must not
-	    be shipped with the package, they should be generated in
-	    the package's postinst, using the current default Python
-	    version, and removed in the prerm. Modules should be
-	    bytecompiled using the current default Python version.
-	  </p>
-	  <p>
-	    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 (>= 2.4), python (<= 2.5)</tt>. No 
-	    tools currently exist to alleviate this situation.
-	  </p>
-	</sect1>
-      </sect>
-
-      <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
-	  <package>python<var>X</var>.<var>Y</var></package> and on
-	  any <package>python<var>X</var>.<var>Y</var>-foo</package>
-	  package providing necessary modules. It should not depend on
-	  any <package>python-foo</package> package, unless it
-	  requires a specific version of the package (since virtual
-	  packages cannot be versioned). If this is the case, it
-	  should depend on both the virtual package and the main
-	  package (e.g. <tt>Depends: python2.4-foo, python-foo (>=
-	  1.0)</tt>).
-	</p>
-	<p>
-	  The notes on installation directories and bytecompilation
-	  for programs that support any version of Python also apply
-	  to programs supporting only a single Python version. Modules
-	  to be bytecompiled should use the same Python version as the
-	  package itself.
-	</p>
-      </sect>
-    </chapt>
-
-    <chapt id="embed">
-      <heading>Programs Embedding Python</heading>
-
-      <sect id="build_embedded">
-	<heading>Building Embedded Programs</heading>
-	<p>
-	  Programs which embed a Python interpreter must declare a
-	  <tt>Build-Depends</tt> on
-	  <package>python<var>X</var>.<var>Y</var>-dev</package>, where
-	  python<var>X</var>.<var>Y</var> is the python version the program
-	  builds against. It should be the current default python version
-	  unless the program doesn't work correctly with this version.
-	</p>
-      </sect>
-
-      <sect id="embedded_deps">
-	<heading>Embedded Python Dependencies</heading>
-	<p>
-	  Dependencies for programs linking against the shared Python
-	  library will be automatically created by
-	  <prgn>dpkg-shlibdeps</prgn>. The
-	  <tt>libpython<var>X</var>.<var>Y</var>.so.<var>Z</var></tt> library
-	  the program is built against is provided by the
-	  <package>python<var>X</var>.<var>Y</var></package> package.
-	</p>
-      </sect>
-    </chapt>
-
-    <chapt id="other">
-      <heading>Interaction with Locally Installed Python Versions</heading>
-      <p>
-	As long as you don't install other versions of Python in your
-	path, Debian's Python versions won't be affected by a new
-	version.
-      </p>
-      <p>
-	If you install a different subrelease of the version of python
-	you've got installed, you'll need to be careful to install all
-	the modules you use for that version of python too.
-      </p>
-
-    </chapt>
-
-    <appendix id="build_dependencies">
-      <heading>Build Dependencies</heading>
-      <p>
-	Build dependencies for Python dependent packages must be
-	declared for every Python version that the package is built
-	for. The <package>python-all-dev</package> should be used when
-	building modules for any or all Python versions. To build for
-	a specific version or versions, Build-Depend on
-	<package>python<var>X</var>.<var>Y</var>-dev</package>.
-      </p>
-      <p>
-	Some applications and pure Python modules may be able to
-	depend only on <package>python</package>
-	or <package>python-all</package> and not require the -dev
-	packages.
-      </p>
-
-      <p>
-	Build-Depend on at least:
-	<example>
-Build-Depends: python2.3 (>= 2.3-1)
-Build-Depends: python2.4 (>= 2.4-1)
-Build-Depends: python (>= 2.3.5-7)
-Build-Depends: python-all
-
-Build-Depends: python2.3-dev (>= 2.3-1)
-Build-Depends: python2.4-dev (>= 2.4-1)
-Build-Depends: python-dev (>= 2.3.5-7)
-Build-Depends: python-all-dev
-	</example>
-      </p>
-      <p>
-	If you use either <package>python-support</package> or
-	<package>python-central</package> you must additionally
-	Build-Depend on those. If you are using <prgn>dh_python</prgn>
-	at all, you must Build-Depend on <package>python</package>, as
-	<package>debhelper</package> does not depend on it.
-      </p>
-    </appendix>
-
-    <appendix id="packaging_tools">
-      <heading>Packaging Tools</heading>
-      <p>
-	This section describes the various tools to help package
-	Python programs and modules for Debian. Although none of these
-	tools are mandatory, their use is strongly encouraged, as the
-	above policy has been designed with them in mind (and vice
-	versa). This appendix is just an overview. If you use these
-	tools, you should read their full documentation.
-      </p>
-      <sect id="pysupport">
-	<heading>python-support</heading>
-	<p>
-	  The python-support system provides a simple way to
-	  bytecompile pure Python modules and manage dependencies. It
-	  integrates with <package>debhelper</package>. When using
-	  python-support, you should install your modules
-	  to <file>/usr/share/python-support/<var>package</var></file>
-	  rather than the standard Python directories. python-support
-	  will then handle compiling the modules and making
-	  appropriate symbolic links for installed Python versions to
-	  find them,
-	  substitute <tt>${python:Depends}</tt>, <tt>${python:Versions}</tt>,
-	  and <tt>${python:Provides}</tt> in your control file, and
-	  manage bytecompilation in your postinst/prerm.
-	</p>
-	<p>
-	  To use it, call <prgn>dh_pysupport</prgn>
-	  before <prgn>dh_python</prgn>, and make sure you've
-	  installed the modules in the right place:
-	  <example>
-PREFIX := debian/python-package/usr
-...
-install:
-	...
-	./setup.py install --no-compile \
-		--install-lib=$(PREFIX)/share/python-support/python-package
-binary-indep: build install
-	...
-	dh_pysupport
-	dh_python
-	...
-	  </example>
-	</p>
-	<p>
-	  python-support can also manage private modules. To use this
-	  feature, pass a list of directories to be managed by
-	  python-support to <prgn>dh_pysupport</prgn>
-	  and <prgn>dh_python</prgn>. python-support cannot handle
-	  compiled extensions.
-	</p>
-      </sect>
-
-      <sect id="pycentral">
-	<heading>python-central</heading>
-	<p>
-	  python-central provides another way to manage Python
-	  modules. It integrates with <package>debhelper</package>,
-	  but can also be used without it. When using python-central,
-	  you should install your modules normally. It will then move
-	  them to its private directory, and manage the same things
-	  python-support does.
-	</p>
-	<p>
-	  To use it, call <prgn>dh_pycentral</prgn>
-	  before <prgn>dh_python</prgn>:
-	  <example>
-install:
-	...
-	./setup.py install
-
-binary-indep: build install
-	...
-	dh_pycentral
-	dh_python
-	...
-	  </example>
-	</p>
-	<p>
-	  python-central can handle compiled extensions for multiple
-	  Python versions. If you want python-central to handle
-	  private modules, you must pass the list of directories
-	  containing them to <prgn>dh_python</prgn> (but
-	  not <prgn>dh_pycentral</prgn>).
-	</p>
-	<p>
-          If python-central should not move the files to its private
-          directory, use<prgn>DH_PYCENTRAL=nomove dh_pycentral</prgn>
-          instead.
-	</p>
-	<p>
-          Examples for source packages using python-central are
-          pyenchant, python-imaging (modules and extensions),
-          pyparallel (modules only).
-	</p>
-      </sect>
-
-      <sect id="cdbs">
-	<heading>CDBS</heading>
-	<p>
-	  FIXME: Someone familiar with CDBS should write this part.
-	</p>
-      </sect>
-
-    </appendix>
-
-    <appendix id="upgrade">
-      <heading>Upgrade Procedure</heading>
-      <p>
-	This section describes the procedure for the upgrade when the
-	default python version is changed in the <tt>unstable</tt>
-	distribution, requiring recompilation of many python-related
-	packages.
-      </p>
-      <p>
-	<enumlist>
-	  <item>
-	    <p>
-	      Have a long and heated discussion.
-	    </p>
-	  </item>
-	  <item>
-	    <p>
-	      The Debian Python maintainer decides for the new default Debian
-	      Python version and announces the upgrade.
-	    </p>
-	  </item>
-	  <item>
-	    <p>
-	      Upload of the python core metapackages <package>python</package>,
-	      <package>python-dev</package>, <package>python-doc</package> and
-	      several <package>python-<var>module</var></package>, depending on
-	      the new <package>python<var>X</var>.<var>Y</var></package>,
-	      <package>python<var>X</var>.<var>Y</var>-dev</package> and so on.
-	    </p>
-	  </item>
-	  <item>
-	    <p>
-	      The release team schedules rebuilds for packages that
-	      may need it. Packages that require manual work get
-	      updated and uploaded.
-	    </p>
-	  </item>
-	</enumlist>
-      </p>
-    </appendix>
-  </book>
-</debiandoc>
-- 
2.14.1

From 608b75568dc2e6857df091c6be077b32c1533639 Mon Sep 17 00:00:00 2001
From: "W. Martin Borgert" <[email protected]>
Date: Fri, 18 Aug 2017 20:45:31 +0200
Subject: [PATCH] change rules, dependencies etc. for format change from
 debiandoc SGML to DocBook/XML

---
 debian/chunk.xsl                     | 16 ++++++++++++++++
 debian/control                       |  5 ++++-
 debian/html.xsl                      | 11 +++++++++++
 debian/python.doc-base.python-policy |  4 ++--
 debian/rules                         | 10 ++++++----
 5 files changed, 39 insertions(+), 7 deletions(-)
 create mode 100644 debian/chunk.xsl
 create mode 100644 debian/html.xsl

diff --git a/debian/chunk.xsl b/debian/chunk.xsl
new file mode 100644
index 0000000..b4df4c3
--- /dev/null
+++ b/debian/chunk.xsl
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
+		xmlns:xhtml="http://www.w3.org/1999/xhtml";
+		exclude-result-prefixes="xhtml"
+                version="1.0">
+  <xsl:import
+    href="http://docbook.sourceforge.net/release/xsl/current/xhtml/chunk.xsl"/>
+  <xsl:output method="html" encoding="utf-8" indent="yes"/>
+  <xsl:param name="chunk.first.sections">1</xsl:param>
+  <xsl:param name="chunk.section.depth">0</xsl:param>
+  <xsl:param name="generate.section.toc.level">1</xsl:param>
+  <xsl:param name="section.autolabel">1</xsl:param>
+  <xsl:param name="section.label.includes.component.label">1</xsl:param>
+  <xsl:param name="ulink.target">_blank</xsl:param>
+  <xsl:param name="use.id.as.filename">1</xsl:param>
+</xsl:stylesheet>
diff --git a/debian/control b/debian/control
index fd9680d..22a43d4 100644
--- a/debian/control
+++ b/debian/control
@@ -8,7 +8,10 @@ Build-Depends: debhelper (>= 9), dpkg-dev (>= 1.17.11), python3.5 (>= 3.5.3-1~),
   python3-minimal:any,
   python3.5-minimal:any,
   python3-docutils,
-  debiandoc-sgml
+  docbook-xml,
+  docbook-xsl,
+  w3m,
+  xsltproc,
 Standards-Version: 4.0.0
 Homepage: http://www.python.org/
 Vcs-Bzr: http://alioth.debian.org/anonscm/bzr/pkg-python/python3-defaults-debian
diff --git a/debian/html.xsl b/debian/html.xsl
new file mode 100644
index 0000000..8a3c75e
--- /dev/null
+++ b/debian/html.xsl
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
+		xmlns:xhtml="http://www.w3.org/1999/xhtml";
+		exclude-result-prefixes="xhtml"
+                version="1.0">
+  <xsl:import
+    href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"/>
+  <xsl:output method="html" encoding="utf-8" indent="yes"/>
+  <xsl:param name="section.autolabel">1</xsl:param>
+  <xsl:param name="section.label.includes.component.label">1</xsl:param>
+</xsl:stylesheet>
diff --git a/debian/python.doc-base.python-policy b/debian/python.doc-base.python-policy
index 049a475..100c5a7 100644
--- a/debian/python.doc-base.python-policy
+++ b/debian/python.doc-base.python-policy
@@ -8,8 +8,8 @@ Abstract: This document describes the packaging of Python within the Debian
  The Debian Python Policy has still a draft status.
 Section: Debian
 
-Format: debiandoc-sgml
-Files: /usr/share/doc/python/python-policy.sgml.gz
+Format: docbook-xml
+Files: /usr/share/doc/python/python-policy.dbk.gz
 
 Format: text
 Files: /usr/share/doc/python/python-policy.txt.gz
diff --git a/debian/rules b/debian/rules
index 88eab5d..4058778 100755
--- a/debian/rules
+++ b/debian/rules
@@ -52,10 +52,12 @@ stamp-build:
 	touch stamp-build
 
 stamp-doc-policy:
-	debiandoc2text debian/python-policy.sgml
+	xsltproc --nonet --novalid debian/html.xsl debian/python-policy.dbk \
+	    | w3m -o display_charset=UTF-8 -cols 70 -dump -no-graph -T text/html > python-policy.txt
 	mv -f python-policy.txt debian/
-	debiandoc2html debian/python-policy.sgml
 	rm -rf debian/python-policy.html
+	mkdir python-policy.html
+	( cd python-policy.html; xsltproc --nonet --novalid ../debian/chunk.xsl ../debian/python-policy.dbk )
 	mv -f python-policy.html debian/
 	touch stamp-doc-policy
 
@@ -263,7 +265,7 @@ binary-arch: build install
 
 	mkdir -p debian/python3/usr/share/doc/python3
 ifeq (0,1)
-	cp -a debian/python-policy.{html,sgml,txt} \
+	cp -a debian/python-policy.{html,dbk,txt} \
 		debian/python/usr/share/doc/python3/
 endif
 
@@ -273,7 +275,7 @@ endif
 ifeq (0,1)
 	: # add symlinks to policy files
 	mkdir -p debian/python/usr/share/doc/python$(VER)
-	for ext in html sgml.gz txt.gz; do \
+	for ext in html dbk.gz txt.gz; do \
 	  ln -sf ../python/python-policy.$$ext \
 		debian/python/usr/share/doc/python$(VER)/python-policy.$$ext; \
 	done
-- 
2.14.1

Attachment: signature.asc
Description: PGP signature


--- End Message ---
--- Begin Message ---
Source: python3-defaults
Source-Version: 3.6.2-1

We believe that the bug you reported is fixed in the latest version of
python3-defaults, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Matthias Klose <[email protected]> (supplier of updated python3-defaults package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Mon, 18 Sep 2017 19:52:28 +0200
Source: python3-defaults
Binary: python3 python3-venv python3-minimal python3-examples python3-dev 
libpython3-dev libpython3-stdlib idle3 python3-doc python3-dbg libpython3-dbg 
python3-all python3-all-dev python3-all-dbg libpython3-all-dev 
libpython3-all-dbg
Architecture: source
Version: 3.6.2-1
Distribution: experimental
Urgency: medium
Maintainer: Matthias Klose <[email protected]>
Changed-By: Matthias Klose <[email protected]>
Description:
 idle3      - IDE for Python using Tkinter (default version)
 libpython3-all-dbg - package depending on all supported Python 3 debugging 
packages
 libpython3-all-dev - package depending on all supported Python 3 development 
packages
 libpython3-dbg - debug build of the Python 3 Interpreter (version 3.6)
 libpython3-dev - header files and a static library for Python (default)
 libpython3-stdlib - interactive high-level object-oriented language (default 
python3
 python3    - interactive high-level object-oriented language (default python3
 python3-all - package depending on all supported Python 3 runtime versions
 python3-all-dbg - package depending on all supported Python 3 debugging 
packages
 python3-all-dev - package depending on all supported Python 3 development 
packages
 python3-dbg - debug build of the Python 3 Interpreter (version 3.6)
 python3-dev - header files and a static library for Python (default)
 python3-doc - documentation for the high-level object-oriented language Python
 python3-examples - examples for the Python language (default version)
 python3-minimal - minimal subset of the Python language (default python3 
version)
 python3-venv - pyvenv-3 binary for python3 (default python3 version)
Closes: 871526 872581
Changes:
 python3-defaults (3.6.2-1) experimental; urgency=medium
 .
   * Default python3 version to 3.6.
   * Bump standards version to 4.1.0.
   * Change policy format from debiandoc SGML to DocBook/XML (W. Martin 
Borgert).
     Closes: #871526, #872581.
   * Fix some invalid escape sequences that make autopkgtests fail by causing
     warnings on stderr (Michael Hudson-Doyle).
   * python3-doc, python3-examples: Mark M-A: foreign.
Checksums-Sha1:
 5f45c9c3a0535e76892802576e8c3602c736dca7 2759 python3-defaults_3.6.2-1.dsc
 d68e00aee3754882018d46f74bdeb8b8fcfc55e5 130944 python3-defaults_3.6.2-1.tar.gz
 c86909c2a5c865ac0f2ca88776515306687260be 5731 
python3-defaults_3.6.2-1_source.buildinfo
Checksums-Sha256:
 98afe50c60aa95c35b7e2e31402c28bb642311fcc7a987fe064bc1ec0a5da3c8 2759 
python3-defaults_3.6.2-1.dsc
 a6f1e54843191c8ebfc8e699616838363cd18cb196a748843e0abb92f3b1ee7e 130944 
python3-defaults_3.6.2-1.tar.gz
 e7c0bfd9e1567025e3e2f38fcb4e704eee6e55bf1610a56d2101e35b2240c23b 5731 
python3-defaults_3.6.2-1_source.buildinfo
Files:
 ed81d0577f1b0b526d69d23265a57499 2759 python optional 
python3-defaults_3.6.2-1.dsc
 c3611b7f3175c6b367f128c1dc476457 130944 python optional 
python3-defaults_3.6.2-1.tar.gz
 8e59e2afa9ba5f6e5150ec308c84c6a4 5731 python optional 
python3-defaults_3.6.2-1_source.buildinfo

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJZwAkoAAoJEL1+qmB3j6b1BMAP/0bbs0FdR+d7gTsqsWz0aKnX
3UR441LvNI9biUPB6FT6XjNOO3IeFCJNtcw6Yfgzw7WAidGjxB1JZdrhafb0OntV
88XUIDRu0ax5sSw89w3+FjIYZs4ihuWFOKgQYZdv23hSZjtk2ooAALvsxqaD+48D
8bHik3Rc14Ia/hSAsJ7f+xc4nh+3dBUIH93ANlBTX9w1WgEvNovBEfEmT5y+jNhi
2X5CxY9fOVdTK5++HnBKiDk2yQ/tA3359ye31iKU5eS//S56cE0uph3zV1jsKf3q
8KO3KXcVWeUkKv4y0Kd4uxUTi4hvGrrMaXwOFzj6OE35WN+FI+MEVIdOIdJxSevZ
lks4M0eF3RyX4kEFMLu5W22Ux3flOu/Cm2fWdbzNpd9289jX5ksYHqEhmaVU6t9H
m/bqkTETIbvefZLMLePK+adDX1LNg7/FumQ8o2Z2txWd4ZEJmd4nJZWklC0uSz9A
Q1+jw8jmQz+2ekXm8pwiG2YL9O4xdCesgV39R9o3hSLXFezYczZfTiBb2bQ4CRvs
Sb8oS8rEHN7OspRUd2afxezI8jxRi09NhQ3pBSDF/qY6nDaKKniGS920nM77Suja
HzSfhmQUfnB/uh7iGulC/ygtZuQqlo7ecdFipNse7fQCOSCBTgXLGoVxtqG+msYO
T2likXoCZvu2jjpTRQrl
=RzCp
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to