diff --git a/.github/workflows/test-js.yml b/.github/workflows/test-js.yml index d87856985..c7d6c6f94 100644 --- a/.github/workflows/test-js.yml +++ b/.github/workflows/test-js.yml @@ -14,8 +14,8 @@ jobs: os: - "ubuntu-latest" node_version: - - "18.18" - "20" + - "22" - "latest" ts_version: # - "next" diff --git a/package.json b/package.json index b05448e24..56003aa60 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "@rollup/plugin-replace": "6.0.3", "@rollup/plugin-typescript": "12.3.0", "@stylistic/eslint-plugin": "5.10.0", - "@types/node": "18.19.130", + "@types/node": "20.19.33", "@typescript-eslint/eslint-plugin": "8.58.1", "@typescript-eslint/parser": "8.58.1", "@vitest/coverage-v8": "3.2.4", @@ -159,7 +159,7 @@ }, "packageManager": "pnpm@10.34.1", "engines": { - "node": ">=v18.18.0" + "node": ">=v20.0.0" }, "overrides": { "eslint-plugin-functional": "link:." diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 07d169a5a..b3539a777 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,7 +44,7 @@ importers: version: 8.0.2 '@rebeccastevens/eslint-config': specifier: 3.9.7 - version: 3.9.7(b49b66abd3c81bc44e7a39ac17ff8882) + version: 3.9.7(579dde291503aaa7a45112eab215ad79) '@rollup/plugin-replace': specifier: 6.0.3 version: 6.0.3(rollup@4.60.4) @@ -55,8 +55,8 @@ importers: specifier: 5.10.0 version: 5.10.0(eslint@9.39.4(jiti@2.7.0)) '@types/node': - specifier: 18.19.130 - version: 18.19.130 + specifier: 20.19.33 + version: 20.19.33 '@typescript-eslint/eslint-plugin': specifier: 8.58.1 version: 8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) @@ -65,10 +65,10 @@ importers: version: 8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) '@vitest/coverage-v8': specifier: 3.2.4 - version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130)) + version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33)) '@vitest/eslint-plugin': specifier: 1.6.18 - version: 1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130)) + version: 1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33)) cspell: specifier: 10.0.0 version: 10.0.0 @@ -140,7 +140,7 @@ importers: version: 3.4.0(eslint@9.39.4(jiti@2.7.0)) eslint-vitest-rule-tester: specifier: 3.1.0 - version: 3.1.0(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130)) + version: 3.1.0(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33)) fast-glob: specifier: 3.3.3 version: 3.3.3 @@ -191,10 +191,10 @@ importers: version: 5.9.3 vite-tsconfig-paths: specifier: 6.1.1 - version: 6.1.1(typescript@5.9.3)(vite@5.3.5(@types/node@18.19.130)) + version: 6.1.1(typescript@5.9.3)(vite@5.3.5(@types/node@20.19.33)) vitest: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@18.19.130) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.33) yaml-eslint-parser: specifier: 2.0.0 version: 2.0.0 @@ -1736,8 +1736,8 @@ packages: '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - '@types/node@18.19.130': - resolution: {integrity: sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==} + '@types/node@20.19.33': + resolution: {integrity: sha512-Rs1bVAIdBs5gbTIKza/tgpMuG1k3U/UMJLWecIMxNdJFDMzcM5LOiLVRYh3PilWEYDIeUDv7bpiHPLPsbydGcw==} '@types/unist@2.0.10': resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} @@ -1949,9 +1949,6 @@ packages: '@vitest/pretty-format@3.2.4': resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} - '@vitest/pretty-format@3.2.6': - resolution: {integrity: sha512-lb7XXXzmm2h2ASzFnRvQpDo6onT1NmMJA3tkGTWiBFtRJ9lxGY3d3mm/Apt36gej2bkkOVLL/yTOtufDaFa/jA==} - '@vitest/runner@3.2.4': resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} @@ -4293,8 +4290,8 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} @@ -5395,7 +5392,7 @@ snapshots: '@publint/pack@0.1.4': {} - '@rebeccastevens/eslint-config@3.9.7(b49b66abd3c81bc44e7a39ac17ff8882)': + '@rebeccastevens/eslint-config@3.9.7(579dde291503aaa7a45112eab215ad79)': dependencies: '@antfu/install-pkg': 1.1.0 '@clack/prompts': 1.0.1 @@ -5409,7 +5406,7 @@ snapshots: '@typescript-eslint/eslint-plugin': 8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) '@typescript-eslint/parser': 8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) '@typescript-eslint/utils': 8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) - '@vitest/eslint-plugin': 1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130)) + '@vitest/eslint-plugin': 1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33)) eslint-config-prettier: 10.1.8(eslint@9.39.4(jiti@2.7.0)) eslint-flat-config-utils: 3.2.0 eslint-formatting-reporter: 0.0.0(eslint@9.39.4(jiti@2.7.0)) @@ -5596,9 +5593,9 @@ snapshots: '@types/ms@0.7.34': {} - '@types/node@18.19.130': + '@types/node@20.19.33': dependencies: - undici-types: 5.26.5 + undici-types: 6.21.0 '@types/unist@2.0.10': {} @@ -5754,7 +5751,7 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.11.1': optional: true - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130))': + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 @@ -5769,11 +5766,11 @@ snapshots: std-env: 3.10.0 test-exclude: 7.0.2 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@18.19.130) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.33) transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130))': + '@vitest/eslint-plugin@1.6.18(@typescript-eslint/eslint-plugin@8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33))': dependencies: '@typescript-eslint/scope-manager': 8.58.1 '@typescript-eslint/utils': 8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) @@ -5781,7 +5778,7 @@ snapshots: optionalDependencies: '@typescript-eslint/eslint-plugin': 8.58.1(@typescript-eslint/parser@8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) typescript: 5.9.3 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@18.19.130) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.33) transitivePeerDependencies: - supports-color @@ -5793,22 +5790,18 @@ snapshots: chai: 5.3.3 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(vite@5.3.5(@types/node@18.19.130))': + '@vitest/mocker@3.2.4(vite@5.3.5(@types/node@20.19.33))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 5.3.5(@types/node@18.19.130) + vite: 5.3.5(@types/node@20.19.33) '@vitest/pretty-format@3.2.4': dependencies: tinyrainbow: 2.0.0 - '@vitest/pretty-format@3.2.6': - dependencies: - tinyrainbow: 2.0.0 - '@vitest/runner@3.2.4': dependencies: '@vitest/utils': 3.2.4 @@ -6917,11 +6910,11 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint-vitest-rule-tester@3.1.0(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130)): + eslint-vitest-rule-tester@3.1.0(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33)): dependencies: '@typescript-eslint/utils': 8.58.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) eslint: 9.39.4(jiti@2.7.0) - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@18.19.130) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.33) transitivePeerDependencies: - supports-color - typescript @@ -8910,7 +8903,7 @@ snapshots: which-boxed-primitive: 1.1.1 optional: true - undici-types@5.26.5: {} + undici-types@6.21.0: {} unicode-emoji-modifier-base@1.0.0: {} @@ -8974,13 +8967,13 @@ snapshots: dependencies: punycode: 2.3.1 - vite-node@3.2.4(@types/node@18.19.130): + vite-node@3.2.4(@types/node@20.19.33): dependencies: cac: 6.7.14 debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 5.3.5(@types/node@18.19.130) + vite: 5.3.5(@types/node@20.19.33) transitivePeerDependencies: - '@types/node' - less @@ -8991,31 +8984,31 @@ snapshots: - supports-color - terser - vite-tsconfig-paths@6.1.1(typescript@5.9.3)(vite@5.3.5(@types/node@18.19.130)): + vite-tsconfig-paths@6.1.1(typescript@5.9.3)(vite@5.3.5(@types/node@20.19.33)): dependencies: debug: 4.4.3 globrex: 0.1.2 tsconfck: 3.1.1(typescript@5.9.3) - vite: 5.3.5(@types/node@18.19.130) + vite: 5.3.5(@types/node@20.19.33) transitivePeerDependencies: - supports-color - typescript - vite@5.3.5(@types/node@18.19.130): + vite@5.3.5(@types/node@20.19.33): dependencies: esbuild: 0.21.5 postcss: 8.4.40 rollup: 4.60.4 optionalDependencies: - '@types/node': 18.19.130 + '@types/node': 20.19.33 fsevents: 2.3.3 - vitest@3.2.4(@types/debug@4.1.12)(@types/node@18.19.130): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.33): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@5.3.5(@types/node@18.19.130)) - '@vitest/pretty-format': 3.2.6 + '@vitest/mocker': 3.2.4(vite@5.3.5(@types/node@20.19.33)) + '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 '@vitest/spy': 3.2.4 @@ -9032,12 +9025,12 @@ snapshots: tinyglobby: 0.2.16 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 5.3.5(@types/node@18.19.130) - vite-node: 3.2.4(@types/node@18.19.130) + vite: 5.3.5(@types/node@20.19.33) + vite-node: 3.2.4(@types/node@20.19.33) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 18.19.130 + '@types/node': 20.19.33 transitivePeerDependencies: - less - lightningcss