-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
resolve: Populate external modules in more automatic and lazy way #63149
Conversation
@bors try |
resolve: Populate external modules in more automatic and lazy way So, resolve had this function `populate_module_if_necessary` for loading module children from other crates from metadata. I never really understood when it should've been called and when not. This PR removes the function and loads the module children automatically on the first access instead. r? @eddyb
Hmm, no notification, but looks like the build completed successfully. |
Success: Queued ac89e03 with parent f690098, comparison URL. |
Finished benchmarking try commit ac89e03, comparison URL. |
Ok, perf looks mostly like a noise, but the change still makes sense logically. |
Ping from triage. @eddyb any updates on this? Thanks. |
@bors r+ |
📌 Commit cbaf397804be470b1fec12c5bfe0c7edcd923199 has been approved by |
⌛ Testing commit cbaf397804be470b1fec12c5bfe0c7edcd923199 with merge 047f9faa888b1117a85cbce106d866273c80008a... |
💔 Test failed - checks-azure |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
@bors r=eddyb |
📌 Commit 2cb9207 has been approved by |
resolve: Populate external modules in more automatic and lazy way So, resolve had this function `populate_module_if_necessary` for loading module children from other crates from metadata. I never really understood when it should've been called and when not. This PR removes the function and loads the module children automatically on the first access instead. r? @eddyb
No, not a rebase, the previous error was the same. |
(To be clear, I'm not positive that this PR was the cause of that failure, it's just my best guess. Feel free to re-r+ if you feel confident). |
☔ The latest upstream changes (presumably #63489) made this pull request unmergeable. Please resolve the merge conflicts. |
Span changes causing issues with diagnostics reproducibility are backed out. @bors r=eddyb |
📌 Commit 4331bf51c440d1d8a862d0777a0984ecf488851c has been approved by |
☔ The latest upstream changes (presumably #63627) made this pull request unmergeable. Please resolve the merge conflicts. |
The modules are now populated implicitly on the first access
Move some code into `build_reduced_graph.rs` to keep `BuildReducedGraphVisitor` it private Also move the def collector call to `build_reduced_graph.rs`, it belongs there.
@bors r=eddyb |
📌 Commit 5e47cd4 has been approved by |
resolve: Populate external modules in more automatic and lazy way So, resolve had this function `populate_module_if_necessary` for loading module children from other crates from metadata. I never really understood when it should've been called and when not. This PR removes the function and loads the module children automatically on the first access instead. r? @eddyb
resolve: Populate external modules in more automatic and lazy way So, resolve had this function `populate_module_if_necessary` for loading module children from other crates from metadata. I never really understood when it should've been called and when not. This PR removes the function and loads the module children automatically on the first access instead. r? @eddyb
Rollup of 6 pull requests Successful merges: - #63149 (resolve: Populate external modules in more automatic and lazy way) - #63545 (Feature gate 'yield $expr?' pre-expansion) - #63548 (Update rustc-demangle to 0.1.16.) - #63558 (Remap paths for proc-macro crates.) - #63641 (add git keyword to submodule comments in config.example.toml) - #63642 (Rename overflowing_{add,sub,mul} intrinsics to wrapping_{add,sub,mul}.) Failed merges: r? @ghost
So, resolve had this function
populate_module_if_necessary
for loading module children from other crates from metadata.I never really understood when it should've been called and when not.
This PR removes the function and loads the module children automatically on the first access instead.
r? @eddyb