-
-
Notifications
You must be signed in to change notification settings - Fork 14.3k
resolve: Preserve ambiguous glob reexports in crate metadata #147984
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
Conversation
|
rustbot has assigned @jdonszelmann. Use |
|
@bors try |
resolve: Preserve ambiguous glob reexports in crate metadata
This comment has been minimized.
This comment has been minimized.
|
@craterbot check |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
🎉 Experiment
Footnotes
|
|
That's a lot of breakage. |
aa2fb6e to
e388d62
Compare
This comment has been minimized.
This comment has been minimized.
|
@bors try
|
This comment has been minimized.
This comment has been minimized.
resolve: Preserve ambiguous glob reexports in crate metadata
|
@craterbot run mode=check-only p=1 crates=https://crater-reports.s3.amazonaws.com/pr-147984/retry-regressed-list.txt |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
go ahead and r=me once the issue with the diagnostic on the globvsexpanded test is corrected. |
|
@rustbot author |
So in cross-crate scenarios they can work in the same way as in crate-local scenarios.
255f6c3 to
51780a5
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors r=yaahc |
|
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing e2893f7 (parent) -> c61a3a4 (this PR) Test differencesShow 52 test diffsStage 1
Stage 2
Additionally, 50 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard c61a3a44d1a5bee35914cada6c788a05e0808f5b --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (c61a3a4): comparison URL. Overall result: ❌ regressions - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary 2.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -3.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.2%, secondary 0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 471.528s -> 471.772s (0.05%) |
|
Do you think there's something to be done about the regression? Seems like we are fundamentally doing more work here.. |
|
Yes, we are doing more work when there are ambiguous reexports. |
|
cc @Razaekel The error typically looks like this. error: `Perlin` is ambiguous
--> src/terrain.rs:2:22
|
2 | use noise::{NoiseFn, Perlin, Seedable};
| ^^^^^^ ambiguous name
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #114095 <https://github.com/rust-lang/rust/issues/114095>
= note: ambiguous because of multiple glob imports of a name in the same module
note: `Perlin` could refer to the struct defined here
--> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/noise-0.7.0/src/noise_fns/generators.rs:6:9
|
6 | pub use self::perlin::*;
| ^^^^^^^^^^^^
note: `Perlin` could also refer to the struct defined here
--> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/noise-0.7.0/src/noise_fns/generators.rs:7:9
|
7 | pub use self::perlin_surflet::*;
| ^^^^^^^^^^^^^^^^^^^^
= note: `#[deny(ambiguous_glob_imports)]` (part of `#[deny(future_incompatible)]`) on by default |
So in cross-crate scenarios they can work in the same way as in crate-local scenarios.
Change Description: #147984 (comment)
Resurrection of #114682.
One of unblocking steps for #145108.
Fixes #36837.