Релиз ESLint 7.0.0
Сегодня вышло мажорное обновление ESLint 7.0.0. Каких-то глобальных изменений нет, но есть много ломающих изменений, которые накопились со времени разработки шестой версии.
Основные изменения:
ЕSLint больше не будет работать на Node.js 8, так как эта версия устарела.
Изменены правила, поставляющиеся с ядром линтера: в eslint:recommended были добавлены правила no-dupe-else-if, no-import-assign и no-setter-return, правила, связанные с Node.js, объявлены устаревшими и перенесены в плагин eslint-plugin-node.
Проверка файлов по умолчанию будет подхватывать опцию overrides[].files без необходимости явного перечисления расширений с помощью команды --ext.
Начиная с этой версии, пути до файлов, передаваемые с помощью --config и --ignore-path, будут резолвиться относительно рабочей директории.
Обновлена стратегия разрешения пути до плагинов. Они будут резолвииться относительно директории, где находится основной файл eslint-конфига. Это сделано для удобства работы с такими конфигурациями, которые используют в разных проектах общий eslint-конфиг и набор плагинов.
Изменился набор файлов, который игнорируется по умолчанию. В новой версии без дополнительных настроек будут игнорироваться все директории node_modules, даже если они находятся в поддиректориях. Больше не будут игнорироваться bower_components/* и .eslintrc.js.
В служебные комментарии теперь можно добавлять описание после --:
// eslint-disable-next-line a-rule -- тут легаси