Skip to content

[C++] Define an official support policy #46002

@pitrou

Description

@pitrou

Describe the enhancement requested

For now, our "support" policy has been taking an opportunistic/slippery-slope approach: someone adds a platform/CI build in a PR, and then maintainers are collectively expected to keep the corresponding build green.

The problem is this creates a growing maintenance hurdle as more and more configurations are tested on CI and supposed to remain green. For example, we have been adding builds for Meson, Emscripten, etc.

We should be more rigorous in defining our support levels and what the expectations are towards maintainers and release managers.

We could for example take some inspiration from Python, which defines three support levels:

  • tier 1 platforms: tested on CI, should remain green as much as possible, release-blocking
  • tier 2 platforms: tested on CI, best effort, don't block a release
  • tier 3 platforms: all the rest, unsupported though we might want to accept patches for them, depending on the perceived maintenance overhead

The corresponding Python spec is more detailed and lists the concrete platforms for each tier: https://peps.python.org/pep-0011/

Though this ticket tracks the enhancement, this should certainly be discussed on the dev list to reach more people.

Component(s)

C++, Continuous Integration, Release

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions