Skip to content

Conversation

fasttime
Copy link
Member

Prerequisites checklist

What is the purpose of this pull request?

Added a blog post announcing multithread linting in ESLint v9.34.0

What changes did you make? (Give an overview)

Related Issues

eslint/eslint#19794

Is there anything you'd like reviewers to focus on?

@github-project-automation github-project-automation bot moved this to Needs Triage in Triage Aug 20, 2025
@eslint-github-bot eslint-github-bot bot added the documentation Improvements or additions to documentation label Aug 20, 2025
Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for new-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/new-eslint/deploys/68a8c8c7b5d9e1000863bd95
😎 Deploy Preview https://deploy-preview-750--new-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for es-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/es-eslint/deploys/68a8c8c75f8cb200086c9570
😎 Deploy Preview https://deploy-preview-750--es-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for ja-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/ja-eslint/deploys/68a8c8c72c9c7300088f6464
😎 Deploy Preview https://deploy-preview-750--ja-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for hi-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/hi-eslint/deploys/68a8c8c7695d8b00086f55cd
😎 Deploy Preview https://deploy-preview-750--hi-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for fr-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/fr-eslint/deploys/68a8c8c763766d000885527d
😎 Deploy Preview https://deploy-preview-750--fr-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for zh-hans-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/zh-hans-eslint/deploys/68a8c8c74743220008659803
😎 Deploy Preview https://deploy-preview-750--zh-hans-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for pt-br-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/pt-br-eslint/deploys/68a8c8c7d156be0007e184ab
😎 Deploy Preview https://deploy-preview-750--pt-br-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented Aug 20, 2025

Deploy Preview for de-eslint ready!

Name Link
🔨 Latest commit 655bea4
🔍 Latest deploy log https://app.netlify.com/projects/de-eslint/deploys/68a8c8c7f065b30008375f7d
😎 Deploy Preview https://deploy-preview-750--de-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Member

@nzakas nzakas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like a good start. I left some notes on how to clean up the telling of this story.

Also, let's be sure to mention that concurrency=auto may not be the best setting for everyone and that people should try different settings to find the one that yields the best result. Maybe mention that it seems half of the number of physical cores seems to be the sweet spot for most folks, but there's no way to tell the number of physical cores from within Node.js.

@nzakas nzakas moved this from Needs Triage to Evaluating in Triage Aug 20, 2025
@fasttime
Copy link
Member Author

Thanks for the suggestions. I updated the intro paragraph and moved the History and Challenges sections up to the top. I also added a few more points to the Challenges section and broke it up into subsections. The last paragraph from that section felt like a better fit for the Way Forward section, so I moved it there, then I moved the whole Way Forward part to the end. I also reworded the How It Works section and put it before the CLI usage and Node.js API usage sections.

@fasttime fasttime requested a review from nzakas August 21, 2025 05:45
@fasttime
Copy link
Member Author

Added a new section to explain the limitations of auto concurrency in 67ae945.

Copy link
Member

@nzakas nzakas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is looking really good, I just left a few places where it would be helpful to add links and details.


Turning that long-standing idea into a practical, user-friendly feature was far from trivial. The first step was to gather the many threads of past conversations — most notably the proposals and debates in [issue #3565](https://github.com/eslint/eslint/issues/3565) — and weave them into a coherent design that could work equally well from the CLI and the Node.js API. The goal was to introduce multithreading with as little disruption as possible for existing consumers.
* Benchmark lint times before and after enabling concurrency to measure the impact.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to include details on using Hyperfine or other tools?

What about tips on where to start? Half the number of physical cores?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've elaborated the "Further Tips" section to mention these points. Please, have a look.

@fasttime fasttime requested a review from Copilot August 22, 2025 15:41
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a blog post announcing the introduction of multithread linting in ESLint v9.34.0, documenting this significant performance enhancement feature.

  • Creates comprehensive blog post explaining multithread linting feature and its history
  • Documents CLI and Node.js API usage with examples and best practices
  • Registers the new blog post in the blog dates configuration

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/content/blog/2025-08-22-multithread-linting.md Complete blog post documenting multithread linting feature, including history, technical challenges, usage examples, and performance tips
src/_data/blog-dates.json Adds timestamp entry for the new blog post

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@fasttime
Copy link
Member Author

I'm planning to merge this post as a draft and publish it along with the ESLint v9.34.0 announcement.

@fasttime fasttime marked this pull request as ready for review August 22, 2025 16:12
@fasttime fasttime merged commit 6d2013a into main Aug 22, 2025
37 checks passed
@fasttime fasttime deleted the multithread-linting branch August 22, 2025 20:37
@github-project-automation github-project-automation bot moved this from Evaluating to Complete in Triage Aug 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
Status: Complete
Development

Successfully merging this pull request may close these issues.

2 participants