v1.5 release

Published on: 2022-06-06 ,  Revised on: 2023-08-03

Announcing Knative 1.5 Release

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

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

Table of Contents

Serving

πŸ’« New Features & Changes

  • Allows dnsConfig and dnsPolicy to be specified on pod specs when the feature is enabled in the config-features config map. (#12897)
  • Enabling the container freezer will disable the readiness probe defaulted in by Knative. (#12967)
  • All hops encrypted epic - (alpha) TLS between activator and queue proxy (#12815)

🐞 Bug Fixes

  • Support for parsing name and namespace in activator from a request when 'Host' header or host name contains a port (#12974)
  • The value of panicRPSM was set as observedStableValue, but it should have been observedPanicValue as part of the metric collection. (#12910)
  • Reduce the chance of 503s when rolling out a new revision (#12842)

Eventing

πŸ’« New Features & Changes

  • Propagate per-component logging levels to source receive adapters. (#6391)

🐞 Bug Fixes

  • 🧹 MTChannelBroker filter does not proxy headers from replies anymore other than the headers specified in its hardcoded allow-list. The list so far only contains Retry-After. (#6357)
  • πŸ› Fix pingsource-mt-adapter crash when the initial replicas is set to a value other than 0 (#6359, @lionelvillard)
  • πŸ› Fix Parallel not properly reporting underlying Channel creation failures (#6354)
  • 🧹 Now the Eventing Performance tests are ready to use, including Sender Throughput and latency graphs (#6340)

Networking Extensions

cert-manager plugin (net-certmanager)

πŸ’« New Features & Changes

  • Cert-manager is now in version 1.8.0. (#399)
  • Secrets automatically generated due to certificate creation are labeled with a special label key to support proper filtering from K8s informers in components that consume them. (#402)

Istio plugin (net-istio)

πŸ’« New Features & Changes

  • Memory leak fix for large clusters where all cluster secrets were listed in net-istio. Secret informer in ingress controller can be enabled to filter secrets based on the existence of a label key certificate.networking.knative.dev
  • Users are required to add the label key for custom secrets defined in ingresses. For special cases users are recommended to reach out to Knative community.
  • In case of AutoTLS provided by Knative net-certmanager this is done transparently.
  • To enable this behavior at net-istio set env var ENABLE_SECRET_INFORMER_FILTERING_BY_CERT_UID to true.
  • This will be available by default in future releases. (#920)
  • local-gateway.mesh: "mesh" option was dropped. (#915)

Eventing Extensions

Apache Kafka Broker

πŸ’« New Features & Changes

  • Deploy just the KafkaSource v2 controller and new statefulset dispatcher (no receiver) for users of KakfaSource (#2089)
  • With the kafka.eventing.knative.dev/external.topic annotation it is possible to use an externally managed Apache Kafka topic for the broker usage (#1023)
  • vertx_* metrics have been removed since they were causing unnecessary allocations. (#2147)
  • 🧽 Update or clean up current behavior The control plane sends retry configurations to the data plane. (#263)

🐞 Bug Fixes

  • Receiver's prober targets services instead of pods directly to allow components to be part of an Istio mesh (#2112)

RabbitMQ Broker and Source

🚨 Breaking or Notable

  • With the removal of standalone-broker, Secret type is no longer a supported Broker.Config (#773)

πŸ’« New Features & Changes

  • A new type RabbitmqBrokerConfig can be used to configure a Broker (#780)
  • Dispatcher will timeout after 30s when sending to the subscriber (#687)
  • Now the docs are better organized and performance tests graphs are correct (#721)
  • Resource requests for source controller increased (#738)
  • The Broker's Ingress and Dispatcher have deployment resource requests and limits
  • The Source's Receive Adapter have deployment resources requests and limits (#771)
  • The Broker's ingress uses the Binary representation of the CloudEvents
  • The Broker's Dispatcher uses the protocol binding to get a CloudEvent from a RabbitMQ Message
  • Added performance tests for the source using the new Ingress CE Binary representation, that makes the Ingress plugable to the Source (#751)
  • Script to automate the generation of the performance results per release
  • Complete performance results graph tests for the RabbitMQ's Broker and Source (#767)

🐞 Bug Fixes

  • The backoffDelay env variable is parsed correctly on the Broker's and Trigger's Dispatcher
  • The backoffDelay env variable is parsed correctly on the Source's receive adapter (#750)
  • BackoffDelay is used when defined in Broker or Trigger delivery spec
  • dead letter messaging uses the same delivery spec (#723)
  • Fixed bug in Trigger dispatcher deployment from getting updated too frequently (#744)
  • Fixed bug where the broker ingress was not reconnecting after the connection or channel with RabbitMQ was closed (#778)

Client

πŸ’« New Features & Changes

  • New flag options has been added to broker create and broker update commands:
    Options:
          --backoff-delay string     The delay before retrying.
          --backoff-policy string    The retry backoff policy (linear, exponential).
          --class string             Broker class like 'MTChannelBasedBroker' or 'Kafka' (if available).
          --dl-sink string           The sink receiving event that could not be sent to a destination.
      -n, --namespace string         Specify the namespace to operate in.
          --retry int32              The minimum number of retries the sender should attempt when sending an event before moving it to the dead letter sink.
          --retry-after-max string   An optional upper bound on the duration specified in a "Retry-After" header when calculating backoff times for retrying 429 and 503 response codes. Setting the value to zero ("PT0S") can be used to opt-out of respecting "Retry-After" header values altogether. This value only takes effect if "Retry" is configured, and also depends on specific implementations (Channels, Sources, etc.)
                                     choosing to provide this capability.
          --timeout string           The timeout of each single request. The value must be greater than 0.
    

Operator

πŸ’« New Features & Changes

  • Update the template and samples for csv bundle (#1061)

🐞 Bug Fixes

  • Add the support of port and host configuration for gateways (#1047)
  • Add the configuration of selector for services (#1050)
  • Add the annotation sidecar.istio.io/inject: "false" to operator-webhook (#1066)
  • Support overriding env vars per container (#1085)

Thank you, contributors

Release Leads:

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