Commit Graph

160 Commits

Author SHA1 Message Date
Eve
914bc2605a
fix(progress): clamp loaded to total for computable upload/download events (#7458)
* fix(progress): clamp loaded value to total in progress reducer

* test(progress): cover out-of-order events in reducer clamp case

* fix(progress): keep bytesNotified monotonic for out-of-order events

---------

Co-authored-by: Jay <jasonsaayman@gmail.com>
2026-04-09 17:40:50 +02:00
Jay
a7f41f5bb5
chore: remove all old and un-needed files (#10584)
* chore: remove all old and un-needed files

* chore: fix missing file

* chore: fix ref error

* chore: add back missing file

* chore: incorrect folder location

* chore: ignore ts issues
2026-03-30 20:15:15 +02:00
Jay
9e705864d2
chore: migrate get stream to latest (#7516)
* build: bump get-stream to v9

* test: migrate helper buffer reads to get-stream v9 API

* fix: tests with sessions

* chore: update stream handler to better manage sessions

* chore: revert some changes

* chore: swap to buffer

* chore: add port for stream test

* chore: swap localhost

* chore: change timeout

* chore: update to stream type

* chore: try again

* chore: tests

* chore: updat tests/unit/adapters/http.test.js to check ipv4

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-03-16 20:38:14 +02:00
Jay
63e12ecb4f
refactor: migrate express test harness (#7506)
* chore(test): upgrade express and body-parser for adapter suites

* test(http): pin express 5 routes and body-parser 2 parsing expectations

* chore: attempt without ci

* revert: issue with ci
2026-03-15 14:30:15 +02:00
Dmitriy Fedotov
f7a4ee21d5
fix(http): closing detached http2 session on timeout (#7457)
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2026-03-06 23:50:51 +02:00
Jay
fa337332b9
Update unit testing flows as part of migration to vitest (#7484)
* chore: small fixes to tests

* feat: transitional move to vitests

* feat: moving unit tests in progress

* feat: moving more unit tests over

* feat: more tests moved

* feat: updated more sections of the http test

* chore: wip http tests

* chore: wip http tests

* chore: more http tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: tests

* chore: remove un-needed docs

* chore: update package lock

* chore: update lock
2026-03-06 20:42:14 +02:00
Eve
688826facd
fix(headers): trim trailing CRLF in normalized header values (#7456) 2026-03-01 17:48:03 +02:00
Mohsen
885b4af6f5
feat: support react native blob objects (#5764)
* feat: support react native blob objects

* test: cover react native blob objects detection

* fix: improve isReactNativeBlob and isReactNative checks for better validation

* feat: support appending React Native blob objects to FormData without recursion

---------

Co-authored-by: Jay <jasonsaayman@gmail.com>
2026-02-24 20:36:32 +02:00
Jay
ef3711d1b3
feat: implement prettier and fix all issues (#7385)
* feat: implement prettier and fix all issues

* fix: failing tests

* fix: implement feedback from codel, ai etc

* chore: dont throw in trim function

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* fix: incorrect fix

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-02-14 16:59:48 +02:00
Jay
28c721588c
fix: Denial of Service via __proto__ Key in mergeConfig (#7369)
* fix: sec issue as per advisory

* chore: expand and add tests
2026-02-04 20:25:06 +02:00
Willian Agostini
696fa753c5
fix: status is missing in AxiosError on and after v1.13.3 (#7368)
* test: add error handling tests for fetch and http adapters with status code

* fix: improve error handling in fetch adapter by including request and response in AxiosError

* fix: skip fetch test if fetch is not supported

* Update lib/adapters/fetch.js

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* fix: improve error handling in fetch adapter by using the correct request object

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-02-04 09:47:12 +02:00
techcodie
f8694341de
docs: refresh CDN URLs and example JSON headers (#7236)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-12-30 13:30:43 +02:00
Nandan Acharya
e0a120620e
test: add Node unit tests for toFormData and refactor buildURL to avoid param reassignment (#7272)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-12-08 08:22:30 +02:00
Justin Dhillon
4d06112452
style: turn '()=>' into '() =>' (#6324)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-11-12 21:49:37 +02:00
Gabriel Quaresma
6ef867e684
fix: unclear error message is thrown when specifying an empty proxy authorization (#6314)
* fix: add AxiosError to Invalid proxy authorization

* fix: minor update

* Update test/unit/adapters/http.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: remove redundant check

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: code style

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: style

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: correct assert

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: João Gabriel Quaresma de Almeida <joaoGabriel55>
Co-authored-by: Jay <jasonsaayman@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-12 21:04:39 +02:00
Dmitriy Mozgovoy
8d372335f5
fix(http): fix 'socket hang up' bug for keep-alive requests when using timeouts; (#7206) 2025-11-04 01:08:35 +02:00
Dmitriy Mozgovoy
bcd5581d20
fix(http): fixed a regression that caused the data stream to be interrupted for responses with non-OK HTTP statuses; (#7193) 2025-10-28 20:44:08 +02:00
Dmitriy Mozgovoy
d000fbfd07
fix(http2): fix possible race condition when handling http2 stream on almost timed out session by improving timeout out algorithm; (#7186) 2025-10-27 00:46:40 +02:00
Dmitriy Mozgovoy
d676df7722
feat(http): add HTTP2 support; (#7150) 2025-10-19 15:06:36 +03:00
Kian-Meng Ang
54a1fcc1b6
docs: fix typos (#7046)
Found via `typos --hidden --format brief`
2025-09-19 15:01:16 +02:00
Dmitriy Mozgovoy
cf78825e12
fix(fetch): use current global fetch instead of cached one when env fetch is not specified to keep MSW support; (#7030) 2025-09-13 23:24:16 +03:00
Ameer Assadi
945435fc51
fix(node): enforce maxContentLength for data: URLs (#7011)
* fix(node): enforce maxContentLength for data: URLs (pre-decode size check)- CVE-2025-58754

* feat(utils): add estimateDataURLDecodedBytes helper and fix duplicate condition in base64 padding check

* feat: add estimateDataURLDecodedBytes helper with tests
2025-09-10 15:08:43 +02:00
Dmitriy Mozgovoy
c959ff2901
feat(fetch): add fetch, Request, Response env config variables for the adapter; (#7003)
* feat(fetch): add fetch, Request, Response env config variables for the adapter;

* feat(fetch): fixed design issue for environments without fetch API globals;
2025-08-30 22:02:24 +03:00
Emiedonmokumo Dick-Boro
a9f47afbf3
fix(fetch-adapter): set correct Content-Type for Node FormData (#6998)
* fix(fetch-adapter): set correct Content-Type for Node FormData

* Update lib/helpers/resolveConfig.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* test(fetch): replace chai expect with Node assert

* fix: define formHeaders for FormData to resolve no-undef error

* fix: filter headers to only update the target headers

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-08-25 20:46:53 +02:00
Willian Agostini
2a9763426e
feat: support reviver on JSON.parse (#5926)
* test: test to support reviver on JSON.parse

* feat: support reviver for JSON.parse on parse response data

#5924

---------

Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-08-12 09:34:42 +02:00
khani
78b290c57c
feat(adapter): surface low‑level network error details; attach original error via cause (#6982)
* feat(adapter): surface low‑level network error details; attach original error via `cause`

Node http adapter:
- Promote low-level `err.code` to `AxiosError.code`, prefixing message (e.g. `ECONNREFUSED – …`)
- Keep original error on standard `Error.cause`

XHR adapter:
- Preserve browser `ProgressEvent` on `error.event`
- Use event message when available

Tests:
- Add Node ESM tests under `test/unit/adapters` to assert `code` and `cause` behavior

Types:
- Ensure `AxiosError.cause?: unknown` and `event?: ProgressEvent` are present

* fix(adapter): use fs instead of fs/promises for sync file read in tests to fix GitHub Actions
2025-07-30 09:57:27 +02:00
Manish Sahani
a2214ca1bc
fix: prevent RangeError when using large Buffers (#6961) 2025-07-15 20:18:24 +02:00
Dmitriy Mozgovoy
f7a3b5e0f7
fix(headers): fixed support for setting multiple header values from an iterated source; (#6885) 2025-04-23 19:24:08 +03:00
Dmitriy Mozgovoy
6c5d4cd692
fix(core): fix the Axios constructor implementation to treat the config argument as optional; (#6881) 2025-04-18 02:22:31 +03:00
Dmitriy Mozgovoy
1b1f9ccdc1
fix(headers): allow iterable objects to be a data source for the set method; (#6873) 2025-04-14 21:55:27 +03:00
Willian Agostini
80ea756e72
feat(AxiosHeaders): add getSetCookie method to retrieve set-cookie headers values (#5707)
* feat(AxiosHeaders): add getSetCookie method to retrieve set-cookie header values

* refactor(AxiosHeaders.js): use logical OR instead of nullish coalescing operator in getSetCookie method

---------

Co-authored-by: Willian Agostini <willian.agostini@gmail.com.br>
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-03-25 21:30:23 +02:00
Dmitriy Mozgovoy
36a5a620be
fix(utils): move generateString to platform utils to avoid importing crypto module into client builds; (#6789)
* chore(ci): Add release-it script;

* fix(utils): move generateString util to platform utils to avoid importing crypto module into client build;

---------

Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-02-26 10:30:55 +02:00
Willian Agostini
23a25af068
fix(utils): replace getRandomValues with crypto module (#6788) 2025-02-18 14:36:51 +02:00
Taylor Flatt
cc3217a612
fix: updated stream aborted error message to be more clear (#6615) 2024-09-28 13:04:22 +02:00
Rishi556
364993f0d8
fix(http): fixed support for IPv6 literal strings in url (#5731) 2024-09-01 00:47:25 +03:00
Dmitriy Mozgovoy
df9889b83c
fix(fetch): optimize signals composing logic; (#6582) 2024-08-30 21:26:12 +03:00
Antonin Bas
7004707c41
fix(adapter): fix undefined reference to hasBrowserEnv (#6572) 2024-08-23 15:23:14 +03:00
Lev Pachmanov
6b6b605eaf
fix(sec): CVE-2024-39338 (#6539) (#6543)
* fix(sec): cve-2024-39338 (#6539)

* fix(sec): fix test
2024-08-13 20:43:05 +02:00
Đỗ Trọng Hải
07a661a2a6
fix(sec): disregard protocol-relative URL to remediate SSRF (#6539)
* fix(sec): disregard protocol-relative URL to remediate SSRF

Signed-off-by: hainenber <dotronghai96@gmail.com>

* feat(test/unit/regression): add regression test to ensure SNYK-JS-AXIOS-7361793 fixed in future version

Signed-off-by: hainenber <dotronghai96@gmail.com>

* chore: add EoF newline + comments

Signed-off-by: hainenber <dotronghai96@gmail.com>

* chore: fix eslint issues

Signed-off-by: hainenber <dotronghai96@gmail.com>

* Update SNYK-JS-AXIOS-7361793.js

Co-authored-by: tom-reinders <tom-reinders@users.noreply.github.com>

---------

Signed-off-by: hainenber <dotronghai96@gmail.com>
Co-authored-by: tom-reinders <tom-reinders@users.noreply.github.com>
2024-08-13 17:03:25 +02:00
Dmitriy Mozgovoy
e3c76fc9bd
fix(adapter): fix progress event emitting; (#6518) 2024-08-01 16:59:58 +03:00
Dmitriy Mozgovoy
870e0a76f6
fix(fetch): fix headers getting from a stream response; (#6401) 2024-05-19 01:40:21 +03:00
Dmitriy Mozgovoy
bb5f9a5ab7
fix(fetch): treat fetch-related TypeError as an AxiosError.ERR_NETWORK error; (#6380) 2024-05-07 21:26:46 +03:00
Alexandre ABRIOUX
81e0455b7b
fix(core/axios): handle un-writable error stack (#6362)
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2024-05-07 20:57:03 +03:00
Dmitriy Mozgovoy
a3ff99b59d
feat(adapter): add fetch adapter; (#6371) 2024-04-28 22:33:49 +03:00
Dmitriy Mozgovoy
1a08f90f40
fix: capture async stack only for rejections with native error objects; (#6203) 2024-01-25 20:42:38 +02:00
Zao Soula
a1938ff073
fix: fixed missed dispatchBeforeRedirect argument (#5778)
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2024-01-25 00:57:06 +02:00
Ilya Priven
123f354b92
fix: wrap errors to improve async stack trace (#5987) 2024-01-25 00:21:12 +02:00
Dmitriy Mozgovoy
f4f2b039dd
fix(dns): fixed lookup error handling; (#6175) 2024-01-05 01:48:07 +02:00
Guy Nesher
75af1cdff5
fix(security): fixed security vulnerability in follow-redirects (#6163)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2024-01-03 21:32:50 +02:00
Dmitriy Mozgovoy
7d45ab2e2a
chore(tests): fixed tests to pass in node v19 and v20 with keep-alive enabled; (#6021) 2023-10-22 18:20:44 +03:00