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

Add directory filter callback to traverseDirectory #39

Merged
merged 2 commits into from
Oct 26, 2024

Conversation

rygorous
Copy link

Evaluate exclusion rules during traversal so we can rule out entire subtrees without traversing into them instead of enumerating them exhaustively only to find that every single file inside them matches some subtree exclusion pattern.

This can be a massive time reduction on large projects that mix code- with non-code in the same directory tree. On one large game project, it reduced qgrep update time from nearly 400s down to 9s.

Fabian Giesen and others added 2 commits October 25, 2024 18:33
Evaluate exclusion rules during traversal so we can rule out
entire subtrees without traversing into them instead of enumerating
them exhaustively only to find that every single file inside them
matches some subtree exclusion pattern.

This can be a massive time reduction on large projects that mix
code- with non-code in the same directory tree. On one large
game project, it reduced qgrep update time from nearly 400s down
to 9s.

Signed-off-by: Fabian Giesen <[email protected]>
@zeux zeux merged commit 3dcd9a8 into zeux:master Oct 26, 2024
4 checks passed
@zeux
Copy link
Owner

zeux commented Oct 26, 2024

Thanks!

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.

2 participants