diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f2d3371..191c78f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -14,14 +14,14 @@ jobs: - uses: actions/checkout@v5 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 - run: npm ci - run: npm run typecheck test: runs-on: ubuntu-latest strategy: matrix: - node: [20, 22] + node: [20, 24] name: Run tests on Node ${{ matrix.node }} steps: - uses: actions/checkout@v5 diff --git a/package-lock.json b/package-lock.json index ff8a9a8..cf0e5b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,12 +12,12 @@ "servitsy": "bin/servitsy.js" }, "devDependencies": { - "@types/node": "^22.18.12", - "fs-fixture": "^2.9.0", + "@types/node": "^24.9.1", + "fs-fixture": "^2.10.1", "linkedom": "^0.18.12", "prettier": "^3.6.2", "typescript": "~5.9.3", - "vitest": "^4.0.1" + "vitest": "^4.0.4" } }, "node_modules/@esbuild/aix-ppc64": { @@ -810,26 +810,27 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.18.12.tgz", - "integrity": "sha512-BICHQ67iqxQGFSzfCFTT7MRQ5XcBjG5aeKh5Ok38UBbPe5fxTyE+aHFxwVrGyr8GNlqFMLKD1D3P2K/1ks8tog==", + "version": "24.9.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz", + "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~7.16.0" } }, "node_modules/@vitest/expect": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.1.tgz", - "integrity": "sha512-KtvGLN/IWoZfg68JF2q/zbDEo+UJTWnc7suYJ8RF+ZTBeBcBz4NIOJDxO4Q3bEY9GsOYhgy5cOevcVPFh4+V7g==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.4.tgz", + "integrity": "sha512-0ioMscWJtfpyH7+P82sGpAi3Si30OVV73jD+tEqXm5+rIx9LgnfdaOn45uaFkKOncABi/PHL00Yn0oW/wK4cXw==", "dev": true, "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.0.0", "@types/chai": "^5.2.2", - "@vitest/spy": "4.0.1", - "@vitest/utils": "4.0.1", + "@vitest/spy": "4.0.4", + "@vitest/utils": "4.0.4", "chai": "^6.0.1", "tinyrainbow": "^3.0.3" }, @@ -838,13 +839,13 @@ } }, "node_modules/@vitest/mocker": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.1.tgz", - "integrity": "sha512-fwmvg8YvwSAE41Hyhul7dL4UzPhG+k2VaZCcL+aHagLx4qlNQgKYTw7coF4YdjAxSBBt0b408gQFYMX1Qeqweg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.4.tgz", + "integrity": "sha512-UTtKgpjWj+pvn3lUM55nSg34098obGhSHH+KlJcXesky8b5wCUgg7s60epxrS6yAG8slZ9W8T9jGWg4PisMf5Q==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "4.0.1", + "@vitest/spy": "4.0.4", "estree-walker": "^3.0.3", "magic-string": "^0.30.19" }, @@ -865,9 +866,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.1.tgz", - "integrity": "sha512-6nq3JY/zQ91+oX1vd4fajiVNyA/HMhaF9cOw5P9cQi6ML7PRi7ilVaQ77PulF+4kvUKr9bcLm9GoAtwlVFbGzw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.4.tgz", + "integrity": "sha512-lHI2rbyrLVSd1TiHGJYyEtbOBo2SDndIsN3qY4o4xe2pBxoJLD6IICghNCvD7P+BFin6jeyHXiUICXqgl6vEaQ==", "dev": true, "license": "MIT", "dependencies": { @@ -878,13 +879,13 @@ } }, "node_modules/@vitest/runner": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.1.tgz", - "integrity": "sha512-nxUoWmw7ZX2OiSNwolJeSOOzrrR/o79wRTwP7HhiW/lDFwQHtWMj9snMhrdvccFqanvI8897E81eXjgDbrRvqA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.4.tgz", + "integrity": "sha512-99EDqiCkncCmvIZj3qJXBZbyoQ35ghOwVWNnQ5nj0Hnsv4Qm40HmrMJrceewjLVvsxV/JSU4qyx2CGcfMBmXJw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "4.0.1", + "@vitest/utils": "4.0.4", "pathe": "^2.0.3" }, "funding": { @@ -892,13 +893,13 @@ } }, "node_modules/@vitest/snapshot": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.1.tgz", - "integrity": "sha512-CvfsEWutEIN/Z9ScXYup7YwlPeK9JICrV7FN9p3pVytsyh+aCHAH0PUi//YlTiQ7T8qYxJYpUrAwZL9XqmZ5ZA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.4.tgz", + "integrity": "sha512-XICqf5Gi4648FGoBIeRgnHWSNDp+7R5tpclGosFaUUFzY6SfcpsfHNMnC7oDu/iOLBxYfxVzaQpylEvpgii3zw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.1", + "@vitest/pretty-format": "4.0.4", "magic-string": "^0.30.19", "pathe": "^2.0.3" }, @@ -907,9 +908,9 @@ } }, "node_modules/@vitest/spy": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.1.tgz", - "integrity": "sha512-Hj0/TBQ2EN72wDpfKiUf63mRCkE0ZiSGXGeDDvW9T3LBKVVApItd0GyQLDBIe03kWbyK9gOTEbJVVWthcLFzCg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.4.tgz", + "integrity": "sha512-G9L13AFyYECo40QG7E07EdYnZZYCKMTSp83p9W8Vwed0IyCG1GnpDLxObkx8uOGPXfDpdeVf24P1Yka8/q1s9g==", "dev": true, "license": "MIT", "funding": { @@ -917,13 +918,13 @@ } }, "node_modules/@vitest/utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.1.tgz", - "integrity": "sha512-uRrACgpIz5sxuT87ml7xhh7EdKtW8k0N9oSFVBPl8gHB/JfLObLe9dXO6ZrsNN55FzciGIRqIEILgTQvg1eNHw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.4.tgz", + "integrity": "sha512-4bJLmSvZLyVbNsYFRpPYdJViG9jZyRvMZ35IF4ymXbRZoS+ycYghmwTGiscTXduUg2lgKK7POWIyXJNute1hjw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.1", + "@vitest/pretty-format": "4.0.4", "tinyrainbow": "^3.0.3" }, "funding": { @@ -1172,9 +1173,9 @@ } }, "node_modules/fs-fixture": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/fs-fixture/-/fs-fixture-2.9.0.tgz", - "integrity": "sha512-I/DNkzRfL71uabv3270h+lLOlJrUbQDHXb6JZxN8cgiFn0pi0dCE+etE8pzCvMuguSq34ClGXInhoaSW+1RZpw==", + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/fs-fixture/-/fs-fixture-2.10.1.tgz", + "integrity": "sha512-J45FBtdpW/hcIKP2YZa9qGg9GCsM3FD/TKktzgcCA0KxyInaPV7loRMahQup2jyUZ0LyJDsP7ocriCLVD/jDAw==", "dev": true, "license": "MIT", "engines": { @@ -1265,9 +1266,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.19", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", - "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1333,6 +1334,7 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -1521,9 +1523,9 @@ "license": "ISC" }, "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "dev": true, "license": "MIT" }, @@ -1533,6 +1535,7 @@ "integrity": "sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.5.0", @@ -1603,19 +1606,19 @@ } }, "node_modules/vitest": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.0.1.tgz", - "integrity": "sha512-4rwTfUNF0MExMZBiNirkzZpeyUZGOs3JD76N2qHNP9i6w6/bff7MRv2I9yFJKd1ICxzn2igpra+E4t9o2EfQhw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.0.4.tgz", + "integrity": "sha512-hV31h0/bGbtmDQc0KqaxsTO1v4ZQeF8ojDFuy4sZhFadwAqqvJA0LDw68QUocctI5EDpFMql/jVWKuPYHIf2Ew==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/expect": "4.0.1", - "@vitest/mocker": "4.0.1", - "@vitest/pretty-format": "4.0.1", - "@vitest/runner": "4.0.1", - "@vitest/snapshot": "4.0.1", - "@vitest/spy": "4.0.1", - "@vitest/utils": "4.0.1", + "@vitest/expect": "4.0.4", + "@vitest/mocker": "4.0.4", + "@vitest/pretty-format": "4.0.4", + "@vitest/runner": "4.0.4", + "@vitest/snapshot": "4.0.4", + "@vitest/spy": "4.0.4", + "@vitest/utils": "4.0.4", "debug": "^4.4.3", "es-module-lexer": "^1.7.0", "expect-type": "^1.2.2", @@ -1643,10 +1646,10 @@ "@edge-runtime/vm": "*", "@types/debug": "^4.1.12", "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0", - "@vitest/browser-playwright": "4.0.1", - "@vitest/browser-preview": "4.0.1", - "@vitest/browser-webdriverio": "4.0.1", - "@vitest/ui": "4.0.1", + "@vitest/browser-playwright": "4.0.4", + "@vitest/browser-preview": "4.0.4", + "@vitest/browser-webdriverio": "4.0.4", + "@vitest/ui": "4.0.4", "happy-dom": "*", "jsdom": "*" }, diff --git a/package.json b/package.json index bb740ef..3f7cfdd 100644 --- a/package.json +++ b/package.json @@ -36,11 +36,11 @@ "typecheck": "tsc -p tsconfig.json --noEmit && tsc -p test/tsconfig.json --noEmit" }, "devDependencies": { - "@types/node": "^22.18.12", - "fs-fixture": "^2.9.0", + "@types/node": "^24.9.1", + "fs-fixture": "^2.10.1", "linkedom": "^0.18.12", "prettier": "^3.6.2", "typescript": "~5.9.3", - "vitest": "^4.0.1" + "vitest": "^4.0.4" } }