kong 3.9.0

3.9.0
Added 9
  • Added the kong drain CLI command to make the /status/ready endpoint return a 503 Service Unavailable response
  • Added a new feature for Kong Manager that supports multiple domains, enabling dynamic cross-origin access for Admin API requests
  • Added an ADA dependency: WHATWG-compliant and fast URL parser
  • Added a new LLM driver for interfacing with the Hugging Face inference API supporting both serverless and dedicated LLM instances
  • Added a tls.disable_http2_alpn() function patch for disabling HTTP/2 ALPN when performing a TLS handshake
  • Added support for Wasm filters to be configured via the /plugins Admin API
Changed 9
  • Bumped lua-kong-nginx-module from 0.11.0 to 0.11.1 to fix an issue where the upstream cert chain wasn't properly set
  • Bumped lua-resty-events to 0.3.1 to optimize memory usage
  • Bumped lua-resty-lmdb to 1.6.0 allowing page_size to be 1
  • Bumped lua-resty-aws to 1.5.4 to fix a bug inside region prefix generation
  • Bumped lua-resty-ljsonschema to 1.2.0 adding support for null as a valid option in enum types and properly calculating utf8 string length instead of byte count
  • Bumped OpenSSL to 3.2.3 to fix unbounded memory growth with session handling in TLSv1.3 and other CVEs
Removed 1
  • Removed the experimental datakit Wasm filter
Deprecated 1
  • node_id in configuration has been deprecated

From kong

Kong
Deprecations
Core
  • node_id in configuration has been deprecated. #13687
Dependencies
Core
  • Bumped lua-kong-nginx-module from 0.11.0 to 0.11.1 to fix an issue where the upstream cert chain wasn't properly set. #12752

  • Bumped lua-resty-events to 0.3.1. Optimized the memory usage. #13097

  • Bumped lua-resty-lmdb to 1.6.0. Allowing page_size to be 1. #13908

  • Bumped lua-resty-lmdb to 1.5.0. Added page_size parameter to allow overriding page size from caller side. #12786

Default
  • Kong Gateway now supports Ubuntu 24.04 (Noble Numbat) with both open-source and Enterprise packages. #13626

  • Bumped rpm dockerfile default base UBI 8 -> 9 #13574

  • Bumped lua-resty-aws to 1.5.4 to fix a bug inside region prefix generation. #12846

  • Bumped lua-resty-ljsonschema to 1.2.0, adding support for null as a valid option in enum types and properly calculation of utf8 string length instead of byte count #13783

  • Bumped ngx_wasm_module to 9136e463a6f1d80755ce66c88c3ddecd0eb5e25d #12011

  • Bumped Wasmtime version to 26.0.0 #12011

  • Bumped OpenSSL to 3.2.3 to fix unbounded memory growth with session handling in TLSv1.3 and other CVEs. #13448

  • Wasm: Removed the experimental datakit Wasm filter #14012

Features
CLI Command
  • Added the kong drain CLI command to make the /status/ready endpoint return a 503 Service Unavailable response. #13838
Core
  • Added a new feature for Kong Manager that supports multiple domains, enabling dynamic cross-origin access for Admin API requests. #13664

  • Added an ADA dependency: WHATWG-compliant and fast URL parser. #13120

  • Addded a new LLM driver for interfacing with the Hugging Face inference API. The driver supports both serverless and dedicated LLM instances hosted by Hugging Face for conversational and text generation tasks. #13484

  • Increased the priority order of the correlation id to 100001 from 1 so that the plugin can be used with other plugins especially custom auth plugins. #13581

  • Added a tls.disable_http2_alpn() function patch for disabling HTTP/2 ALPN when performing a TLS handshake. #13709

  • Improved the output of the request debugger:

    • The resolution of field total_time is now in microseconds.
    • A new field, total_time_without_upstream, shows the latency only introduced by Kong. #13460
  • proxy-wasm: Added support for Wasm filters to be configured via the /plugins Admin API. #13843

PDK
  • Added kong.service.request.clear_query_arg(name) to PDK. #13619

  • Array and Map type span attributes are now supported by the tracing PDK #13818

Plugin
  • Prometheus: Increased the upper limit of KONG_LATENCY_BUCKETS to 6000 to enhance latency tracking precision. #13588

  • ai-proxy: Disabled HTTP/2 ALPN handshake for connections on routes configured with AI-proxy. #13735

  • Redirect: Added a new plugin to redirect requests to another location. #13900

  • Prometheus: Added support for Proxy-Wasm metrics. #13681

Admin API
  • Admin API: Added support for official YAML media-type (application/yaml) to the /config endpoint. #13713
Clustering
  • Added a remote procedure call (RPC) framework for Hybrid mode deployments. #12320
Fixes
Core
  • Fixed an issue where the ngx.balancer.recreate_request API did not refresh the body buffer when ngx.req.set_body_data is used in the balancer phase. #13882

  • Fix to always pass ngx.ctx to log_init_worker_errors as otherwise it may runtime crash. #13731

  • Fixed an issue where the workspace ID was not included in the plugin config in the plugins iterator. #13377

  • Fixed an issue where the workspace id was not included in the plugin config in the plugins iterator. #13872

  • Fixed a 500 error triggered by unhandled nil fields during schema validation. #13861

  • Vault: Fixed an issue where array-like configuration fields cannot contain vault reference. #13953

  • Vault: Fixed an issue where updating a vault entity in a non-default workspace wouldn't take effect. #13610

  • Vault: Fixed an issue where vault reference in kong configuration cannot be dereferenced when both http and stream subsystems are enabled. #13953

  • proxy-wasm: Added a check that prevents Kong from starting when the database contains invalid Wasm filters. #13764

  • Fixed an issue where the kong.request.enable_buffering couldn't be used when the downstream used HTTP/2. #13614

PDK
  • Lined up the kong.log.inspect function to log at notice level as documented #13642

  • Fix error message for invalid retries variable #13605

Plugin
  • ai-proxy: Fixed a bug where tools (function) calls to Anthropic would return empty results. #13760

  • ai-proxy: Fixed a bug where tools (function) calls to Bedrock would return empty results. #13760

  • ai-proxy: Fixed a bug where Bedrock Guardrail config was ignored. #13760

  • ai-proxy: Fixed a bug where tools (function) calls to Cohere would return empty results. #13760

  • ai-proxy: Fixed a bug where Gemini provider would return an error if content safety failed in AI Proxy. #13760

  • ai-proxy: Fixed a bug where tools (function) calls to Gemini (or via Vertex) would return empty results. #13760

  • ai-proxy: Fixed an issue where AI Transformer plugins always returned a 404 error when using 'Google One' Gemini subscriptions. #13703

  • ai-transformers: Fixed a bug where the correct LLM error message was not propagated to the caller. #13703

  • AI-Proxy: Fixed an issue where multi-modal requests were blocked on the Azure AI provider. #13702

  • Fixed an bug that AI semantic cache can't use request provided models #13627

  • AWS-Lambda: Fixed an issue in proxy integration mode that caused an internal server error when the multiValueHeaders was null. #13533

  • jwt: ensure rsa_public_key isn't base64-decoded. #13717

  • key-auth: Fixed an issue with the order of query arguments, ensuring that arguments retain order when hiding the credentials. #13619

  • rate-limiting: Fixed a bug where the returned values from get_redis_connection() were incorrect. #13613

  • rate-limiting: Fixed an issue that caused an HTTP 500 error when hide_client_headers was set to true and the request exceeded the rate limit. #13722

Admin API
  • Fix for querying admin API entities with empty tags #13723

  • Fixed an issue where nested parameters couldn't be parsed correctly when using form-urlencoded requests. #13668

Clustering
  • Clustering: Adjusted error log levels for control plane connections. #13863
Default
  • Loggly: Fixed an issue where /bin/hostname missing caused an error warning on startup. #13788
Kong-Manager
Fixes
Default
View original

Upgraded? How did it go?

Discussion