Commit Graph

184 Commits

Author SHA1 Message Date
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
Subhan Kumar Rai
d7e6065346
fix(http2): Use port 443 for HTTPS connections by default. (#7256)
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2025-12-19 02:22:38 +02:00
KT0803
8092aee724
chore: remove TODO comment and dead code from http adapter error handler (#7229)
Remove commented-out code marked with @todo remove in the request error
handler. The code was already disabled and no longer needed.
2025-11-18 08:40:53 +02:00
Justin Dhillon
d5b76d4af7
style: get rid of redundency in imports (#6315)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2025-11-12 21:11:56 +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
12c314b603
perf(http): fix early loop exit; (#7202) 2025-11-04 00:43:10 +02:00
Kasper Isager Dalsgarð
0588880ac7
fix(http): use default export for http2 module to support stubs; (#7196) 2025-10-29 21:10:29 +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
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
Fasoro-Joseph Alexander
fb8eec214c
fix(http-adapter): add allowAbsoluteUrls to path building (#6810)
Co-authored-by: alex-paystack <alex@paystack.com>
2025-03-07 09:30:30 +02:00
Pavan Welihinda
12b32957f1
fix(http): fixed proxy-from-env module import (#5222)
Co-authored-by: Pavan Welihinda <pavan@babyjourney.se>
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2024-11-07 21:12:02 +02:00
Henco Appel
6841d8d18d
fix(http): add support for File objects as payload in http adapter (#6588) (#6605)
Co-authored-by: Hendrik Appel <happel@europe.altair.com>
Co-authored-by: Jay <jasonsaayman@gmail.com>
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2024-10-13 20:43:40 +03: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
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
Dmitriy Mozgovoy
e3c76fc9bd
fix(adapter): fix progress event emitting; (#6518) 2024-08-01 16:59:58 +03:00
Aditya Mogili
7320430aef
fix(import): use named export for EventEmitter;
Co-authored-by: Dmitriy Mozgovoy <robotshara@gmail.com>
2024-03-15 18:05:34 +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
Dmitriy Mozgovoy
f4f2b039dd
fix(dns): fixed lookup error handling; (#6175) 2024-01-05 01:48:07 +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
Dmitriy Mozgovoy
5aaff532a6
fix(dns): fixed lookup function decorator to work properly in node v20; (#6011) 2023-10-22 17:12:33 +03:00
Przemyslaw Motacki
4c89f25196
fix(headers): allow content-encoding header to handle case-insensitive values (#5890) (#5892) 2023-09-12 15:23:03 +03:00
Mustafa Ateş Uzun
a989ccdc1a
Change isNaN to Number.isNaN
* Change isNaN to Number.isNaN

* == to ===

---------

Co-authored-by: Jay <jasonsaayman@gmail.com>
2023-08-30 20:47:01 +02:00
Dmitriy Mozgovoy
b3e327dcc9
fix(dns): fixed cacheable-lookup integration; (#5836) 2023-08-26 18:51:09 +03:00
Dmitriy Mozgovoy
2701911260
feat(dns): added support for a custom lookup function; (#5339) 2023-04-26 02:04:59 +03:00
Dmitriy Mozgovoy
a3b246c9de
fix(http): fixed regression bug when handling synchronous errors inside the adapter; (#5564) 2023-02-22 21:50:31 +02:00
Dmitriy Mozgovoy
c19f7bf770
fix(formdata): fixed setting NaN as Content-Length for form payload in some cases; (#5535) 2023-02-11 16:34:51 +02:00
Dmitriy Mozgovoy
128d56f4a0
fix(http): treat http://localhost as base URL for relative paths to avoid ERR_INVALID_URL error; (#5528) 2023-02-03 19:02:50 +02:00
Dmitriy Mozgovoy
96d336f527
fix(formdata): add hotfix to use the asynchronous API to compute the content-length header value; (#5521) 2023-02-02 00:55:05 +02:00
Dmitriy Mozgovoy
6ac574e00a
feat(fomdata): added support for spec-compliant FormData & Blob types; (#5316) 2023-01-31 01:10:39 +02:00
ItsNotGoodName
65e8d1e28c
fix(http): add zlib headers if missing (#5497) 2023-01-31 00:49:37 +02:00
Dmitriy Mozgovoy
1e58a659ec
fix: fixed Brotli decompression; (#5353)
test: added decompression tests;
fix: added legacy `x-gzip` & `x-compress` encoding types;
2022-12-07 20:57:02 +02:00
Dmitriy Mozgovoy
9041c7d272
Fixed decompression for responses without Content-Length header (#5306)
* Fixed decompression for responses without `content-length` header;

* Add Brotli encoding to the `Accept-Encoding` header only if it is supported.

* `content-length` header transformation moved up;

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-12-01 16:22:20 +02:00
Dmitriy Mozgovoy
d032edda08
Refactored adapters loader; (#5277)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-11-22 20:53:56 +02:00
Dmitriy Mozgovoy
a3d901777b
Fixed Z_BUF_ERROR when content-encoding is set but the response body is empty; (#5250)
Fixed download progress capturing for compressed responses;

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-11-22 20:49:26 +02:00
Dmitriy Mozgovoy
ab77a40e1c
Fixed & Imporoved AxiosHeaders class (#5224)
* Refactored AxiosHeaders class;

* Added support for instances of AxiosHeaders as a value for the headers option;

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-11-07 21:11:42 +02:00
Patrick Petrovic
717f476b0f
fix: restore proxy config backwards compatibility with 0.x (#5097)
* fix: restore proxy config backwards compatibility with 0.x

* Formatting

Co-authored-by: Patrick Petrovic <patrick@Air-de-Patrick.lan>
Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-10-13 21:55:20 +02:00
Dmitriy Mozgovoy
3e4d52171e
Fixed query params composing; (#5018)
* Fixes #4999;

* Added regression test;
2022-10-05 21:29:50 +02:00
felipedamin
738fa63661
Use WHATWG URL API instead of url.parse() (#4852)
* replace url.parse with new whatwg url api

* remove comments

* use const instead of var

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-09-14 21:40:08 +02:00
Bassel Rachid
242c1d9782
fix(adapters/http): remove repeated compression algorithm (#4820)
Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-09-14 21:28:09 +02:00
Dmitriy Mozgovoy
379fdebc46
Fixed a regression bug with unsubscribing from cancel token; (#4819)
Reverts #4795;

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-09-14 21:24:22 +02:00
Dmitriy Mozgovoy
bdf493cf8b
Axios ES2017 (#4787)
* Added AxiosHeaders class;

* Fixed README.md href;

* Fixed a potential bug with headers normalization;

* Fixed a potential bug with headers normalization;
Refactored accessor building routine;
Refactored default transforms;
Removed `normalizeHeaderName` helper;

* Added `Content-Length` accessor;
Added missed `has` accessor to TS types;

* Added `AxiosTransformStream` class;
Added progress capturing ability for node.js environment;
Added `maxRate` option to limit the data rate in node.js environment;
Refactored event handled by `onUploadProgress` && `onDownloadProgress` listeners in browser environment;
Added progress & data rate tests for the http adapter;
Added response stream aborting test;
Added a manual progress capture test for the browser;
Updated TS types;
Added TS tests;
Refactored request abort logic for the http adapter;
Added ability to abort the response stream;

* Remove `stream/promises` & `timers/promises` modules usage in tests;

* Use `abortcontroller-polyfill`;

* Fixed AxiosTransformStream dead-lock in legacy node versions;
Fixed CancelError emitting in streams;

* Reworked AxiosTransformStream internal logic to optimize memory consumption;
Added throwing an error if the request stream was silently destroying (without error) Refers to #3966;

* Treat the destruction of the request stream as a cancellation of the request;
Fixed tests;

* Emit `progress` event in the next tick;

* Initial refactoring;

* Refactored Mocha tests to use ESM;

* Refactored Karma tests to use rollup preprocessor & ESM;
Replaced grunt with gulp;
Improved dev scripts;
Added Babel for rollup build;

* Added default commonjs package export for Node build;
Added automatic contributors list generator for package.json;

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-06-18 11:19:27 +02:00
Jay
5db829d118
docs(adapters/http) 2022-06-02 20:57:16 +02:00
Victor Augusto
a11f9501b8
Fix/4737/timeout error message for http (#4738)
* Fixing timeoutErrorMessage in http calls

When timeoutErrorMessage was set this did not change anything in the error message, with this change the error message will be the configured message

* Testing timeoutErrorMessage in http calls

When timeoutErrorMessage was set this did not change anything in the error message, with this change the error message will be the configured message

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-05-28 11:46:33 +02:00
Dimitris Halatsis
e9c9f3392b
Fix/4263/maxbodylength defaults (#4731)
* test(http): add test case for default body length in follow-redirects

* fix(http): provide proper default body length to follow-redirects

Co-authored-by: Jay <jasonsaayman@gmail.com>
2022-05-20 08:27:37 +02:00
Dmitriy Mozgovoy
c30252f685
Added data URL support for node.js; (#4725)
* Added data URL support for node.js;
Added missed data URL protocol for the browser environment;
Optimized JSON parsing in the default response transformer;
Refactored project structure;
Added `cause` prop for AxiosError instance that refers to the original error if it was wrapped with `AxiosError.from` method;
Added fromDataURI helper;
Added test for handling data:url as an `arraybuffer|text|stream`;

* Added throwing of 405 HTTP error if the method is not GET;
2022-05-20 08:04:36 +02:00