v1.2 release

Published on: 2022-01-28 ,  Revised on: 2023-08-03

Announcing Knative v1.2 Release

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

Follow the instructions in the documentation Installing Knative for the respective component.

Table of Contents

Highlights

  • Minimum Kubernetes version is now v1.21.
  • Serving added experimental support for PVC.
  • Eventing ConfigMap element names are standardized to kebab case. Use data-max-size and channel-template-spec instead of the previous camel case elements, which have been deprecated. For more information, see Eventing v1.2.
  • The kn client has added autocomplete for several commands. For more information, see CLI v1.2.

Serving v1.2

🚨 Breaking or Notable Changes

  • Our minimum Kubernetes version is now v1.21. (#12509)
  • PodDisruptionBudget updated to v1 API. (#12548)

πŸ’« New Features & Changes

  • Improves the error message when a DomainMapping cannot be reconciled because autocreate-cluster-domain-claims is false and the CDC does not exist. (#12439)
  • Utilizes Kubernetes's immediate trigger of readiness probes after startup. Restores default periodSeconds for readiness probe to Kubernetes default (10s). (#12550)

🐞 Bug Fixes

  • Changes liveness probes to directly probe the user container rather than queue proxy. (#12479)

πŸ§ͺ Experimental

  • Adds PVC support behind the feature flags kubernetes.podspec-persistent-volume-claim and kubernetes.podspec-persistent-volume-write. (#12458)

Eventing v1.2

🚨 Breaking or Notable Changes

  • Change default Broker delivery spec. (#6011)
  • Unify inconsistent ConfigMaps (#5875):
    • The Channel template in the ConfigMap that Brokers use to declare the underlying channel must be located under the channel-template-spec element. The previous channelTemplateSpec element has been deprecated.
    • PingSource's ConfigMap element for maximum size has been redefined as data-max-size. The previous dataMaxSize element has been deprecated.

πŸ’« New Features & Changes

  • Traces generated by PingSource includes some Kubernetes attributes: k8s.namespace, k8s.name, k8s.resource. (#5928)
  • Add new new-trigger-filters experimental feature. When enabled, Triggers support a new filters field that conforms to the filters API field defined in the CloudEvents Subscriptions API. It allows you to specify a set of powerful filter expressions, where each expression evaluates to either true or false for each event. (#5995)

🐞 Bug Fixes

  • Fixes the following vulnerabilities (#6057):
    • github.com/knative/pkg contains a dependency that is subject to DoS attack.
    • github.com/kubernetes/utils contains a security issue that was discovered where a user might be able to create a container with subpath volume mounts to access files and directories outside of the volume, including on the host filesystem.

Eventing Extensions

Apache Kafka Broker v1.2

πŸ’« New Features & Changes

  • An HTTP header will be supplied to your event consumers when the Broker it is communicating with supports reply events. This will always be sent while using this Kafka Broker since it supports handling reply events. (#1771)

  • Apply back-pressure by limiting the number of in-flight dispatch requests in the unordered event consumption. (#1750)

  • Support TLS for the metrics server. Now, the receiver and the dispatcher accept the following environment variables (#1707):

    • METRICS_PEM_CERT_PATH: TLS cert path
    • METRICS_PEM_KEY_PATH: TLS key path
    • METRICS_HOST: metrics server host

RabbitMQ Broker and Source v1.2

πŸ’« New Features & Changes

  • Improved Broker's and Source's README docs, sample descriptions, and files. (#555)
  • Add publisher confirms to ingress. Return 200 only when RabbitMQ confirms receiving and storing the message. (#568)
  • Makefile-based workflow. Includes migrating GitHub Actions. (#525, #569, #579)
  • Various code refactoring and code health improvements. (#552, #572)
  • Source adapter trigger dispatcher homologation. Now the Source Adapter and Broker Dispatcher's Prefetch Count behavior is the same. Updated the Trigger's webhook to validate the following (#536):
    • Has a default value of 1. FIFO behavior
    • Have limits: 1 ≀ prefetchCount ≀ 1000
  • All core Knative Eventing RabbitMQ Pods should now be able to run in the restricted Pod security standard profile. (#541)

🐞 Bug Fixes

  • Removing the dead letter sink on a Trigger will now properly fall back to the Broker's dead letter sink, if one is defined. (#533)
  • Messages sent to RabbitMQ are now marked as Persistent (#560):
    • Configuring messages sent into the RabbitMQ Broker to be persistent as the Queues used by the Broker are always durable.
    • Now if the user set the configuration of the RabbitMQ Source Exchange and Queue to be durable, the messages are also durable.

Client v1.2

πŸ’« New Features & Changes

  • Adds auto-completion for Eventing resources name. (#1567)
  • Adds auto-completion for Domain name. (#1562)
  • Adds auto-completion for Route name. (#1561)
  • Adds auto-completion for Revision name. (#1560)
  • Adds auto-completion for Broker name. (#1559)
  • Adds auto-completion for Service name. (#1547)
  • Removes deprecated Hugo frontmatter generation for docs. (#1563)

🐞 Bug Fixes

  • Fix for file not found error message discrepancy in Windows. (#1575)
  • Fixed panic in kn channel list command. (#1568)

Operator v1.2

πŸ’« New Features & Changes

  • Add the support of resources configuration based on deploy and container names. (#893)

Thank you, contributors

Release leads: @dprotaso and @psschwei

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