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

Optimize exclude computation on ItemGroupIntrinsicTask target call #9047

Merged

Conversation

YuliiaKovalova
Copy link
Member

@YuliiaKovalova YuliiaKovalova commented Jul 18, 2023

Fixes #8984

Context

When glob expansion runs in a target via ItemGroupIntrinsicTask, it implicitly invokes EngineFileUtilities.GetFileListEscaped for Excludes evaluation.

Changes Made

Traverse Exclude only if EngineFileUtilities.GetFileListEscaped wasn't called in order to avoid double traversal.

Testing

Existing cases cover this change.

Verified

This commit was signed with the committer’s verified signature.
@YuliiaKovalova YuliiaKovalova requested a review from ladipro July 18, 2023 15:24
@YuliiaKovalova YuliiaKovalova marked this pull request as ready for review July 18, 2023 15:24
@YuliiaKovalova YuliiaKovalova changed the title optimize exclude computation Optimize exclude computation on ItemGroupIntrinsicTask target call Jul 18, 2023
Copy link
Member

@ladipro ladipro left a comment

Choose a reason for hiding this comment

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

Looks great, thank you!

Co-authored-by: Ladi Prosek <ladi.prosek@gmail.com>
@JanKrivanek JanKrivanek merged commit 9394ada into dotnet:main Jul 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Performance]: Glob expansion inside targets is missing important Exclude optimization
4 participants