Рубріки: Новини

TypeScript 5.8 вийшов у бета-версії

Дмитро Сімагін

Microsoft перевела TypeScript 5.8 на стадію бета-тестування. Щоб почати роботу з бета-версією, розробники можуть виконати таку команду в NPM: npm install -D typescript@beta. Про це повідомляє InfoWorld.

Згідно з графіком випуску, реліз-кандидат має вийти 11 лютого, а стабільний реліз — 25 лютого. TypeScript 5.8 слідує за випуском TypeScript 5.7, який випущено в листопаді минулого року. 

Завдяки перевіреним поверненням для умовних і доступних типів TypeScript тепер підтримує обмежену форму перевірки умовних типів у операторах повернення. Це дозволить уникнути твердження типу. Проблема з твердженнями типу полягає в тому, що вони можуть подолати законні перевірки, які в іншому випадку виконав би TypeScript. У TypeScript 5.8, коли тип повернення функції є загальним умовним типом, TypeScript тепер буде використовувати аналіз потоку керування для загальних параметрів.

Microsoft відзначає деякі обмеження цієї функції. Наприклад, спеціальна перевірка відбувається лише тоді, коли один параметр пов’язаний із типом, який перевіряється, в умовному типі або якщо він використовується як ключ у індексованому типі доступу. При використанні умовного типу повинні існувати принаймні дві перевірки, з термінальною гілкою, включаючи never. Тип параметра має бути загальним і обмежуватися типом об’єднання. Загалом, перевірки не відбуватимуться, якщо певний тип пов’язано з параметром типу.

Інші функції, які з’являться в TypeScript 5.8, включають наступне:

  • Впроваджується оптимізація, щоб зменшити час створення програми, а також для оновлення програми на основі зміни файлу в –-watch сценарії режиму або редактора. TypeScript тепер уникає будь-яких відокремлень масивів, які можуть бути залучені під час нормалізації шляхів. Крім того, коли вносяться зміни, які принципово не змінюють фундаментальну структуру проекту, TypeScript тепер уникає повторної перевірки параметрів, наданих йому.
  • TypeScript додає підтримку require() модулів ECMAScript у –-module nodenext. Якщо –-module nodenext ввімкнено, TypeScript уникатиме видачі помилок під час require() викликів файлів ESM.
  • TypeScript представляє стабільний –-module node18 прапор. Користувачі Node.js 18 можуть скористатись прапором, що пропонує стабільну точку відліку, яка не включає певну поведінку, яка є в –-module next. Серед цих дій є поведінка require() модулів ECMAScript, яка заборонена в node18, але дозволена в nodenext.
  • TypeScript вводить –-erasableSyntaxOnly прапор. Якщо його ввімкнено, TypeScript дозволить використовувати лише конструкції, які можна стерти з файлу, і видасть помилку, якщо з’являться конструкції, які неможливо стерти.
  • Node.js 22 більше не приймає твердження імпорту за допомогою синтаксису assert. І якщо –module nodenext ввімкнено у TypeScript 5.8, то TypeScript видає помилку, якщо зустрічає твердження імпорту.

Останні статті

«Ваучери на навчання до 30 000 грн»: українським ветеранам пропонують переходити в IT

Мінцифри анонсує програму Державної служби зайнятості, яка передбачає видачу ваучерів на навчання за ІТ-спеціальностями для…

15.09.2025

Портрет українського айтівця: частка нетехнічних фахівців зростає, джунів і мідлів меншає

44% українських IT-спеціалістів відносять себе до Software Engineer, на другому місці —  тестувальники (17%), ще…

15.09.2025

Windows 11 отримає вбудований тест швидкості інтернету

Microsoft може незабаром додати до Windows 11 вбудований інструмент перевірки швидкості інтернету. За словами джерела,…

15.09.2025

Replit представив новий інструмент для вайб-кодингу Agent 3

Стартап Replit випустив Agent 3, автономну систему генерації коду, створену для розробки програмного забезпечення без…

15.09.2025

Основний розробник Ethereum втратив всі кошти після того, як скачав фейкове розширення для редактора коду Cursor

Зловмисник на ім'я WhiteCobra націлився на розробників, які використовують редактори коду VS Code, Cursor і…

15.09.2025

В США відбулися перші змагання програмістів проти штучного інтелекту

У Сан-Франциско відбувся перший хакатон по кодингу, де змагалися програмісти та штучний інтелект. У заході…

12.09.2025