Commit Graph

9064 Commits

Author SHA1 Message Date
Matthias Krüger 7bf43c3931 Rollup merge of #96958 - GuillaumeGomez:settings-menu-display, r=jsha
Improve settings menu display and remove theme menu

We talked about improving the settings menu and we mentioned that firefox pocket was a nice inspiration so I implemented it. The result looks like this:

![Screenshot from 2022-05-11 23-59-53](https://user-images.githubusercontent.com/3050060/167954743-438c0a06-4628-478c-bf0c-d20313c1fdfc.png)

You can test it [here](https://rustdoc.crud.net/imperio/settings-menu-display/doc/foo/index.html).

Only question I have is: should I re-assign the shortcut `T` to this setting menu now that the theme menu is gone? For now I simply removed it.

Important to be noted: the full settings page (at `settings.html`) is still rendered the same as currently.

r? ``@jsha``
2022-05-15 08:10:42 +02:00
bors 2a8a0fc423 Auto merge of #96883 - jackh726:early-binder-2, r=oli-obk
Add EarlyBinder

Chalk has no concept of `Param` (https://github.com/rust-lang/chalk/blob/e0ade19d139bc784384acc6736cd960c91dd55a1/chalk-ir/src/lib.rs#L579) or `ReEarlyBound` (https://github.com/rust-lang/chalk/blob/e0ade19d139bc784384acc6736cd960c91dd55a1/chalk-ir/src/lib.rs#L1308). Everything  is just "bound" - the equivalent of rustc's late-bound. It's not completely clear yet whether to move everything to the same time of binder in rustc or add `Param` and `ReEarlyBound` in Chalk.

Either way, tracking when we have or haven't already substituted out these in rustc can be helpful.

As a first step, I'm just adding a `EarlyBinder` newtype that is required to call `subst`. I also add a couple "transparent" `bound_*` wrappers around a couple query that are often immediately substituted.

r? `@nikomatsakis`
2022-05-14 23:53:11 +00:00
Guillaume Gomez e8762757c3 Remove theme picker button 2022-05-14 17:21:52 +02:00
Guillaume Gomez 5e01ba36c9 Improve settings menu display 2022-05-14 17:21:52 +02:00
bors 2d69117088 Auto merge of #96345 - petrochenkov:linclean, r=notriddle
rustdoc: Cleanup doc link resolution

See individual commits for specific changes
2022-05-14 13:24:34 +00:00
Yuki Okushi 93a4dfd737 Rollup merge of #96998 - notriddle:notriddle/var-N, r=jsha
rustdoc: remove weird, unused variable from source-files.js
2022-05-14 13:42:52 +09:00
Jack Huey 0247faed29 Add bound_impl_trait_ref 2022-05-13 18:27:40 -04:00
Jack Huey c92248ab9f Add bound_type_of 2022-05-13 18:27:18 -04:00
Vadim Petrochenkov 9ba5281c76 resolve: Move collection of all macro_rules in the crate to rustdoc 2022-05-13 21:43:36 +03:00
Vadim Petrochenkov 6c5c7f503e Fix rebase 2022-05-13 20:42:53 +03:00
Vadim Petrochenkov a9c14dc440 rustdoc: Use Visibility::is_public more 2022-05-13 20:42:53 +03:00
Vadim Petrochenkov 7689857884 rustdoc: Do not resolve associated item paths unnecessarily 2022-05-13 20:42:53 +03:00
Vadim Petrochenkov 7c2283d3ca rustdoc: Do not create UrlFragments until they are necessary
This simplifies error types and allows to remove `fn resolve_inner` and `fn check_full_res`

`visited_links` caching is not touched for now
2022-05-13 20:42:53 +03:00
Vadim Petrochenkov 7256c6f93e rustdoc: Remove fn resolve_macro
and otherwise unify resolution in macro namespace and other namespaces
2022-05-13 20:42:53 +03:00
Vadim Petrochenkov 95fb05d4d8 rustdoc: Remove ResolutionFailure::Dummy
The variant resolution check didn't make sense, and derive trait collision could be processed in a different way
2022-05-13 20:42:52 +03:00
Vadim Petrochenkov c979ef5d8c rustdoc: Remove ResolutionFailure::MalformedGenerics
in favor of `PreprocessingError::MalformedGenerics`
2022-05-13 20:42:52 +03:00
Vadim Petrochenkov 51eda747b1 rustdoc: Remove ResolutionFailure::NoParentItem
It's a bug and not an error
2022-05-13 20:42:52 +03:00
Michael Howell 1b41d11d74 rustdoc: remove weird, unused variable from source-files.js 2022-05-12 17:34:46 -07:00
Michael Howell d3fd6bfd30 rustdoc: fix GUI crash when searching for magic JS property values 2022-05-12 14:15:31 -07:00
bors c6499fd998 Auto merge of #96974 - matthiaskrgr:rollup-jd4otnc, r=matthiaskrgr
Rollup of 5 pull requests

Successful merges:

 - #95896 (Note the contacts for the nvptx64 target(s))
 - #96860 (openbsd: convert futex timeout managment to Timespec usage)
 - #96939 (Fix settings page CSS)
 - #96941 (update graphviz links)
 - #96968 (Add tests for #96806)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2022-05-12 15:07:35 +00:00
Matthias Krüger 231cd0fd7d Rollup merge of #96939 - GuillaumeGomez:settings-css, r=notriddle
Fix settings page CSS

In https://github.com/rust-lang/rust/pull/96741, I moved the CSS loading outside of `settings.js`. The result was that on the settings page, there isn't the settings CSS anymore:

![Screenshot from 2022-05-11 11-09-24](https://user-images.githubusercontent.com/3050060/167817969-6750931b-3e6e-4178-b5a9-ee3851e983be.png)

I also used this opportunity to remove unused CSS rules (we don't have `<select>` elements anymore in the settings).

cc `@jsha`
r? `@notriddle`
2022-05-12 16:41:04 +02:00
bors 481db40311 Auto merge of #95562 - lcnr:attr-no-encode, r=davidtwco
don't encode only locally used attrs

Part of https://github.com/rust-lang/compiler-team/issues/505.

We now filter builtin attributes before encoding them in the crate metadata in case they should only be used in the local crate. To prevent accidental misuse `get_attrs` now requires the caller to state which attribute they are interested in. For places where that isn't trivially possible, I've added a method `fn get_attrs_unchecked` which I intend to remove in a followup PR.

After this pull request landed, we can then slowly move all attributes to only be used in the local crate while being certain that we don't accidentally try to access them from extern crates.

cc https://github.com/rust-lang/rust/pull/94963#issuecomment-1082924289
2022-05-12 12:48:30 +00:00
Dylan DPC 2af6677de8 Rollup merge of #91518 - luojia65:rustdoc-riscv-arch, r=GuillaumeGomez
Add readable rustdoc display for RISC-V target

This pull request adds a human readable rustdoc display for RISC-V architecture. Target configuration marked as `#[cfg(target_arch = "riscv32")]` or `#[cfg(target_arch = "riscv64")]` are pretty formatted like `RISC-V RV32` and `RISC-V RV64` in Rust docs.

Before:

![图片](https://user-images.githubusercontent.com/40385009/152681944-58d758ae-ac4f-412b-b70c-1e673a2a071e.png)

After:

![图片](https://user-images.githubusercontent.com/40385009/152681923-91d5fe75-c3b2-4ac2-865c-54eac0aefe8d.png)
2022-05-11 13:49:27 +02:00
Guillaume Gomez 92482cabaa Remove unused CSS settings rules 2022-05-11 11:27:13 +02:00
Guillaume Gomez 84615e868b Add missing CSS file for settings page 2022-05-11 11:27:00 +02:00
Yuki Okushi 95b2d37a39 Rollup merge of #96900 - GuillaumeGomez:fix-js-error, r=notriddle
Fix js error

On the source code pages, we get a JS error:

![Screenshot from 2022-05-10 16-26-53](https://user-images.githubusercontent.com/3050060/167656292-51e0b0e9-6b0c-4f94-82e0-dd8fb77adf52.png)

It's fixed in the first commit. The second one is removing an unused CSS rule and the third one is a little cleanup of a GUI test.

cc ``@jsha``
r? ``@notriddle``
2022-05-11 13:16:33 +09:00
Yuki Okushi ed9faeedda Rollup merge of #96887 - notriddle:notriddle/as-raw-fd, r=jsha
rustdoc: correct path to type alias methods

Fixes #83991
2022-05-11 13:16:31 +09:00
Jack Huey 319575ae8c Introduce EarlyBinder 2022-05-10 22:47:18 -04:00
Michael Howell 6257bd2f4e rustdoc: clean up method path index
This removes a special case that doesn't seem to do anything
any more.
2022-05-10 08:59:59 -07:00
Yuki Okushi d34915f691 Rollup merge of #96879 - notriddle:notriddle/search-ranking, r=GuillaumeGomez
rustdoc: search result ranking fix

# Before

![image](https://user-images.githubusercontent.com/1593513/167477286-91049761-67f9-4a73-8fb7-09dbb19ca76c.png)

# After

![image](https://user-images.githubusercontent.com/1593513/167477345-6733bc0f-4bb2-4625-9f7f-094031e36414.png)
2022-05-11 00:09:35 +09:00
Guillaume Gomez f9fc7ef097 Remove unused CSS rule 2022-05-10 16:40:32 +02:00
Guillaume Gomez f82b3a16d5 Fix JS error in source code pages 2022-05-10 16:40:14 +02:00
lcnr bae84a484c update rustdoc 2022-05-10 12:07:35 +02:00
Michael Howell bb4ecc3fd8 rustdoc: correct path to type alias methods 2022-05-09 17:50:39 -07:00
Michael Howell 360d6e4b7d rustdoc: search result ranking fix 2022-05-09 11:49:05 -07:00
Matthias Krüger 59722228b9 Rollup merge of #96858 - notriddle:notriddle/cleanup-search-js, r=GuillaumeGomez
Remove unused param from search.js::checkPath
2022-05-09 18:45:40 +02:00
Michael Howell 521d2c3d3c Remove unused param from search.js::checkPath 2022-05-08 22:19:40 -07: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
bors a57117982a Auto merge of #95542 - xFrednet:rfc-2383-expect-query, r=wesleywiser
Support tool lints with the `#[expect]` attribute (RFC 2383)

This PR fixes the ICE https://github.com/rust-lang/rust/issues/94953 by making the assert for converted expectation IDs conditional.

Additionally, it moves the lint expectation check into a separate query to support rustdoc and other tools. On the way, I've also added some tests to ensure that the attribute works for Clippy and rustdoc lints.

The number of changes comes from the long test file. This may look like a monster PR, this may smell like a monster PR and this may be a monster PR, but it's a harmless monster. 🦕

---

Closes: https://github.com/rust-lang/rust/issues/94953

cc: https://github.com/rust-lang/rust/issues/85549

r? `@wesleywiser`

cc: `@rust-lang/rustdoc`
2022-05-09 00:02:55 +00:00
Matthias Krüger 43b3a491f5 Rollup merge of #96835 - GuillaumeGomez:eslint-rules, r=notriddle
Add more eslint rules

Slowly continuing to enforce more rules with eslint.

Part of https://github.com/rust-lang/rust/issues/93058.

r? `@notriddle`
2022-05-08 21:31:20 +02:00
bors ed3164baf0 Auto merge of #96770 - flip1995:fix-trait-type-in-bounds, r=cjgillot
Track if a where bound comes from a impl Trait desugar

With https://github.com/rust-lang/rust/pull/93803 `impl Trait` function arguments get desugared to hidden where bounds. However, Clippy needs to know if a bound was originally a `impl Trait` or an actual bound. This adds a field to the `WhereBoundPredicate` struct to keep track of this information during AST->HIR lowering.

r? `@cjgillot`

cc `@estebank` (as the reviewer of #93803)
2022-05-08 14:10:12 +00:00
xFrednet 897404e1d9 Support #[expect] attributes for rustdoc lints (RFC 2383) 2022-05-08 14:37:16 +02:00
Guillaume Gomez 1e93165b05 Enforce no trailing spaces with eslint 2022-05-08 14:08:33 +02:00
Guillaume Gomez b7e5116375 Enforce linebreak style in js source code 2022-05-08 14:07:25 +02:00
Guillaume Gomez 14897180ae Enforce quote rule for JS source code 2022-05-07 20:50:55 +02:00
flip1995 dd1ff405e3 Track if a where bound comes from a impl Trait desugar
With #93803 `impl Trait` function arguments get desugared to hidden
where bounds. However, Clippy needs to know if a bound was originally a
impl Trait or an actual bound. This adds a field to the
`WhereBoundPredicate` struct to keep track of this information during
HIR lowering.
2022-05-07 17:10:30 +02:00
Guillaume Gomez f98f92fdaf Rollup merge of #96805 - Folyd:eslint, r=GuillaumeGomez
Change eslint rules from configuration comments to configuration file

Repeatedly declaring eslint rules in source files is an annoying thing, we should move those rules into the eslint configuration file.

r? ``@GuillaumeGomez``
2022-05-07 15:23:48 +02:00
Guillaume Gomez 3346d11f4e Rollup merge of #96636 - GuillaumeGomez:fix-jump-to-def-regression, r=notriddle
Fix jump to def regression

https://github.com/rust-lang/rust/pull/93803 introduced a regression in the "jump to def" feature. This fixes it.

Nice side-effect: it adds a new regression test. :)

I also used this opportunity to add documentation about this unstable feature in the rustdoc book.

cc ``@cjgillot``
r? ``@notriddle``
2022-05-07 15:23:45 +02:00
Folyd a8ede1248d Change eslint rules from configuration comments to configuration files 2022-05-07 11:47:30 +08:00
Guillaume Gomez 5c7ce84d74 Remove unneeded SpanMapVisitor::visit_generics function 2022-05-06 22:01:30 +02:00