By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: ESLint v10: Flat Config Completion and JSX Tracking
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > News > ESLint v10: Flat Config Completion and JSX Tracking
News

ESLint v10: Flat Config Completion and JSX Tracking

News Room
Last updated: 2026/04/01 at 12:04 PM
News Room Published 1 April 2026
Share
ESLint v10: Flat Config Completion and JSX Tracking
SHARE

ESLint, the widely adopted JavaScript and TypeScript linter, released version 10, marking its most significant breaking-change milestone since the flat config system was introduced. The release finalises years of incremental architectural work, removes long-deprecated APIs, and ships a set of developer experience improvements aimed squarely at plugin authors and monorepo teams.

The most consequential change in v10 is the complete removal of the legacy eslintrc configuration system. Since v9, flat config (eslint.config.js) has been the default, but the old format was still accessible via LegacyESLint. That compatibility layer is now gone entirely. The defineParser(), defineRule(), defineRules(), and getRules() methods on Linter have been removed, and shouldUseFlatConfig() now unconditionally returns true. Teams still on .eslintrc files will need to migrate before upgrading.

The official migration tool makes the transition straightforward:


npx @eslint/migrate-config .eslintrc.json

This generates an eslint.config.mjs file that can be reviewed and adjusted from there. A full breakdown of every breaking change is available in the official migration guide, and a third-party walkthrough on DEV Community covers the practical upgrade steps in more detail.

Alongside the config cleanup, v10 changes how ESLint locates its configuration file. Rather than searching from the current working directory, it now starts from the directory of each linted file. This is a meaningful improvement for monorepo setups, where different packages may need different rules, and brings the lookup behaviour in line with what many developers already expected.

JSX reference tracking is another headline addition. Previously, ESLint did not recognise JSX identifiers as variable references, producing false positives with rules like no-unused-vars. A component imported and used only in JSX would be incorrectly flagged as unused. Plugin workarounds like @eslint-react/jsx-uses-vars, previously used to fix this, are no longer needed.

The RuleTester API has been strengthened with new assertion options: requireMessage, requireLocation, and requireData. These let plugin authors enforce stricter test definitions and ensure tests stay consistent with rule messages. Stack traces for failing tests now include the index and file location of the offending test case, cutting down the time spent hunting failures in large rule suites.

Node.js support has been tightened to ^20.19.0 || ^22.13.0 || >=24. All of v21.x and v23.x are dropped. The eslint:recommended configuration has also been updated to include additional rules, which may introduce new lint reports in existing codebases after upgrading.

A GitHub issue on eslint-plugin-react flagged that the plugin does not yet declare ESLint 10 support in its peer dependencies, causing install conflicts for many React developers. A similar issue was raised against eslint-config-next, the default ESLint config shipped with Next.js, opened as recently as March 2026 and still unresolved at time of writing.

Commentary on r/javascript highlighted some migration pains:

honestly the flat config idea is good in theory but the migration path was terrible. felt like every plugin had slightly different flat config support and you were just guessing and checking until it worked.

The release continues the competitive conversation around JavaScript tooling. Rust-based alternatives such as Biome and Oxlint have been gaining ground on the promise of significantly faster linting.

On the reddit annoucement post, there are a number of comments suggesting switching from ESLint to alternatives such as Biome or Oxlint:

I’ve already moved on to biome. It doesn’t have 100% but the rules but probably around 95%, which is enough to outweigh the performance hog eslint is.

Oxc’s own benchmarks claim Oxlint is 50 to 100 times faster than ESLint depending on CPU core count, while Biome combines linting and formatting in a single tool. The trade-off is rule coverage: Oxlint does not yet match ESLint’s full catalogue.

ESLint is an open-source, pluggable linting tool for JavaScript and TypeScript, originally created by Nicholas C. Zakas in 2013 and now maintained by the ESLint team under the OpenJS Foundation. It is published under the MIT license and accumulates over 120 million weekly npm downloads.

ESLint v10.0.1 and v10.0.3 have already followed with bug fixes, and v10.1.0 shipped on March 20, 2026.

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article Touristification has made Mercadona find itself with a rival in Barcelona: 24-hour supermarkets Touristification has made Mercadona find itself with a rival in Barcelona: 24-hour supermarkets
Next Article Nvidia’s DLSS 4.5 update brings 6x frame generation to RTX graphics Nvidia’s DLSS 4.5 update brings 6x frame generation to RTX graphics
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

Signal affair: attacks continue, federal prosecutor’s office investigates
Signal affair: attacks continue, federal prosecutor’s office investigates
Software
Free up disk space on Windows quickly and easily
Free up disk space on Windows quickly and easily
News
This is how you build your own dashboards
This is how you build your own dashboards
Gadget
Can a planetary system change on the scale of a human lifetime?
Can a planetary system change on the scale of a human lifetime?
Computing

You Might also Like

Free up disk space on Windows quickly and easily
News

Free up disk space on Windows quickly and easily

2 Min Read
The 4 most annoying behaviors in everyday job life
News

The 4 most annoying behaviors in everyday job life

7 Min Read
Cisco introduces first quantum switch
News

Cisco introduces first quantum switch

2 Min Read
Multi-agent systems – the new microservices
News

Multi-agent systems – the new microservices

3 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?