diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 75fe00532..a5f7cc998 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -11,7 +11,7 @@ jobs: - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4 - uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 with: - node-version: 18 + node-version: 20 - run: npm ci - run: npm run lint - run: npm run typecheck @@ -20,12 +20,11 @@ jobs: runs-on: ${{ matrix.config.os }} strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x, 22.x] config: - # arch isn't used and we have no way to use it currently - - { os: macos-latest, arch: x64 } - - { os: ubuntu-latest, arch: x64 } - - { os: windows-latest, arch: x64 } + - { os: macos-latest } + - { os: ubuntu-latest } + - { os: windows-latest } steps: - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4 - uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 diff --git a/.node-version b/.node-version index 4a1f488b6..d4b7699d3 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -18.17.1 +20.18.1 diff --git a/package-lock.json b/package-lock.json index 8c3f05b38..14debb031 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,7 @@ "packages/*" ], "devDependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@tsconfig/node18": "18.2.1", "@types/chai": "5.0.1", "@types/chai-subset": "1.3.5", @@ -41,7 +41,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -2249,46 +2249,48 @@ } }, "node_modules/@serialport/bindings-cpp": { - "version": "12.0.1", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@serialport/bindings-cpp/-/bindings-cpp-13.0.0.tgz", + "integrity": "sha512-r25o4Bk/vaO1LyUfY/ulR6hCg/aWiN6Wo2ljVlb4Pj5bqWGcSRC4Vse4a9AcapuAu/FeBzHCbKMvRQeCuKjzIQ==", "hasInstallScript": true, "license": "MIT", "dependencies": { "@serialport/bindings-interface": "1.2.2", - "@serialport/parser-readline": "11.0.0", - "debug": "4.3.4", - "node-addon-api": "7.0.0", - "node-gyp-build": "4.6.0" - }, - "engines": { - "node": ">=16.0.0" + "@serialport/parser-readline": "12.0.0", + "debug": "4.4.0", + "node-addon-api": "8.3.0", + "node-gyp-build": "4.8.4" }, - "funding": { - "url": "https://opencollective.com/serialport/donate" - } - }, - "node_modules/@serialport/bindings-cpp/node_modules/@serialport/parser-delimiter": { - "version": "11.0.0", - "license": "MIT", "engines": { - "node": ">=12.0.0" + "node": ">=18.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" } }, - "node_modules/@serialport/bindings-cpp/node_modules/@serialport/parser-readline": { - "version": "11.0.0", + "node_modules/@serialport/bindings-cpp/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "license": "MIT", "dependencies": { - "@serialport/parser-delimiter": "11.0.0" + "ms": "^2.1.3" }, "engines": { - "node": ">=12.0.0" + "node": ">=6.0" }, - "funding": { - "url": "https://opencollective.com/serialport/donate" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, + "node_modules/@serialport/bindings-cpp/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, "node_modules/@serialport/bindings-interface": { "version": "1.2.2", "license": "MIT", @@ -8605,8 +8607,13 @@ } }, "node_modules/node-addon-api": { - "version": "7.0.0", - "license": "MIT" + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.3.0.tgz", + "integrity": "sha512-8VOpLHFrOQlAH+qA0ZzuGRlALRA6/LVh8QJldbrC4DY0hXoMP0l4Acq8TzFC018HztWiRqyCEj2aTWY2UvnJUg==", + "license": "MIT", + "engines": { + "node": "^18 || ^20 || >= 21" + } }, "node_modules/node-fetch": { "version": "2.6.7", @@ -8652,7 +8659,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.6.0", + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", "license": "MIT", "bin": { "node-gyp-build": "bin.js", @@ -13465,7 +13474,7 @@ "version": "12.0.0", "license": "MIT", "dependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "commander": "11.0.0" }, "bin": { @@ -13475,7 +13484,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13489,7 +13498,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13503,7 +13512,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13517,7 +13526,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13531,7 +13540,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13559,7 +13568,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13573,7 +13582,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13587,7 +13596,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13601,7 +13610,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13615,7 +13624,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13636,7 +13645,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13647,7 +13656,7 @@ "license": "MIT", "dependencies": { "@serialport/binding-mock": "10.2.2", - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@serialport/parser-byte-length": "12.0.0", "@serialport/parser-cctalk": "12.0.0", "@serialport/parser-delimiter": "12.0.0", @@ -13665,7 +13674,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13684,7 +13693,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" @@ -13695,7 +13704,7 @@ "version": "12.0.0", "license": "MIT", "dependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@serialport/stream": "12.0.0", "commander": "11.0.0", "enquirer": "2.4.1" @@ -13707,7 +13716,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "funding": { "url": "https://opencollective.com/serialport/donate" diff --git a/package.json b/package.json index 91c7b8695..135d38cfa 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "version": "0.0.0", "description": "Node.js packages to access serial ports, process data from them and speak many protocols", "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "license": "MIT", "scripts": { @@ -26,7 +26,7 @@ "packages/*" ], "devDependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@tsconfig/node18": "18.2.1", "@types/chai": "5.0.1", "@types/chai-subset": "1.3.5", diff --git a/packages/list/package.json b/packages/list/package.json index 6f2e65757..6a1343bcb 100644 --- a/packages/list/package.json +++ b/packages/list/package.json @@ -10,11 +10,11 @@ "build": "tsc --build tsconfig-build.json" }, "dependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "commander": "11.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-byte-length/package.json b/packages/parser-byte-length/package.json index 38b679960..dc6b1fe70 100644 --- a/packages/parser-byte-length/package.json +++ b/packages/parser-byte-length/package.json @@ -4,7 +4,7 @@ "main": "./dist/index.js", "types": "./dist/index.d.ts", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-cctalk/package.json b/packages/parser-cctalk/package.json index d40c64ab9..1493d3dc2 100644 --- a/packages/parser-cctalk/package.json +++ b/packages/parser-cctalk/package.json @@ -7,7 +7,7 @@ "build": "tsc --build tsconfig-build.json" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-delimiter/package.json b/packages/parser-delimiter/package.json index 7f5bc957b..18fe1af02 100644 --- a/packages/parser-delimiter/package.json +++ b/packages/parser-delimiter/package.json @@ -4,7 +4,7 @@ "types": "./dist/index.d.ts", "version": "12.0.0", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-inter-byte-timeout/package.json b/packages/parser-inter-byte-timeout/package.json index 466ab2dfc..a945d73a2 100644 --- a/packages/parser-inter-byte-timeout/package.json +++ b/packages/parser-inter-byte-timeout/package.json @@ -4,7 +4,7 @@ "main": "./dist/index.js", "types": "./dist/index.d.ts", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-readline/package.json b/packages/parser-readline/package.json index 5e98611f8..c00cac883 100644 --- a/packages/parser-readline/package.json +++ b/packages/parser-readline/package.json @@ -7,7 +7,7 @@ "@serialport/parser-delimiter": "12.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-ready/package.json b/packages/parser-ready/package.json index ae01be34a..358f3df3d 100644 --- a/packages/parser-ready/package.json +++ b/packages/parser-ready/package.json @@ -4,7 +4,7 @@ "types": "./dist/index.d.ts", "version": "12.0.0", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-regex/package.json b/packages/parser-regex/package.json index 6a68e4215..35c775fcd 100644 --- a/packages/parser-regex/package.json +++ b/packages/parser-regex/package.json @@ -4,7 +4,7 @@ "types": "./dist/index.d.ts", "version": "12.0.0", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-slip-encoder/package.json b/packages/parser-slip-encoder/package.json index 30432c777..e889a792e 100644 --- a/packages/parser-slip-encoder/package.json +++ b/packages/parser-slip-encoder/package.json @@ -7,7 +7,7 @@ }, "version": "12.0.0", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/parser-spacepacket/package.json b/packages/parser-spacepacket/package.json index 1f48f3a4e..819478130 100644 --- a/packages/parser-spacepacket/package.json +++ b/packages/parser-spacepacket/package.json @@ -7,7 +7,7 @@ }, "version": "12.0.0", "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/repl/package.json b/packages/repl/package.json index bf3346bfc..63a555a1b 100644 --- a/packages/repl/package.json +++ b/packages/repl/package.json @@ -14,7 +14,7 @@ "serialport": "12.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/serialport/package.json b/packages/serialport/package.json index 757f78f74..25eb2e42e 100644 --- a/packages/serialport/package.json +++ b/packages/serialport/package.json @@ -51,7 +51,7 @@ ], "dependencies": { "@serialport/binding-mock": "10.2.2", - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@serialport/parser-byte-length": "12.0.0", "@serialport/parser-cctalk": "12.0.0", "@serialport/parser-delimiter": "12.0.0", @@ -66,7 +66,7 @@ "debug": "4.3.4" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "license": "MIT", "funding": "https://opencollective.com/serialport/donate", diff --git a/packages/stream/package.json b/packages/stream/package.json index aa48f12af..80698ab75 100644 --- a/packages/stream/package.json +++ b/packages/stream/package.json @@ -15,7 +15,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/terminal/package.json b/packages/terminal/package.json index 8b039745f..51fe582db 100644 --- a/packages/terminal/package.json +++ b/packages/terminal/package.json @@ -10,13 +10,13 @@ "serialport-terminal": "./dist/index.js" }, "dependencies": { - "@serialport/bindings-cpp": "12.0.1", + "@serialport/bindings-cpp": "13.0.0", "@serialport/stream": "12.0.0", "commander": "11.0.0", "enquirer": "2.4.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=20.0.0" }, "publishConfig": { "access": "public"