Sourced from axios's releases.
v1.15.2
This release delivers prototype-pollution hardening for the Node HTTP adapter, adds an opt-in
allowedSocketPathsallowlist to mitigate SSRF via Unix domain sockets, fixes a keep-alive socket memory leak, and ships supply-chain hardening across CI and security docs.🔒 Security Fixes
- Prototype Pollution Hardening (HTTP Adapter): Hardened the Node HTTP adapter and
resolveConfig/mergeConfig/validator paths to read only own properties and use null-prototype config objects, preventing pollutedauth,baseURL,socketPath,beforeRedirect, andinsecureHTTPParserfrom influencing requests. (#10779)- SSRF via
socketPath: Rejects non-stringsocketPathvalues and adds an opt-inallowedSocketPathsconfig option to restrict permitted Unix domain socket paths, returningAxiosErrorERR_BAD_OPTION_VALUEon mismatch. (#10777)- Supply-chain Hardening: Added
.npmrcwithignore-scripts=true, lockfile lint CI, non-blocking reproducible build diff, scoped CODEOWNERS, expandedSECURITY.md/THREATMODEL.mdwith provenance verification (npm audit signatures), 60-day resolution policy, and maintainer incident-response runbook. (#10776)🚀 New Features
allowedSocketPathsConfig Option: New request config option (and TypeScript types) to allowlist Unix domain socket paths used by the Node http adapter; backwards compatible when unset. (#10777)🐛 Bug Fixes
- Keep-alive Socket Memory Leak: Installs a single per-socket
errorlistener tracking the active request viakAxiosSocketListener/kAxiosCurrentReq, eliminating per-request listener accumulation,MaxListenersExceededWarning, and linear heap growth under concurrent or long-running keep-alive workloads (fixes #10780). (#10788)🔧 Maintenance & Chores
- Changelog: Updated
CHANGELOG.mdwith v1.15.1 release notes. (#10781)v1.15.1
This release ships a coordinated set of security hardening fixes across headers, body/redirect limits, multipart handling, and XSRF/prototype-pollution vectors, alongside a broad sweep of bug fixes, test migrations, and threat-model documentation updates.
🔒 Security Fixes
- Header Injection Hardening: Tightened validation and sanitisation across request header construction to close the header-injection attack surface. (#10749)
- CRLF Stripping in Multipart Headers: Correctly strips CR/LF from multipart header values to prevent injection via field names and filenames. (#10758)
- Prototype Pollution / Auth Bypass: Replaced unsafe
inchecks withhasOwnPropertyto prevent authentication bypass via prototype pollution on config objects, with additional regression tests. (#10761, #10760)withXSRFTokenTruthy Bypass: Short-circuits on any truthy non-boolean value, so an ambiguous config no longer silently leaks the XSRF token cross-origin. (#10762)maxBodyLengthWith Zero Redirects: EnforcesmaxBodyLengtheven whenmaxRedirectsis set to0, closing a bypass path for oversized request bodies. (#10753)- Streamed Response
maxContentLengthBypass: AppliesmaxContentLengthto streamed responses that previously bypassed the cap. (#10754)- Follow-up CVE Completion: Completes an earlier incomplete CVE fix to fully close the regression window. (#10755)
🚀 New Features
- AI-Based Docs Translations: Initial scaffold for AI-assisted translations of the documentation site. (#10705)
LocationRequest Header Type: AddsLocationtoCommonRequestHeadersListfor accurate typing of redirect-aware requests. (#7528)🐛 Bug Fixes
- FormData Handling: Removes
Content-Typewhen no boundary is present onFormDatafetch requests, supports multi-select fields, cancelsrequest.bodyinstead of the source stream on fetch abort, and fixes a recursion bug in form-data serialisation. (#7314, #10676, #10702, #10726)- HTTP Adapter: Handles socket-only request errors without leaking keep-alive listeners. (#10576)
- Progress Events: Clamps
loadedtototalfor computable upload/download progress events. (#7458)- Types: Aligns
runWhentype with the runtime behaviour inInterceptorManagerand makes response header keys case-insensitive. (#7529, #10677)buildFullPath: Uses strict equality in the base/relative URL check. (#7252)AxiosURLSearchParamsRegex: Improves the regex used for param serialisation to avoid edge-case mismatches. (#10736)- Resilient Value Parsing: Parses out header/config values instead of throwing on malformed input. (#10687)
... (truncated)
Sourced from axios's changelog.
v1.15.2 - April 21, 2026
This release delivers prototype-pollution hardening for the Node HTTP adapter, adds an opt-in
allowedSocketPathsallowlist to mitigate SSRF via Unix domain sockets, fixes a keep-alive socket memory leak, and ships supply-chain hardening across CI and security docs.🔒 Security Fixes
- Prototype Pollution Hardening (HTTP Adapter): Hardened the Node HTTP adapter and
resolveConfig/mergeConfig/validator paths to read only own properties and use null-prototype config objects, preventing pollutedauth,baseURL,socketPath,beforeRedirect, andinsecureHTTPParserfrom influencing requests. (#10779)- SSRF via
socketPath: Rejects non-stringsocketPathvalues and adds an opt-inallowedSocketPathsconfig option to restrict permitted Unix domain socket paths, returningAxiosErrorERR_BAD_OPTION_VALUEon mismatch. (#10777)- Supply-chain Hardening: Added
.npmrcwithignore-scripts=true, lockfile lint CI, non-blocking reproducible build diff, scoped CODEOWNERS, expandedSECURITY.md/THREATMODEL.mdwith provenance verification (npm audit signatures), 60-day resolution policy, and maintainer incident-response runbook. (#10776)🚀 New Features
allowedSocketPathsConfig Option: New request config option (and TypeScript types) to allowlist Unix domain socket paths used by the Node http adapter; backwards compatible when unset. (#10777)🐛 Bug Fixes
- Keep-alive Socket Memory Leak: Installs a single per-socket
errorlistener tracking the active request viakAxiosSocketListener/kAxiosCurrentReq, eliminating per-request listener accumulation,MaxListenersExceededWarning, and linear heap growth under concurrent or long-running keep-alive workloads (fixes #10780). (#10788)🔧 Maintenance & Chores
- Changelog: Updated
CHANGELOG.mdwith v1.15.1 release notes. (#10781)
v1.15.1 - April 19, 2026
This release ships a coordinated set of security hardening fixes across headers, body/redirect limits, multipart handling, and XSRF/prototype-pollution vectors, alongside a broad sweep of bug fixes, test migrations, and threat-model documentation updates.
🔒 Security Fixes
Header Injection Hardening: Tightened validation and sanitisation across request header construction to close the header-injection attack surface. (#10749)
CRLF Stripping in Multipart Headers: Correctly strips CR/LF from multipart header values to prevent injection via field names and filenames. (#10758)
Prototype Pollution / Auth Bypass: Replaced unsafe
inchecks withhasOwnPropertyto prevent authentication bypass via prototype pollution on config objects, with additional regression tests. (#10761, #10760)
withXSRFTokenTruthy Bypass: Short-circuits on any truthy non-boolean value, so an ambiguous config no longer silently leaks the XSRF token cross-origin. (#10762)
maxBodyLengthWith Zero Redirects: EnforcesmaxBodyLengtheven whenmaxRedirectsis set to0, closing a bypass path for oversized request bodies. (#10753)Streamed Response
maxContentLengthBypass: AppliesmaxContentLengthto streamed responses that previously bypassed the cap. (#10754)Follow-up CVE Completion: Completes an earlier incomplete CVE fix to fully close the regression window. (#10755)
🚀 New Features
- AI-Based Docs Translations: Initial scaffold for AI-assisted translations of the documentation site. (#10705)
... (truncated)
5829343
chore(release): prepare release 1.15.2 (#10789)4709a48
fix: added fix for memory leak in sockets (#10788)be33360
chore: update changelog (#10781)4791514
fix: more header pollutions (#10779)6feafcf
fix: socket issue (#10777)302e273
docs: update docs, add a couple actions etc (#10776)ac42446
chore(release): prepare release 1.15.1 (#10767)908f220
docs: update threatmodel (#10765)f93f815
docs: added docs around potential decompressions bomb (#10763)1728aa1
fix: short-circuits on any truthy non-boolean in withXSRFToken (#10762)