github-trend-summarizer

microsoft/typescript-go 整理メモ

このリポジトリは何?

何が嬉しいの?(既存手段との比較)

制約:現時点は preview。CHANGES.md にある通り JSDoc 周りなど一部仕様は意図的に簡素化されており、API・Watch モードなどは “in progress / prototype” ステータス。

使うときの流れ

  1. インストール(ユーザー視点)
    npm install @typescript/native-preview
    npx tsgo            # tsc と同じ感覚で呼ぶ
    npx tsgo -p tsconfig.json
    npx tsgo --lsp      # LSP サーバとして起動
    
  2. VS Code で試す:Marketplace から “TypeScript (Native Preview)” 拡張を入れ、settings に
    { "js/ts.experimental.useTsgo": true }
    

    を追加すると、組み込みの tsserver の代わりに tsgo の LSP が言語サービスを担当。

  3. 動作内容cmd/tsgo/main.gointernal/execute.CommandLine が CLI エントリ。引数を tsoptions で解析し、compiler パッケージでプログラム生成 → checker で型検査 → transformers/printer で JS/.d.ts を出力、という本家 tsc と対応するパイプライン。
  4. コントリビュータ視点
    • go build ./cmd/tsgo で CLI をビルド。タスクランナーは Herebyfile.mjs(hereby)。
    • TS 本家のテストは _submodules/TypeScript を参照しつつ testdata/ / internal/testrunner で実行(baseline 比較方式)。
    • 互換性の境界は CHANGES.md に列挙(Closure 系 JSDoc 削除など)。バグ報告は README の “done / in progress / prototype / not ready” ステータスを確認してから行う運用。

要約すると、「tsc の完全互換をうたう高速ネイティブ実装 + LSP」を段階的に仕上げるためのモノレポで、ユーザーは npx tsgo や VS Code 拡張経由でそのまま試せる、という位置づけ。