Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chore: cache results in runtime-info #12320

Merged
merged 1 commit into from Sep 28, 2019
Merged

Conversation

kaicataldo
Copy link
Member

@kaicataldo kaicataldo commented Sep 26, 2019

What is the purpose of this pull request? (put an "X" next to item)

[ ] Documentation update
[ ] Bug fix (template)
[ ] New rule (template)
[ ] Changes an existing rule (template)
[ ] Add autofixing to a rule
[ ] Add a CLI option
[ ] Add something to the core
[x] Other, please explain:

What changes did you make? (Give an overview)

This change improves performance by caching the results of the shell commands the RuntimeInfo module executes. In practice, this only improves performance when ESLint is installed locally and globally (which we're actively discouraging these days), but it's something!

In the code path described above, I'm seeing these results on my local machine (average over 5 runs with each branch):

master: ~3.072s
runtime-info-cache-results: ~2.826s

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

Nothing in particular. This PR is a lot easier to review by hiding whitespace changes.

@eslint-deprecated eslint-deprecated bot added the triage An ESLint team member will look at this issue soon label Sep 26, 2019
@kaicataldo kaicataldo changed the title Chore: cache reuslts in runtime-info Chore: cache results in runtime-info Sep 26, 2019
@kaicataldo kaicataldo added chore This change is not user-facing and removed triage An ESLint team member will look at this issue soon labels Sep 26, 2019
Copy link
Member

@platinumazure platinumazure left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

Copy link
Member

@mysticatea mysticatea left a comment

Choose a reason for hiding this comment

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

LGTM, thank you!

@mysticatea
Copy link
Member

As a side note, we may be able to reduce spawn by using the packages in @npmcli.

@kaicataldo kaicataldo merged commit 29c12f1 into master Sep 28, 2019
@kaicataldo kaicataldo deleted the runtime-info-cache-results branch September 28, 2019 01:49
@eslint-deprecated eslint-deprecated bot locked and limited conversation to collaborators Mar 27, 2020
@eslint-deprecated eslint-deprecated bot added the archived due to age This issue has been archived; please open a new issue for any further discussion label Mar 27, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
archived due to age This issue has been archived; please open a new issue for any further discussion chore This change is not user-facing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants