ESLint
eslint.org › docs › latest › use › migrate-to-9.0.0
Migrate to v9.x - ESLint - Pluggable JavaScript Linter
Prior to ESLint v9.0.0, the --output-file flag would skip writing a file to disk if the output was empty. However, in ESLint v9.0.0, --output-file now consistently writes a file to disk, even when the output is empty.
Stack Overflow
stackoverflow.com › questions › 79199428 › eslint-migration-issue-while-converting-extends-to-v9
vue.js - ESLint migration issue while converting extends to v9 - Stack Overflow
You have no counterpart to "extends", and 'eslint': "warn" results in an error because there's no such rule. Rules are these eslint.org/docs/latest/rules . I'd suggest to just create a new vue project and borrow the config from there ... Here what I'm trying to do is converting the eslint to v9.
Videos
09:15
3. How to Set Up ESLint 9 with Prettier in Node.js (Flat Config ...
07:24
⚠️ ESLint 9 - The Road to Hell is Paved With Good Intentions ...
03:44
eslint v9 speedrun setup | world record attempt - YouTube
11:34
ESLint: Setting Up from Start to Finish - YouTube
07:17
10. Configuring And Setting Up ESlint - YouTube
GitHub
github.com › eslint › eslint › issues › 19116
Change Request: Flat config extends · Issue #19116 · eslint/eslint
November 7, 2024 - ESLint version HEAD What problem do you want to solve? Now that more folks are moving to ESLint v9 and flat config, a common complaint is that it's difficult to extend configs from plugins. Whereas eslintrc had extends, flat config force...
Published Nov 07, 2024
Reddit
reddit.com › r/reactjs › eslint v9 migration: lessons learned (the hard way) 🧗
r/reactjs on Reddit: ESLint v9 Migration: Lessons Learned (The Hard Way) 🧗
March 18, 2025 -
Just wrapped up an ESLint v9 migration, and let’s just say… I’ve seen things. 😵💫
I hit all the bumps, took all the wrong turns, and somehow made it to the other side—so you don’t have to. If you’re planning an upgrade, this might save you some headaches (or at least a few desperate ChatGPT prompts).
I put together something I wish I had before starting. If you're still procrastinating on the upgrade (no judgment), this might just be your sign to finally do it. Give it a read—misery loves company. 😆
📖 https://www.neoxs.me/blog/migration-to-eslint-v9
Top answer 1 of 5
44
Mark my words, the best thing to happen to linting was for Biome and Oxlint to become somewhat mature right as ESlint bungled the v9 migration. It's now so much easier to migrate to a linter that is magnitudes faster. Only reason to remain in ESLint is if your company has custom rules that don't yet have equivalents.
2 of 5
41
I wasted quite some time trying to migrate a large project to eslint 9 half a year ago. That thing is just broken by design. Biome is the way to go
GitHub
github.com › eslint › eslint › releases › tag › v9.39.1
Release v9.39.1 · eslint/eslint
Bug Fixes 650753e fix: Only pass node to JS lang visitor methods (#20283) (Nicholas C. Zakas) Documentation 51b51f4 docs: add a section on when to use extends vs cascading (#20268) (Tanuj Kanti)...
Author eslint
GitHub
github.com › eslint › eslint › discussions › 18207
ESLint 9 (beta) Step by Step Installation Guide · eslint/eslint · Discussion #18207
thank you for making eslint more complicated, unusable, it motivates us to move to Biomes after spending 8 hours dealing with errors everywhere in the new config file, these sad after having used eslint for 7 years! the v9 was hellish for us, biomes work the first time in ....
Author eslint
GitHub
github.com › eslint › eslint › discussions › 18377
Add more comprehensive examples of best practise eslint.config.js's for v9 migration · eslint/eslint · Discussion #18377
So I just updated my eslint to v9 and with it the default configuration file was changed to eslint.config.js As someone who hasn't known about the configuration change at all, it was quite pain...
Author eslint
GitHub
github.com › eslint › eslint › discussions › 18131
Will the `"eslintConfig"` key in `package.json` files still work in ESLint v9? · eslint/eslint · Discussion #18131
The main reason is that it's not generally possible in ESLint v9, like it was possible in ESLint v8, to write a config file in JSON format. For example, there is no longer a standard to resolve a shared config by name by specifying "my-config-module" in the extends field.
Author eslint
ESLint
eslint.org › blog › 2025 › 03 › eslint-v9.22.0-released
ESLint v9.22.0 released - ESLint - Pluggable JavaScript Linter
We just pushed ESLint v9.22.0, which is a minor release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release. This release introduces the defineConfig() and globalIgnores() helpers for configuration files. The defineConfig() helper brings type safety into your configuration file and also enables you to use the new extends key.
Medium
medium.com › @y.abdelkaderkharoubi › the-great-eslint-v9-migration-adventure-a-developers-survival-guide-️-ade6d75a11c5
The Great ESLint 9.0 Migration Adventure: A Developer’s Survival Guide 🧗♂️ | by Yacine Kharoubi | Medium
March 18, 2025 - As a frontend developer who has spent years working with complex TypeScript codebases, I’ve learned that solid linting is essential for maintaining long-term code quality. With the release of ESLint v9 and its new flat configuration system, I knew it was time to upgrade — and face the inevitable challenges that come with major version changes.
eslint-plugin-vue
eslint.vuejs.org › user-guide
User Guide | eslint-plugin-vue
import eslint from '@eslint/js'; import eslintConfigPrettier from 'eslint-config-prettier'; import eslintPluginVue from 'eslint-plugin-vue'; import globals from 'globals'; import typescriptEslint from 'typescript-eslint'; export default typescriptEslint.config( { ignores: ['*.d.ts', '**/coverage', '**/dist'] }, { extends: [ eslint.configs.recommended, ...typescriptEslint.configs.recommended, ...eslintPluginVue.configs['flat/recommended'], ], files: ['**/*.{ts,vue}'], languageOptions: { ecmaVersion: 'latest', sourceType: 'module', globals: globals.browser, parserOptions: { parser: typescriptEslint.parser, }, }, rules: { // your rules }, }, eslintConfigPrettier ); Use .eslintrc.* file to configure rules in ESLint < v9.