Commit 28420da
committed
perf: Pre-compile and share glob patterns across packages
When multiple packages share the same task inputs (e.g. src/**), each
package was independently compiling identical wax::Glob patterns (which
internally compile regexes). This adds a GlobSet type that compiles
patterns once and reuses them across all packages with the same inputs.
- Add GlobSet to globwalk: compile-once, walk-many API for glob patterns
- Add precompiled SCM methods that accept shared GlobSets
- Group packages by glob signature in calculate_file_hashes to share
compiled patterns via Arc<GlobSet>
- Skip symlink_metadata syscalls for known config file literals
- Handle directory-literal expansion at walk time in GlobSet
- Fix turborepo-run-cache missing git2 feature on turborepo-scm dep1 parent 0f22994 commit 28420da
File tree
4 files changed
+1111
-16
lines changed- crates
- turborepo-globwalk/src
- turborepo-run-cache
- turborepo-scm/src
- turborepo-task-hash/src
4 files changed
+1111
-16
lines changed
0 commit comments