Разработчики линтера ESLint рассказали о релизе версии 9.0. Команда проекта исправила известные ошибки и добавила новые функции. Кроме того, линтер теперь не поддерживает работу с Node.js 18.18.0 и 19.
В блоге ESLint предупредили разработчиков, что выпустили крупное обновление, поэтому оно может не подтянуться автоматически из npm. Проверить актуальную версию можно с помощью команды npm i eslint@9.0.0 --save-dev
. Кроме того, команда проекта отметила, что статус LTS находится у Node.js 20, поэтому версии 18.18 и 19 больше не поддерживаются.
Отдельно в релизе сообщили, что flat-конфигурации в ESLint используется по умолчанию, а формат eslintrc признали устаревшим. Если ваш проект пока не готов к миграции, то пока ещё можно продолжить использовать старый тип конфигурации. Для этого надо передать переменной среды ESLINT_USE_FLAT_CONFIG
значение false
. Новое правило влияет на разработчиков расширений, потому что под новую конфигурацию в ESLint пришлось многое переписать. Кроме того, в версии 9.0 появился инспектор файлов конфигурации, его можно запустить с помощью команды --inspect-config
.
Другие нововведения в ESLint 9.0:
Удалили поддержку форматеров
checkstyle
,compact
,jslint-xml
,junit
,tap
,unix
иvisualstudio
. Если вы их используете, то теперь придётся добавлять поддержку с помощью отдельных пакетов.Плагины
valid-jsdoc
иrequire-jsdoc
удалили и рекомендуют использовать вместо нихeslint-plugin-jsdoc
.В конфигурацию
eslint:recommended
добавили новые правила, которые команда проекта считает важными.Исправили ошибки в
eslint-scope
.Улучшили производительность опции
--quiet
, которая скрывает все предупреждения в консоли.При использовании flat-конфигурации запуск ESLint из командной строки без аргументов по умолчанию обработает текущий каталог.
Код ESLint опубликован на GitHub, а на сайте проекта находится подробное описание обновления, включая список исправленных ошибок.