Skip to content

Improve hir pretty printing #140606

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

Merged
merged 7 commits into from
May 3, 2025
Merged

Improve hir pretty printing #140606

merged 7 commits into from
May 3, 2025

Conversation

nnethercote
Copy link
Contributor

It's currently pretty bad, so a few small improvements can make a big difference.

r? @dtolnay

They don't appear to do anything -- no test output is affected -- and no
other pretty-printing code looks like this.
As far as I can tell, this code is not actually reachable.
One of the boxes isn't closed, and this causes everything after it to be
over-indented.
All the box open/close issues have been fixed.
@rustbot rustbot added A-rustdoc-json Area: Rustdoc JSON backend S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels May 3, 2025
@rustbot
Copy link
Collaborator

rustbot commented May 3, 2025

Some changes occurred in tests/rustdoc-json

cc @aDotInTheVoid

Copy link
Member

@dtolnay dtolnay left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good!

@dtolnay
Copy link
Member

dtolnay commented May 3, 2025

@bors r+

@bors
Copy link
Collaborator

bors commented May 3, 2025

📌 Commit 9af0842 has been approved by dtolnay

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 3, 2025
bors added a commit to rust-lang-ci/rust that referenced this pull request May 3, 2025
…iaskrgr

Rollup of 8 pull requests

Successful merges:

 - rust-lang#139343 (Change signature of File::try_lock and File::try_lock_shared)
 - rust-lang#140505 (linker: Quote symbol names in .def files)
 - rust-lang#140534 (PassWrapper: adapt for llvm/llvm-project@f137c3d592e96330e450a8fd63ef…)
 - rust-lang#140546 (Remove backtrace dep from anyhow in features status dump tool)
 - rust-lang#140548 (Emit user type annotations for free consts in pattern position)
 - rust-lang#140564 (Use present indicative tense in std::io::pipe() API docs)
 - rust-lang#140568 (Add regression test for rust-lang#140545)
 - rust-lang#140606 (Improve hir pretty printing)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 185f9e0 into rust-lang:master May 3, 2025
6 checks passed
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request May 3, 2025
Rollup merge of rust-lang#140606 - nnethercote:hir-pp, r=dtolnay

Improve hir pretty printing

It's currently pretty bad, so a few small improvements can make a big difference.

r? `@dtolnay`
@rustbot rustbot added this to the 1.88.0 milestone May 3, 2025
@nnethercote nnethercote deleted the hir-pp branch May 4, 2025 22:39
@jyn514
Copy link
Member

jyn514 commented May 5, 2025

hey @nnethercote, please don't just --bless away changes to rustdoc-json - this broke cargo semver-checks

@jyn514
Copy link
Member

jyn514 commented May 5, 2025

cc #137645

@nnethercote
Copy link
Contributor Author

Sorry for the breakage. Why are there no cargo semver-checks to catch this?

@jyn514
Copy link
Member

jyn514 commented May 5, 2025

it's OK. @aDotInTheVoid is going to change the ping message to make it more clear this is a public API.

@obi1kenobi
Copy link
Member

Sorry for the breakage. Why are there no cargo semver-checks to catch this?

It was caught by the test suites of cargo-semver-checks and its components. Their test suites are fairly extensive (a decent bit larger than the rustdoc JSON tests) and at one point there was discussion about running them in rustdoc's own CI to catch rustdoc JSON bugs. At the time that seemed like a lot of work for not much gain, but perhaps it's an idea to revisit.

I opened #140689 to track recovering the original behavior, unless we decide to roll forward instead and just bump the format version number. That would be a bit inconvenient, but I can deal with it if it's preferable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rustdoc-json Area: Rustdoc JSON backend S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants