1
Fork 0
Commit graph

424 commits

Author SHA1 Message Date
klensy
2a326bcc74 fix clippy perf lints 2022-05-24 13:35:54 -04:00
klensy
678059f7d0 fix simple clippy lints 2022-05-24 12:24:41 -04:00
Guillaume Gomez
6092cbb17c Remove fields_stripped fields (and equivalents) 2022-05-21 13:21:12 +02:00
Jacob Pratt
6970246886
Remove crate visibility modifier in libs, tests 2022-05-21 00:32:47 -04:00
bors
8a2fe75d0e Auto merge of #95960 - jhpratt:remove-rustc_deprecated, r=compiler-errors
Remove `#[rustc_deprecated]`

This removes `#[rustc_deprecated]` and introduces diagnostics to help users to the right direction (that being `#[deprecated]`). All uses of `#[rustc_deprecated]` have been converted. CI is expected to fail initially; this requires #95958, which includes converting `stdarch`.

I plan on following up in a short while (maybe a bootstrap cycle?) removing the diagnostics, as they're only intended to be short-term.
2022-05-09 04:47:30 +00:00
Guillaume Gomez
279dee5374 Fix reexports missing from the search index 2022-05-06 13:52:21 +02:00
Guillaume Gomez
9625ed8be7 Move settings into full JS 2022-04-30 13:12:41 +02:00
Guillaume Gomez
b1e6211c5c Rename def_id into item_id when the type is ItemId for readability 2022-04-16 14:28:09 +02:00
Jacob Pratt
e46f8b23dd
Error on #[rustc_deprecated] 2022-04-14 21:19:44 -04:00
Dylan DPC
db61452b7a
Rollup merge of #93217 - willcrichton:example-analyzer, r=GuillaumeGomez
Improve Rustdoc UI for scraped examples with multiline arguments, fix overflow in line numbers

This PR improves a few aspects of the scrape examples feature in Rustdoc.
* Only function names and not the full call expression are highlighted.
* For call-sites with multiline arguments, the minimized code viewer will scroll to the top of the call-site rather than the middle if the argument is larger than the viewer size, ensuring that the function name is visible.
* This fixes an issue where the line numbers column had a visible x-scroll bar.

r? `@GuillaumeGomez`
2022-04-13 17:35:32 +02:00
Will Crichton
6a18b68655 Add Rustdoc book link to scrape examples help. Remove remaining panic
locations in scrape examples.
2022-04-12 11:05:07 -07:00
León Orell Valerian Liehr
8de453a8c6 rustdoc: discr. required+provided assoc consts+tys 2022-04-12 15:38:39 +02:00
Guillaume Gomez
d48a39a5e2 Switch item-info div to span to generate valid HTML 2022-04-06 20:41:44 +02:00
Guillaume Gomez
a404523fbd Generate a <div> instead of a <span> for item-info elements 2022-04-05 18:11:27 +02:00
Dylan DPC
5925c8ee79
Rollup merge of #95613 - GuillaumeGomez:fix-rustdoc-attr-display, r=notriddle
Fix rustdoc attribute display

Fixes #81482.

r? `@notriddle`
2022-04-03 23:21:43 +02:00
Guillaume Gomez
78698dd0fb Fix display of attributes in rustdoc 2022-04-03 13:40:43 +02:00
Jules Bertholet
c8ab63b30f Only show associated consts from inherent impls in sidebar 2022-03-30 13:49:50 -04:00
Guillaume Gomez
2c4ce9d2dc Remove header field from clean::Function 2022-03-29 11:46:57 +02:00
Will Crichton
d1416d528a Add scrape examples help page 2022-03-27 18:11:57 -07:00
Will Crichton
7cca69342a Fix markdown issue, remove hard-coded rust-lang.org url 2022-03-27 18:11:56 -07:00
Will Crichton
ae5d0cbe74 Improve alignment of additional scraped examples, add scrape examples help page 2022-03-27 18:11:50 -07:00
Will Crichton
d58c9dfdb9 Only highlight identifier in scraped examples, not arguments 2022-03-27 18:10:50 -07:00
Will Crichton
7e81b0a317 Improve Rustdoc UI for scraped examples with multiline arguments, fix
overflow in line numbers
2022-03-27 18:10:49 -07:00
codehorseman
01dbfb3eb2 resolve the conflict in compiler/rustc_session/src/parse.rs
Signed-off-by: codehorseman <cricis@yeah.net>
2022-03-16 20:12:30 +08:00
bors
b7511248f9 Auto merge of #94139 - est31:let_else_rustdoc, r=notriddle
librustdoc: adopt let else in more places

Continuation of #89933, #91018, #91481, #93046, #93590, #94011.

I have extended my clippy lint to also recognize tuple passing and match statements. The diff caused by fixing it is way above 1 thousand lines. Thus, I split it up into multiple pull requests to make reviewing easier. This PR handles librustdoc.
2022-03-14 07:39:53 +00:00
Guillaume Gomez
87fba23d52 Collapse Blanket Implementations and Auto-trait implementations by default 2022-03-11 14:48:53 +01:00
Guillaume Gomez
a5216cf67d Unify inherent impl blocks by wrapping them into a div 2022-03-08 23:12:11 +01:00
est31
565f644edf librustdoc: adopt let else in more places 2022-03-04 10:33:29 +01:00
Michael Goulet
ca6e06efba make GATs print properly in traits 2022-02-27 21:36:29 -08:00
Michael Goulet
8a0c2c4e83 move method out of nesting 2022-02-27 21:03:56 -08:00
Guillaume Gomez
7e0a2a765e Correctly generate links in the sidebar for impls 2022-02-27 12:07:38 +01:00
Guillaume Gomez
5136b549c9 Unify sidebar a bit more by generating a list using <ul> instead of <div> elements 2022-02-16 20:32:53 +01:00
Matthias Krüger
4256165411
Rollup merge of #93830 - camelid:cleanup-section-code, r=GuillaumeGomez
Refactor sidebar printing code

This is the refactoring parts of #92660, plus the trait aliases capitalization
consistency fix. I think this will be necessary for #92658.

r? `@GuillaumeGomez`
2022-02-10 12:10:01 +01:00
Noah Lev
504f3f037d Title-case trait aliases section for consistency 2022-02-09 11:39:13 -08:00
Noah Lev
163a8004ae Refactor sidebar printing code
The new code is much simpler and easier to understand. In fact, the old
code actually had a subtle bug where it excluded a few item types,
including trait aliases, from the sidebar, even though they are rendered
on the page itself! Now, all sections should show up in the sidebar.
2022-02-09 11:39:13 -08:00
Noah Lev
1115f69bf4 Deduplicate item sections 2022-02-09 11:39:12 -08:00
Noah Lev
fa400ace11 rustdoc: Create enum for sections holding items 2022-02-09 11:39:12 -08:00
Guillaume Gomez
6aad08f13f Unify headings indent and remove useless anchor 2022-02-09 14:43:44 +01:00
Matthias Krüger
3edec80551
Rollup merge of #93576 - jsha:fix-rustdoc-html, r=GuillaumeGomez
Emit more valid HTML from rustdoc

Previously, tidy-html5 (`tidy`) would complain about a few things in our HTML. The main thing is that `<summary>` tags can't contain `<div>`s. That's easily fixed by changing out the `<div>`s for `<span>`s with `display: block`.

However, there's also a rule that `<span>`s can't contain heading elements. `<span>` permits only "phrasing content" https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span, and `<h3>` (and friends) are "Flow content, heading content, palpable content". https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements

We have a wrapping `<div>` that goes around each `<h3>`/`<h4>`, etc. We turn that into a `<section>` rather than a `<span>` because `<section>` permits "flow content". https://developer.mozilla.org/en-US/docs/Web/HTML/Element/section

After this change we get only three warnings from tidy, run on struct.String.html:

line 6 column 10790 - Warning: trimming empty <span>
line 1 column 1118 - Warning: <link> proprietary attribute "disabled"
line 1 column 1193 - Warning: <link> proprietary attribute "disabled"

The empty `<span>` is a known issue - there's a span in front of the search box to work around a strange Safari issue.

The `<link>` attributes are the non-default stylesheets. We can probably refactor theme application to avoid using this proprietary "disabled" attribute.

We can suppress those warnings with flags to tidy, and get a run that returns 0 (success):

```
tidy -o /dev/null -quiet --drop-empty-elements no --warn-proprietary-attributes no build/x86_64-unknown-linux-gnu/doc/std/string/trait.ToString.html
```

Note: this requires the latest version of tidy-html5, built from https://github.com/htacg/tidy-html5. Older versions (including the default version on Ubuntu 21.10) think `<section>` can't occur inside `<summary>`.

Demo: https://rustdoc.crud.net/jsha/fix-rustdoc-html/std/string/struct.String.html

r? `@GuillaumeGomez`
2022-02-04 18:42:15 +01:00
Jacob Hoffman-Andrews
32f62607c3 Emit valid HTML from rustdoc
Previously, tidy-html5 (`tidy`) would complain about a few things in our
HTML. The main thing is that `<summary>` tags can't contain `<div>`s.
That's easily fixed by changing out the `<div>`s for `<span>`s with
`display: block`.

However, there's also a rule that `<span>`s can't contain heading
elements. `<span>` permits only "phrasing content"
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span, and
`<h3>` (and friends) are "Flow content, heading content, palpable
content".
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements

We have a wrapping `<div>` that goes around each `<h3>`/`<h4>`,
etc. We turn that into a `<section>` rather than a `<span>` because
`<section>` permits "flow content".
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/section

After this change we get only three warnings from tidy, run on
struct.String.html:

line 6 column 10790 - Warning: trimming empty <span>
line 1 column 1118 - Warning: <link> proprietary attribute "disabled"
line 1 column 1193 - Warning: <link> proprietary attribute "disabled"

The empty `<span>` is a known issue - there's a span in front of the
search box to work around a strange Safari issue.

The `<link>` attributes are the non-default stylesheets. We can probably
refactor theme application to avoid using this proprietary "disabled"
attribute.
2022-02-02 00:29:33 -08:00
Matthias Krüger
2484cb8327
Rollup merge of #93420 - jsha:adjust-settings-layout, r=GuillaumeGomez
Improve wrapping on settings page

Previously, the radio button choices for themes would wrap awkwardly on
narrow screens. With this change, the group of choices will prefer
bumping down to the next line together, leaving the setting name on its
own line.

Also fix some minor spacing issues:

 - Align the setting name vertically with the radio button choices.
 - Use margin instead of padding for most spacing choices.
 - Use no margin/padding on the right-hand side.

 Demo: https://rustdoc.crud.net/jsha/adjust-settings-layout/settings.html

 r? ``@GuillaumeGomez``

Before (narrow screen):

![image](https://user-images.githubusercontent.com/220205/151555533-7ab65216-d178-4dcc-8792-3c8fb9da8718.png)

After (narrow screen):

![image](https://user-images.githubusercontent.com/220205/151555702-ad79af32-f84b-4ee4-ae7a-1a2a463c0f6f.png)
2022-02-02 07:11:06 +01:00
Jacob Hoffman-Andrews
c790128c3c Improve wrapping on settings page
Previously, the radio button choices for themes would wrap awkwardly on
narrow screens. With this change, the group of choices will prefer
bumping down to the next line together, leaving the setting name on its
own line.

Also fix some minor spacing issues:

 - Align the setting name vertically with the radio button choices.
 - Use margin instead of padding for most spacing choices.
 - Use no margin/padding on the right-hand side.
2022-01-31 01:46:10 -08:00
Matthias Krüger
0b2359baa7
Rollup merge of #93391 - notriddle:notriddle/remove-srclink-tooltip, r=jsha,GuillaumeGomez
rustdoc: remove tooltip from source link

This made more sense back when it was abbreviated, but now it seems redundant.
2022-01-30 00:04:13 +01:00
Michael Howell
2e38e3b9b4 rustdoc: remove tooltip from source link
This made more sense back when it was abbreviated, but now it
seems redundant.
2022-01-27 15:09:52 -07:00
Guillaume Gomez
d442a37262 Fix invalid extra dot after version if no source 2022-01-25 17:09:48 +01:00
Jacob Hoffman-Andrews
11b17c6c04 rustdoc settings: use radio buttons for theme
This reduces the number of clicks required to change theme.

Also, simplify the UI a bit (remove setting grouping), and add a "Back"
link close to the settings icon.
2022-01-23 15:55:50 -08:00
Noah Lev
fc16b815cc rustdoc: Make some pub items crate-private
They don't need to be `pub`. Making them crate-private improves code
clarity and `dead_code` linting.
2022-01-21 18:41:50 -08:00
Matthias Krüger
405cf20442
Rollup merge of #91694 - euclio:stability-improvements, r=GuillaumeGomez
rustdoc: decouple stability and const-stability

This PR tweaks the stability rendering code to consider stability and const-stability separately. This fixes two issues:

- Stabilities that match the enclosing item are now always omitted, even if the item has const-stability as well (#90552)
- Const-stable unstable functions will now have their (const-) stability rendered.

Fixes #90552.
2022-01-20 17:10:33 +01:00
Jacob Hoffman-Andrews
6a5f8b1aef Simplify and unify rustdoc sidebar styles
This switches to just use size, weight, and spacing to distinguish
headings in the sidebar. We no longer use boxes, horizontal bars, or
centering to distinguish headings. This makes it much easier to
understand the hierarchy of headings, and reduces visual noise.

I also refactored how the mobile topbar works. Previously, we tried to
shift around elements from the sidebar to make the topbar. Now, the
topbar gets its own elements, which can be styled on their own. This
makes styling and reasoning about those elements simpler.

Because the heading font sizes are bigger, increase the sidebar width
slightly.

As a very minor change, removed version from the "All types" page. It's
now only on the crate page.
2022-01-18 10:43:14 -08:00
Matthias Krüger
d501ead009
Rollup merge of #92629 - jsha:theme-picker-local-only-2, r=GuillaumeGomez
Pick themes on settings page, not every page

This hides the paintbrush icon on most pages by default, in preference for the settings on the settings page.  When loading from a local file, and not in mobile view, continue to show the theme picker. That's because some browsers limit access to localStorage from file:/// URLs, so choosing a theme from settings.html doesn't take effect.

Fixes #84539
Part of #59840

r? `@GuillaumeGomez`

Demo: https://rustdoc.crud.net/jsha/theme-picker-local-only-2/std/io/trait.Read.html
2022-01-18 04:41:58 +01:00