8 июля вышел TypeScript 7.0. Это самая крупная перестройка проекта за всю его историю: компилятор и тулинг целиком портировали на Go. Работа шла больше года и была главным приоритетом команды.
Что по цифрам
Полные сборки ускорились в 8–12 раз. На кодовой базе VS Code сборка упала со 125,7 до 10,6 секунд, у Sentry — со 139,8 до 15,7. Память просела на 6–26%.
Но интереснее не сборки, а редактор: открытие ошибки в VS Code сократилось с 17,5 секунд до 1,3. Плюс на тестах со Slack, Figma и Google падения language server'а стали реже на 60%, а зависшие команды — на 80%.
Что НЕ изменилось
Ни нового синтаксиса, ни нового тайпчекера. Код методично портировали, а не переписывали с нуля — логика проверки типов структурно идентична шестёрке. Прогнали ~20 000 тестов: из ~6000 кейсов, где TS 6 ругается, TS 7 промолчал только в 74.
Это релиз про производительность, которому просто досталась мажорная версия.
Что сломается
→
target: "es5" и es3 больше нет. Минимум — ES2015. Всё, что в TS 6 было деприкейтом, в семёрке стало жёсткой ошибкой.→
downlevelIteration можно смело выкидывать из tsconfig.→ Главная боль: стабильного программного API пока нет. typescript-eslint, ts-morph, кастомные трансформеры, webpack-лоадеры — всё это не гарантированно работает с Go-компилятором. Новый API обещают в 7.1.
Как переезжать
npm install -D typescript
Ставится обычный
tsc, только теперь это нативный бинарник. Для тулинга, которое ещё не готово, есть пакет @typescript/typescript6 — он даёт бинарь tsc6 и позволяет держать шестёрку рядом без конфликтов имён.Для VS Code вышло отдельное расширение, Visual Studio включает семёрку сам по воркспейсу.
Дальше
Команда возвращается к фичам и эргономике. Обещают релизы каждые 3–4 месяца, как раньше. Из интересного в планах — WASM-сборки, что откроет нормальный тайпчек в браузерных редакторах и плейграундах.
Если у вас проект на webpack — возможно, стоит подождать 7.1. Если Vite/esbuild и современный tsconfig — можно пробовать прямо сейчас.
