-
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
rustdoc: Make "rust code block is empty" and "could not parse code block" warnings a lint (INVALID_RUST_CODEBLOCKS
)
#84587
Conversation
r? @CraftSpider (rust-highfive has picked a reviewer for you, use r? to override) |
ec10728
to
6d22485
Compare
6d22485
to
7f4d732
Compare
I don't see a test for the actual empty block case, could you add one? Otherwise looks generally good, given that I'm not super familiar with the lint system. |
It already exists: https://github.com/rust-lang/rust/blob/7f4d7327da6dbec5958d144a12e2e4709ebcbfc1/src/test/rustdoc-ui/invalid-syntax.stderr#L105-L111 Err ... actually I don't think there was ever an FCP in #79816. Also the lint name should be plural, not singular. I'll start FCP once I rename it. |
@rfcbot fcp merge This adds a new lint I'm open to renaming the lint, but I do think changing these from a warning to a lint is the right decision. |
Team member @jyn514 has proposed to merge this. The next step is review by the rest of the tagged team members: No concerns currently listed. Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for info about what commands tagged team members can give me. |
INVALID_RUST_CODEBLOCKS
)
| ^^^^^^^^ | ||
LL | /// ```ignore (to-prevent-tidy-error) | ||
| ^^^ | ||
= note: error from rustc: character literal may only contain one codepoint |
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.
Is there an existing issue about this not pointing to the span that contains the error? Would be nice to fix in the future.
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.
Why was this behavior changed in this PR?
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.
The note
just moved below the help
, it wasn't attached to the correct span before either.
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.
The existing issue is #67857.
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.
it wasn't attached to the correct span before either.
Ah, I see 👍
| ^^^^^^^^ | ||
LL | /// ```ignore (to-prevent-tidy-error) | ||
| ^^^ | ||
= note: error from rustc: character literal may only contain one codepoint |
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.
Why was this behavior changed in this PR?
@rfcbot reviewed I agree with making this a lint, but why was #84587 (comment) changed in this PR? I would prefer it to be a separate change. |
🔔 This is now entering its final comment period, as per the review above. 🔔 |
…pider rustdoc: Make "rust code block is empty" and "could not parse code block" warnings a lint (`INVALID_RUST_CODEBLOCKS`) Fixes rust-lang#79792. This already went through FCP in rust-lang#79816, so it only needs final review. This is mostly a rebase of rust-lang#79816 - thank you `@poliorcetics` for doing most of the work!
…pider rustdoc: Make "rust code block is empty" and "could not parse code block" warnings a lint (`INVALID_RUST_CODEBLOCKS`) Fixes rust-lang#79792. This already went through FCP in rust-lang#79816, so it only needs final review. This is mostly a rebase of rust-lang#79816 - thank you ``@poliorcetics`` for doing most of the work!
I think it'll need to be rebased:
|
@bors r- |
This adds a new lint to `rustc` that is used in rustdoc when a code block is empty or cannot be parsed as valid Rust code. Previously this was unconditionally a warning. As such some documentation comments were (unknowingly) abusing this to pass despite the `-Dwarnings` used when compiling `rustc`, this should not be the case anymore.
This also gives a better error message when a span is missing.
- Simplify boolean expression - Give an example of invalid syntax - Remove explanation of why code block is text
0511ba4
to
6b92f2e
Compare
This comment has been minimized.
This comment has been minimized.
6b92f2e
to
587c504
Compare
@bors r=CraftSpider |
📌 Commit 587c504 has been approved by |
…pider rustdoc: Make "rust code block is empty" and "could not parse code block" warnings a lint (`INVALID_RUST_CODEBLOCKS`) Fixes rust-lang#79792. This already went through FCP in rust-lang#79816, so it only needs final review. This is mostly a rebase of rust-lang#79816 - thank you `@poliorcetics` for doing most of the work!
…laumeGomez Rollup of 7 pull requests Successful merges: - rust-lang#84587 (rustdoc: Make "rust code block is empty" and "could not parse code block" warnings a lint (`INVALID_RUST_CODEBLOCKS`)) - rust-lang#85280 (Toggle-wrap items differently than top-doc.) - rust-lang#85338 (Implement more Iterator methods on core::iter::Repeat) - rust-lang#85339 (Report an error if a lang item has the wrong number of generic arguments) - rust-lang#85369 (Suggest borrowing if a trait implementation is found for &/&mut <type>) - rust-lang#85393 (Suppress spurious errors inside `async fn`) - rust-lang#85415 (Clean up remnants of BorrowOfPackedField) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Fixes #79792. This already went through FCP in #79816, so it only needs final review.
This is mostly a rebase of #79816 - thank you @poliorcetics for doing most of the work!