-
Notifications
You must be signed in to change notification settings - Fork 1
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
[V3] Fix build indeterminism by sorting entries #319
Merged
Merged
Changes from all commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
6e1aa5f
Add asset_graph.has_edge
mattcompiles 2886019
Add entries to graph after traversal in sorter order
mattcompiles 5662284
Add determinism test
mattcompiles 3ebb3f3
Rollback graph changes
mattcompiles 4bba098
Add some sorting
mattcompiles dedfcb4
Revert "Add some sorting"
mattcompiles 28ce781
Revert "Rollback graph changes"
mattcompiles 0b1ae63
Fix scope hoisting test
mattcompiles 5ed6378
Add more context to comment
mattcompiles 6af5126
Merge branch 'main' into matt/fix-native-determinism
mattcompiles 0468491
Merge branch 'main' into matt/fix-native-determinism
mattcompiles File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem isn't on this graph, is on the other parts of the codebase which are depending on the order these edges and nodes exist in.
There is one known place which does this added in https://github.com/parcel-bundler/parcel/pull/9706/files
Here, instead of
assetGraph.dfsFast
which will depend on the order of nodes on the graph, we should be sorting them by some preset value (like ID or path). This is tracked byAFB-406
since that change was made.I'd rather we try to fix that first. You would need to sort in that part instead of this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed, I attempted to fix the individual places we rely on edge order but it became a risky and complicated fix that will take time to get right.
I've added a comment to explain the situation and we can look to remove the ordering code once the bundler has been replaced.