Skip to content
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 Natvis visualizations for some http types #533

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

ridwanabdillahi
Copy link

@ridwanabdillahi ridwanabdillahi commented Mar 18, 2022

This change adds Natvis visualizations for some http types to help improve the debugging experience on Windows.

Debugging types such as Request and/or Response under a Windows debugger, WinDbg or the Visual Studio debugger, it can be a bit difficult to dissect exactly what is data is contained in each type. The Rust compiler does have Natvis support for some types, but this is limited to some of the core libraries and not supported for external crates.

RFC 3191 proposes adding support for embedding debugging visualizations such as Natvis in a Rust crate. This RFC has been approved, merged and implemented.

Natvis is a framework that can be used to specify how types should be viewed under a supported debugger, such as the Windows debugger (WinDbg) and the Visual Studio debugger.

This PR adds:

  • Natvis visualizations for some of the core types such as types in the http::header, http::request, http::response, and http::uri modules.
  • Tests for testing visualizers embedded in the http crate.
  • Updates to the CI pipeline to ensure tests for visualizers are run so they do not break silently.
  • A new debugger_visualizer feature for the http crate to enable the unstable debugger_visualizer feature.

…. Add tests and a testing framework to ensure the Natvis definitions do not become stale and/or broken.

Add a README.md to describe how to define Natvis visualizations, embed them into the `http` crate, and test them to ensure they do not become stale and/or broken.
@ridwanabdillahi
Copy link
Author

Hello @LucioFranco do you have any time to review this PR? This change adds Natvis visualizations for some of the core http types to ease debugging these types on Windows debuggers along with documentation on how to do so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant