开发者生态
morning
tsc-ts:用 TypeScript 编写的 TypeScript
摘要
An experimental TypeScript port of the TypeScript 7.0.2 compiler ( TypeScript-Go , or tsgo), compiled to native code with scriptc . Install the compiler from npm: npm install -D tsc-ts npx tsc-ts -p t...
tsc
npm
the
tsgo
packages
with
run
and
build
TypeScript
2026-10-18
1 阅读
约8分钟阅读
tosh
字号:
TypeScript 7.0.2 编译器(TypeScript-Go 或 tsgo)的实验性 TypeScript 端口,使用 scriptc 编译为本机代码。从 npm 安装编译器: npm install -D tsc-ts npx tsc-ts -p tsconfig.json tsc-ts 包从每个平台的可选依赖项( @tsc-ts/darwin-arm64 、 @tsc-ts/linux-x64-gnu 等)运行本机可执行文件。请参阅packages/tsc-ts。请参阅 CHANGELOG.md 了解发行说明,并参阅 GitHub Releases 了解软件包档案。要为当前平台构建软件包: npm run pack:npm -w tsc-ts #packages/tsc-ts/dist/npm/*.tgz npm run pack:npm -w tsc-ts -- --check # 同时安装 tarball 并编译项目 -- --binary dist/tsc 相对于 packages/tsc-ts 打包现有的本机构建,而不是构建一个。包 描述 packages/tsc-ts 编译器,用 TypeScript 编写,带有 tsc-ts 命令行和 --api 服务器。 packages/tsgo 与测试进行比较的 tsgo 参考版本(其命令行和每阶段驱动程序)。任务使用 Turborepo 运行。 apps/web 包含 tsc-ts 编译器指南。 npm run dev:web npm run build:web Node.js 24+ 和 npm Go 1.26 scriptc 主机:macOS、Linux 或 Windows,可使用 clang 链接 npm ci npm run fetch:upstream # 在固定提交处克隆 tsgo npm run build # tsc-ts (packages/tsc-ts/dist) 的节点构建和文档站点 npm run build:oracle # tsgo 参考构建于packages/tsgo/dist package.json 中,固定 scriptc 0.3.5 及其 @scriptc/threads 包。使用任何其他版本构建都会失败。 packages/tsc-ts/src/compiler 是编译器,从 tsgo 7.0.2 移植为惯用的 TypeScript。每个部分都与 TypeScript 测试语料库上的 tsgo 进行比较(大约 12,500 个文件,拆分多文件案例后为 17,000 个单元): 部分 与 tsgo 比较 状态扫描器标记、值、错误、重新扫描、JSDoc 所有文件匹配解析器和 AST 树、诊断、API 源文件编码 所有单元匹配 Binder 符号、表格、流程图、名称解析 所有单元匹配模块解析结果、包 ID、 --traceResolution 所有请求匹配 tsconfig.json 和程序 --showConfig 、 --listFilesOnly 、 --explainFiles 所有情况匹配 命令行和选项输出、错误、退出代码、 --locale 所有情况匹配 诊断目录消息、13 个翻译、输出格式全部匹配 JavaScript 发出发出的文件、39 个选项集 所有比较单元匹配 声明发出 .d.ts 和 .d.ts.map 输出、声明错误 所有单元匹配 --build 、 --incremental输出、 .tsbuildinfo 、发出的文件、 --watch 所有场景匹配 每个文件的类型检查器诊断所有文件匹配 语料库脚本位于 packages/tsc-ts/scripts ( *-corpus.mjs ) 中。 tsc-ts --api 通过 stdin 和 stdout 提供与 TypeScript 7.0.2 的 tsc --api 相同的 API,因此驱动 tsc --api 的工具(例如 scriptc)可以改为运行 tsc-ts。 npm run build -w tsc-ts node packages/tsc-ts/dist/tsc-ts/src/main.js --api --cwd path/to/project Native 构建从可执行文件的目录或 TSC_TS_LIB_DIR 读取 lib 文件: npm run build:native -w tsc-ts # packages/tsc-ts/dist/tsc npm run build:native:dev -w tsc-ts # 未优化,构建速度更快 TSC_TS_LIB_DIR=upstream/typescript-go/internal/bundled/libs packages/tsc-ts/dist/tsc -p path/to/project TSC_TS_BIN=packages/tsc-ts/dist/tsc 运行对其进行本机构建的 tsc-ts 测试。服务器根据 tsc --api 7.0.2 响应逐个响应进行检查,并且 scriptc 使用其中一个构建相同的程序。它在 tsc-ts 编译器上运行,本地运行或在 Node 下运行。支持的语言服务方法: getCompletionsAtPosition 、 getJsDocTags 、 getDocumentationComment 、 getReferencesToSymbolInFile 、 getReferencedSymbolsForNode 和 getSignatureUsages 。与 tsc --api 一样,需要自动导入的完成(全局标识符、导入语句、详尽的开关案例)报告完成列表需要自动导入。不支持分析方法( startCPUProfile 、 stopCPUProfile 、 saveHeapProfile )。 npm test # 比较 tsc-ts 与 tsgo npm run bench -w tsc-ts # tsc-ts 与 tsgo 和 TypeScript 的 JavaScript 编译器的时间 npm run lint # oxlint npm run format # oxfmt Apache-2.0 .有关 TypeScript-Go 和其他第三方声明,请参阅 THIRD_PARTY_NOTICES.md。
这篇文章对您有帮助吗?
订阅66必读
每日精选科技资讯,直达你的邮箱