Новый конфиг для Eslint 9

  Рет қаралды 5,584

Михаил Непомнящий

Михаил Непомнящий

Ай бұрын

Eslint поменял подход к созданию конфига и его особенностям его настройки. Разбираемся как перейти на новую мажорную версию для проектов на JavaScript и TypeScript.
Пример конфига для React+TypeScript приложения github.com/michey85/react-sta...
Мои курсы по вебу с купонами:
✅ mishanep.com/
📢 Поддержка канала:
/ mishanep
www.tinkoff.ru/rm/nepomnyasch...
paypal.me/mishanep

Пікірлер: 42
@sno-oze
@sno-oze Ай бұрын
Интересно, чем же разработчики eslint'а руководствовались, когда выпускали мажорный релиз. По мне так, конфигурировать стало существенно сложнее. В любом случае, видео годное и нужное.
@outcast-cr5yy
@outcast-cr5yy Ай бұрын
Михаил, ваш ютюб канал это настоящий помощник для молодых специалистов. Спасибо вам большое
@vladpyrkov4803
@vladpyrkov4803 Ай бұрын
Спасибо большое за видео! Сам недавно пробовал настраивать новый конфиг, но там сложно разобраться, пока остальные плагины не все поддержку завезли. В итоге оставил старый конфиг пока. Но теперь буду пробовать снова
@egoreast
@egoreast Ай бұрын
Та же тема
@vasiliisisilii
@vasiliisisilii Ай бұрын
Спасибо за полезное видео ❤
@vladhonchenko2886
@vladhonchenko2886 Ай бұрын
Спасибо большое 🎉
@deemon63
@deemon63 Ай бұрын
Разработчики еслинт испытывают терпение js сообщества, может плохо для них закончиться
@williamthorn223
@williamthorn223 Ай бұрын
Еще biomejs появился, линтер с форматером под капотом, интересная штука. Пока выглядит как достойная альтернатива с меньшей вознёй с конфигами.
@mishanep
@mishanep Ай бұрын
Да, видел. Выглядит интересно. Но потребуется время, прежде чем проекты мигрируют
@axel-sheen
@axel-sheen Ай бұрын
Михаил, ты так и не сказал какие преимущества у этой версии (или я прослушал)! Ради чего все эти мучения с новым конфигом? Однако спасибо за видео, очень познавательно!
@user-os5jq3wm9w
@user-os5jq3wm9w Ай бұрын
О, привет! Я тебя знаю :)
@yanballas3055
@yanballas3055 Ай бұрын
спасибо Михаил, как раз на проект опять настраиваю сборку и не могу понять, почему старый конфиг не работает(
@mashush9197
@mashush9197 Ай бұрын
тоже не особо понял зачем они это все это решили обновить, причем именно в таком виде. Если взять мой старый конфиг eslint, то там все понятно - четко описаны правила, плагины, расширения, что следует игнорировать. Захотел обновится до новой версии - посмотрел, подумал, мало что понял и забил)
@io0312
@io0312 26 күн бұрын
А можете подсказать, как использовать конфиги mjs и их синтаксис, а также как убрать ошибку от плагина vscode "eslint" ведь сам плагин поддерживает
@user-je8vr1rz9s
@user-je8vr1rz9s 4 күн бұрын
When searching for both Prettier and your linter on the Internet you’ll probably find more related projects. These are generally not recommended, but can be useful in certain circumstances. First, we have plugins that let you run Prettier as if it was a linter rule: eslint-plugin-prettier stylelint-prettier These plugins were especially useful when Prettier was new. By running Prettier inside your linters, you didn’t have to set up any new infrastructure and you could re-use your editor integrations for the linters. But these days you can run prettier --check . and most editors have Prettier support.
@mishanep
@mishanep 3 күн бұрын
Hi. Do you mean we don't need to use any eslint plugins for Prettier?
@user-je8vr1rz9s
@user-je8vr1rz9s 3 күн бұрын
The official prettier documentation says that it is recommended to use only eslint-config-prettier. You can read more details in the section Integrating with Linters
@maxfray7711
@maxfray7711 Ай бұрын
Классные руки у вебки))) 4:51
@jewkuza
@jewkuza 25 күн бұрын
нужны ли какие то апдейты в вебпак конфиге при использовании новой версии eslint'a?
@mishanep
@mishanep 25 күн бұрын
По логике линтер не связан со сборкой, поэтому вебпак настраивать не требуется. Но в зависимости от проекта всякие фокусы возможны :)
@jewkuza
@jewkuza 25 күн бұрын
@@mishanep немного неправильно сформулировал вопрос - конкретно :нужно ли добавлять какие то дополнительные конфигурации/ возможно изменился синтаксис при использовании eslint webpack плагина в рамках вебпак конфига? Я пытаюсь связать свою проблему с потенциально возможным источником 😀 Конечно я проверял доку плагина - как будто никаких изменений . Но возможно нужен какой то костыль чтобы завести это всё дело 😀
@olgamatosova158
@olgamatosova158 18 күн бұрын
настраиваю линт к реакту на typescript, не могу убрать (задизейблить) ошибку 'React' must be in scope when using JSX react/react-in-jsx-scope, как в новом линте ее можно победить?
@mishanep
@mishanep 18 күн бұрын
Если вам надо переопределить поведение какого-то правила, то делается также как и раньше. Разница может быть в названии скоупа, если в плагинах вы задали своё имя.
@pavelmelnik9952
@pavelmelnik9952 Ай бұрын
осталось мне не ясным: - есть у меня какой-то плагин, например eslint-plugin-import. делаю import pluginImport from "eslint-plugin-import/config/react.js"; но там в папке config, есть файлы react.js, recommended.js, typescript.js - какой брать? у меня реакт, тайпскрипт. у каждого плагина буквально разная структура папок в пакетах и разные названия файлов. не ясно что откуда тянуть, что бы всё потом работало так как и на 8мой версии? - pluginJs точно нужен при использовании ts? - какие пакеты точно можно удалить, и они были нужны в 8, но уже не используются в 9той - не ясно как теперь указывать import/resolver - не ясно зачем мы указав какой-то плагин в обьекте с плагинами, например plugins: { pluginPrettier }, потом ниже отдельным обьеком ставим его как pluginPrettier.configs.recommended update. отвечаю на свой первый вопрос - посмотрел в старый конфиг, все плагины были вида 'plugin:unicorn/recommended', с recommended в конце. можно не эксперементировать, и в новом так же повытаскивать везде рекомендеты теперь хочется флэт конфиг разбить на подфайлы с обьектами: файл с плагинами, файл с настройками, файл ещё с чем-то и т.д. и просто скинцть импортами в конфиге. он стал какой-то неказистый выходом для меня наверное будет не собирать флэт вот так, с нуля, а найти где-то уже собранный очень подробный конфиг, и от обратного, выкинуть из него лишнее.
@boyywnkobe
@boyywnkobe 23 күн бұрын
what's the extension that shows the update package is available?
@mishanep
@mishanep 23 күн бұрын
npm outdated
@boyywnkobe
@boyywnkobe 23 күн бұрын
@@mishanep you have inline suggestion, it’s not a npm outdated command
@boyywnkobe
@boyywnkobe 23 күн бұрын
and what is the terminal shows suggestion ?
@mishanep
@mishanep 23 күн бұрын
I use iTerm terminal with some plugins
@BOCbMOU
@BOCbMOU Ай бұрын
Как по мне, странное обновление. Не вижу никаких реальных плюсов от нового конфига. Улучшили читабельность? Сомнительно. Где-то она стала лучше, да, но где-то наоборот. Печально, в общем. Дополнительный гемор в миграции без плюсов.
@MrLuckfinder
@MrLuckfinder Ай бұрын
Может я путаю, тогда поправьте меня. Globals можно было не удалять, а руками перенести в devdependencies, либо просто запустить npm I -D и он сам это сделает
@KamilDzieniszewski
@KamilDzieniszewski 25 күн бұрын
can you add English subtitles?
@mishanep
@mishanep 25 күн бұрын
I can try to ask ai with this.
@DmitriyDev
@DmitriyDev Ай бұрын
Вы купили мак?
@mishanep
@mishanep Ай бұрын
Давненько
@pavelmelnik9952
@pavelmelnik9952 Ай бұрын
@@mishanep решили бы вы сейчас брать мак, на момент мая 24 года. какой бы брали? вижу что люди до сих пор активно покупают м1 про. что на счет м3 про?
@yuriykurenkov5125
@yuriykurenkov5125 Ай бұрын
Спасибо за обзор. Отличные изменения IMHO
@axel-sheen
@axel-sheen Ай бұрын
а что в них отличного? я не заметил ни одного преимущества, судя по видео
@jewkuza
@jewkuza 25 күн бұрын
Ребята, никто не сталкивался с такой шляпой на этапе билда апликухи? Error: end of the stream or a document separator is expected 18 | ... ToPath(import.meta.url); 19 | ... name(__filename); 20 | ... 21 | ... pat({ resolvePluginsRelativeTo: __dirname }); -----------------------------------------^ 22 | ... 23 | ... ERROR in [eslint] Cannot read config file: eslint.config.mjs Error: end of the stream or a document separator is expected
@mishanep
@mishanep 25 күн бұрын
В mjs файлах по идее недоступен синтаксис __filename, __dirname. Там надо другой подход сказать, тот же import.meta.url в помощь.
@jewkuza
@jewkuza 25 күн бұрын
@@mishanep это переменные, я их сетал вручную, с ними в порядке кстати) да и если вызывать eslint по конкретному файлу, никаких проблем нет - у меня основная проблема при билде. Я так понимаю какая то проблема с eslint вебпак плагином
Чем собирать React в 2024-м
12:20
Михаил Непомнящий
Рет қаралды 14 М.
Climbing to 18M Subscribers 🎉
00:32
Matt Larose
Рет қаралды 32 МЛН
small vs big hoop #tiktok
00:12
Анастасия Тарасова
Рет қаралды 8 МЛН
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 54 МЛН
Купили айфон для собачки #shorts #iribaby
00:31
Chrome DevTools - самое необходимое для новичков
21:40
Михаил Непомнящий
Рет қаралды 8 М.
Facebook Tried Tailwind, Then Built This Instead
28:18
Theo - t3․gg
Рет қаралды 125 М.
Стань гуру VS Code с набором топ-фишек
19:31
Михаил Непомнящий
Рет қаралды 14 М.
You're (Probably) Using Prettier Wrong
6:04
Theo - t3․gg
Рет қаралды 99 М.
Express JS with TypeScript - Setup, Examples, Testing
1:20:13
Anson the Developer
Рет қаралды 15 М.
ESLint Quickstart - find errors automatically
8:52
freeCodeCamp.org
Рет қаралды 140 М.
Начало работы со StoryBook
23:42
Михаил Непомнящий
Рет қаралды 47 М.
ТОП-5 культовых телефонов‼️
1:00
Pedant.ru
Рет қаралды 20 М.
Купил этот ваш VR.
37:21
Ремонтяш
Рет қаралды 271 М.
DC Fast 🏃‍♂️ Mobile 📱 Charger
0:42
Tech Official
Рет қаралды 485 М.
сюрприз
1:00
Capex0
Рет қаралды 1,5 МЛН
Will the battery emit smoke if it rotates rapidly?
0:11
Meaningful Cartoons 183
Рет қаралды 23 МЛН
AI от Apple - ОБЪЯСНЯЕМ
24:19
Droider
Рет қаралды 129 М.