TypeScript 7.0 正式リリース - Go製ネイティブコンパイラで約10倍速、6.0からの移行の要点

TypeScript 7.0 正式リリース - Go製ネイティブコンパイラで約10倍速、6.0からの移行の要点

作成日:
読了:9
更新日:
この記事を読む人におすすめPR / Amazonアソシエイト

当サイトは Amazon.co.jp を宣伝しリンクすることで紹介料を得る手段を提供する、Amazonアソシエイト・プログラムの参加者です。価格・在庫はリンク先の最新情報をご確認ください。

2026年7月8日、TypeScript 7.0 が正式リリースされました。2025年3月に「Project Corsa」として発表されたGo言語によるネイティブ移植が、約1年4か月を経てついに本流のtypescriptパッケージになった、TypeScript史上最大級の節目です。この記事では、公式アナウンスを一次ソースに、実測の速度・新しい並列化フラグ・6.0からの移行の要点を整理します。

Corsaの背景(なぜGoか・移植の方針)はTypeScript 7.0とProject Corsa、直前バージョンである6.0の破壊的変更はTypeScript 6.0の新機能と破壊的変更で解説済みなので、本記事は「正式リリースで確定した事実」と「いま何をすべきか」に絞ります。

何が起きたのか: コンパイラがJavaScript製からGo製に

TypeScript 7.0 は、コンパイラと言語サービスの全体をGoで書き直したネイティブ実装です。ゼロからの作り直しではなく既存実装からの忠実な移植で、型チェックのロジックは6.0と構造的に同一。そこにネイティブコードの速度と共有メモリ並列(パース・型チェック・emitの並列実行)が加わることで、公式は「多くの場合6.0の約10倍速」としています。

実測: 主要OSSでのコンパイル時間

公式アナウンスに掲載された実プロジェクトでの計測値です。

プロジェクトTS 6.0TS 7.0倍率
vscode125.7秒10.6秒11.9倍
sentry139.8秒15.7秒8.9倍
bluesky24.3秒2.8秒8.7倍
playwright12.8秒1.47秒8.7倍
tldraw11.2秒1.46秒7.7倍

メモリ使用量も同プロジェクト群で6〜26%改善。数字の桁が変わっているので、CIの型チェック待ちやローカルのtsc実行が「コーヒーを取りに行く時間」から「一瞬」になる規模感です。

エディタ体験も大きく変わります。VS Codeのコードベース(約150万行)でファイルオープンが17.5秒から1.3秒未満に短縮。言語サーバーの安定性も改善しており、公式は6.0比で失敗するコマンドを80%以上・サーバークラッシュを60%以上削減したとしています。

新しい並列化コントロール

ネイティブ化の恩恵を制御するフラグが追加されました。

  • --checkers: 型チェックのワーカー数(既定は4)
  • --builders: プロジェクト参照(project references)の並列ビルド数
  • --singleThreaded: 並列化を無効にする(デバッグや省リソース環境向け)

また--watchモードは、ParcelのファイルウォッチャーのGo移植ベースに刷新され、クロスプラットフォームで効率的になりました。細かい改善では、テンプレートリテラル型のUnicode扱いが自然になり、たとえば絵文字を含む文字列がサロゲートペアで分割されずコードポイント単位で扱われます。

6.0からの移行: 「6.0を先に」が公式ルート

7.0の型チェック・CLIの挙動は、stableTypeOrderingを有効にし非推奨フラグを使っていない6.0と互換になるよう設計されています。つまり移行手順は明快で、

  1. まずTypeScript 6.0へ上げて警告を潰すignoreDeprecations頼みをやめる)
  2. その後7.0へ上げる

という2段階が公式ルートです。6.0で「非推奨」だった設定群は7.0で削除・確定になりました。主なものだけ挙げます。

  • 既定値の変更: strict: truemodule: esnexttargetは最新安定版ECMAScript、noUncheckedSideEffectImports: truetypes: [](必要なパッケージを明示)、rootDir: ./
  • 削除: target: es5downlevelIterationmoduleResolution: node/node10/classicmodule: amd/umd/systemjs/nonebaseUrl
  • 固定: esModuleInteropallowSyntheticDefaultImportsはfalse不可、alwaysStrictは常にtrue、stableTypeOrderingは無効化不可

src配下にソースを置くプロジェクトは、rootDirの既定変更の影響を受けやすいので明示指定が安全です。

tsconfig.json(rootDir と types の明示例)
{
  "compilerOptions": {
    "rootDir": "./src",
    "types": ["node", "jest"]
  },
  "include": ["./src"]
}

インストールと6.0の併存

7.0からは通常どおりtypescriptパッケージが本体(Go製)になります。

インストール
# TypeScript 7.0(Go製ネイティブ)
npm install -D typescript
 
# TypeScript 6.0 を併用したい場合(tsc6 コマンドが入る)
npm install -D typescript@npm:@typescript/typescript6
 
# nightly
npm install -D typescript@next
  • VS Code: 専用拡張がMarketplaceにあり、VS Code本体へのネイティブ統合も予定
  • Visual Studio: 自動的にTypeScript 7が有効化
  • LSPベースのエディタ: Language Server Protocol経由でフル対応

注意: Vue / Astro / Svelte / Angular はまだ待ち

重要な注意点として、TypeScriptをプログラムAPIとして組み込むツール(Vue・MDX・Astro・Svelte・Angularなど)は、7.0時点では安定したプログラムAPIが未提供のためまだTypeScript 7を利用できません。公式はこれらのワークフローには6.0の継続利用を推奨しており、更新されたAPIはTypeScript 7.1で提供予定です。@typescript/typescript6が6.0系のコードベースへのアクセスを提供するのはこのためです。

フロントエンド基盤のネイティブ化はTypeScriptに限らず業界全体の流れで、ViteのRolldown移行Oxc/oxlint(Rust)、BunのZigからRustへの書き直しとも地続きの動きです。

まとめ

  • 2026年7月8日、TypeScript 7.0が正式リリース。Project Corsaの成果であるGo製ネイティブコンパイラが本流になった
  • 実測で7.7〜11.9倍のコンパイル高速化(vscode: 125.7秒→10.6秒)、メモリ6〜26%改善、エディタのファイルオープンは17.5秒→1.3秒未満
  • --checkers / --builders / --singleThreaded で並列度を制御。--watchもGo製ウォッチャーで刷新
  • 移行は「まず6.0で警告ゼロ→7.0へ」の2段階。strict既定化やbaseUrl削除など6.0の非推奨が確定
  • Vue/Astro/Svelte/Angular等の組み込み系は7.1のAPI提供まで6.0継続が公式推奨

「JavaScriptで書かれたTypeScript」の時代が終わり、日常の型チェックが桁違いに速くなる転換点です。まずは手元のリポジトリでnpm install -D typescriptして、CIの型チェック時間がどれだけ縮むか試してみてください。TypeScriptを含むNode.jsランタイム側の動向はNode.js 26の記事もどうぞ。

参考リンク

関連記事

TypeScript 6.0 の新機能と破壊的変更 - JavaScript製で書かれる最後のコンパイラ

TypeScript 6.0 の新機能と破壊的変更 - JavaScript製で書かれる最後のコンパイラ

10

TypeScript 6.0(2026年3月23日リリース)を公式アナウンスとリリースノートをもとに整理します。6.0 が「JavaScript製の最後のコンパイラ」であり 7.0(Go製・Project Corsa)へのブリッジである位置づけ、this を使わない関数の推論改善・#/ サブパスインポート・es2025 lib・Temporal 型などの新機能、そして strict や module/target の既定値変更、amd/umd や outFile の削除、module 名前空間構文や import assert の廃止といった破壊的変更、ignoreDeprecations や stableTypeOrdering による移行までを一次ソースでまとめます。

ES2026(ECMAScript 2026)の新機能 - Math.sumPrecise から Uint8Array の Base64 まで

ES2026(ECMAScript 2026)の新機能 - Math.sumPrecise から Uint8Array の Base64 まで

11

ES2026(ECMAScript 2026・第17版)で標準入りする新機能を、TC39 の確定リスト(finished-proposals)と公式仕様スナップショットを一次ソースに整理します。Math.sumPrecise、Error.isError、Iterator.concat、Map/WeakMap の getOrInsert(Upsert)、Uint8Array の Base64/Hex 変換、JSON.parse の source アクセスと JSON.rawJSON、Array.fromAsync の7機能をコード例つきで解説。さらに「using(明示的リソース管理)は ES2026 ではない」「RegExp.escape は ES2025」といった版の取り違えや、MDN の版表記の注意点まで扱います。