From 8a8360f1355fdd86dc893bca0870883ef77a42ef Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 27 Feb 2023 01:52:25 +0000 Subject: [PATCH 1/6] fix(deps): update dependency axios-case-converter to v1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ed4cae4..d6695d3 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "axios": "^0.27.0", - "axios-case-converter": "^0.11.0", + "axios-case-converter": "^1.0.0", "axios-retry": "^3.1.9", "runtypes": "^6.5.0", "ts-custom-error": "^3.2.0", From 156f9cadeebc3cdbf610eabcd577952facb0881d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Nov 2022 11:29:30 +0000 Subject: [PATCH 2/6] fix(deps): update dependency axios to v1 --- package-lock.json | 34 +++++++++++++++++++++++----------- package.json | 2 +- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index 670c024..31e94dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.1", "license": "MIT", "dependencies": { - "axios": "^0.27.0", + "axios": "^1.0.0", "axios-case-converter": "^0.11.0", "axios-retry": "^3.1.9", "runtypes": "^6.5.0", @@ -2101,12 +2101,13 @@ } }, "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz", + "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==", "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "node_modules/axios-case-converter": { @@ -6559,6 +6560,11 @@ "dev": true, "peer": true }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -9599,12 +9605,13 @@ "dev": true }, "axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz", + "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==", "requires": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "axios-case-converter": { @@ -12935,6 +12942,11 @@ } } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", diff --git a/package.json b/package.json index c1b2f97..a349af3 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "prepare": "npm run build" }, "dependencies": { - "axios": "^0.27.0", + "axios": "^1.0.0", "axios-case-converter": "^0.11.0", "axios-retry": "^3.1.9", "runtypes": "^6.5.0", From fa8e7dc6b48170cd74eda26bee18a7e2f8c6c381 Mon Sep 17 00:00:00 2001 From: Scott Lovegrove Date: Wed, 17 Jan 2024 14:02:41 +0000 Subject: [PATCH 3/6] chore: Remove axios types dependency --- .nvmrc | 2 +- package-lock.json | 20 -------------------- package.json | 1 - 3 files changed, 1 insertion(+), 22 deletions(-) diff --git a/.nvmrc b/.nvmrc index 6bfa05c..8ec90ff 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1,2 +1,2 @@ -v16 +v18 @doist:registry=https://npm.pkg.github.com/ diff --git a/package-lock.json b/package-lock.json index 31e94dd..0d9c88e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,6 @@ "devDependencies": { "@doist/eslint-config": "8.1.3", "@doist/prettier-config": "3.0.5", - "@types/axios": "0.14.0", "@types/jest": "29.4.0", "@types/uuid": "8.3.4", "@typescript-eslint/eslint-plugin": "5.54.1", @@ -1306,16 +1305,6 @@ "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==", "dev": true }, - "node_modules/@types/axios": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@types/axios/-/axios-0.14.0.tgz", - "integrity": "sha1-7CMA++fX3d1+udOr+HmZlkyvzkY=", - "deprecated": "This is a stub types definition for axios (https://github.com/mzabriskie/axios). axios provides its own type definitions, so you don't need @types/axios installed!", - "dev": true, - "dependencies": { - "axios": "*" - } - }, "node_modules/@types/babel__core": { "version": "7.20.0", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", @@ -8963,15 +8952,6 @@ "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==", "dev": true }, - "@types/axios": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@types/axios/-/axios-0.14.0.tgz", - "integrity": "sha1-7CMA++fX3d1+udOr+HmZlkyvzkY=", - "dev": true, - "requires": { - "axios": "*" - } - }, "@types/babel__core": { "version": "7.20.0", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", diff --git a/package.json b/package.json index a349af3..5b1cb13 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,6 @@ "devDependencies": { "@doist/eslint-config": "8.1.3", "@doist/prettier-config": "3.0.5", - "@types/axios": "0.14.0", "@types/jest": "29.4.0", "@types/uuid": "8.3.4", "@typescript-eslint/eslint-plugin": "5.54.1", From 3f43f61a73f7318af34baf79ff7426626baf18e7 Mon Sep 17 00:00:00 2001 From: Scott Lovegrove Date: Wed, 17 Jan 2024 14:14:31 +0000 Subject: [PATCH 4/6] chore: Update types for v1 axios --- package-lock.json | 16 ++++++++-------- src/restClient.ts | 5 ++++- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0d9c88e..344a804 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "dependencies": { "axios": "^1.0.0", - "axios-case-converter": "^0.11.0", + "axios-case-converter": "^1.0.0", "axios-retry": "^3.1.9", "runtypes": "^6.5.0", "ts-custom-error": "^3.2.0", @@ -2100,9 +2100,9 @@ } }, "node_modules/axios-case-converter": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/axios-case-converter/-/axios-case-converter-0.11.1.tgz", - "integrity": "sha512-i5hrkBg7SE9jsm2Q+ClznR5DsKcYXChH6Cc3Rhx2p4gdIfJwvvO5/ATcAg/vN2UVzGE2B1eR1O4VuEGkICdJdQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/axios-case-converter/-/axios-case-converter-1.1.0.tgz", + "integrity": "sha512-XmeffqomjVRhYRXQdw7FaeJhFUvsqt0oXMzfPDaZE1ibBkZ8zeAdgMYBGYlMegXUjpzg48pKZ+SLkz6RH2yYkA==", "dependencies": { "camel-case": "^4.1.1", "header-case": "^2.0.3", @@ -2110,7 +2110,7 @@ "tslib": "^2.3.0" }, "peerDependencies": { - "axios": ">=0.23.0 <2.0.0" + "axios": ">=1.0.0 <2.0.0" } }, "node_modules/axios-retry": { @@ -9595,9 +9595,9 @@ } }, "axios-case-converter": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/axios-case-converter/-/axios-case-converter-0.11.1.tgz", - "integrity": "sha512-i5hrkBg7SE9jsm2Q+ClznR5DsKcYXChH6Cc3Rhx2p4gdIfJwvvO5/ATcAg/vN2UVzGE2B1eR1O4VuEGkICdJdQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/axios-case-converter/-/axios-case-converter-1.1.0.tgz", + "integrity": "sha512-XmeffqomjVRhYRXQdw7FaeJhFUvsqt0oXMzfPDaZE1ibBkZ8zeAdgMYBGYlMegXUjpzg48pKZ+SLkz6RH2yYkA==", "requires": { "camel-case": "^4.1.1", "header-case": "^2.0.3", diff --git a/src/restClient.ts b/src/restClient.ts index ac836eb..9312508 100644 --- a/src/restClient.ts +++ b/src/restClient.ts @@ -1,3 +1,4 @@ +// eslint-disable-next-line import/no-named-as-default import Axios, { AxiosResponse, AxiosError } from 'axios' import applyCaseMiddleware from 'axios-case-converter' import { TodoistRequestError } from './types/errors' @@ -105,7 +106,9 @@ export async function request( case 'GET': return await axiosClient.get(relativePath, { params: payload, - paramsSerializer, + paramsSerializer: { + serialize: paramsSerializer, + }, }) case 'POST': return await axiosClient.post(relativePath, payload) From d10c88442eaf88c403c5c3795298abfde16ab0cb Mon Sep 17 00:00:00 2001 From: Scott Lovegrove Date: Wed, 17 Jan 2024 14:16:58 +0000 Subject: [PATCH 5/6] chore: Lint fix --- src/restClient.test.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/restClient.test.ts b/src/restClient.test.ts index fcc87a3..5582a32 100644 --- a/src/restClient.test.ts +++ b/src/restClient.test.ts @@ -1,3 +1,4 @@ +// eslint-disable-next-line import/no-named-as-default import Axios, { AxiosStatic, AxiosResponse, AxiosError } from 'axios' import { request, isSuccess, paramsSerializer } from './restClient' import { TodoistRequestError } from './types/errors' From 18a58061e0c5bb0d1c8f488fdc3e1d15b9b2974d Mon Sep 17 00:00:00 2001 From: Scott Lovegrove Date: Wed, 17 Jan 2024 14:19:08 +0000 Subject: [PATCH 6/6] test: Fixes tests --- src/restClient.axios.test.ts | 4 +++- src/restClient.test.ts | 8 ++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/restClient.axios.test.ts b/src/restClient.axios.test.ts index 5cb1a2a..35897dd 100644 --- a/src/restClient.axios.test.ts +++ b/src/restClient.axios.test.ts @@ -11,7 +11,9 @@ describe('axios tests without mocking', () => { params: { ids: ['12345', '56789'], }, - paramsSerializer, + paramsSerializer: { + serialize: paramsSerializer, + }, }) expect(requestUri).toEqual('https://api.todoist.com/rest/v2/tasks?ids=12345%2C56789') }) diff --git a/src/restClient.test.ts b/src/restClient.test.ts index 5582a32..fb63deb 100644 --- a/src/restClient.test.ts +++ b/src/restClient.test.ts @@ -121,7 +121,9 @@ describe('restClient', () => { expect(axiosMock.get).toBeCalledTimes(1) expect(axiosMock.get).toBeCalledWith(DEFAULT_ENDPOINT, { params: undefined, - paramsSerializer, + paramsSerializer: { + serialize: paramsSerializer, + }, }) }) @@ -137,7 +139,9 @@ describe('restClient', () => { expect(axiosMock.get).toBeCalledTimes(1) expect(axiosMock.get).toBeCalledWith(DEFAULT_ENDPOINT, { params: DEFAULT_PAYLOAD, - paramsSerializer, + paramsSerializer: { + serialize: paramsSerializer, + }, }) })