favouring Python3 in the Debian policy
Attached is a proposed change to the Debian Python policy to focus on Python3
within the distribution. The intent is to document and start a large journey
towards one Python stack in Debian. This is unlikely to happen for jessie+1, but
we should state the plan now so that it doesn't come later as a surprise.
Matthias
=== modified file 'debian/python-policy.sgml'
--- debian/python-policy.sgml 2013-05-22 02:12:02 +0000
+++ debian/python-policy.sgml 2014-05-07 14:34:24 +0000
@@ -32,7 +32,7 @@
<name>Scott Kitterman</name>
<email>scott@kitterman.com</email>
</author>
- <version>version 0.9.4.2</version>
+ <version>version 0.9.5</version>
<abstract>
This document describes the packaging of Python within the
@@ -42,8 +42,7 @@
<copyright>
<copyrightsummary>
- Copyright © 1999, 2001, 2003, 2006, 2009, 2010, 2011, 2012
- Software in the Public Interest
+ Copyright © 1999-2014 Software in the Public Interest
</copyrightsummary>
<p>
This manual is free software; you can redistribute it and/or
@@ -74,6 +73,57 @@
<toc detail="sect1">
+ <chapt id="python3">
+ <heading>On the move to Python3</heading>
+ <p>
+ Debian currently supports two Python stacks, one for Python2
+ and one for Python3. The long term goal for Debian is to
+ reduce this to one stack, dropping the Python2 stack at some
+ time.
+ <url id="http://legacy.python.org/dev/peps/pep-0404/"
+ name="PEP 404"> states that no more major Python2 releases
+ are planned, although the last released major version 2.7
+ will see some extended support, documented in
+ <url id="http://legacy.python.org/dev/peps/pep-0466/"
+ name="PEP 466">.
+ </p>
+ <p>
+ Packages in Debian should use Python3 if Python3 is
+ supported. New packages should use Python3 from the initial
+ upload, new upstream versions for existing packages should
+ use Python3 if the new upstream version supports it.
+ </p>
+
+ <p><enumlist>
+ <item>
+ <p>
+ Applications should use Python3, and should not be
+ packaged for Python2 as well.
+ </p>
+ </item>
+ <item>
+ <p>
+ Python libraries should be always packaged for Python3
+ if supported. Python2 libraries should be packaged, if
+ applications dound in the reverse dependencies are not
+ yet supported by Python3.
+ </p>
+ </item>
+ <item>
+ <p>
+ Existing Python2 libraries should not be dropped before
+ the last reverse dependency is removed.
+ </p>
+ </item>
+ </enumlist></p>
+
+ <p>
+ Python3 (3.1) was released in June 2009, and is available in
+ the Debian 6.0 (squeeze) release (3.1), and in the Debian 7
+ (wheezy) release (3.2).
+ </p>
+ </chapt>
+
<chapt id="python">
<heading>Python Packaging</heading>
<sect id="versions">
@@ -117,7 +167,10 @@
<p>
The set of currently supported python versions can be found in
- <file>/usr/share/python/debian_defaults</file>. This file is in
+ <file>/usr/share/python/debian_defaults</file>, the set of
+ currently supported python3 versions can be found
+ in <file>/usr/share/python3/debian_defaults</file>. These
+ files are in
Python ConfigParser format and defines four variables in its
DEFAULT section: default-version which is the current default
Python runtime, supported-versions which is the set of runtimes
Reply to: