From a5cd278e68f32472fefb98c3d6d57815dd5c1ab8 Mon Sep 17 00:00:00 2001 From: Ryu <114303361+ryuapp@users.noreply.github.com> Date: Sat, 21 Feb 2026 15:42:53 +0900 Subject: [PATCH] ci: check types by tsgo --- .github/workflows/ci.yml | 3 ++- bun.lock | 18 +++++++++++++++++- package.json | 5 +++-- tsconfig.json | 1 + 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fcac504..725299c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,6 +20,7 @@ jobs: - uses: oven-sh/setup-bun@v2 - run: bun install - run: bun run format - - run: bun run lint + - run: bun run lint + - run: bun run typecheck - run: bun run test - run: bun run build diff --git a/bun.lock b/bun.lock index 3b9d4db..96c650b 100644 --- a/bun.lock +++ b/bun.lock @@ -11,6 +11,7 @@ "@inquirer/input": "4.1.8", "@inquirer/select": "4.1.0", "@types/node": "22.13.11", + "@typescript/native-preview": "7.0.0-dev.20260220.1", "commander": "13.1.0", "eslint": "9.23.0", "execa": "8.0.1", @@ -19,7 +20,6 @@ "np": "10.2.0", "picocolors": "1.1.1", "prettier": "3.5.3", - "typescript": "5.8.2", "vitest": "3.0.9", }, }, @@ -231,6 +231,22 @@ "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.26.1", "", { "dependencies": { "@typescript-eslint/types": "8.26.1", "eslint-visitor-keys": "^4.2.0" } }, "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg=="], + "@typescript/native-preview": ["@typescript/native-preview@7.0.0-dev.20260220.1", "", { "optionalDependencies": { "@typescript/native-preview-darwin-arm64": "7.0.0-dev.20260220.1", "@typescript/native-preview-darwin-x64": "7.0.0-dev.20260220.1", "@typescript/native-preview-linux-arm": "7.0.0-dev.20260220.1", "@typescript/native-preview-linux-arm64": "7.0.0-dev.20260220.1", "@typescript/native-preview-linux-x64": "7.0.0-dev.20260220.1", "@typescript/native-preview-win32-arm64": "7.0.0-dev.20260220.1", "@typescript/native-preview-win32-x64": "7.0.0-dev.20260220.1" }, "bin": { "tsgo": "bin/tsgo.js" } }, "sha512-trYXlG98/C7Q7pqnPrKo+ksXrWqWVMncCy2x0VftD2llfL99Z//g2mpB9TmzWeKgb4d1659ESvxTowCGnzMccw=="], + + "@typescript/native-preview-darwin-arm64": ["@typescript/native-preview-darwin-arm64@7.0.0-dev.20260220.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-VZQHVaLYTpa3wfCLcFD5cfnegr4iDtzBxV6yh3tys+HYePi4TXuAqct/dmziW0cpCo/UQ2KqAPGxwVO3YMDYJA=="], + + "@typescript/native-preview-darwin-x64": ["@typescript/native-preview-darwin-x64@7.0.0-dev.20260220.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-ieGtyz904rlme8YWauDpCqGbnOQQ5dzUyRKU25I7MNIaoZFf0vK5gMh3SLjHC7ayWxjrCa2ezH4ka8UmyWQcPg=="], + + "@typescript/native-preview-linux-arm": ["@typescript/native-preview-linux-arm@7.0.0-dev.20260220.1", "", { "os": "linux", "cpu": "arm" }, "sha512-wMA63N6XLAkO0Ibq1Qz2zkQHF6oLynYh5+q1YayzWxp1FOas0oJUdNgVbiWeisAT4IEI9SmYtVwJJNTm/cwrwg=="], + + "@typescript/native-preview-linux-arm64": ["@typescript/native-preview-linux-arm64@7.0.0-dev.20260220.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-nlOOABSQUe6ix/KOsZS3ALZ/sg9rhtp6SKtQnXO8X4+2XUlwVYS6nIrAQ5jG4+OsCvcESttNeHhBw817uNrsuA=="], + + "@typescript/native-preview-linux-x64": ["@typescript/native-preview-linux-x64@7.0.0-dev.20260220.1", "", { "os": "linux", "cpu": "x64" }, "sha512-W7R/5ct/BGuPAmJuKFU0ZuLU2nzLA26XfoaoUHHoTLYRMMuY3LBv+7zKSUTlSGjayeWQ5KtDrfrY72LarWAXkQ=="], + + "@typescript/native-preview-win32-arm64": ["@typescript/native-preview-win32-arm64@7.0.0-dev.20260220.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-FNXTr2lS1QLUB05jWjkBVwrDierNuxKduQq9ayloENJrsC8GfG1sXkfy8R021+ozP/D1LI/CFUn3hkB2vPXTsQ=="], + + "@typescript/native-preview-win32-x64": ["@typescript/native-preview-win32-x64@7.0.0-dev.20260220.1", "", { "os": "win32", "cpu": "x64" }, "sha512-byHRyf4dOuKOADrs43tWyPhmAgqk+XrA/XOsJnGsxUKxPwots+gf9x5kg/IxTbB3QjPsVe/V9QdMl3//sUTCmQ=="], + "@unrs/rspack-resolver-binding-darwin-arm64": ["@unrs/rspack-resolver-binding-darwin-arm64@1.2.2", "", { "os": "darwin", "cpu": "arm64" }, "sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw=="], "@unrs/rspack-resolver-binding-darwin-x64": ["@unrs/rspack-resolver-binding-darwin-x64@1.2.2", "", { "os": "darwin", "cpu": "x64" }, "sha512-YEdFzPjIbDUCfmehC6eS+AdJYtFWY35YYgWUnqqTM2oe/N58GhNy5yRllxYhxwJ9GcfHoNc6Ubze1yjkNv+9Qg=="], diff --git a/package.json b/package.json index dc9876e..ef475c3 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "lint": "eslint --ext js,ts src", "lint:fix": "eslint --ext js,ts src --fix", "format": "prettier src --check", - "format:fix": "prettier src --write" + "format:fix": "prettier src --write", + "typecheck": "tsgo --noEmit" }, "bin": "./bin", "files": [ @@ -34,6 +35,7 @@ "@inquirer/input": "4.1.8", "@inquirer/select": "4.1.0", "@types/node": "22.13.11", + "@typescript/native-preview": "7.0.0-dev.20260220.1", "commander": "13.1.0", "eslint": "9.23.0", "execa": "8.0.1", @@ -42,7 +44,6 @@ "np": "10.2.0", "picocolors": "1.1.1", "prettier": "3.5.3", - "typescript": "5.8.2", "vitest": "3.0.9" } } diff --git a/tsconfig.json b/tsconfig.json index 6a042e5..0670e88 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,6 +6,7 @@ "resolveJsonModule": true, "esModuleInterop": true, "strict": true, + "skipLibCheck": true, "types": [ "node" ],