Skip to content

v1.23 release

Announcing Knative v1.23 Release

A new version of Knative is now available across multiple components.

Follow the instructions in Installing Knative to install the components you require.

Highlights

  • Generic ephemeral volumes in Serving, enabling dynamically provisioned pod-scoped storage
  • EndpointSlice migration in Eventing, moving off deprecated v1 Endpoints
  • IPv6 support for Serving autoscaler EndpointSlice creation
  • New func logs and func clusters commands for streaming function logs and one-command local dev cluster creation
  • Security updates across Kafka Broker dependencies and a RabbitMQ ingress shutdown race fix

Minimal supported version of Kubernetes is 1.34. See our release schedule for details.

Serving

Release notes: Knative Serving 1.23

This release adds ephemeral volume support, IPv6 networking improvements, and startup probe validation.

Generic Ephemeral Volumes

Serving now supports generic ephemeral volumes via volumeClaimTemplate, behind the kubernetes.podspec-volumes-ephemeral feature flag (#16590 by @jbunting). This allows workloads to request dynamically provisioned storage that is tied to the pod lifecycle without needing pre-created PVCs.

Startup Probe Validation

Validation has been added for startup probes in user and sidecar containers (#16594 by @thiagomedina), catching misconfigured probes at admission time rather than at runtime.

IPv6 Support for Autoscaler

The autoscaler EndpointSlice creation and activator port replacement now support IPv6 (#16591 by @linkvt), extending dual-stack networking support in Serving.

Bug Fixes

A fix was made to the ResponseRecorder hijack state tracking for WebSocket connections (#16611 by @immanuwell).


Serving Networking Extensions

net-contour

Release notes: net-contour 1.23

Contour Updated to v1.33.5

Contour has been bumped to v1.33.5 (#1292 by @dprotaso), picking up the latest bug fixes and patches.

net-gateway-api

Release notes: net-gateway-api 1.23

Proxy Protocol Support

Support for proxy protocol has been added (#947 by @BobyMCbobs), enabling backends to receive the original client connection information when traffic passes through load balancers.

net-istio

Release notes: net-istio 1.23

A maintenance release with CI fixes and dependency updates.

net-kourier

Release notes: net-kourier 1.23

IPv6 Support

IPv6 support has been added to Kourier (#1455 by @linkvt), extending dual-stack networking support across the Knative networking stack.


Eventing

Release notes: Knative Eventing 1.23

This release focuses on reliability fixes and modernizing the networking layer.

EndpointSlice Migration

Eventing has migrated from deprecated v1 Endpoints to discovery.k8s.io/v1 EndpointSlice (#9032 by @creydr), aligning with the Kubernetes deprecation timeline and improving scalability.

Configurable klog Verbosity

A klog-verbosity flag has been added to the config-logging ConfigMap (#9035 by @Ankitsinghsisodya), giving operators more control over log verbosity without redeploying.

Bug Fixes

  • JobSink status Location paths for event metadata containing slashes have been fixed (#9100 by @immanuwell)
  • A goroutine and memory leak in SubjectAndFiltersPass has been fixed (#9151 by @creydr)
  • The vreplica spreading across minReplicas pods in the scheduler has been fixed (#9157 by @creydr)

Eventing Extensions

Apache Kafka Broker

Release notes: Kafka Broker 1.23

This release brings improved error handling, security patches, and several data-plane fixes.

Improved Error Handling

Error handling has been improved across broker, channel, consumer group, and trigger reconcilers (#4724 by @chriscannon), making it easier to diagnose reconciliation failures.

Security Updates

Netty, logback-core, vertx-core, and jackson-core have been updated to resolve known vulnerabilities (#4744).

Bug Fixes

  • The KafkaSink reconciler cluster admin error has been fixed (#4720 by @chriscannon)
  • A null check has been added to ExactFilter to handle missing FilterAttributes (#4717 by @Dominic-Stout-GA-i3)
  • The OpenTelemetry BOM ordering has been fixed to ensure the declared version takes precedence (#4752 by @creydr)
  • A timer drift in the cache implementation has been fixed (#4762 by @dsimansk)

RabbitMQ Broker and Source

Release notes: RabbitMQ 1.23

This release adds adapter customization and fixes an ingress shutdown race condition.

Customizable Adapter Container Name

The RabbitmqSource adapter container name can now be customized (#1762 by @vgaidarji).

Ingress Shutdown Race Fix

A race condition between RabbitMQ connection close and HTTP drain during ingress shutdown has been fixed (#1760 by @deadtrickster).


Functions

Release notes: Functions 1.23

A substantial release with new commands, improved builder support, and a growing MCP server.

New func logs Command

A new func logs command streams function logs directly from the CLI (#3669 by @Itx-Psycho0), removing the need to switch to kubectl or a dashboard to see what your function is doing.

Dev Cluster Creation with func clusters

The new func clusters command can create local development clusters with Knative pre-installed (#3754 by @lkingland), making it easier to get a working Knative environment for local development.

Kafka Event Sourcing for Go Functions

Go functions can now be scaffolded with Kafka event sourcing support (#3950 by @aliok), providing a ready-made template for consuming Kafka events.

ImagePullSecret Support

Functions now support specifying an ImagePullSecret (#3656 by @creydr), enabling deployments from private registries that require authentication.

func-operator Integration

The deploy command now integrates with the func-operator (#3657 by @creydr), and the deployer choice is now persisted in func.yaml with guards against incompatible deployer switches (#3953 by @gauron99).

Improved .funcignore Support

.funcignore rules are now applied consistently across the host builder (#3624 by @lkingland) and the OCI builder (#3789 by @gauron99).

AWS ECR Credentials Loader

An AWS ECR credentials loader has been added to Kubernetes keychains (#3864 by @Nachiket-Roy), enabling seamless authentication with ECR registries in cluster builds.

MCP Server Improvements

The MCP server received numerous fixes and enhancements, including secret and ConfigMap support for config_envs_add (#3685 by @Ankitsinghsisodya), split config tools for accurate tool annotations (#3661 by @Ankitsinghsisodya), and version info in healthcheck output (#3745 by @cubaseuser123).

Security Hardening

Config files now use secure file permissions (#3726 by @Itx-Psycho0), GitHub webhooks default to TLS verification (#3714 by @Vi-shub), and shell metacharacters are now rejected in prefix validation (#3760 by @Elvand-Lie).

IPv6 and Dual-Stack Support

Multiple fixes improve IPv6 support: dual-stack net.Dial via Happy Eyeballs (#3692), IPv6 in local Kind cluster setup (#3693), and listening on IPv6 loopback (#3817) — all by @matejvasek.


Client

Release notes: Client 1.23

A maintenance release with dependency updates and CI improvements.

kn-plugin-quickstart

Release notes: Quickstart 1.23

Custom Kind Host Port

You can now set a custom host port when creating Kind clusters (#660 by @psschwei), making it easier to avoid port conflicts in multi-cluster or shared development environments.

Improved Startup Reliability

The plugin now waits for pods to appear before checking readiness (#669 by @psschwei), fixing race conditions during cluster setup.

Other Client Plugins

These releases contain dependency updates:


Operator

Release notes: Operator 1.23

TODO: Add operator release notes when the release is available.


Thank you, contributors

Release Leads:

New Contributors 🎉:


Learn more

Knative is an open source project that anyone in the community can use, improve, and enjoy. We'd love you to join us!

We use analytics and cookies to understand site traffic. Information about your use of our site is shared with Google for that purpose. Learn more.

× OK