Comments (9)
@stylemistake
Performance was corrected in v2.5.4
from eslint-webpack-plugin.
Sorry, I was responding with the definition of classical "blocking"... and it is non-blocking in that sense... execution continues on the main thread while the linter runs in parallel. Webpack is waiting on all async parts to complete the report. Which is the blocking you mean.
from eslint-webpack-plugin.
I'm currently using eslint-loader
through vue-cli-plugin-eslint
, and I think I have a similar question. I suppose #30 is also relevant
When I set lintOnSave: true
, my time it takes for npm run serve
to complete quadruples! And the time it takes to recompile for a HMR is 5x longer :( . However, this is not the case for the TypeScript service. For TypeScript, after the devServer finishes compiling and begins serving the page, devServer begins the TypeScript type checking service. Meaning that the type checking does not slow down the server at all, since it is done asynchronously. I was looking into switching from eslint-loader
to eslint-webpack-plugin
, and one of the main upgrades I was looking for was the ability to lint my codebase in the same way the typechecking service does.
From the sound of this issue, it seems that this is not a feature. Is such a thing on the roadmap?
Right now in eslint-loader
, the time it takes to recompile for HMR is unbearable.
from eslint-webpack-plugin.
It's currently not blocking. With or without threads turned on.
from eslint-webpack-plugin.
@jsg2021 Are you sure? For me, webpack dev server blocks updates and hot reloads until the linting completes after a watched file has changed. Ideally during development the linting should happen in the background without blocking the webpack build. IIRC there's a typescript loader that works like this.
from eslint-webpack-plugin.
I'm curious is there a reason why the eslint-loader
did not experience this issue versus the plugin does? Are those changes related to Webpack?
from eslint-webpack-plugin.
@decademoon as of 2.5.0 it is fully blocking. Turn on threads and rollback to 2.4.x...
from eslint-webpack-plugin.
Can confirm, 2.4 is much faster with threads on. I'd suggest reverting whatever was introduced in 2.5.
For comparison on https://github.com/tgstation/tgstation/tree/master/tgui:
- Running executables separately:
webpack
(20s) +eslint
(15s) = 35s; - Using eslint-webpack-plugin
2.4
withthreads: true
: 23s; - Using eslint-webpack-plugin
2.4
withthreads: false
: 106s; - Using eslint-webpack-plugin
2.5
withthreads: true
: 33s; - Using eslint-webpack-plugin
2.5
withthreads: false
: 108s;
This was performed on Ryzen 2700X.
from eslint-webpack-plugin.
@elisherer
Use threads
option
from eslint-webpack-plugin.
Related Issues (20)
- Error with eslint error detection HOT 1
- in webpack-dev-server, rule `@typescript-eslint/no-unsafe-assignment` throws an error when an imported type changed HOT 5
- Error if package.json is not in parent directory to the linted code HOT 2
- Build error in ci tool. HOT 4
- Lint Errors Kill Webpack Watch HOT 2
- Add support to the new eslint.config.js format HOT 6
- Checking/validating json files HOT 4
- v4.0.0 much slower than v3.2.0, potentially due to linting cached webpack files 🤷 HOT 3
- Performance: 4.0 Hot Module Replacement build very slow HOT 5
- Enable `cache` eslint HOT 4
- Can Nuxt2 use eslint-webpack-plugin? HOT 2
- lintDirtyModulesOnly relies on a populated cache, and lints all files if cache is not present HOT 2
- Angular 15+16 compile gets stuck at "70% sealing finish module graph ESLintWebpackPlugin_1" HOT 5
- detect new file issues HOT 2
- TS files that contain only typings are not linted HOT 1
- Run ESLint only on modified files HOT 1
- Add new option `flatConfigFile` HOT 2
- Update for ESLint 9 HOT 2
- 'extensions' has been removed HOT 3
- Update the eslint version to 9 HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eslint-webpack-plugin.