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

JS: Fix a few perf issues #18412

Merged
merged 5 commits into from
Jan 7, 2025

Conversation

asgerf
Copy link
Contributor

@asgerf asgerf commented Jan 6, 2025

Fixes some performance issues uncovered in the recent QA run, by restricting sinks and steps, and in some cases the maximum AP length. This fixes the 4 worst regressions in the QA run.

Evaluation also reflects the performance improvements, with a nice 3% speedup on average, 1% median, 33% on vscode and 20% on amphtml. No change in results were observed.

Also contains a drive-by fix for hiding a node that should be hidden.

@github-actions github-actions bot added the JS label Jan 6, 2025
@asgerf asgerf changed the title JS: Fix some perf issues with UnvalidatedDynamicMethodCall JS: Fix a few perf issues Jan 7, 2025
@asgerf asgerf added the no-change-note-required This PR does not need a change note label Jan 7, 2025
@asgerf asgerf marked this pull request as ready for review January 7, 2025 09:27
@Copilot Copilot bot review requested due to automatic review settings January 7, 2025 09:27
@asgerf asgerf requested a review from a team as a code owner January 7, 2025 09:27

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

Files not reviewed (5)
  • javascript/ql/lib/semmle/javascript/dataflow/internal/DataFlowPrivate.qll: Language not supported
  • javascript/ql/lib/semmle/javascript/security/dataflow/ExceptionXssQuery.qll: Language not supported
  • javascript/ql/lib/semmle/javascript/security/dataflow/UnvalidatedDynamicMethodCallCustomizations.qll: Language not supported
  • javascript/ql/lib/semmle/javascript/security/dataflow/UnvalidatedDynamicMethodCallQuery.qll: Language not supported
  • javascript/ql/src/Security/CWE-915/PrototypePollutingFunction.ql: Language not supported

Tip: Copilot only keeps its highest confidence comments to reduce noise and keep you focused. Learn more

Copy link
Contributor

@erik-krogh erik-krogh left a comment

Choose a reason for hiding this comment

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

👍

@asgerf asgerf merged commit abea019 into github:js/shared-dataflow-branch Jan 7, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JS no-change-note-required This PR does not need a change note
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants