TypeScript становится нативным (Проект Corsa): ~10× быстрее компилятор и нативные превью

TypeScriptИнструментыDevTools

Основное обновление

Команда TypeScript компании Microsoft опубликовала нативный порт компилятора TypeScript и языкового сервиса (кодовое имя “Corsa”), реализованный на Go. Анонс и доступные превью показывают примерно порядок увеличения скорости для командной проверки типов и времени загрузки редактора для больших кодовых баз (бенчмарки, опубликованные командой, включают VS Code, Playwright и другие реальные проекты). План заключается в том, чтобы сохранить существующую линию компилятора на базе JS (6.x), пока нативный код не достигнет паритета, а затем выпустить нативную реализацию как TypeScript 7.0.

Почему это важно

Это практическое, не тривиальное изменение в основном рабочем процессе разработчиков. Более быстрый tsc и гораздо более отзывчивый языковой сервис уменьшают тайм-ауты CI, делают большие монорепозитории и кросс-проектные рефакторинги осуществимыми во время итераций разработчиков и снижают давление на память и время холодного старта редактора — все это напрямую влияет на продуктивность разработчиков в больших кодовых базах TypeScript. Миграция также изменяет операционные детали: нативный инструмент распространяется как бинарный файл/LSP (а не просто как пакет Node), поэтому ожидайте обновления CI/контейнерных образов, установки или упаковки другого бинарного файла tsc и проверки интеграций (пользовательские трансформеры, инструменты сборки, расширения редактора и любые инструменты, которые предполагали выполнение в среде Node). Поэтапный подход Microsoft (поддержка 6.x, пока нативный не достигнет паритета) означает, что команды могут тестировать превью поэтапно; но вам следует проверить превью на репрезентативных ветках или некритических сборках, чтобы выявить различия в поведении на ранней стадии и спланировать, когда обновить образы CI и настройки разработчиков.

Источник

Читать дальше