Главная
Оглавление
Что нового?
Скачать Pdf
Что нового?
4.9@beta
September 23, 2022
Оператор satisfies
Улучшение работы оператора in
Ужесточение проверок на NaN
4.8@beta
June 21, 2022
Улучшение пересечений, объединений и механизма сужения типов
Улучшение вывода для infer в литеральном строковом типе
Улучшение производительности для флагов --build, --watch и --incremental
Возникновение ошибки при проверке на равенство с литералом объектного типа
Ужесточение правил вывода типов
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Неограниченные генерики больше не совместимы с {}
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Типы больше не могут быть импортированы и экспортированы в JavaScript файлах
4.7@beta
April 8, 2022
Модификаторы вариантности параметров типа in и out
Анализ потока управления для вычисляемых свойств
Улучшение вывода функций
Конкретизация ссылки на функцию
Ограничение infer с помощью extends
typeof для #приватных членов
Настройка разрешения поиска модулей с помощью moduleSuffixes
Разрешение импорта и экспорта только типа с помощью resolution-mode
Поддержка ECMAScript модулей в Node.js
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Параметры типа больше не совместимы с {} в strictNullChecks
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Метод readFile класса LanguageServiceHost теперь обязательный
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Свойство length у кортежа теперь readonly
4.6
February 28, 2022
Выполнение кода в конструкторе потомке до вызова super
Сохранение потока управления при деструктуризации размеченных объединений
Улучшение проверки глубоких рекурсии
Улучшение вывода для индексных значений
Анализ потока управления для остаточных параметров
Добавление es2022
Анализатор трассировки TypeScript
Избавление от бесполезных аргументов при компиляции jsx
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Остаточные параметры исключают некоторые члены объекта
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Постоянная проверка грамматики и биндингов
4.5@beta
October 1, 2021
Поддержка ECMAScript модулей в NodeJs
Поддержка lib из node_modules
Тип Awaited
Указание шаблонного литерального строкового типа в качестве дискриминанта
Стабильная поддержка --module es2022
Исключение хвостовой рекурсии на условных типа
Отключение исключения неиспользуемого импорта
Совмещение import type с обычным import
Проверка наличия ECMAScript приватного поля
Утверждение импорта
Ускорение загрузки с помощью realPathSync.native
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменения в lib.d.ts
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменения от вывода Awaited
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Проверка корневых параметров комилятора в tsconfig.json
4.4
August 26, 2021
Анализ потока для результата условного выражения
Типы symbol и literal template string в индексной сигнатуре
Изменение типа ошибки в блоке catch и флаг --useUnknownInCatchVariables
Типы необязательных свойств теперь более точные
Статические блоки в классах
Модернизация вывода tsc --help
Улучшение производительности
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение поведения контекста для функций
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение проверки await для функций
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Абстрактные поля больше не могут быть инициализированы
4.3@beta
April 1, 2021
Отдельные типы аксеcсоров
Модификатор override и флаг --noImplicitOverride
Улучшение работы шаблонного строкового типа
Изменение поведения для объекта Promise в условных выражениях
Индексные сигнатуры класса
Расширение возможностей ECMAScript приватного модификатора и флаг --useDefineForClassFields
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменения в lib.d.ts
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Enum больше нельзя сравнивать с произвольными числами
4.2
February 23, 2021
Изменение поведения указания остаточных типов в кортеже
Изменение вывода для псевдонимов типов
Ужесточение правил проверки для in-оператора
Новый флаг --noPropertyAccessFromIndexSignature
Модификатор abstract для описания типа конструктора
Понимание структуры проекта с флагом --explainFiles
Проверка вызова функций в логических выражениях
Смягчение правил между необязательными членами и строковых индексных сигнатур
Деструктурированные переменные можно явно пометить как неиспользуемые
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Обновление lib.d.ts
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] noImplicitAny и новое поведение для оператора yield тип которого не может быть установлен явно
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Проверка вызова функций в условных операторах приурочена к флагу --strictNullChecks
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Лимит для механизма spread в кортежах
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение правил для оператора in
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Расширение .d.ts теперь нельзя использовать в путях импорта
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение типа параметра функции обратного вызова передаваемой в качестве аргумента функции visitNode
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Отмена поведения литерального вывода шаблона из версии 4.2@beta
4.1@beta
September 18, 2020
Изменение механизма проверки индексной сигнатуры
Шаблонный литеральный строковый тип
Переопределение ключей в сопоставленных типах
Рекурсивные условные типы
paths без baseUrl
checkJs не требует активации allowJs
jsx фабрики для React 17
Поддержка тега @see для JSDoc
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] abstract больше не совместим с async
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] any и unknown доминируют в ложных позициях
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] --declaration и --outFile требуют имя корневого пакета
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] параметры resolve теперь обязательные
4.0
August 20, 2020
Вариативный кортеж
Помеченные элементы кортежа
Операторы присваивания короткого замыкания
Вывод типов для полей класса по параметрам конструктора
unknown как тип исключения блока catch
--noEmit совмещенный с --incremental
Пользовательская фабрика jsx фрагментов
Добавление комментарной директивы @deprecated
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение lib.d.ts
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Переопределение аксессоров полем и наоборот теперь является ошибкой
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Операнды для delete должны быть необязательными
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение фабричного api Nodejs
3.9
May 12, 2020
Улучшение вывода типа для Promise.all
Сокращение скорости компиляции
Комментарная директива @ts-expect-error
Проверка вызова функции в тернарном условном операторе
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Изменение поведения для оператора Non-Null при совместном использовании с оператором опциональной цепочки
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Возникновение ошибки при наличии в строке закрывающей фигурной или угловатой скобки в файлах с расширением TSX
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Повышение уровня проверки необязательных полей для типов определяющих тип пересечение
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Определение типа пересечения дискриминантными полями
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Параметр типа расширяющий тип any больше не наследует его характеристики
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] get и set больше не перечисляемы
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] export * теперь всегда включается в сборку
3.8
February 20, 2020
Импорт и экспорт только типа и флаг --importsNotUsedAsValues
Закрытые поля ECMAScript
await высшего уровня
Реализация новой формы ре-экспорта
Новая конфигурационная группа параметров watchOptions
Новый флаг --assumeChangesOnlyAffectDirectDependencies
Модификаторы JSDocs
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Более строгие проверки объединений имеющих с индексной сигнатурой
[КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ] Тип object в JSDoc при активном флаге --noImplicitAny больше не расценивается как any
3.7
November 5, 2019
Оператор опциональной последовательности (?.)
Оператор объединения со значением null (??)
Утверждение в сигнатуре (Signature Assertion)
Улучшена поддержка для типа never возвращаемого из функций
Проверка не вызванных функций
Рекурсивность для псевдонимов типов
Совместное использование флагов --declaration и --allowJs
@ts-nocheck в TypeScript файлах
3.6
August 28, 2019
Повышение типобезопасности генераторов
Добавление хелпера имитирующего механизм spread array при компиляции в ecmascript ниже версии 6 при неактивном флаге --downlevelIteration
Расширение системы типов типами представляющими структуры данных только для чтения
Строковой идентификатор функции-конструктора
Расширение вывода об ошибках при работе с Promise
Слияние одноименных классов и функций из окружающего контекста
Добавлена поддержка Unicode для идентификаторов
Поддержка import.meta для SystemJS
get и set в окружающем контексте
Api для поддержки --build и --incremental
Интеллектуальное определение синтаксиса авто-импорта
3.5
May 29, 2019
Вспомогательный тип Omit
Улучшение механизма проверки избыточных полей в объединённых типах (Union types)
Введение нового флага --allowUmdGlobalAccess
Улучшение механизма проверки объединенных типов
Улучшение механизма вывода типа высшего порядка для обобщенных конструкторов
Неявное ограничение обобщенных параметров типом unknown
Изменение правил для типа unknown и индексной сигнатуре
Изменение логики для Object.keys для версии es5
3.4
March 29, 2019
Опции компилятора --tsBuildInfoFile
Опции компилятора --incremental
Массивоподобные readonly типы
Расширенный тип ReadonlyArray
Привидение к константе (const assertion)
Проверка типов для globalThis
3.3
january 31, 2019
Повышение производительности сборки для команды --build --watch
Улучшение поведения для типов Union указанных в качестве параметров функции