TypeScript 6.0 RC — последний JavaScript-компилятор и мост к Go

6 марта 2026 года команда Microsoft выпустила Release Candidate TypeScript 6.0 — и описала его необычно честно: это не feature-релиз, это переходный мост. TS 6.0 станет последней версией компилятора написанной на JavaScript. Всё что будет после — TypeScript 7.0 — это нативный порт на Go.
npm install -D typescript@rcПочему Go и зачем это вообще нужно
Проблема накапливалась годами. TypeScript изначально писался командой на JavaScript — прагматичное решение для своего времени. Но по мере того как проекты росли до сотен тысяч строк, а TypeScript стал применяться и во фронтенде, и в Node.js-бэкендах, и в монорепах — компилятор начал становиться узким местом. В крупных кодовых базах tsc мог работать несколько минут.
Project Corsa — кодовое название TypeScript 7.0 — это полный переписыванием компилятора и language service на Go. Нативный бинарный файл вместо Node.js как прослойки между языком и ОС. Плюс распараллеливание через shared-memory multithreading — то что в JS-рантайме недоступно в принципе.
Предварительные бенчмарки показывают 10-кратное ускорение на большинстве проектов.
Что меняется в TS 6.0 прямо сейчас
TS 6.0 — это прежде всего уборка технического долга и выравнивание с 7.0. Изменения в основном про то что убирается, а не добавляется.
Strict mode теперь по умолчанию
Флаг alwaysStrict больше не нужно прописывать явно — весь код теперь считается работающим в JavaScript strict mode. Если у тебя есть легаси-код с зарезервированными словами вроде await, static, private или public как обычными идентификаторами — нужно переименовать.
ESM по умолчанию, ES5 уходит
Дефолтный target теперь es2025, дефолтное разрешение модулей — ESM. AMD, UMD, baseUrl и --outFile — всё это депрецировано в TS 6.0 и будет полностью убрано в TS 7.0.
Логика простая: ES5 нужен крайне редко, современные бандлеры давно занимаются конкатенацией файлов лучше чем --outFile, а AMD/UMD — история из эпохи до npm.
Как мигрировать заранее
Команда рекомендует: если видишь deprecation warnings после обновления до TS 6.0 — исправь их до того как перейдёшь на TS 7.0. Иначе нативный компилятор может повести себя неожиданно.
// tsconfig.json — убираем устаревшие опции
{
"compilerOptions": {
// Убрать: "target": "es5"
// Убрать: "module": "amd"
// Убрать: "baseUrl": "./src"
// Убрать: "outFile": "./dist/bundle.js"
// Заменить на:
"target": "es2025",
"module": "esnext",
"moduleResolution": "bundler"
}
}Что уже работает в TS 7.0 preview
Параллельно с RC шестёрки Microsoft продолжает развивать нативный компилятор. Для тех кто хочет попробовать прямо сейчас — он доступен через @typescript/native-preview и уже интегрирован в Visual Studio 2026 Insiders.
По данным команды: из ~20 000 тест-кейсов компилятора, в 6000 из которых должна быть хотя бы одна ошибка — нативный TS 7.0 находит ошибки в 5926 случаях. 74 расхождения остаются, но для проверки ошибок в реальном проекте компилятор уже пригоден.
TypeScript 6.0 — это не то куда мы идём, а как мы туда попадём. Почисти конфиги сейчас — переход на нативный компилятор будет в разы проще.
Что это значит для ежедневной разработки
В краткосрочной перспективе — минимальные изменения. RC совместим с TS 5.9 по type-checking поведению. Большинство проектов обновятся без проблем.
В среднесрочной — когда выйдет стабильный TS 7.0 — разработчики на крупных проектах почувствуют разницу физически. Тот самый спиннер в терминале который крутится пока идёт полная проверка типов — исчезнет или станет заметно короче.
Node.js 22.18+ уже поддерживает TypeScript нативно без transpiler-прослойки. Go-компилятор логично дополняет эту картину: весь стек движется в сторону нативной скорости без лишних слоёв.