Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

rustdoc: Display "private fields" instead of "fields omitted" #92699

Merged
merged 1 commit into from
Jan 12, 2022

Conversation

camelid
Copy link
Member

@camelid camelid commented Jan 9, 2022

Also:

  • Always use /* */ block comments
  • Use the same message everywhere, rather than sometimes prefixing
    with "some"

When I first read rustdoc docs, I was confused why the fields were being
omitted. It was only later that I realized it was because they were
private. It's also always bothered me that rustdoc sometimes uses //
and sometimes uses /* comments for these messages, so this change
makes them all use /*.

Technically, I think fields can be omitted if they are public but
doc(hidden) too, but doc(hidden) is analogous to privacy. It's
really just used to emulate "doc privacy" when -- because of technical
limitations -- an item has to be public. So I think it's fine to include
this under the category of "private fields".

r? @jsha

Also:

  * Always use `/* */` block comments
  * Use the same message everywhere, rather than sometimes prefixing
    with "some"

When I first read rustdoc docs, I was confused why the fields were being
omitted. It was only later that I realized it was because they were
private. It's also always bothered me that rustdoc sometimes uses `//`
and sometimes uses `/*` comments for these messages, so this change
makes them all use `/*`.

Technically, I think fields can be omitted if they are public but
`doc(hidden)` too, but `doc(hidden)` is analogous to privacy. It's
really just used to emulate "doc privacy" when -- because of technical
limitations -- an item has to be public. So I think it's fine to include
this under the category of "private fields".
@rustbot rustbot added the T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. label Jan 9, 2022
@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 9, 2022
@camelid
Copy link
Member Author

camelid commented Jan 9, 2022

Before/After Screenshots

Before

image

After

image


Before

image

After

image


Before

image

After

image

@jsha
Copy link
Contributor

jsha commented Jan 11, 2022 via email

@camelid
Copy link
Member Author

camelid commented Jan 11, 2022

I kind of like the simplicity of just /* private fields */, especially because I think it's clear from context whether there are non-private fields (because they'll be shown next to the "private fields" comment). However, I'm willing to change it to what you suggest if you think that'd be better.

@jsha
Copy link
Contributor

jsha commented Jan 11, 2022

Nah, let's go ahead with "private fields."

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Jan 11, 2022

📌 Commit 2b70a3d has been approved by jsha

@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 Jan 11, 2022
@camelid
Copy link
Member Author

camelid commented Jan 11, 2022

Just so you know, this is what it looks like when only some fields are private:

image

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 11, 2022
rustdoc: Display "private fields" instead of "fields omitted"

Also:

  * Always use `/* */` block comments
  * Use the same message everywhere, rather than sometimes prefixing
    with "some"

When I first read rustdoc docs, I was confused why the fields were being
omitted. It was only later that I realized it was because they were
private. It's also always bothered me that rustdoc sometimes uses `//`
and sometimes uses `/*` comments for these messages, so this change
makes them all use `/*`.

Technically, I think fields can be omitted if they are public but
`doc(hidden)` too, but `doc(hidden)` is analogous to privacy. It's
really just used to emulate "doc privacy" when -- because of technical
limitations -- an item has to be public. So I think it's fine to include
this under the category of "private fields".

r? `@jsha`
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 11, 2022
rustdoc: Display "private fields" instead of "fields omitted"

Also:

  * Always use `/* */` block comments
  * Use the same message everywhere, rather than sometimes prefixing
    with "some"

When I first read rustdoc docs, I was confused why the fields were being
omitted. It was only later that I realized it was because they were
private. It's also always bothered me that rustdoc sometimes uses `//`
and sometimes uses `/*` comments for these messages, so this change
makes them all use `/*`.

Technically, I think fields can be omitted if they are public but
`doc(hidden)` too, but `doc(hidden)` is analogous to privacy. It's
really just used to emulate "doc privacy" when -- because of technical
limitations -- an item has to be public. So I think it's fine to include
this under the category of "private fields".

r? ``@jsha``
bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 12, 2022
…askrgr

Rollup of 14 pull requests

Successful merges:

 - rust-lang#92328 (Tweak sentence in `transmute` docs)
 - rust-lang#92432 (Error when selected impl is not const in constck)
 - rust-lang#92506 (Document Box<T> FFI guarantee in 1.41.0 release notes)
 - rust-lang#92699 (rustdoc: Display "private fields" instead of "fields omitted")
 - rust-lang#92703 (RELEASES.md: Add 1.58 release note for `File::options` stabilization)
 - rust-lang#92707 (Extended the note on the use of `no_run` attribute)
 - rust-lang#92709 (Improve documentation for File::options to give a more likely example)
 - rust-lang#92720 (Fix doc formatting for time.rs)
 - rust-lang#92732 (Add note about upstream commit musl-patch-configure.diff is derived from)
 - rust-lang#92742 (Add missing suffix for sidebar-items script path)
 - rust-lang#92748 (Eliminate "boxed" wording in `std::error::Error` documentation)
 - rust-lang#92754 (Update AsmArgs field visibility for rustfmt)
 - rust-lang#92756 (:arrow_up: rust-analyzer)
 - rust-lang#92764 (Fix rust logo style)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit b24b0fd into rust-lang:master Jan 12, 2022
@rustbot rustbot added this to the 1.60.0 milestone Jan 12, 2022
@camelid camelid deleted the private-fields branch January 12, 2022 21:13
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.

5 participants