Перейти к содержимому
Все статьи
Новости

TypeScript 7.1 Beta: у компилятора на Go появился публичный API

23 октября 2026 г.· 5 мин чтения
Сколько будет стоить ваш проект?Рассчитать стоимость
Время полной сборки VS Code: TypeScript 6 — 125,7 секунды, TypeScript 7 — 10,6 секунды, ускорение в 11,9 раза.
Пример ускорения компилятора на Go по данным InfoQ. Открыть схему крупнее

20 октября 2026 года Microsoft выпустила TypeScript 7.1 Beta. Это первое крупное обновление после TypeScript 7.0 — версии, в которой компилятор переписали с JavaScript на Go и ускорили примерно в 10 раз. Главное в 7.1 — публичный программный API и «мапперы содержимого» для файлов .vue, .svelte и .mdx. Именно их ждали линтеры и инструменты фреймворков, чтобы перейти на быстрый компилятор. Новость касается всех проектов на TypeScript, а это большинство современных фронтендов и Node.js-бэкендов.

Что было в TypeScript 7.0

TypeScript 7.0 вышел 8 июля 2026 года. По данным InfoQ, полная сборка VS Code заняла 10,6 секунды вместо 125,7 секунды на TypeScript 6 — ускорение в 11,9 раза. Slack сообщил о сокращении проверки типов в CI примерно с 7,5 до 1,25 минуты.

Но у 7.0 было ограничение: стабильного программного API не было. Поэтому typescript-eslint и инструменты для Vue, Svelte, Astro, MDX и Angular не могли работать с новым компилятором. Многие команды оставались на TypeScript 6 или держали обе версии рядом через пакет `@typescript/typescript6`.

Что нового в 7.1 Beta

  • Публичный API. Он разделён на точки входа: `typescript/sync`, `typescript/async`, `typescript/fs`, `typescript/ast` и другие. Поддерживает снимки, которые можно обновлять по частям, виртуальные файловые системы и объекты Disposable для конструкции `using`.
  • Мапперы содержимого. Плагины, которые дают TypeScript виртуальное представление файлов .vue, .svelte или .mdx. Подключаются в `tsconfig.json` и требуют флага `--runExternalCode`.
  • Атрибуты импорта в объявлениях модулей. Можно описать модули вида `declare module "*" with { type: "css" }`.
  • Импорты фазы исходника. `import source` для WebAssembly-модулей.
  • Цель ES2026. `--target es2026` и `--lib es2026` стали стабильными: в библиотеке типов есть `Math.sumPrecise()`, `Array.fromAsync()`, методы hex и base64 у Uint8Array.
Скорость проверки типов: TypeScript 7.0 и 7.1 Beta (данные Microsoft, 4 потока, --noEmit)
Кодовая базаУскорениеСнижение памяти
bluesky1,2×15,8%
mui-docs1,9×49,6%
sentry1,3×20,8%
t3code-server1,4×24,6%
vscode1,2×17,2%
Четыре шага: перейти на TypeScript 6.0, попробовать 7.0 в CI, проверить 7.1 Beta с линтером и фреймворком, перейти после финального релиза 7.1.
Порядок перехода, который рекомендует Microsoft, с учётом 7.1. Открыть схему крупнее

Что может сломаться

Microsoft предупреждает о двух изменениях:

  • типы DOM теперь генерируются, и это может повлиять на проверку типов в браузерном коде;
  • дистрибутивные условные типы проверяются строже: некоторые существующие ограничения начнут давать ошибки.

При переходе с 6.x на 7.x действует и то, что было в 7.0: устаревшие в 6.0 опции стали ошибками, а `strict` и `esnext` включены по умолчанию.

Сроки

Команда обещает релиз-кандидат примерно через месяц и финальную версию вскоре после него. Ориентир — конец ноября или декабрь 2026 года, но это план, а не обещание даты.

Кого касается

  • проектов на Vue, Svelte, Astro, Angular и MDX, которые не могли перейти на 7.0;
  • команд с typescript-eslint в CI;
  • больших монорепозиториев, где проверка типов занимает минуты;
  • авторов инструментов, которые используют API компилятора.

Что делать

  1. Если вы на TypeScript 5.x — сначала перейдите на 6.0: Microsoft советует этот промежуточный шаг.
  2. Если вы на 6.0 — попробуйте 7.0 на CI в отдельной ветке и замерьте время сборки.
  3. Если 7.0 не подошла из-за линтера или фреймворка — проверьте 7.1 Beta: `npm install -D typescript@beta`.
  4. Не ставьте бету в продакшен-сборку: используйте её для проверки совместимости.
  5. Следите за поддержкой 7.1 у typescript-eslint и плагинов вашего фреймворка.

Как замерить выигрыш на своём проекте

Замер занимает час, и его стоит сделать до решения о переходе.

  1. Запишите текущее время проверки типов в CI и локально: `tsc --noEmit` с замером времени.
  2. В отдельной ветке поставьте TypeScript 7.0 (или 7.1 Beta для проектов с Vue и Svelte) и повторите замер.
  3. Посмотрите, сколько ошибок выдал новый компилятор. Если их десятки — это последствия строгого режима по умолчанию и удалённых опций, их исправление и есть основная работа по переходу.
  4. Проверьте потребление памяти: в 7.1 Beta оно снизилось на 15–50% на тестовых проектах Microsoft, это важно для небольших CI-машин.
  5. Для ограниченных сред есть флаг `--singleThreaded`, а параллелизм настраивается флагами `--checkers` и `--builders`.

Если выигрыш — секунды, переход можно отложить до планового обновления. Если минуты на каждую сборку — он окупится быстро.

Что это даёт бизнесу

Для заказчика выгода не в новых функциях языка, а во времени. Если проверка типов в CI идёт 7 минут, а станет 1–2 минуты, каждая правка быстрее проходит путь до сайта. Для команды из нескольких разработчиков это часы в неделю. Плюс редактор кода быстрее подсказывает ошибки, и их меньше доходит до тестов.

Наше мнение

Мы считаем переход на TypeScript 7 одной из немногих «бесплатных» оптимизаций разработки: код почти не меняется, а скорость растёт кратно. Но спешить с бетой не стоит. Что мы советуем клиентам: сейчас — довести проекты до TypeScript 6.0, если они ещё на 5.x; после финального 7.1 — переходить, начиная с CI.

Материалы для проверки

Если нужна реализация

Состав работ зависит от текущего проекта и подтверждённой причины. Можно обсудить диагностику или разработку подходящего решения.

Разработка веб-приложений Доработка и развитие проектов

Связанный материал: Next.js для бизнеса: почему мы выбираем этот стек

Вопросы и ответы

Что нового в TypeScript 7.1 Beta?

Публичный API компилятора на Go, плагины для файлов .vue, .svelte и .mdx, стабильная цель ES2026, импорты с атрибутами в объявлениях модулей и импорты фазы исходника.

Насколько TypeScript 7 быстрее?

По данным Microsoft и InfoQ, полная сборка ускоряется в 8–12 раз по сравнению с TypeScript 6. В 7.1 Beta добавилось ещё 1,2–1,9 раза к 7.0 на тестовых проектах.

Когда выйдет финальный TypeScript 7.1?

Microsoft планирует релиз-кандидат примерно через месяц после беты от 20 октября и финальную версию вскоре после него.

Почему проект на Vue не перешёл на TypeScript 7.0?

В 7.0 не было стабильного программного API, на который опираются инструменты Vue и typescript-eslint. Он появился в 7.1.

Можно ли держать TypeScript 6 и 7 одновременно?

Да. Пакет @typescript/typescript6 даёт команду tsc6 и API версии 6.0, его подключают через псевдонимы npm.

Сломается ли код при переходе?

Устаревшие в 6.0 опции стали ошибками, strict включён по умолчанию, а в 7.1 строже проверяются дистрибутивные условные типы. Поэтому сначала переходите на 6.0 и исправляйте предупреждения.

Нужна помощь с проектом?

Обсудим задачу и предложим решение — от сайта до SaaS и защиты.

Связаться