-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
diagnostics: shorten paths of unique symbols #73996
Conversation
r? @estebank (rust_highfive has picked a reviewer for you, use r? to override) |
This is an ingenious solution that as shown can get us quite far and love it's simplicity. I'm concerned about two things:
This last point has a couple of implications. Types that haven't been imported might produce errors that don't let you figure out how to suggest them. Also I didn't see the whole PR yet but there are All in all, I still need to review but I feel like this might be a good stopgap solution to this problem until we finally implement a more "principled" solution that takes into account the scope the error is emitted from. Cc @rust-lang/compiler |
Thanks for looking into this! Several things - If we limit this to prelude imports then Adding scope checks to check, for example, whether
As it is now in the PR, it is now does not affect |
The point about consistency doesn't sway me much as I would like people to be able to copy things from the output and paste them where the error happened and have things just work, but the later point makes a lot of sense: people will just get the follow up suggestion for imports. This last thing is something we already rely on other cases and I feel is a perfectly fine workflow. I'll review today but now I think this is a perfectly reasonable approach. It will still obviously not address the case of repeated identifiers but it's already a huge improvement. |
src/test/ui/associated-type-bounds/assoc-type-eq-with-dyn-atb-fail.stderr
Outdated
Show resolved
Hide resolved
Could you also run perf on this before merging? This PR doesn't do too much harm, so I guess it's ok for it to exist until something more principled is implemented. |
Going over the long list of test changes (~1250 files!), found some bits to work out:
|
|
This comment has been minimized.
This comment has been minimized.
Thanks for the hint - I got it fixed. |
@estebank Separating uniqueness for trait symbols and type symbols seems to sort out the overlap between WDYT? |
I've not read the diff, but I'm very excited to see progress on this problem! 💖 |
I'm of diverging opinions. I was originally going to dismiss this alternative out of hand as I fear it would be confusing to do this deduplication on a per type basis. But then I thought a bit about it and 1) it makes absolute sense to ignore type aliases (at least for now) because we never refer to them in type errors and 2) we already give a short description of what we are talking about ( |
Yes, we can solve for specific ambiguities with later PRs. I've pushed remaining fixes discussed for Going to check the performance of Also, should we allow users to disable this with a |
Yes. |
Performance - For rustc invoked under perf with callgraphs (
|
This comment has been minimized.
This comment has been minimized.
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
* Backport paritytech/substrate#7381 * Bring back genesis storage build in aura/timestamp To not change spec version, see paritytech/substrate#7686 (comment) * Backport paritytech/substrate#7238 * Backport paritytech/substrate#7395 * Bump impl_version * Fix UI tests and bump trybuild dep See rust-lang/rust#73996 Backports: paritytech/substrate#7764 paritytech/substrate#7656 * Partially backport paritytech/substrate#7838 * Release frame-support with a dep compilation fix * Bump patch level for remaining crates This is done because at the time of writing cargo-unleash does not fully support partial workspace publishing and mixes both local and crates.io versions of the packages, leading to errors in the release check workflow. * Backport paritytech/substrate#7854 ...to fix compilation error when using futures-* v0.3.9. * Adding Changelog entry for patch release Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Benjamin Kampmann <[email protected]>
This is a step towards implementing a fix for #50310, and continuation of the discussion in Pre-RFC: Nicer Types In Diagnostics - compiler - Rust Internals. Impressed upon me from previous discussion in #21934 that an RFC for this is not needed, and I should just come up with code.
The recent improvements to
use
suggestions that I've contributed have given rise to this implementation. Contrary to previous suggestions, it's rather simple logic, and I believe it only reduces the amount of cognitive load that a developer would need when reading type errors.If a symbol name can only be imported from one place, and as long as it was not glob-imported anywhere in the current crate, we can trim its printed path to the last component.
This has wide implications on error messages with types, for example, shortening
std::vec::Vec
to justVec
, as long as there is no otherVec
importable from anywhere.