# kong 3.8.0 - Product: kong (https://whatsnew.fyi/product/kong) - Vendor: Kong - Date: 2024-09-11 - Version: 3.8.0 - Original notes: https://github.com/Kong/kong/releases/tag/3.8.0 - Permalink: https://whatsnew.fyi/product/kong/releases/3.8.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — Fixed an inefficiency issue in the Luajit hashing algorithm - **changed** — Removed unnecessary DNS client initialization - **changed** — Improved latency performance when gzipping/gunzipping large data such as CP/DP config data - **deprecated** — Debian 10, CentOS 7, and RHEL 7 are no longer supported as of version 3.8.0.0 onward - **changed** — Bumped lua-resty-acme to 0.15.0 to support username/password auth with redis - **fixed** — Bumped lua-resty-aws to 1.5.3 to fix a bug related to STS regional endpoint - **fixed** — Bumped lua-resty-healthcheck from 3.0.1 to 3.1.0 to fix an issue that was causing high memory usage - **fixed** — Bumped lua-resty-lmdb to 1.4.3 to get fixes from upstream which resolved numerous race conditions and fixed a cursor issue - **fixed** — Bumped lua-resty-openssl to 1.5.1 to fix some issues including a potential use-after-free issue - **changed** — Bumped OpenResty to 1.25.3.2 to improve the performance of the LuaJIT hash computation - **changed** — Bumped PCRE2 to 10.44 to fix some bugs - **added** — Introduced a yieldable JSON library lua-resty-simdjson to improve latency significantly - **changed** — Made the RPM package relocatable with the default prefix set to / - **added** — Configure Wasmtime module cache when Wasm is enabled - **added** — Added ai_requests_total, ai_cost_total and ai_tokens_total metrics in the Prometheus plugin to start counting AI usage - **added** — Added a new configuration concurrency_limit for Queue to specify the number of delivery timers - **changed** — Append gateway info to upstream Via header and optionally to response Via header according to RFC7230 and RFC9110 - **added** — Implemented a new DNS client library with global caching for DNS records across workers and a new Status API /status/dns - **added** — Added support for unlimited body size when parameter max_allowed_file_size is 0 in get_raw_body - **added** — Extend kong.request.get_body and kong.request.get_raw_body to read from buffered file - **added** — Added a new PDK module kong.telemetry and function kong.telemetry.log to generate log entries for OpenTelemetry plugin ###### Kong ###### Performance ###### Performance - Fixed an inefficiency issue in the Luajit hashing algorithm [#13240](https://github.com/Kong/kong/issues/13240) ###### Core - Removed unnecessary DNS client initialization [#13479](https://github.com/Kong/kong/issues/13479) - Improved latency performance when gzipping/gunzipping large data (such as CP/DP config data). [#13338](https://github.com/Kong/kong/issues/13338) ###### Deprecations ###### Default - Debian 10, CentOS 7, and RHEL 7 reached their End of Life (EOL) dates on June 30, 2024. As of version 3.8.0.0 onward, Kong is not building installation packages or Docker images for these operating systems. Kong is no longer providing official support for any Kong version running on these systems. [#13468](https://github.com/Kong/kong/issues/13468) ###### Dependencies ###### Core - Bumped lua-resty-acme to 0.15.0 to support username/password auth with redis. [#12909](https://github.com/Kong/kong/issues/12909) - Bumped lua-resty-aws to 1.5.3 to fix a bug related to STS regional endpoint. [#12846](https://github.com/Kong/kong/issues/12846) - Bumped lua-resty-healthcheck from 3.0.1 to 3.1.0 to fix an issue that was causing high memory usage [#13038](https://github.com/Kong/kong/issues/13038) - Bumped lua-resty-lmdb to 1.4.3 to get fixes from the upstream (lmdb 0.9.33), which resolved numerous race conditions and fixed a cursor issue. [#12786](https://github.com/Kong/kong/issues/12786) - Bumped lua-resty-openssl to 1.5.1 to fix some issues including a potential use-after-free issue. [#12665](https://github.com/Kong/kong/issues/12665) - Bumped OpenResty to 1.25.3.2 to improve the performance of the LuaJIT hash computation. [#12327](https://github.com/Kong/kong/issues/12327) - Bumped PCRE2 to 10.44 to fix some bugs and tidy-up the release (nothing important) [#12366](https://github.com/Kong/kong/issues/12366) - Introduced a yieldable JSON library `lua-resty-simdjson`, which would improve the latency significantly. [#13421](https://github.com/Kong/kong/issues/13421) ###### Default - Bumped lua-protobuf 0.5.2 [#12834](https://github.com/Kong/kong/issues/12834) - Bumped LuaRocks from 3.11.0 to 3.11.1 [#12662](https://github.com/Kong/kong/issues/12662) - Bumped `ngx_wasm_module` to `96b4e27e10c63b07ed40ea88a91c22f23981db35` [#12011](https://github.com/Kong/kong/issues/12011) - Bumped `Wasmtime` version to `23.0.2` [#13567](https://github.com/Kong/kong/pull/13567) - Made the RPM package relocatable with the default prefix set to `/`. [#13468](https://github.com/Kong/kong/issues/13468) ###### Features ###### Configuration - Configure Wasmtime module cache when Wasm is enabled [#12930](https://github.com/Kong/kong/issues/12930) ###### Core - **prometheus**: Added `ai_requests_total`, `ai_cost_total` and `ai_tokens_total` metrics in the Prometheus plugin to start counting AI usage. [#13148](https://github.com/Kong/kong/issues/13148) - Added a new configuration `concurrency_limit`(integer, default to 1) for Queue to specify the number of delivery timers. Note that setting `concurrency_limit` to `-1` means no limit at all, and each HTTP log entry would create an individual timer for sending. [#13332](https://github.com/Kong/kong/issues/13332) - Append gateway info to upstream `Via` header like `1.1 kong/3.8.0`, and optionally to response `Via` header if it is present in the `headers` config of "kong.conf", like `2 kong/3.8.0`, according to `RFC7230` and `RFC9110`. [#12733](https://github.com/Kong/kong/issues/12733) - Starting from this version, a new DNS client library has been implemented and added into Kong, which is disabled by default. The new DNS client library has the following changes - Introduced global caching for DNS records across workers, significantly reducing the query load on DNS servers. - Introduced observable statistics for the new DNS client, and a new Status API `/status/dns` to retrieve them. - _[Truncated at 4000 characters — full notes: https://github.com/Kong/kong/releases/tag/3.8.0]_