-
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
Add a new Rust attribute to support embedding debugger visualizers #91779
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @michaelwoerister (or someone else) soon. Please see the contribution instructions for more information. |
How should this handle reproducible builds? |
I do not believe this is supported with my current set of changes. I've added support for this in Cargo via fingerprinting but perhaps it would be best to add this in rustc as well via the same mechanism? Thoughts? |
☔ The latest upstream changes (presumably #92455) made this pull request unmergeable. Please resolve the merge conflicts. |
☔ The latest upstream changes (presumably #92844) made this pull request unmergeable. Please resolve the merge conflicts. |
This comment has been minimized.
This comment has been minimized.
☔ The latest upstream changes (presumably #95351) made this pull request unmergeable. Please resolve the merge conflicts. |
I'll take a closer look at this shortly, now that the RFC has been merged. |
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.
Thanks again for the PR, @ridwanabdillahi! I did a first pass over the changes and left some comments.
📌 Commit 791bef5 has been approved by |
☀️ Test successful - checks-actions |
Finished benchmarking commit (a7d6768): comparison url. Summary:
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Footnotes |
Hm, this seems to introduce a noticeable performance regression. We'll have to take a look if we can reduce that. |
Yes I've started looking into this. Should I go ahead and open an issue for this as well? |
Yes, opening an issue is a good idea. Thanks, @ridwanabdillahi! |
I created a new issue to dig into the above perf regression. @rustbot label: +perf-regression-triaged |
Tracking issue for the feature implemented by this PR: rust-lang/rust#95939 |
…ichaelwoerister Add support for embedding pretty printers via `#[debugger_visualizer]` attribute Initial support for [RFC 3191](rust-lang/rfcs#3191) in PR rust-lang#91779 was scoped to supporting embedding NatVis files using a new attribute. This PR implements the pretty printer support as stated in the RFC mentioned above. This change includes embedding pretty printers in the `.debug_gdb_scripts` just as the pretty printers for rustc are embedded today. Also added additional tests for embedded pretty printers. Additionally cleaned up error checking so all error checking is done up front regardless of the current target. RFC: rust-lang/rfcs#3191
…ichaelwoerister Add support for embedding pretty printers via `#[debugger_visualizer]` attribute Initial support for [RFC 3191](rust-lang/rfcs#3191) in PR rust-lang#91779 was scoped to supporting embedding NatVis files using a new attribute. This PR implements the pretty printer support as stated in the RFC mentioned above. This change includes embedding pretty printers in the `.debug_gdb_scripts` just as the pretty printers for rustc are embedded today. Also added additional tests for embedded pretty printers. Additionally cleaned up error checking so all error checking is done up front regardless of the current target. RFC: rust-lang/rfcs#3191
Implemented this RFC to add support for embedding debugger visualizers into a PDB.
Added a new attribute
#[debugger_visualizer]
and updated theCrateMetadata
to store debugger visualizers for crate dependencies.RFC: rust-lang/rfcs#3191