On Fri, Feb 12, 2021 at 9:19 PM Ricardo Signes <perl.p5p@rjbs.manxome.org>
wrote:
> On Mon, Feb 1, 2021, at 9:18 PM, Christian Walde wrote:
>
> Before you can "drop support" for something, we must first actually define
> what "support" means and define it, as well as policies and guidelines for
> dropping support, and document them.
>
> https://github.com/Perl/perl5/issues/18243
>
>
> True! I read that issue, had a little bit of commentary, talked to Neil
> and Sawyer, and I think we should add some language to this, roughly saying:
>
> - some configurations have first-class support: we test them before
> release and if we see they stopped passing tests, we won't make a stable
> release (at least without seriously extenuating circumstances)
> - some configurations have second-class support: we believe they work,
> and if we get a report of new breakage, we'll look at how it can be fixed,
> but we don't guarantee anything
> - some configurations are on the chopping block because we believe
> they present an ongoing burden but aren't in use or likely to come into use
>
> For reference, I suggest taking a look at how Rust does this -
https://doc.rust-lang.org/nightly/rustc/platform-support.html
The summary is they have _three_ tiers:
- Tier 1 - Basically the same as your first bullet point - "this
platform must build and pass tests for each release"
- Tier 2 - This platform must *build* but the test suite may not be run
automatically. Failures to build block a release but test failures do not.
For some platforms, only certain components are built (stdlib but not
cargo, for example).
- Tier 3 - There is some level of support in the code but the platform
is neither built nor tested via an automated system, and any such failure
will not block a release.
I'm not suggesting that these three tiers are right for Perl, just that
they're interesting.
One big obvious difference is that rust depends on llvm for a large part of
its platform support. If llvm doesn't support a platform properly, then
rust on that platform is a non-starter.
Cheers,
Dave Rolsky
http://blog.urth.org
https://github.com/autarch
wrote:
> On Mon, Feb 1, 2021, at 9:18 PM, Christian Walde wrote:
>
> Before you can "drop support" for something, we must first actually define
> what "support" means and define it, as well as policies and guidelines for
> dropping support, and document them.
>
> https://github.com/Perl/perl5/issues/18243
>
>
> True! I read that issue, had a little bit of commentary, talked to Neil
> and Sawyer, and I think we should add some language to this, roughly saying:
>
> - some configurations have first-class support: we test them before
> release and if we see they stopped passing tests, we won't make a stable
> release (at least without seriously extenuating circumstances)
> - some configurations have second-class support: we believe they work,
> and if we get a report of new breakage, we'll look at how it can be fixed,
> but we don't guarantee anything
> - some configurations are on the chopping block because we believe
> they present an ongoing burden but aren't in use or likely to come into use
>
> For reference, I suggest taking a look at how Rust does this -
https://doc.rust-lang.org/nightly/rustc/platform-support.html
The summary is they have _three_ tiers:
- Tier 1 - Basically the same as your first bullet point - "this
platform must build and pass tests for each release"
- Tier 2 - This platform must *build* but the test suite may not be run
automatically. Failures to build block a release but test failures do not.
For some platforms, only certain components are built (stdlib but not
cargo, for example).
- Tier 3 - There is some level of support in the code but the platform
is neither built nor tested via an automated system, and any such failure
will not block a release.
I'm not suggesting that these three tiers are right for Perl, just that
they're interesting.
One big obvious difference is that rust depends on llvm for a large part of
its platform support. If llvm doesn't support a platform properly, then
rust on that platform is a non-starter.
Cheers,
Dave Rolsky
http://blog.urth.org
https://github.com/autarch