Releases: kubernetes-sigs/gateway-api
v1alpha1
This is the v1alpha1 release of Service APIs. We may still make tiny incremental updates to this API. Any breaking changes will be reserved for a potential v1alpha2 release.
API changes since v0.1.0-rc2
GatewayClass
- CRD now includes
gc
short name. - Change the standard condition for GatewayClass to
Admitted
, withInvalidParameters
as a sample reason for it to be false.
Gateway
- CRD now includes
gtw
short name. - The
DroppedRoutes
condition has been renamed toDegradedRoutes
. ListenerStatus
now includesProtocol
andHostname
to uniquely link the status to each listener.
Routes
- HTTPRoute clarifications:
- Header name matching must be case-insenstive.
- Match tiebreaking semantics have been outlined in detail.
- TCPRoute, TLSRoute, and UDPRoute:
- At least 1 ForwardTo must be specified in each rule.
- Clarification that if no matches are specified, all requests should match a rule.
- TCPRoute and UDPRoute: Validation has been added to ensure that 1-16 rules are specified, matching other route types.
- TLSRoute: SNIs are now optional in matches. If no SNI or extensionRef are specified, all requests match.
BackendPolicy
- CRD now includes
bp
short name. - A new
networking.x-k8s.io/app-protocol
annotation can be used to specify AppProtocol on Services when the AppProtocol field is unavailable.
v1alpha1: Release Candidate 2
This is our second v1alpha1 release candidate. The working group expects that this release candidate is quite close to the final v1alpha API and does not plan to make major API changes. However, minor (possibly breaking) API changes such as renaming fields are still possible.
This release candidate is suitable for implementors, but the working group does not recommend shipping products based on a release candidate API due to the possibility of incompatible changes prior to the final release.
API changes since v0.1.0-rc1
GatewayClass
- A recommendation to set a
gateway-exists-finalizer.networking.x-k8s.io
finalizer on GatewayClass has been added. allowedGatewayNamespaces
has been removed from GatewayClass in favor of
implementations with policy agents like Gatekeeper.
Gateway
- Fields in
listeners.routes
have been renamed:routes.routeSelector
->routes.selector
routes.routeNamespaces
->routes.namespaces
clientCertificateRef
has been removed from BackendPolicy.- In Listeners,
routes.namespaces
now defaults to{from: "Same"}
. - In Listeners, support has been added for specifying custom, domain prefixed
protocols. - In Listeners,
hostname
now closely matches Route hostname matching with wildcard
support. - A new
UnsupportedAddress
condition has been added to Listeners to indicate
that a requested address is not supported. - Clarification has been added to note that listeners may be merged in certain
instances.
Routes
- HeaderMatchType now includes a RegularExpression option.
- Minimum weight has been decreased from 1 to 0.
- Port is now required on all Routes.
- On HTTPRoute, filters have been renamed:
ModifyRequestHeader
->RequestHeaderModifier
MirrorRequest
->RequestMirror
Custom
->ExtensionRef
- TLSRoute can now specify as many as 16 SNIs instead of 10.
- Limiting the number of Gateways that may be stored in RouteGatewayStatus to
100. - Support level of filters defined in ForwardTo has been clarified.
- Max weight has been increased to 1 million.
v1alpha1: Release Candidate 1
This is our initial v1alpha1 release candidate. The working group expects that this release candidate is quite close to the final v1alpha
API and does not plan to make major API changes. However, minor (possibly breaking) API changes such as renaming fields are still possible.
This release candidate is suitable for implementors, but the working group does not recommend shipping products based on a release candidate API due to the possibility of incompatible changes prior to the final release.
Our progress towards a final v1alpha1 release is being tracked in https://github.com/kubernetes-sigs/service-apis/milestone/1.