TypeScript 5.8
TypeScript 5.8 がリリース。
https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/
次の変更などが含まれる。
- require(esm)のサポート
- Node.js v22 でサポートされた require(esm)を、
--module nodenextでサポートした。
- Node.js v22 でサポートされた require(esm)を、
erasableSyntaxOnlyフラグの追加- Node.js v22 では TypeScript をそのまま実行できる
experimental-strip-typesフラグが追加され、Node.js v23 ではフラグなしで実行できるようになっている。 erasableSyntaxOnlyフラグを利用すると、単純な型注釈では削除できないenumやnamaespaceなどの構文をエラーとして扱うことが出来る。
- Node.js v22 では TypeScript をそのまま実行できる
libReplacementフラグの追加- TypeScript には標準の型定義を差し替える仕組みがあり、このために常に node_modules を監視している。
libReplacementフラグを利用することで、この挙動を無効化し負荷を軽減できる。- 今後デフォルトが false になる可能性があるため、利用している場合は明示的に設定することが推奨されている。