[Python-Dev] Update to PEP 11 to clarify garnering platform support

Brett Cannon bcannon at gmail.com
Fri Feb 27 15:40:02 CET 2015


On Fri, Feb 20, 2015 at 1:47 PM Brett Cannon <bcannon at gmail.com> wrote:

> I just realized I actually never committed this change. Assuming no new
> objections I'll commit this in the near future (promise this time =).
>

My proposed changes have now been committed. Thanks to everyone who
provided feedback!

This should hopefully make it much clearer what it takes to accept
platform-specific patches (i.e., core dev willing to maintain the
compatibility and a stable buildbot for the platform).

For those trying to get Python working on Android, this will mean a
conversation will be necessary about how to get a buildbot or some form or
regular testing set up in order to accept Android-specific patches (along
with a core dev willing to keep an eye on the compatibility).

-Brett


>
>
> On Fri May 16 2014 at 1:51:00 PM Brett Cannon <bcannon at gmail.com> wrote:
>
>> Here is some proposed wording. Since it is more of a clarification of
>> what it takes to garner support -- which is just a new section -- rather
>> than a complete rewrite I'm including just the diff to make it easier to
>> read the changes.
>>
>>
>> *diff -r 49d18bb47ebc pep-0011.txt*
>>
>> *--- a/pep-0011.txt Wed May 14 11:18:22 2014 -0400*
>>
>> *+++ b/pep-0011.txt Fri May 16 13:48:30 2014 -0400*
>>
>> @@ -2,22 +2,21 @@
>>
>>  Title: Removing support for little used platforms
>>
>>  Version: $Revision$
>>
>>  Last-Modified: $Date$
>>
>> -Author: martin at v.loewis.de (Martin von Löwis)
>>
>> +Author: Martin von Löwis <martin at v.loewis.de>,
>>
>> +        Brett Cannon <brett at python.org>
>>
>>  Status: Active
>>
>>  Type: Process
>>
>>  Content-Type: text/x-rst
>>
>>  Created: 07-Jul-2002
>>
>>  Post-History: 18-Aug-2007
>>
>> +              16-May-2014
>>
>>
>>
>>
>>
>>  Abstract
>>
>>  --------
>>
>>
>>
>> -This PEP documents operating systems (platforms) which are not
>>
>> -supported in Python anymore.  For some of these systems,
>>
>> -supporting code might be still part of Python, but will be removed
>>
>> -in a future release - unless somebody steps forward as a volunteer
>>
>> -to maintain this code.
>>
>> +This PEP documents how an operating system (platform) garners
>>
>> +support in Python as well as documenting past support.
>>
>>
>>
>>
>>
>>  Rationale
>>
>> @@ -37,16 +36,53 @@
>>
>>  change to the Python source code will work on all supported
>>
>>  platforms.
>>
>>
>>
>> -To reduce this risk, this PEP proposes a procedure to remove code
>>
>> -for platforms with no Python users.
>>
>> +To reduce this risk, this PEP specifies what is required for a
>>
>> +platform to be considered supported by Python as well as providing a
>>
>> +procedure to remove code for platforms with little or no Python
>>
>> +users.
>>
>>
>>
>> +Supporting platforms
>>
>> +--------------------
>>
>> +
>>
>> +Gaining official platform support requires two things. First, a core
>>
>> +developer needs to volunteer to maintain platform-specific code. This
>>
>> +core developer can either already be a member of the Python
>>
>> +development team or be given contributor rights on the basis of
>>
>> +maintaining platform support (it is at the discretion of the Python
>>
>> +development team to decide if a person is ready to have such rights
>>
>> +even if it is just for supporting a specific platform).
>>
>> +
>>
>> +Second, a stable buildbot must be provided [2]_. This guarantees that
>>
>> +platform support will not be accidentally broken by a Python core
>>
>> +developer who does not have personal access to the platform. For a
>>
>> +buildbot to be considered stable it requires that the machine be
>>
>> +reliably up and functioning (but it is up to the Python core
>>
>> +developers to decide whether to promote a buildbot to being
>>
>> +considered stable).
>>
>> +
>>
>> +This policy does not disqualify supporting other platforms
>>
>> +indirectly. Patches which are not platform-specific but still done to
>>
>> +add platform support will be considered for inclusion. For example,
>>
>> +if platform-independent changes were necessary in the configure
>>
>> +script which was motivated to support a specific platform that would
>>
>> +be accepted. Patches which add platform-specific code such as the
>>
>> +name of a specific platform to the configure script will generally
>>
>> +not be accepted without the platform having official support.
>>
>> +
>>
>> +CPU architecture and compiler support are viewed in a similar manner
>>
>> +as platforms. For example, to consider the ARM architecture supported
>>
>> +a buildbot running on ARM would be required along with support from
>>
>> +the Python development team. In general it is not required to have
>>
>> +a CPU architecture run under every possible platform in order to be
>>
>> +considered supported.
>>
>>
>>
>>  Unsupporting platforms
>>
>>  ----------------------
>>
>>
>>
>> -If a certain platform that currently has special code in it is
>>
>> -deemed to be without Python users, a note must be posted in this
>>
>> -PEP that this platform is no longer actively supported.  This
>>
>> +If a certain platform that currently has special code in Python is
>>
>> +deemed to be without Python users or lacks proper support from the
>>
>> +Python development team and/or a buildbot, a note must be posted in
>>
>> +this PEP that this platform is no longer actively supported.  This
>>
>>  note must include:
>>
>>
>>
>>  - the name of the system
>>
>> @@ -69,8 +105,8 @@
>>
>>  forward and offer maintenance.
>>
>>
>>
>>
>>
>> -Resupporting platforms
>>
>> -----------------------
>>
>> +Re-supporting platforms
>>
>> +-----------------------
>>
>>
>>
>>  If a user of a platform wants to see this platform supported
>>
>>  again, he may volunteer to maintain the platform support.  Such an
>>
>> @@ -101,7 +137,7 @@
>>
>>  release is made. Developers of extension modules will generally need
>>
>>  to use the same Visual Studio release; they are concerned both with
>>
>>  the availability of the versions they need to use, and with keeping
>>
>> -the zoo of versions small. The Python source tree will keep
>>
>> +the zoo of versions small. The Python source tree will keep
>>
>>  unmaintained build files for older Visual Studio releases, for which
>>
>>  patches will be accepted. Such build files will be removed from the
>>
>>  source tree 3 years after the extended support for the compiler has
>>
>> @@ -223,6 +259,7 @@
>>
>>  ----------
>>
>>
>>
>>  .. [1] http://support.microsoft.com/lifecycle/
>>
>> +.. [2] http://buildbot.python.org/3.x.stable/
>>
>>
>>
>>  Copyright
>>
>>  ---------
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20150227/698067c2/attachment.html>


More information about the Python-Dev mailing list