# koa: what changed from 2 to 3 - Product: koa (https://whatsnew.fyi/product/koa) - Vendor: koa - Range: changelog entries numbered after v2.16.4 up to and including v3.2.1, stable releases only - Entries below: 7 releases (newest first) - Resolved: 2 is v2.16.4 and 3 is v3.2.1, the newest stable release of each major we track - Carrying security changes: 1 · CVEs mentioned: 0 · Mentioning breaking changes: 0 · Removing or deprecating something: 0 - Page: https://whatsnew.fyi/product/koa/compare/2...3 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'. ## What changed (13 changes, grouped by kind) ### Added #### v3.2.0 (2026-03-28) - Defer AsyncLocalStorage creation for v8 startup snapshots ### Changed #### v3.1.2 (2026-02-25) - Bump http-errors from 2.0.0 to 2.0.1 - Bump mime-types from 3.0.1 to 3.0.2 - Bump content-disposition from 0.5.4 to 1.0.1 - Bump qs from 6.14.0 to 6.14.1 - Bump js-yaml from 4.1.0 to 4.1.1 ### Fixed #### v3.2.1 (2026-05-21) - request.length no longer overflows on Content-Length greater than 2GB #### v3.1.1 (2025-10-27) - Only destroy the original value if the new value is not a stream #### v3.1.0 (2025-10-26) - Fix memory leak relating to issue 1834 - Add stream cleanup #### v3.0.3 (2025-10-18) - Normalize referer before redirect #### v3.0.2 (2025-10-17) - Fix response.attachment behaviour that leads to Content-Type Sniffing ### Security #### v3.1.2 (2026-02-25) - Fix Host Header Injection via ctx.hostname ## Release notes ### v3.2.1 - Date: 2026-05-21 - Version: v3.2.1 - Original notes: https://github.com/koajs/koa/releases/tag/v3.2.1 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.2.1 - **fixed** — request.length no longer overflows on Content-Length greater than 2GB ##### What's Changed * fix: request.length overflows on Content-Length > 2GB by @tejgokani in https://github.com/koajs/koa/pull/1961 ##### New Contributors * @tejgokani made their first contribution in https://github.com/koajs/koa/pull/1961 **Full Changelog**: https://github.com/koajs/koa/compare/v3.2.0...v3.2.1 ### v3.2.0 - Date: 2026-03-28 - Version: v3.2.0 - Original notes: https://github.com/koajs/koa/releases/tag/v3.2.0 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.2.0 - **added** — Defer AsyncLocalStorage creation for v8 startup snapshots ##### What's Changed * docs: remove dead Job Board links by @Jerry-CodeHub in https://github.com/koajs/koa/pull/1926 * build(deps-dev): bump qs from 6.14.1 to 6.14.2 by @dependabot[bot] in https://github.com/koajs/koa/pull/1927 * chore: Add workflow_dispatch trigger to npm-publish workflow by @Copilot in https://github.com/koajs/koa/pull/1930 * feat: defer AsyncLocalStorage creation for v8 startup snapshots by @killagu in https://github.com/koajs/koa/pull/1946 ##### New Contributors * @Jerry-CodeHub made their first contribution in https://github.com/koajs/koa/pull/1926 * @killagu made their first contribution in https://github.com/koajs/koa/pull/1946 **Full Changelog**: https://github.com/koajs/koa/compare/v3.1.2...v3.2.0 ### v3.1.2 - Date: 2026-02-25 - Version: v3.1.2 - Original notes: https://github.com/koajs/koa/releases/tag/v3.1.2 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.1.2 - **security** — Fix Host Header Injection via ctx.hostname - **changed** — Bump http-errors from 2.0.0 to 2.0.1 - **changed** — Bump mime-types from 3.0.1 to 3.0.2 - **changed** — Bump content-disposition from 0.5.4 to 1.0.1 - **changed** — Bump qs from 6.14.0 to 6.14.1 - **changed** — Bump js-yaml from 4.1.0 to 4.1.1 ##### What's Changed * fix: typo in troubleshooting.md by @WuMingDao in https://github.com/koajs/koa/pull/1916 * build(deps-dev): bump qs from 6.14.0 to 6.14.1 by @dependabot[bot] in https://github.com/koajs/koa/pull/1921 * build(deps): bump http-errors from 2.0.0 to 2.0.1 by @dependabot[bot] in https://github.com/koajs/koa/pull/1919 * build(deps): bump mime-types from 3.0.1 to 3.0.2 by @dependabot[bot] in https://github.com/koajs/koa/pull/1918 * docs: use correct term "Server-Sent Events" in guide by @jtr860830 in https://github.com/koajs/koa/pull/1920 * build(deps): bump content-disposition from 0.5.4 to 1.0.1 by @dependabot[bot] in https://github.com/koajs/koa/pull/1917 * build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 by @dependabot[bot] in https://github.com/koajs/koa/pull/1922 * fix(security): Host Header Injection via `ctx.hostname` by @killagu https://github.com/koajs/koa/security/advisories/GHSA-7gcc-r8m5-44qm ##### New Contributors * @WuMingDao made their first contribution in https://github.com/koajs/koa/pull/1916 * @jtr860830 made their first contribution in https://github.com/koajs/koa/pull/1920 **Full Changelog**: https://github.com/koajs/koa/compare/v3.1.1...v3.1.2 ### v3.1.1 - Date: 2025-10-27 - Version: v3.1.1 - Original notes: https://github.com/koajs/koa/releases/tag/v3.1.1 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.1.1 - **fixed** — Only destroy the original value if the new value is not a stream ##### What's Changed * fix: only original value destroy if the new value is not a stream by @yowainwright in https://github.com/koajs/koa/pull/1914 **Full Changelog**: https://github.com/koajs/koa/compare/v3.1.0...v3.1.1 ### v3.1.0 - Date: 2025-10-26 - Version: v3.1.0 - Original notes: https://github.com/koajs/koa/releases/tag/v3.1.0 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.1.0 - **fixed** — Fix memory leak relating to issue 1834 - **fixed** — Add stream cleanup ##### What's Changed * feat: fixes mem leak relating to issue-1834 by @yowainwright in https://github.com/koajs/koa/pull/1893 * fix: adds steam clean up by @yowainwright in https://github.com/koajs/koa/pull/1910 **Full Changelog**: https://github.com/koajs/koa/compare/v3.0.3...v3.1.0 ### v3.0.3 - Date: 2025-10-18 - Version: v3.0.3 - Original notes: https://github.com/koajs/koa/releases/tag/v3.0.3 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.0.3 - **fixed** — Normalize referer before redirect ##### What's Changed * fix: normalize referer before redirect by @fengmk2 in https://github.com/koajs/koa/pull/1908 **Full Changelog**: https://github.com/koajs/koa/compare/v3.0.2...v3.0.3 ### v3.0.2 - Date: 2025-10-17 - Version: v3.0.2 - Original notes: https://github.com/koajs/koa/releases/tag/v3.0.2 - Permalink: https://whatsnew.fyi/product/koa/releases/v3.0.2 - **fixed** — Fix response.attachment behaviour that leads to Content-Type Sniffing ##### What's Changed * fix: fixes response.attachment behaviour leads to Content-Type Sniffing by @yowainwright in https://github.com/koajs/koa/pull/1904 * chore: use NPM trusted publishing with semver tag triggers by @Copilot in https://github.com/koajs/koa/pull/1907 ##### New Contributors * @Copilot made their first contribution in https://github.com/koajs/koa/pull/1907 **Full Changelog**: https://github.com/koajs/koa/compare/v3.0.1...v3.0.2