From e2445bf5858c72c42508365ee2211f80161034ab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 Nov 2023 22:30:48 +0000 Subject: [PATCH 1/2] chore(deps): bump axios from 0.24.0 to 1.6.0 Bumps [axios](https://github.com/axios/axios) from 0.24.0 to 1.6.0. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v0.24.0...v1.6.0) --- updated-dependencies: - dependency-name: axios dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- packages/backend/package.json | 2 +- yarn.lock | 34 ++++++++++++++++++---------------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/packages/backend/package.json b/packages/backend/package.json index 922a05a4..f645d548 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -38,7 +38,7 @@ "@types/xmlrpc": "^1.3.7", "accounting": "^0.4.1", "ajv-formats": "^2.1.1", - "axios": "0.24.0", + "axios": "1.6.0", "bcrypt": "^5.0.1", "bullmq": "^3.0.0", "copyfiles": "^2.4.1", diff --git a/yarn.lock b/yarn.lock index ad348ed2..6ed7c31f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6054,13 +6054,6 @@ axios-retry@^3.2.4: "@babel/runtime" "^7.15.4" is-retry-allowed "^2.2.0" -axios@0.24.0: - version "0.24.0" - resolved "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz" - integrity sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA== - dependencies: - follow-redirects "^1.14.4" - axios@0.26.0: version "0.26.0" resolved "https://registry.npmjs.org/axios/-/axios-0.26.0.tgz" @@ -6068,6 +6061,15 @@ axios@0.26.0: dependencies: follow-redirects "^1.14.8" +axios@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.0.tgz#f1e5292f26b2fd5c2e66876adc5b06cdbd7d2102" + integrity sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + axobject-query@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz" @@ -9580,15 +9582,10 @@ fn.name@1.x.x: resolved "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz" integrity sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw== -follow-redirects@^1.0.0, follow-redirects@^1.14.4: - version "1.14.8" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz" - integrity sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA== - -follow-redirects@^1.14.8: - version "1.14.9" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz" - integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== +follow-redirects@^1.0.0, follow-redirects@^1.14.8, follow-redirects@^1.15.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== forever-agent@~0.6.1: version "0.6.1" @@ -15289,6 +15286,11 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" From b8a44afd256a012a5d2bc6b34770c4e05e1ce62a Mon Sep 17 00:00:00 2001 From: Ali BARIN Date: Mon, 13 Nov 2023 16:13:01 +0000 Subject: [PATCH 2/2] refactor: re-type interceptors for axios@1.6.0 --- .../backend/src/helpers/http-client/index.ts | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/backend/src/helpers/http-client/index.ts b/packages/backend/src/helpers/http-client/index.ts index c8db2a72..741782f5 100644 --- a/packages/backend/src/helpers/http-client/index.ts +++ b/packages/backend/src/helpers/http-client/index.ts @@ -1,5 +1,5 @@ import { IHttpClientParams } from '@automatisch/types'; -import { AxiosRequestConfig } from 'axios'; +import { InternalAxiosRequestConfig } from 'axios'; import { URL } from 'node:url'; export { AxiosInstance as IHttpClient } from 'axios'; @@ -7,8 +7,8 @@ import HttpError from '../../errors/http'; import axios from '../axios-with-proxy'; const removeBaseUrlForAbsoluteUrls = ( - requestConfig: AxiosRequestConfig -): AxiosRequestConfig => { + requestConfig: InternalAxiosRequestConfig +): InternalAxiosRequestConfig => { try { const url = new URL(requestConfig.url); requestConfig.baseURL = url.origin; @@ -30,12 +30,21 @@ export default function createHttpClient({ }); instance.interceptors.request.use( - (requestConfig: AxiosRequestConfig): AxiosRequestConfig => { + (requestConfig: InternalAxiosRequestConfig): InternalAxiosRequestConfig => { const newRequestConfig = removeBaseUrlForAbsoluteUrls(requestConfig); - return beforeRequest.reduce((newConfig, beforeRequestFunc) => { + const result = beforeRequest.reduce((newConfig, beforeRequestFunc) => { return beforeRequestFunc($, newConfig); }, newRequestConfig); + + /** + * axios seems to want InternalAxiosRequestConfig returned not AxioRequestConfig + * anymore even though requests do require AxiosRequestConfig. + * + * Since both interfaces are very similar (InternalAxiosRequestConfig + * extends AxiosRequestConfig), we can utilize an assertion below + **/ + return result as InternalAxiosRequestConfig; } );