And now the PR is merged! https://github.com/python/peps/pull/2442

Thanks to everyone who provided input! When I get a chance I will work to get tier labels added to the appropriate buildbots and then update the PEP to link to those queries instead of individual buildbots.

On Mon, Apr 11, 2022 at 1:31 PM Brett Cannon <brett@python.org> wrote:


On Sat, Apr 9, 2022 at 5:04 AM M.-A. Lemburg <mal@egenix.com> wrote:
On 09.04.2022 02:13, Brett Cannon wrote:
>
>
> On Fri, Apr 8, 2022 at 5:03 AM Marc-Andre Lemburg <mal@egenix.com
> <mailto:mal@egenix.com>> wrote:
>
>     On 06.04.2022 20:48, Brett Cannon wrote:
>      > Last chance on whether my tier 3 proposal make sense! I will take
>     silence as
>      > acceptance and plan to convert any current tier 2 platform with a
>     single core
>      > dev to tier 3 and then ask the SC to approve/reject the list of
>     platforms. I
>      > will also update the PEP about expectations of when things must
>     be considered
>      > stable before b1, else a warning goes out that a platform risks
>     being dropped in
>      > the RC (regardless of tier).
>      >
>      > I will also be filling out the tiers to include the vendor, but I
>     will be using
>      > `unknown` instead of `*` since I haven't come across the latter
>     online while I
>      > come across the former regularly (e.g.
>      > https://doc.rust-lang.org/nightly/rustc/platform-support.html).
>
>     Could you please post the current proposal somewhere to read in
>     one complete piece ? It's become hard to figure out what is on
>     the table at the moment and the PR also doesn't appear to be
>     up to date:
>
>     https://github.com/python/peps/pull/2442/files
>
>
> The PR is now up-to-date! For ease of reference, here's the critical part:

Thanks, Brett.

> Support tiers
> =============
>
> Platform support is broken down into *tiers*. Each tier comes with
> different requirements which lead to different promises being made
> about support.
>
> To be promoted to a tier, steering council support is required and is
> expected to be driven by team consensus. Demotion to a lower tier
> occurs then the requirements of the current tier are no longer met for
> a platform for an extended period of time based on the judgment of
> the release manager or steering council. For platforms which no longer
> meet the requirements of any tier by b1 of a new feature release, an
> announcement will be made to warn the community of the pending removal
> of support for the platform (e.g. in the b1 announcement). If the
> platform is not brought into line for at least one of the tiers by the
> first release candidate, it will be listed as unsupported in this PEP.
>
> Tier 1
> ------
>
> - `CI failures
> <https://github.com/python/cpython/actions/workflows/build.yml?query=branch%3Amain+is%3Acompleted>`__
> block releases.
> - Changes which would break the ``main`` branch are not allowed to be
> merged;
>    any breakage should be fixed or reverted immediately.
> - All core developers are responsible to keep ``main``, and thus these
>    platforms, working.
> - Failures on these platforms **block a release**.
>
> ======================== =====
> Target Triple            Notes
> ======================== =====
> i686-pc-windows-msvc
> x86_64-pc-windows-msvc
> x86_64-apple-darwin      BSD libc, clang
> x86_64-unknown-linux-gnu glibc, gcc
> ======================== =====
>
>
> Tier 2
> ------
>
> - Must have a reliable buildbot.
> - At least **two** core developers are signed up to support the platform.
> - Changes which break any of these platforms are to be **fixed or
>    reverted within 24 hours**.
> - Failures on these platforms **block a release**.
>
> =========================== ==========================
> ============================================== ========
> Target Triple               Notes                      Buildbot         
>                                Contacts
> =========================== ==========================
> ============================================== ========
> aarch64-apple-darwin        clang
> https://buildbot.python.org/all/#/builders/725 Ned Deily, Ronald
> Oussoren, Dong-he Na
> aarch64-unknown-linux-gnu   glibc, gcc
> https://buildbot.python.org/all/#/builders/125 Petr Viktorin, Victor Stinner
>
>                              glibc, clang
> https://buildbot.python.org/all/#/builders/234 Victor Stinner, Gregory
> P. Smith
> powerpcle-unknown-linux-gnu glibc, gcc
> https://buildbot.python.org/all/#/builders/90  Petr Viktorin, Victor Stinner
> x86_64-unknownlinux-gnu     glibc, clang
> https://buildbot.python.org/all/#/builders/441 Victor Stinner, Gregory
> P. Smith
> =========================== ==========================
> ============================================== ========
>
>
> Tier 3
> ------
>
> - Must have a reliable buildbot.
> - At least **one** core developer is signed up to support the platform.
> - No response SLA to failures.
> - Failures on these platforms do **not** block a release.
>
> =========================== ==========================
> ============================================== ========
> Target Triple               Notes                      Buildbot         
>                                Contacts
> =========================== ==========================
> ============================================== ========
> aarch64-pc-windows-msvc https://buildbot.python.org/all/#/builders/729
> Steve Dower
> powerpcle-unknown-linux-gnu glibc, clang
> https://buildbot.python.org/all/#/builders/435 Victor Stinner
> x86_64-unknown-freebsd      BSD libc, clang
> https://buildbot.python.org/all/#/builders/172 Victor Stinner
> =========================== ==========================
> ============================================== ========
>
>
> All other platforms
> -------------------
>
> Support for a platform may be partial within the code base, such as
> from active development around platform support or accidentally.
> Code changes to platforms not listed in the above tiers may rejected

Should read: "may be rejected"

Fixed!
 

> or removed from the code base without a deprecation process if they
> cause a maintenance burden or obstruct general improvements.
>
> Platforms not listed here may be supported by the wider Python
> community in some way. If your desired platform is not listed above,
> please perform a search online to see if someone is already providing
> support in some form.

+1 on this version.

Thanks for writing this up, Brett.

Welcome!

We didn't get to this PR in today's SC meeting, but I'm hoping to get SC sign-off next week.

-Brett
 

--
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Experts (#1, May 24 2017)
 >>> Python Projects, Coaching and Consulting ...  http://www.egenix.com/
 >>> Python Database Interfaces ...           http://products.egenix.com/
 >>> Plone/Zope Database Interfaces ...           http://zope.egenix.com/
________________________________________________________________________

::: We implement business ideas - efficiently in both time and costs :::

    eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
     D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
            Registered at Amtsgericht Duesseldorf: HRB 46611
                http://www.egenix.com/company/contact/
                       http://www.malemburg.com/