Skip to content

WIP: Remove stale implementations from implementation list #3814

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

howardjohn
Copy link
Contributor

What type of PR is this?
/kind documentation

What this PR does / why we need it:

The goal of this PR is to help users understand which viable options they have when choosing an implementation.

Recently, I put on my 'user hat' and was very frustrated to find that many implementations I had chosen were unusable. Some had only support for ancient versions like 0.4, while others point to an entirely empty repository. We should give users an up to date list of implementations to help guide them.

My goal here is not to force out any implementation -- I think a large active list/community is ideal. It is only to weed out implementations that are entirely dead.

That being said, I think this PR goes too far. My initial criteria I came up with "Has ever submitted a conformance report" I assumed would be easily met, yet it excludes 17/30 implementations!

So I think before merging this we will want to either:
a) Come up with a new criteria.
b) Give implementations a N month warning to send a conformance report or be removed

To re-iterate, the criteria I am proposing is not "passes conformance tests", merely has submitted one, which is a very low bar. I also included "recently", which I interpreted as "since 1.0 (when we first started collecting reports)" for now. In the future, we would likely make this something like in the past year/past N releases/etc.

Note: if we are to move forward with this, we also need to remove the stale descriptions of the removed projects. I will do that once we come to some consensus.

Which issue(s) this PR fixes:

Fixes #

Does this PR introduce a user-facing change?:


@k8s-ci-robot
Copy link
Contributor

Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/documentation Categorizes issue or PR as related to documentation. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels May 25, 2025
@k8s-ci-robot k8s-ci-robot requested review from kflynn and mikemorris May 25, 2025 22:59
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: howardjohn
Once this PR has been reviewed and has the lgtm label, please assign robscott for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label May 25, 2025
@mikemorris
Copy link
Contributor

Appreciate the nuance in rationale and agree that at this point ensuring we're guiding users to active implementations to set them up for success will ultimately be beneficial to the Gateway API project as a whole over just demonstrating widespread vendor adoption to show initial traction.

As a first step we've discussed (cc @robscott) the idea of "elevating" or otherwise emphasizing conformant implementations before (maybe as you suggested starting with just impls that have submitted reports at all is a fine place to begin). We should probably also do some proactive outreach here, identifying which users initially added each project to the list and tagging them for visibility (and to hopefully confirm abandonment or encourage submitting reports) before removal.

@LiorLieberman
Copy link
Member

/cc

@robscott
Copy link
Member

What if we aim for the following:

  1. Implementations that have submitted a conformance report for one of the last N releases are highlighted at the top, maybe with some kind of visual indication for the versions they've submitted conformance reports for.
  2. Implementations that don't qualify for 1 fall to the bottom of the page in a new section, title TBD, with a note that implementations in this section will be removed on some future date (maybe August 1) if they fail to submit a conformance report prior to that date.
  3. All new implementations of the API must also submit a conformance report.

I'm not really sure on 3 - I do think it's useful to be able to highlight the implementations that are making progress towards conformance, but I do want to avoid implementations that get stuck in a WIP state.

@dprotaso
Copy link
Contributor

I've seen implementations advertise Gateway API support without running a single conformance test. When I ran conformance tests myself against said implementation it was painfully clear it wasn't conformant for even core features.

This breaks the guarantee of compatibility and portability for users. Hence why I don't think we should even advertise implementations that are 'working towards conformance' because it's meaningless and not useful information for users.

In practice implementations shouldn't use the GatewayAPI trademark without submitting a report.

@howardjohn
Copy link
Contributor Author

I'm not really sure on 3 - I do think it's useful to be able to highlight the implementations that are making progress towards conformance, but I do want to avoid implementations that get stuck in a WIP state.

IMO there is no excuse to not have a report. I am fine with implementations being listed that fail every test, as long as they have a report - and the page will indicate as such

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/documentation Categorizes issue or PR as related to documentation. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants