TypeScript 6.0 is now available as a bridge release between TypeScript 5.9 and the upcoming native Go-based TypeScript 7.0. Key new features include improved type inference for this-less functions, support for subpath imports starting with #/, combining --moduleResolution bundler with --module commonjs, new --stableTypeOrdering flag for 6.0-to-7.0 migration, es2025 target/lib support, built-in Temporal API types, and Map.getOrInsert/getOrInsertComputed types. The release also introduces significant breaking changes and deprecations to modernize the ecosystem: strict mode is now true by default, module defaults to esnext, types defaults to [], rootDir defaults to the tsconfig directory, and legacy options like --moduleResolution node, --baseUrl, --outFile, AMD/UMD/SystemJS module targets, and target: es5 are deprecated or removed. TypeScript 7.0 (native Go port) is nearly complete and expected within months.

31m read timeFrom devblogs.microsoft.com
Post cover image
Table of contents
What’s New Since the Beta and RC? Copy linkLess Context-Sensitivity on this -less Functions Copy linkSubpath Imports Starting with #/ Copy linkCombining --moduleResolution bundler with --module commonjs Copy linkThe --stableTypeOrdering Flag Copy linkes2025 option for target and lib Copy linkNew Types for Temporal Copy linkNew Types for “upsert” Methods (a.k.a. getOrInsert ) Copy linkRegExp.escape Copy linkThe dom lib Now Contains dom.iterable and dom.asynciterable Copy linkBreaking Changes and Deprecations in TypeScript 6.0 Copy linkPreparing for TypeScript 7.0 Copy linkWhat’s Next? Copy link

Sort: