From a9aeb472e066ef8f9aa5157e5d3c86f1dd8ec0a5 Mon Sep 17 00:00:00 2001 From: Euchi Yuta Date: Mon, 2 Jun 2025 12:59:38 +0900 Subject: [PATCH] Drop Node.js 18 support --- .github/workflows/deploy-doc.yml | 2 +- .github/workflows/generate-code.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/test.yml | 1 - README.md | 2 +- docs/getting-started/requirements.md | 2 +- examples/echo-bot-esm/package-lock.json | 14 +++++++------- examples/echo-bot-ts-cjs/README.md | 2 +- examples/echo-bot-ts-cjs/package-lock.json | 14 +++++++------- examples/echo-bot-ts-esm/README.md | 2 +- examples/echo-bot-ts-esm/package-lock.json | 14 +++++++------- examples/echo-bot/package-lock.json | 14 +++++++------- examples/kitchensink/package-lock.json | 14 +++++++------- examples/rich-menu/package-lock.json | 14 +++++++------- package-lock.json | 2 +- package.json | 2 +- 16 files changed, 51 insertions(+), 52 deletions(-) diff --git a/.github/workflows/deploy-doc.yml b/.github/workflows/deploy-doc.yml index 246f44920..6be40d7df 100644 --- a/.github/workflows/deploy-doc.yml +++ b/.github/workflows/deploy-doc.yml @@ -19,7 +19,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 18 + node-version: 24 - name: Setup Pages uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0 diff --git a/.github/workflows/generate-code.yml b/.github/workflows/generate-code.yml index f44b1d199..a2d15c46d 100644 --- a/.github/workflows/generate-code.yml +++ b/.github/workflows/generate-code.yml @@ -25,7 +25,7 @@ jobs: - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 id: setup_node_id with: - node-version: 18 + node-version: 24 - name: Set up Java uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 53e46082c..2baf717a2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,7 +20,7 @@ jobs: # Setup .npmrc file to publish to GitHub Packages - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 18 + node-version: 24 registry-url: 'https://registry.npmjs.org' - run: npm install - name: Update version in package.json, package-lock.json, and lib/version.ts diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4ab653aad..4031dd38e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -15,7 +15,6 @@ jobs: matrix: # https://nodejs.org/en/about/releases/ node: - - '18' - '20' - '20.12.2' - '22' diff --git a/README.md b/README.md index 91b5cbe74..9fd72b71c 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ line-bot-sdk-nodejs documentation: https://line.github.io/line-bot-sdk-nodejs/#g ## Requirements -* **Node.js** 18 or higher +* **Node.js** 20 or higher ## Installation diff --git a/docs/getting-started/requirements.md b/docs/getting-started/requirements.md index 06ce6a4c8..58b6ba206 100644 --- a/docs/getting-started/requirements.md +++ b/docs/getting-started/requirements.md @@ -1,6 +1,6 @@ # Requirements -* **Node.js** >= 18. +* **Node.js** >= 20. * It uses ES2022. * [**npm**](https://www.npmjs.com/), preferably >=10 diff --git a/examples/echo-bot-esm/package-lock.json b/examples/echo-bot-esm/package-lock.json index fe0a87bf7..7fcf34d46 100644 --- a/examples/echo-bot-esm/package-lock.json +++ b/examples/echo-bot-esm/package-lock.json @@ -20,22 +20,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/examples/echo-bot-ts-cjs/README.md b/examples/echo-bot-ts-cjs/README.md index 1b47bfcd7..8b2ca23d7 100644 --- a/examples/echo-bot-ts-cjs/README.md +++ b/examples/echo-bot-ts-cjs/README.md @@ -6,7 +6,7 @@ This tutorial will help you set up a LINE Echo Bot from scratch. ## Prerequisite -- Node.js version 18 or higher +- Node.js version 20 or higher - You've created a channel in the LINE Developers Console, and got your channel access token and channel secret. - Read https://developers.line.biz/en/docs/messaging-api/getting-started/#using-console if you haven't done this yet. diff --git a/examples/echo-bot-ts-cjs/package-lock.json b/examples/echo-bot-ts-cjs/package-lock.json index 7cca59057..106e0299a 100644 --- a/examples/echo-bot-ts-cjs/package-lock.json +++ b/examples/echo-bot-ts-cjs/package-lock.json @@ -26,22 +26,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/examples/echo-bot-ts-esm/README.md b/examples/echo-bot-ts-esm/README.md index 267e31c98..e0841a03e 100644 --- a/examples/echo-bot-ts-esm/README.md +++ b/examples/echo-bot-ts-esm/README.md @@ -6,7 +6,7 @@ This tutorial will help you set up a LINE Echo Bot from scratch. ## Prerequisite -- Node.js version 18 or higher +- Node.js version 20 or higher - You've created a channel in the LINE Developers Console, and got your channel access token and channel secret. - Read https://developers.line.biz/en/docs/messaging-api/getting-started/#using-console if you haven't done this yet. diff --git a/examples/echo-bot-ts-esm/package-lock.json b/examples/echo-bot-ts-esm/package-lock.json index 422335f74..bf8bfcaac 100644 --- a/examples/echo-bot-ts-esm/package-lock.json +++ b/examples/echo-bot-ts-esm/package-lock.json @@ -26,22 +26,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/examples/echo-bot/package-lock.json b/examples/echo-bot/package-lock.json index e212b3d9f..c48051933 100644 --- a/examples/echo-bot/package-lock.json +++ b/examples/echo-bot/package-lock.json @@ -20,22 +20,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/examples/kitchensink/package-lock.json b/examples/kitchensink/package-lock.json index b330139e4..5e3279837 100644 --- a/examples/kitchensink/package-lock.json +++ b/examples/kitchensink/package-lock.json @@ -21,22 +21,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/examples/rich-menu/package-lock.json b/examples/rich-menu/package-lock.json index 16c7e37b7..b0da92ef2 100644 --- a/examples/rich-menu/package-lock.json +++ b/examples/rich-menu/package-lock.json @@ -19,22 +19,22 @@ "@types/node": "^22.0.0" }, "devDependencies": { - "@types/express": "5.0.0", + "@types/express": "5.0.2", "@types/finalhandler": "1.2.3", "@vitest/coverage-v8": "^3.0.0", - "express": "4.21.2", - "finalhandler": "1.3.1", + "express": "5.1.0", + "finalhandler": "2.1.0", "husky": "9.1.7", - "msw": "2.7.0", - "prettier": "3.4.2", - "typedoc": "^0.27.1", + "msw": "2.8.4", + "prettier": "3.5.3", + "typedoc": "^0.28.0", "typedoc-plugin-markdown": "^4.3.0", "typescript": "^5.5.4", "vitepress": "^1.0.1", "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/package-lock.json b/package-lock.json index 01e94cda6..838983b33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "vitest": "^3.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "optionalDependencies": { "axios": "^1.7.4" diff --git a/package.json b/package.json index 559094573..a3b00f277 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Node.js SDK for LINE Messaging API", "type": "module", "engines": { - "node": ">=18" + "node": ">=20" }, "main": "./dist/cjs/index.js", "types": "./dist/index.d.ts",