microsoft / microsoft/TypeScript

Publish an official wasip1 (WASI) build artifact of tsgo

未关闭
#63,858 9 条评论 4 个 reaction 已指派 1 人 在 GitHub 查看

@jakebailey 已经在做这个了。

开始于 2026年7月15日。

Infrastructure Needs Investigation
主要语言
Go
星标
111k
派生
14.3k
平均合并
2 天 4 小时
30 天内合并 PR
132

描述

Request

Please consider publishing an official GOOS=wasip1 GOARCH=wasm build artifact of tsgo alongside the native platform binaries (npm @typescript/* platform packages / GitHub release assets).

Context

We embed JavaScript tooling in WebAssembly (WASI) environments and evaluated running the TypeScript 7 compiler there. Building from source works today with no patches:

GOOS=wasip1 GOARCH=wasm go build ./cmd/tsgo   # at tag typescript/v7.0.2, go1.26.4
  • One command, ~40s build, ~48.6 MB core module.
  • Runs under wasmtime (preview1): diagnostics are byte-identical to the native binary on our test projects, exit codes preserved.
  • Single-threaded as expected for this target (~12× native wall-clock in our samples — still practical for small/medium projects).
  • Known limitation we observed: wasm32's 4 GiB memory ceiling prices out very large programs (a type-fest-scale check needed ~6.6 GB natively).
Why an official artifact

The build is trivially reproducible, but an official artifact would give WASI/browser-adjacent consumers a supported, versioned binary instead of each project maintaining its own build pipeline, and would make regressions on this target visible to CI here rather than downstream.

Happy to share our verification receipts (diagnostic byte-comparisons vs the native binary) if useful.

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。