* Refactored AxiosHeaders class;
* Added support for instances of AxiosHeaders as a value for the headers option;
Co-authored-by: Jay <jasonsaayman@gmail.com>
* 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>
* Adding HTTP status code for transformResponse
* refs #1214
* Fix wrong argument for tranformResponse
* Fix test wrong argument for tranformData
* Add test case for transformData
* Add test case for transformData (reference headers case)
Co-authored-by: Jay <jasonsaayman@gmail.com>
Refactored `Cancel` to a constructor, a subclass of the `AxiosError`;
Expose CanceledError class;
Refactored axios error codes;
Added `toFlatObject` util;
* Adding HTTP status code to error.toJSON (axios#2947)
* Adding Error display div to internal server client.html
Co-authored-by: Jay <jasonsaayman@gmail.com>
* Adding failing test
* Fixing #2587 default custom config persisting
* Adding Concat keys and filter duplicates
* Fixed value from CPE
* update for review feedbacks
* no deepMerge
* only merge between plain objects
* fix rename
* always merge config by mergeConfig
* extract function mergeDeepProperties
* refactor mergeConfig with all keys, and add special logic for validateStatus
* add test for resetting headers
* add lots of tests and fix a bug
* should not inherit `data`
* use simple toString
* revert #1845
Co-authored-by: David Tanner <david.tanner@lifeomic.com>
Co-authored-by: Justin Beckwith <justin.beckwith@gmail.com>
* Name function to avoid ESLint func-names warning
* Switch params config to merge list and update tests
* Restore testing of both false and null
* Restore test cases for keys without defaults
* Include test for non-object values that aren't false-y.
* Adding tests to show config.url mutation
Because config.url is modified while processing the request
when the baseURL is set,
it is impossible to perform a retry with the provided config object.
Ref #1628
* Fixing url combining without modifying config.url
As config.url is not modified anymore during the request processing.
The request can safely be retried after it failed with the provided
config.
resolves#1628