ESLint добавляет поддержку ES2020


Утилита линтинга JavaScript с открытым исходным кодом ESLint была обновлена основной новой версией, за которой последовало несколько незначительных обновлений. ESLint 7 добавляет поддержку ES2020, удаляет поддержку Node.js версии 8 и имеет ряд улучшений для взаимодействия с разработчиками.

ESLint добавляет поддержку ES2020

ESLint можно использовать для анализа кода с помощью линтинга, типа статического анализа. Он был создан, чтобы позволить разработчикам создавать свои собственные правила линтинга, поэтому все правила полностью подключаемы. Правила по умолчанию написаны так же, как и правила любого плагина. ESLint — это проект OpenJS Foundation.

Основные изменения в новой версии начинаются с добавления поддержки ES2020. Учитывая относительно незначительные изменения в ES2020, изменения в ESLint в значительной степени были изменениями правил для добавления поддержки ES2020 BigInt. Последний выпуск также добавляет поддержку синтаксиса ES2020 для нескольких языковых функций в синтаксическом анализаторе по умолчанию и основных правилах, включая нулевой оператор объединения и import.meta. Разработчики говорят, что им известно, что дополнительная поддержка цепочки по-прежнему отсутствует, и они работают над этим, чтобы добавить ее в следующий второстепенный выпуск.

Еще одно улучшение — это новый класс ESLint, который предоставляет асинхронный API, который является альтернативой классу CLIengine. Это блокирует реализацию таких функций, как параллельный линтинг и поддержка модулей ES в общих конфигурациях/парсерах/плагинах/средствах форматирования. Новый класс ESLint предоставляет асинхронный API, который ядро ESLint будет использовать с этого момента. Разработчики говорят, что CLIEngine останется в ядре в обозримом будущем, но может быть удален в будущей основной версии.

Другим важным изменением является прекращение поддержки Node.js 8, срок действия которой истек в декабре 2019 года. Воспользовавшись этим изменением, разработчики переместили десять специальных правил Node.js из ядра в eslint-plugin-node плагин.

Выпуск 7.0 ESLint медленно появлялся по стандартам ESLint, и первоначальный создатель ESLint, Николас Закас, извинился, сказав:

На выпуск ESLint v7.0.0 потребовалось много времени. Мы знаем, что пятимесячная задержка между выпусками не очень хороша для проекта или сообщества. Мы ищем, что пошло не так, и как не повторять это для будущих основных выпусков. стараемся ограничить выпуск основных выпусков до одного раза в год. Мы стараемся делать регулярные обновления каждые две недели, а мы не делали этого уже пять месяцев. Это то, что нам нужно исправить.


Добавить комментарий