tg-me.com/angular_fox/1185
Last Update:
✨ Анонс TypeScript 5.8
Команда TypeScript представила версию 5.8 с новыми возможностями и улучшениями. Вот ключевые изменения:
Улучшенная проверка условий в return
Теперь TypeScript точнее анализирует условные выражения в операторах return. Это помогает находить ошибки, когда ветки возвращают несовместимые типы. Например, если функция должна вернуть объект URL, а одна из веток возвращает строку, TypeScript сразу укажет на проблему.
Поддержка require() для ESM в --module nodenext
В Node.js 22 появилась возможность использовать require() для загрузки ESM-модулей из CommonJS. TypeScript 5.8 поддерживает это поведение с флагом --module nodenext, что упрощает переход на ESM для разработчиков библиотек без дублирования кода.
Флаг --erasableSyntaxOnly для чистого синтаксиса
Новый флаг выявляет конструкции TypeScript, которые нельзя «стереть» в JavaScript (например, enum или параметры свойств в классах). Это полезно для совместимости с режимом Node.js, где TypeScript-файлы запускаются напрямую.
Управление заменой стандартных библиотек (--libReplacement)
Флаг --libReplacement позволяет отключить автоматическую замену встроенных типов (например, dom) на кастомные из @typescript/lib-*. Это ускоряет работу, если вы не используете такую замену.
Сохранение вычисляемых свойств в .d.ts-файлах
Исправляет генерацию деклараций для вычисляемых свойств в классах.
Оптимизации скорости работы
Улучшена обработка путей и валидация настроек проекта. Это ускоряет загрузку крупных проектов и делает реакцию на изменения в режиме --watch более отзывчивой.
Важные изменения в синтаксисе
При использовании --module nodenext импорт с assert теперь вызывает ошибку — вместо него нужно использовать with (актуально для Node.js 22+).
👉 https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/
BY 🦊 Angular Fox 🚀 — русскогорящие новости сообщества

Share with your friend now:
tg-me.com/angular_fox/1185