envoyproxy / envoyproxy/envoy

new API policy for faster movement

Open
#44,136 24 comments 2 reactions 10 assignees Claimed by @adisuissa View on GitHub
api no stalebot
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

*Title*: *new API policy for faster movement*

*Description*:
>Describe the issue.

For now, all API changes (except `contrib`) require explicit review from API shepherd. We only have four members for API shepherd and most of them have many other responsibilities and may cannot review the API on time. And maintainers also observed PRs getting stuck on API shepherd review. (@nezdolik)

After discussion between maintainers in slack channel internally, we get agreement we may need to review our API policy to ensure Envoy could move faster.

Another point that referred in our discussion is about the one universal xDS support (that's say trying to make the xDS API be implementation-dependent and Envoy is only one of implementations. For example, the gRPC is another implementation of xDS API). It was a noble idea but maintainers think it's never happens in practice and slowing down experimental work in Envoy-specific extensions. (@kyessenov) And I think most of new maintainers even never aware this universal xDS.

In conclusion, maintainers may want to relax API review and apply different standard for different APIs. We need to identify the shared core xDS (cross data plane implementations) and also the Envoy specific/data plane specific APIs.

- For the shared core xDS (non-extensions API, core extensions API like HCM, etc.), we will keep current API review rules to check it strictly by the API shepherd.
- For the non core xDS (new extensions, Envoy specific extensions) and so on, we may could let any maintainers/senior maintainers to review it and ensure backward compatibility never been break.

[optional *Relevant Links*:]
>Any extra documentation required to understand the issue.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.