Repository navigation
Fix analyzer cell creation order - #100562
Merged
Merged
Conversation
zydo
marked this pull request as ready for review
October 22, 2026 08:44
Contributor
Tests PassedCommit: ad54e6b |
Member
|
Please stop merging canary into this branch. That just makes it harder to get this PR merged. |
mischnic
approved these changes
Oct 22, 2026
mischnic
enabled auto-merge (squash)
October 22, 2026 10:18
mischnic
added a commit
that referenced
this pull request
Oct 22, 2026
kassens
added a commit
that referenced
this pull request
Oct 22, 2026
## Summary Fix the `no-map-async-cell` violation in webpack loader build-dependency tracking so `ast-grep scan --format github` passes again. Prepare resolver options concurrently, then create their cells synchronously in request order before resolving modules concurrently. This prevents async completion order from determining Turbo Tasks cell order. CI context: bc37b30 (#100569) aligned the CI ast-grep version with the repository (0.31.0 â 0.42.0), restoring enforcement of lint failures. #100562 fixed the analyzer occurrence, but #99549 subsequently introduced this occurrence in `build_module_requests_changed`. Tradeoff: the two phases add an intermediate vector allocation and a synchronization barrier: all options must be prepared before any module resolution starts. This may reduce overlap; the performance impact has not been measured. There may be a better approach, such as reading the shared resolver options once and synchronously cloning/customizing them before creating cells, avoiding the extra preparation join. ## Verification - `pnpm exec ast-grep scan --format github` - `ast-grep test` (7 passed) - `cargo fmt --all -- --check` - `cargo check -p turbopack-node --offline` - `pnpm build-all` <!-- NEXT_JS_LLM -->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Prepare each endpoint group asynchronously, then create its chunk-group and route-entry cells in endpoint order. This makes cell creation deterministic and satisfies the
no-map-async-celllint rule without changing the analyzer's output.Verification
pnpm lint-ast-greppnpm build-allcargo fmt --all -- --checkTMPDIR=/private/tmp pnpm test-start-turbo test/e2e/next-analyze/next-analyze.test.ts(6 tests passed)