diff --git a/.vscode/settings.json b/.vscode/settings.json index b4e14730..2fb104d3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -14,5 +14,6 @@ "biomejs" ], "editor.defaultFormatter": "biomejs.biome", - "editor.formatOnSave": true + "editor.formatOnSave": true, + "typescript.experimental.useTsgo": true } diff --git a/package-lock.json b/package-lock.json index 1e8bfdea..72f22017 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,8 +11,8 @@ "devDependencies": { "@biomejs/biome": "1.9.4", "@types/node": "22.15.21", - "tsdown": "0.12.3", - "typescript": "5.8.3" + "@typescript/native-preview": "7.0.0-dev.20250525.1", + "tsdown": "0.12.3" } }, "node_modules/@babel/generator": { @@ -581,6 +581,147 @@ "undici-types": "~6.21.0" } }, + "node_modules/@typescript/native-preview": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview/-/native-preview-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-8rcNG2CkBwRc/5zDkbHgGZTYT2oHu4E9r3Ed3JnWrCb0Vf9jSK8bd7lpbTAOIza790Zn6FOiYI9T7SmcTVzxDQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsgo": "bin/tsgo.js" + }, + "engines": { + "node": ">=20.6.0" + }, + "optionalDependencies": { + "@typescript/native-preview-darwin-arm64": "7.0.0-dev.20250525.1", + "@typescript/native-preview-darwin-x64": "7.0.0-dev.20250525.1", + "@typescript/native-preview-linux-arm": "7.0.0-dev.20250525.1", + "@typescript/native-preview-linux-arm64": "7.0.0-dev.20250525.1", + "@typescript/native-preview-linux-x64": "7.0.0-dev.20250525.1", + "@typescript/native-preview-win32-arm64": "7.0.0-dev.20250525.1", + "@typescript/native-preview-win32-x64": "7.0.0-dev.20250525.1" + } + }, + "node_modules/@typescript/native-preview-darwin-arm64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-arm64/-/native-preview-darwin-arm64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-XyxwSahQ+9cqMYuvfeZ4niJpRTHUgCMhqN9eaXzMK193mXp7GAlJ4UnZm0NPF538mIXi9PTSAPwmbMYiDMyN1g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-darwin-x64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-x64/-/native-preview-darwin-x64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-9qnW/SX2BHzIT7BO5ubdl69FGVA6C6x1c5akLYtlMAjg6ybKBIc2bmoVWd2eSR+B0382AoG4tziLRtDQhcfe+Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-linux-arm": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm/-/native-preview-linux-arm-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-yi/8tRc3E2Y+RdV/KOVsJOsrz9eN9YYCFgf90tG3nlo+8UlA7oJvXQ2ealeadUX3kHU3uALWU4qnfNC6oTy2sg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-linux-arm64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm64/-/native-preview-linux-arm64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-cLYmhcr3rrzVONUKLJkaMaWQCplmprBdpiiiQR8r+sp7nIFv6bCtYgE/p23bPgI5+FRixmCvP3XglDwU+ZRGBA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-linux-x64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-x64/-/native-preview-linux-x64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-oCr24rfRoppLS1MwGXhXZN1JMwCWfkKdJdzhSY8XJ10TTVLGhhjYaWgD51SlIJNfWH9i+e1/9x2ULIjb3/MrLA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-win32-arm64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-arm64/-/native-preview-win32-arm64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-xqS00+QZz1oEq7e9EIqs6dnmV4oE24/xRyXqY9b2FLPIXJJNHFKyT8/iLbtrSeOUFOBabpZuVMGGVhi0onTXoA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.6.0" + } + }, + "node_modules/@typescript/native-preview-win32-x64": { + "version": "7.0.0-dev.20250525.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-x64/-/native-preview-win32-x64-7.0.0-dev.20250525.1.tgz", + "integrity": "sha512-tHPIhwhQ3c+J5ENJgfwsEDpMuuID2GPvhYH4Zcy1I2oGJ15DIb53Sqc1dRw+syV3j4/TnQDNDOuUWjJAQvi/aA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.6.0" + } + }, "node_modules/ansis": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/ansis/-/ansis-4.0.0.tgz", @@ -998,20 +1139,6 @@ "license": "0BSD", "optional": true }, - "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/unconfig": { "version": "7.3.2", "resolved": "https://registry.npmjs.org/unconfig/-/unconfig-7.3.2.tgz", diff --git a/package.json b/package.json index 2a1df304..233aed4a 100644 --- a/package.json +++ b/package.json @@ -22,9 +22,9 @@ "prepare": "npm run build", "test": "node --experimental-default-config-file --test --experimental-test-coverage", "test:update": "npm test -- --experimental-test-snapshots", - "lint": "npm run lint:biome && npm run lint:tsc", + "lint": "npm run lint:biome && npm run lint:type", "lint:biome": "biome check .", - "lint:tsc": "tsc -p ./tsconfig.lint.json", + "lint:type": "tsgo -p ./tsconfig.lint.json", "format": "biome check --write ." }, "repository": { @@ -41,8 +41,8 @@ "devDependencies": { "@biomejs/biome": "1.9.4", "@types/node": "22.15.21", - "tsdown": "0.12.3", - "typescript": "5.8.3" + "@typescript/native-preview": "7.0.0-dev.20250525.1", + "tsdown": "0.12.3" }, "publishConfig": { "access": "public"