selling-partner-api-sdk icon indicating copy to clipboard operation
selling-partner-api-sdk copied to clipboard

fix(deps): update dependency axios to v1

Open renovate[bot] opened this issue 2 years ago • 5 comments

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
axios (source) 0.27.2 -> 1.1.3 age adoption passing confidence

Release Notes

axios/axios

v1.1.3

Compare Source

Added
  • Added custom params serializer support #​5113
Fixed
  • Fixed top-level export to keep them in-line with static properties #​5109
  • Stopped including null values to query string. #​5108
  • Restored proxy config backwards compatibility with 0.x #​5097
  • Added back AxiosHeaders in AxiosHeaderValue #​5103
  • Pin CDN install instructions to a specific version #​5060
  • Handling of array values fixed for AxiosHeaders #​5085
Chores
  • docs: match badge style, add link to them #​5046
  • chore: fixing comments typo #​5054
  • chore: update issue template #​5061
  • chore: added progress capturing section to the docs; #​5084
Contributors to this release

v1.1.2

Compare Source

Fixed
  • Fixed broken exports for UMD builds.
Contributors to this release

v1.1.1

Compare Source

Fixed
  • Fixed broken exports for common js. This fix breaks a prior fix, I will fix both issues ASAP but the commonJS use is more impactful.
Contributors to this release

v1.1.0

Compare Source

Fixed
  • Fixed missing exports in type definition index.d.ts #​5003
  • Fixed query params composing #​5018
  • Fixed GenericAbortSignal interface by making it more generic #​5021
  • Fixed adding "clear" to AxiosInterceptorManager #​5010
  • Fixed commonjs & umd exports #​5030
  • Fixed inability to access response headers when using axios 1.x with Jest #​5036
Contributors to this release

v1.0.0

Compare Source

Added
  • Added stack trace to AxiosError #​4624
  • Add AxiosError to AxiosStatic #​4654
  • Replaced Rollup as our build runner #​4596
  • Added generic TS types for the exposed toFormData helper #​4668
  • Added listen callback function #​4096
  • Added instructions for installing using PNPM #​4207
  • Added generic AxiosAbortSignal TS interface to avoid importing AbortController polyfill #​4229
  • Added axios-url-template in ECOSYSTEM.md #​4238
  • Added a clear() function to the request and response interceptors object so a user can ensure that all interceptors have been removed from an axios instance #​4248
  • Added react hook plugin #​4319
  • Adding HTTP status code for transformResponse #​4580
  • Added blob to the list of protocols supported by the browser #​4678
  • Resolving proxy from env on redirect #​4436
  • Added enhanced toFormData implementation with additional options 4704
  • Adding Canceler parameters config and request #​4711
  • Added automatic payload serialization to application/x-www-form-urlencoded #​4714
  • Added the ability for webpack users to overwrite built-ins #​4715
  • Added string[] to AxiosRequestHeaders type #​4322
  • Added the ability for the url-encoded-form serializer to respect the formSerializer config #​4721
  • Added isCancel type assert #​4293
  • Added data URL support for node.js #​4725
  • Adding types for progress event callbacks #​4675
  • URL params serializer #​4734
  • Added axios.formToJSON method #​4735
  • Bower platform add data protocol #​4804
  • Use WHATWG URL API instead of url.parse() #​4852
  • Add ENUM containing Http Status Codes to typings #​4903
  • Improve typing of timeout in index.d.ts #​4934
Changed
  • Updated AxiosError.config to be optional in the type definition #​4665
  • Updated README emphasizing the URLSearchParam built-in interface over other solutions #​4590
  • Include request and config when creating a CanceledError instance #​4659
  • Changed func-names eslint rule to as-needed #​4492
  • Replacing deprecated substr() with slice() as substr() is deprecated #​4468
  • Updating HTTP links in README.md to use HTTPS #​4387
  • Updated to a better trim() polyfill #​4072
  • Updated types to allow specifying partial default headers on instance create #​4185
  • Expanded isAxiosError types #​4344
  • Updated type definition for axios instance methods #​4224
  • Updated eslint config #​4722
  • Updated Docs #​4742
  • Refactored Axios to use ES2017 #​4787
Deprecated
  • There are multiple deprecations, refactors and fixes provided in this release. Please read through the full release notes to see how this may impact your project and use case.
Removed
  • Removed incorrect argument for NetworkError constructor #​4656
  • Removed Webpack #​4596
  • Removed function that transform arguments to array #​4544
Fixed
  • Fixed grammar in README #​4649
  • Fixed code error in README #​4599
  • Optimized the code that checks cancellation #​4587
  • Fix url pointing to defaults.js in README #​4532
  • Use type alias instead of interface for AxiosPromise #​4505
  • Fix some word spelling and lint style in code comments #​4500
  • Edited readme with 3 updated browser icons of Chrome, FireFox and Safari #​4414
  • Bump follow-redirects from 1.14.9 to 1.15.0 #​4673
  • Fixing http tests to avoid hanging when assertions fail #​4435
  • Fix TS definition for AxiosRequestTransformer #​4201
  • Fix grammatical issues in README #​4232
  • Fixing instance.defaults.headers type #​4557
  • Fixed race condition on immediate requests cancellation #​4261
  • Fixing Z_BUF_ERROR when no content #​4701
  • Fixing proxy beforeRedirect regression #​4708
  • Fixed AxiosError status code type #​4717
  • Fixed AxiosError stack capturing #​4718
  • Fixing AxiosRequestHeaders typings #​4334
  • Fixed max body length defaults #​4731
  • Fixed toFormData Blob issue on node>v17 #​4728
  • Bump grunt from 1.5.2 to 1.5.3 #​4743
  • Fixing content-type header repeated #​4745
  • Fixed timeout error message for http 4738
  • Request ignores false, 0 and empty string as body values #​4785
  • Added back missing minified builds #​4805
  • Fixed a type error #​4815
  • Fixed a regression bug with unsubscribing from cancel token; #​4819
  • Remove repeated compression algorithm #​4820
  • The error of calling extend to pass parameters #​4857
  • SerializerOptions.indexes allows boolean | null | undefined #​4862
  • Require interceptors to return values #​4874
  • Removed unused imports #​4949
  • Allow null indexes on formSerializer and paramsSerializer #​4960
Chores
  • Set permissions for GitHub actions #​4765
  • Included githubactions in the dependabot config #​4770
  • Included dependency review #​4771
  • Update security.md #​4784
  • Remove unnecessary spaces #​4854
  • Simplify the import path of AxiosError #​4875
  • Fix Gitpod dead link #​4941
  • Enable syntax highlighting for a code block #​4970
  • Using Logo Axios in Readme.md #​4993
  • Fix markup for note in README #​4825
  • Fix typo and formatting, add colons #​4853
  • Fix typo in readme #​4942
Security
Contributors to this release

Configuration

📅 Schedule: Branch creation - "every weekday" in timezone Etc/UTC, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

renovate[bot] avatar Oct 04 '22 20:10 renovate[bot]

There was an issue with new Axios version here: https://github.com/axios/axios/issues/5026

nguyentoanit avatar Oct 07 '22 06:10 nguyentoanit

Gave it a try with transformIgnorePatterns: ['/node_modules/(?!(axios)/)'],. But the issue was not resolved.

nguyentoanit avatar Oct 07 '22 06:10 nguyentoanit

@moltar :

Test suite failed to run

    Cannot find module 'axios/lib/helpers/buildURL' from 'node_modules/aws4-axios/dist/interceptor.js'

    Require stack:
      node_modules/aws4-axios/dist/interceptor.js
      node_modules/aws4-axios/dist/index.js
      src/helpers/api-client-helpers.ts
      src/helpers/index.ts
      src/api-clients/aplus-content-api-client.ts
      src/api-clients/index.ts
      src/index.ts
      test/types/errors/errors.test.ts

    > 1 | import { aws4Interceptor } from 'aws4-axios'
        | ^
      2 | import globalAxios, { AxiosError, AxiosInstance, AxiosResponse } from 'axios'
      3 |
      4 | import { USER_AGENT } from '../constants'

      at Resolver._throwModNotFoundError (node_modules/jest-resolve/build/resolver.js:487:11)
      at Object.<anonymous> (node_modules/aws4-axios/dist/interceptor.js:55:34)
      at Object.<anonymous> (node_modules/aws4-axios/dist/index.js:4:21)
      at Object.<anonymous> (src/helpers/api-client-helpers.ts:1:1)
      at Object.<anonymous> (src/helpers/index.ts:1:1)
      at Object.<anonymous> (src/api-clients/aplus-content-api-client.ts:2:1)
      at Object.<anonymous> (src/api-clients/index.ts:1:1)
      at Object.<anonymous> (src/index.ts:1:1)
      at Object.<anonymous> (test/types/errors/errors.test.ts:11:1)

I think aws4-axios imported a js file without declaration here. And this caused above error.

I added a declaration file: axios.d.ts

declare module 'axios/lib/helpers/buildURL' {
  // eslint-disable-next-line @typescript-eslint/ban-types, unicorn/prevent-abbreviations
  function buildURL(url: string, params: object, options?: object): string
}

But they were not resolved. Any suggestion?

nguyentoanit avatar Oct 07 '22 08:10 nguyentoanit

We can wait for aws4-axios to upgrade to axios@1 and then resolve this. There is no urgency with this PR :)

moltar avatar Oct 07 '22 10:10 moltar

Wait for aws-axios to upgrade here.

nguyentoanit avatar Nov 02 '22 01:11 nguyentoanit

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

renovate[bot] avatar May 08 '23 03:05 renovate[bot]

Codecov Report

Patch and project coverage have no change.

Comparison is base (9a09649) 57.76% compared to head (e7d8af0) 57.76%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #587   +/-   ##
=======================================
  Coverage   57.76%   57.76%           
=======================================
  Files          63       63           
  Lines         573      573           
  Branches       32       32           
=======================================
  Hits          331      331           
  Misses        237      237           
  Partials        5        5           
Impacted Files Coverage Δ
src/helpers/api-client-helpers.ts 63.88% <ø> (ø)
src/types/errors/selling-partner-api-errors.ts 45.83% <ø> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov-commenter avatar May 08 '23 03:05 codecov-commenter

@moltar : Finally, A new version aws4-axios was released which is compatible with axios v1. 🚀 Should we consider this PR is a breaking change? Because, we will need to upgrade to axios v1 in downstream repositories.

nguyentoanit avatar May 08 '23 03:05 nguyentoanit