diff --git a/CHANGELOG.md b/CHANGELOG.md index 9828e54778..394660cf84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## Table of Contents +- [v0.5.0](#v050) - [v0.4.3](#v043) - [v0.4.2](#v042) - [v0.4.1](#v041) @@ -14,6 +15,103 @@ - [v0.1.0-rc2](#v010-rc2) - [v0.1.0-rc1](#v010-rc1) +## v0.5.0 + +API version: v1alpha2 + +This release contains a variety of features, tests, bug fixes and documentation. + +### Breaking Changes + +- The `stable` release channel has been renamed to `standard`. + [#1182](https://github.com/kubernetes-sigs/gateway-api/pull/1182) +- `ReferencePolicy` has been renamed to `ReferenceGrant`. + [#1179](https://github.com/kubernetes-sigs/gateway-api/pull/1179) +- The `NamedAddress` value for `Gateway`'s `spec.addresses[].type` field has + been deprecated, and support for domain-prefixed values (like + `example.com/NamedAddress`) has been added instead to better represent the + custom nature of this support. + [#1178](https://github.com/kubernetes-sigs/gateway-api/pull/1178) +- `GatewayTLSConfig`'s `CertificateRefs` field is now a slice of pointers to + structs instead of the structs directly. + [#1176](https://github.com/kubernetes-sigs/gateway-api/pull/1176) +- Webhook validation now ensures that a path match exists when required by path + modifier in filter. + [#1171](https://github.com/kubernetes-sigs/gateway-api/pull/1171) +- Implementations are now expected to use `404` instead of `503` responses when + the data-plane has no matching route. + [#1151](https://github.com/kubernetes-sigs/gateway-api/pull/1151) +- The `UnsupportedExtension` named `ListenerConditionReason` has been removed. + [#1146](https://github.com/kubernetes-sigs/gateway-api/pull/1146) +- The `RouteConflict` named `ListenerConditionReason` has been removed removed. + [#1145](https://github.com/kubernetes-sigs/gateway-api/pull/1145) +- The `URLRewrite` filter `PreciseHostname` has replaced `Hostname` + [#1124](https://github.com/kubernetes-sigs/gateway-api/pull/1124) +- Webhook validation was added to ensure that only type-appropriate fields are + set in `HTTPPAthModifier`. + [#1124](https://github.com/kubernetes-sigs/gateway-api/pull/1124) +- `HTTPPathModifer` field `Absolute` renamed to `ReplaceFullPath` + [#1124](https://github.com/kubernetes-sigs/gateway-api/pull/1124) +- `HTTPPathModifier` API replaces `Substitution` with new type-specific + `ReplaceFullPath` and `ReplacePrefixMatch` fields + [#1124](https://github.com/kubernetes-sigs/gateway-api/pull/1124) +- Types `ConditionRouteAccepted` and `ConditionRouteResolvedRefs` are now + deprecated in favor of `RouteConditionAccepted` & `RouteConditionResolvedRefs` + [#1114](https://github.com/kubernetes-sigs/gateway-api/pull/1114) +- The Gateway API webhook is now deployed in a `gateway-system` namespace + instead of `gateway-api`. + [#1051](https://github.com/kubernetes-sigs/gateway-api/pull/1051) +- the `ParentRef` type was renamed to `ParentReference` + [#982](https://github.com/kubernetes-sigs/gateway-api/pull/982) +- Gateway API now includes "Experimental" release channel + [#945](https://github.com/kubernetes-sigs/gateway-api/pull/945) +- Gateway API CRDs now include `gateway.networking.k8s.io/bundle-version` and + `gateway.networking.k8s.io/channel` annotations + [#945](https://github.com/kubernetes-sigs/gateway-api/pull/945) +- URL Rewrites and Path redirects have been added as new "Experimental" features + [#945](https://github.com/kubernetes-sigs/gateway-api/pull/945) +- The v1alpha1 API version has been deprecated. + [#906](https://github.com/kubernetes-sigs/gateway-api/issues/906) + +### Improvements + +- Conformance tests were introduced with [GEP-917][gep-917] and multiple + conformance tests were added from a variety of contributors under the + `conformance/` directory. +- The status of the GatewayClass "Accepted" condition for the `GatewayClass` + is now present in `kubectl get` output. + [#1168](https://github.com/kubernetes-sigs/gateway-api/pull/1168) +- New `RouteConditionReason` types `RouteReasonNotAllowedByListeners` and + `RouteReasonNoMatchingListenerHostname` were added. + [#1155](https://github.com/kubernetes-sigs/gateway-api/pull/1155) +- New `RouteConditionReason` type added with `RouteReasonAccepted`, + `RouteReasonResolvedRefs` and `RouteReasonRefNotPermitted` constants. + [#1114](https://github.com/kubernetes-sigs/gateway-api/pull/1114) +- Routes can now select `Gateway` listeners by port number + [#1002](https://github.com/kubernetes-sigs/gateway-api/pull/1002) +- Introduced PreciseHostname which prevents wildcard characters in relevant + Hostname values. + [#956](https://github.com/kubernetes-sigs/gateway-api/pull/956) + +[gep-917]:https://gateway-api.sigs.k8s.io/geps/gep-917/ + +### Bug Fixes + +- Fixes a problem that would cause webhook deployment to fail on Kubernetes + v1.22 and greater. + [#991](https://github.com/kubernetes-sigs/gateway-api/pull/991) +- Fixes a bug where the `Namespace` could be unspecified in `ReferencePolicy` + [#964](https://github.com/kubernetes-sigs/gateway-api/pull/964) +- Fixes a bug where v1alpha2 GatewayClass controller names were not being + shown in the output of `kubectl get gatewayclasses` + [#909](https://github.com/kubernetes-sigs/gateway-api/pull/909) + +### Documentation + +- Blog post added for the new `v1alpha2` API + [#904](https://github.com/kubernetes-sigs/gateway-api/pull/904) +- Various minor corrections to documentation for visual issues and typos + ## v0.4.3 API version: v1alpha2