| Age | Commit message (Collapse) | Author | Lines |
|
Rollup of 14 pull requests
Successful merges:
- #98775 (rustdoc: improve scroll locking in the rustdoc mobile sidebars)
- #99479 (rustdoc-json: Remove doc FIXME for Import::id and explain)
- #100040 (Error on broken pipe but do not backtrace or ICE)
- #100072 (linker-plugin-lto.md: Correct the name of example c file)
- #100098 (Some "this expression has a field"-related fixes)
- #100226 (Do not manually craft a span pointing inside a multibyte character.)
- #100240 (Fail gracefully when const pattern is not structural match.)
- #100256 (Add some high-level docs to `FnCtxt` and `ItemCtxt`)
- #100261 (Set tainted errors bit before emitting coerce suggestions.)
- #100275 (also update anyhow in codegen_cranelift)
- #100281 (Remove more Clean trait implementations)
- #100314 (Mention `unit-test` in MIR opt test README)
- #100319 (Remove more Clean trait implementations)
- #100323 ([rustdoc] Don't render impl blocks with doc comment if they only contain private items by default)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
rustdoc: improve scroll locking in the rustdoc mobile sidebars
This PR prevents the main content area from scrolling while the mobile sidebar is open on documentation pages (porting the scroll locking behavior from the source sidebar to the regular sidebar), and also fixes some bad behavior where opening a "mobile" sidebar, and growing the viewport so that the "desktop" mode without scroll locking is activated, could potentially leave the page stuck.
This does not affect the behavior on larger screens. Only small ones, where the sidebar covers up the main content.
Split out from #98772
|
|
The exact amount that this reduces the size of an implementors file depends
on whether most of the impls are synthetic or not. For `Send`, it reduces
the file from 128K to 116K, while for `Clone` it went from 64K to 52K.
|
|
rustdoc: use a more compact encoding for source-files.js
This reduces the compiler-doc file from 40K to 36K, a 10% reduction in size.
|
|
Replace `* -> vec` with `-> vec` in docs
Fixes #100078.
Rustdoc's current syntax is `-> vec`.
|
|
Rustdoc's current syntax is `-> vec`.
|
|
This reduces the compiler-doc file from 40K to 36K, a 10% reduction in size.
|
|
r=notriddle
Fix item info pos and height
Fixes https://github.com/rust-lang/rust/issues/98266.
Fixes https://github.com/rust-lang/rust/issues/98343.
You can test it [here](https://rustdoc.crud.net/imperio/fix-item-info-pos-and-height/lib2/trait.Trait.html).
Here is a screenshot of the result:

r? `@jsha`
|
|
r=notriddle
Fix settings slider on small width screens
Fixes #99794.
Screenshot of the fix:

cc `````@jsha`````
r? `````@notriddle`````
|
|
Fix headings colors
Fixes #99797.

cc `@jsha`
r? `@notriddle`
|
|
|
|
|
|
|
|
|
|
WaffleLapkin:rustdoc_implement_support_for_must_implement, r=GuillaumeGomez
rustdoc: Add support for `#[rustc_must_implement_one_of]`
This PR adds support for `#[rustc_must_implement_one_of]` attribute added in #92164. There is a desire to eventually use this attribute of `Read`, so making it show up in docs is a good thing.
I "stole" the styling from cfg notes, not sure what would be a proper styling. Currently it looks like this:

<details><summary>Code to reproduce</summary>
<p>
```rust
#![feature(rustc_attrs)]
#[rustc_must_implement_one_of(a, b)]
pub trait Trait {
fn req();
fn a(){ Self::b() }
fn b(){ Self::a() }
}
```
</p>
</details>
|
|
|
|
|
|
|
|
|
|
Group CSS font rule
Another CSS cleanup I came by when working on something else.
r? ``@notriddle``
|
|
rustdoc UI fixes
The first commit fixes this bug:


The second one fixes the missing change of border color when the search input is focused.
cc `@jsha`
r? `@notriddle`
|
|
|
|
|
|
|
|
|
|
|
|
Correctly handle crate level page on docs.rs as well
Fixes #99121.
On docs.rs, they move the `class` attribute into a child which still has `rustdoc`. So instead of using the `<body>`, we can simply use this one directly.
r? `@jsha`
|
|
|
|
|
|
|
|
|
|
Group .test-arrow CSS rules and fix rgb/rgba property
Surprisingly, the web browsers were handling the `rgb`/`rgba` typo correctly. At least it now is as expected.
For the rest, it's simply grouping `.test-arrow` rules.
r? ``@Dylan-DPC``
|
|
|
|
r=notriddle
Fix display of search result crate filter dropdown
In case a crate name is too long, the `<select>` completely overflows its parent. Another problem is that there is left margin on the `select` which break the alignment. You can see both issues here:

And with the fix:

cc `@jsha`
r? `@notriddle`
|
|
|
|
|
|
|
|
this change removes some interactive elements in `@media print` form.
more specifically, it removes the source links, the expand/collapse toggle buttons, and the `#copy-path` button.
it also adjusts some spacing and removes the `.top-doc` description completely if it's currently collapsed.
|
|
This commit ports the scroll locking behavior from the source sidebar to the
regular sidebar, and also fixes some bad behavior where opening a "mobile"
sidebar, and growing the viewport so that the "desktop" mode without scroll
locking is activated, could potentially leave the page stuck.
This does not affect the behavior on larger screens. Only small ones, where
the sidebar covers up the main content.
|
|
r=GuillaumeGomez
rustdoc: improve click behavior of the source code mobile full-screen "sidebar"
On desktop, if you open the source code sidebar, it stays open even when you move from page to page. It used to do the same thing on mobile, but I think that's stupid. Since the file list fills the entire screen on mobile, and you can't really do anything with the currently selected file other than dismiss the "sidebar" to look at it, it's safe to assume that anybody who clicks a file in that list probably wants the list to go away so they can see it.
Split out separately from #98772
|
|
Add "no-div-regex" eslint rule
r? `@Dylan-DPC`
|
|
|
|
r=GuillaumeGomez
rustdoc: make source sidebar toggle a real button
This fixes tab focus, so that you can open and close the sidebar from keyboard.
This should cause no visible change in appearance at all. The only way you'd know anything different is if you tried to use keyboard controls to open the source code file navigation sidebar.
Separated out from #98772
|
|
r=GuillaumeGomez
rustdoc: use <details> tag for the source code sidebar
This fixes the extremely poor accessibility of the old system, making it possible to navigate the sidebar by keyboard, and also implicitly gives the sidebar items the correct ARIA roles.
Split out separately from #98772
|
|
|
|
|
|
|
|
This fixes tab focus, so that you can open and close the sidebar
from keyboard.
|
|
https://user-images.githubusercontent.com/1593513/176974336-20cecdc3-1885-402a-a6d5-81a8dd03a45d.png
|
|
Use CSS variables to handle theming
This is the start for our simplification of theming. Considering how big the diff quickly becomes, I think it's better to do it in multiple parts.
(The 3 first commits come from https://github.com/rust-lang/rust/pull/98297 so once it's merged, they'll disappear).
Normally they shouldn't be any UI changes. You can check it [here](https://rustdoc.crud.net/imperio/css-simplification/doc/foo/index.html).
cc `@notriddle`
r? `@jsha`
|