| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
This reverts commit 7d82cadd97acc66993b69304c5a1a04ef7d1fa36.
|
|
|
|
|
|
* `--without=component-a,component-b` now requires full component names.
This fixes rust-lang/rust#105755 (rust-lang/rust-installer#119).
|
|
|
|
The relevant filtering should have been performed by borrowck.
|
|
|
|
test
This reverts commit e2d41f4c974f0cc09e5aafb02883f222487610f9.
|
|
|
|
|
|
|
|
|
|
|
|
r=Mark-Simulacrum
Backport `IMPLIED_BOUNDS_ENTAILMENT` lint
r? `@Mark-Simulacrum` as requested https://github.com/rust-lang/rust/pull/105575#issuecomment-1365490589
|
|
This patch fixes a regression, in which `#[track_caller]`, which was
previously a no-op, was changed to actually turn on the behavior. This
should instead only happen behind the `closure_track_caller` feature
gate.
Also, add a warning for the user to understand how their code will
compile depending on the feature gate being turned on or not.
Fixes #104588
|
|
lint list
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We don't distribute a miri build for beta/stable so it needs to be kept
optional. In the future it likely makes sense to switch the miri
*artifacts* to always be built, but the rustup component to not be
included -- this will avoid some of this pain.
|
|
|
|
Rollup of 10 pull requests
Successful merges:
- #105216 (Remove unused GUI test)
- #105245 (attempt to clarify align_to docs)
- #105387 (Improve Rustdoc scrape-examples UI)
- #105389 (Enable profiler in dist-powerpc64le-linux)
- #105427 (Dont silently ignore rustdoc errors)
- #105442 (rustdoc: clean up docblock table CSS)
- #105443 (Move some queries and methods)
- #105455 (use the correct `Reveal` during validation)
- #105470 (Clippy: backport ICE fix before beta branch)
- #105474 (lib docs: fix typo)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Clippy: backport ICE fix before beta branch
r? `@Manishearth`
Before beta is branched tomorrow we should backport the fix from https://github.com/rust-lang/rust-clippy/pull/10027 for an ICE. That way we'll get this into stable one release sooner.
This only cherry-picks the fix, not the tests for it. The proper sync of this will be done next week Thursday.
|
|
use the correct `Reveal` during validation
supersedes #105454. Deals with https://github.com/rust-lang/rust/issues/105009#issuecomment-1342395333, not closing #105009 as the ICE may leak into beta
The issue was the following:
- we optimize the mir, using `Reveal::All`
- some optimization relies on the hidden type of an opaque type
- we then validate using `Reveal::UserFacing` again which is not able to observe the hidden type
r? `@jackh726`
|
|
r=GuillaumeGomez
rustdoc: clean up docblock table CSS
# Preview
http://notriddle.com/notriddle-rustdoc-demos/table-2/test_dingus/fn.test.html
# Before

# After

# Details
* The rule `display: block` had no noticeable effect. Technically, because markdown tables have a tbody and thead, they get wrapped in an [anonymous table box] in the CSS tree, nested within the `<table>` element's block layout box.
This rule was added in #87230 to make the table side-scrolling, but this same issue was doubly fixed in #88742 by wrapping it in an explicit `<div>` tag. Since accessibility advocates recommend the wrapper div over marking the table as `display: block`, we'll stick with that.
https://adrianroselli.com/2020/11/under-engineered-responsive-tables.html
* The rule `width: calc(100% - 2px)` had no visible effect, because the anonymous table box was not affected.
* The style is tweaked to basically be the same style GitHub uses. In particular, it adds zebra stripes, and removes dotted borders.
https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/Markdown.20table.20styling
[anonymous table box]: https://www.w3.org/TR/CSS2/tables.html#anonymous-boxes
|
|
GuillaumeGomez:dont-silently-ignore-rustdoc-errors, r=notriddle
Dont silently ignore rustdoc errors
I applied the suggestions from https://github.com/rust-lang/rust/pull/104995 and also checked the rustdoc-ui error but couldn't reproduce it.
r? `@notriddle`
|
|
Enable profiler in dist-powerpc64le-linux
Build the profiler runtime to allow using -C profile-generate and -C instrument-coverage on POWER little endian systems.
I have verified locally that the runtime builds and the profiler is working fine on the platform.
Similar pull request for a different system: https://github.com/rust-lang/rust/pull/104304
|
|
r=notriddle
Improve Rustdoc scrape-examples UI
This PR combines a few different improvements to the scrape-examples UI. See a live demo here: https://willcrichton.net/misc/scrape-examples/small-first-example/clap/struct.Arg.html
### 1. The first scraped example now takes up significantly less screen height.
Inserting the first scraped example takes up a lot of vertical screen space. I don't want this addition to overwhelm users, so I decided to reduce the height of the initial example in two ways: (A) the default un-expanded height is reduced from 240px (10 LOC) to 120px (5 LOC), and (B) the link to the example is now positioned *over* the example instead of *atop* the example (only on desktop though, not mobile). The changes to `scrape-examples.js` and `rustdoc.css` implement this fix.
Here is what an example docblock now looks like:

### 2. Expanding all docblocks will not expand "More examples".
The "More examples blocks" are huge, so fully expanding everything on the page would take up too much vertical space. The changes to `main.js` implement this fix. This is tested in `scrape-examples-toggle.goml`.
### 3. Examples from binary crates are sorted higher than examples from library crates.
Code that is written as an example of an API is probably better for learning than code that happens to use an API, but isn't intended for pedagogic purposes. Unfortunately Rustc doesn't know whether a particular crate comes from an example target (only Cargo knows this). But we can at least create a proxy that prefers examples from binary crates over library crates, which we know from `--crate-type`.
This change is implemented by adding a new field `bin_crate` in `Options` (see `config.rs`). An `is_bin` field has been added to the scraped examples metadata (see `scrape_examples.rs`). Then the example sorting metric uses `is_bin` as the first entry of a lexicographic sort on `(is_bin, example_size, display_name)` (see `render/mod.rs`).
Note that in the future we can consider adding another flag like `--scrape-examples-cargo-target` that would pass target information from Cargo into the example metadata. But I'm proposing a less intrusive change for now.
### 4. The scrape-examples help page has been updated to reflect the latest Cargo interface.
See `scrape-examples-help.md`.
r? `@notriddle`
P.S. once this PR and rust-lang/cargo#11450 are merged, then I think the scrape-examples feature is officially ready for deployment on docs.rs!
|
|
Remove unused GUI test
It's not testing anything so better just remove it.
r? `@notriddle`
|
|
Start emitting labels even if their pointed to file is not available locally
r? `@estebank`
cc `@RalfJung`
fixes #97699
|
|
Rollup of 10 pull requests
Successful merges:
- #104922 (Detect long types in E0308 and write them to disk)
- #105120 (kmc-solid: `std::sys` code maintenance)
- #105255 (Make nested RPIT inherit the parent opaque's generics.)
- #105317 (make retagging work even with 'unstable' places)
- #105405 (Stop passing -export-dynamic to wasm-ld.)
- #105408 (Add help for `#![feature(impl_trait_in_fn_trait_return)]`)
- #105423 (Use `Symbol` for the crate name instead of `String`/`str`)
- #105433 (CI: add missing line continuation marker)
- #105434 (Fix warning when libcore is compiled with no_fp_fmt_parse)
- #105441 (Remove `UnsafetyState`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Include is there only for the effect executing the rule.
The file is not intended to be remade successfully to be
actually included.
|
|
|
|
|
|
|
|
CI: add missing line continuation marker
Resolves this docker warning:
```
[WARNING]: Empty continuation line found in:
RUN apt-get update && apt-get install -y --no-install-recommends g++ gcc-multilib make ninja-build file curl ca-certificates python2.7 python3.9 git cmake sudo gdb llvm-13-tools llvm-13-dev libedit-dev libssl-dev pkg-config zlib1g-dev xz-utils nodejs apt-transport-https software-properties-common && curl -s "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb" > packages-microsoft-prod.deb && dpkg -i packages-microsoft-prod.deb && apt-get update && apt-get install -y powershell && rm -rf /var/lib/apt/lists/*
Warning: : Empty continuation lines will become errors in a future release.
```
|
|
Use `Symbol` for the crate name instead of `String`/`str`
It always got converted to a symbol anyway
|
|
Add help for `#![feature(impl_trait_in_fn_trait_return)]`
This adds a new variant `ImplTraitContext::FeatureGated`, so we can
generalize the help for `return_position_impl_trait_in_trait` to also
work for `impl_trait_in_fn_trait_return`.
cc #99697
|
|
make retagging work even with 'unstable' places
This is based on top of https://github.com/rust-lang/rust/pull/105301. Only the last two commits are new.
While investigating https://github.com/rust-lang/unsafe-code-guidelines/issues/381 I realized that we would have caught this issue much earlier if the add_retag pass wouldn't bail out on assignments of the form `*ptr = ...`.
So this PR changes our retag strategy:
- When a new reference is created via `Rvalue::Ref` (or a raw ptr via `Rvalue::AddressOf`), we do the retagging as part of just executing that address-taking operation.
- For everything else, we still insert retags -- these retags basically serve to ensure that references stored in local variables (and their fields) are always freshly tagged, so skipping this for assignments like `*ptr = ...` is less egregious.
r? ```@oli-obk```
|
|
Make nested RPIT inherit the parent opaque's generics.
Fixes https://github.com/rust-lang/rust/issues/105197
r? ```@compiler-errors```
|
|
Detect long types in E0308 and write them to disk
On type error with long types, print an abridged type and write the full type to disk.
Print the widest possible short type while still fitting in the terminal.
|
|
|
|
Update LLVM submodule
This is a rebase to LLVM 15.0.6.
Fixes #103380.
Fixes #104099.
|
|
* The rule `display: block` had no noticeable effect. Technically, because
markdown tables have a tbody and thead, they get wrapped in an [anonymous
table box] in the CSS tree, nested within the `<table>` element's block
layout box.
This rule was added in #87230 to make the table side-scrolling, but
this same issue was doubly fixed in #88742 by wrapping it in an explicit
`<div>` tag. Since accessibility advocates recommend the wrapper div over
marking the table as `display: block`, we'll stick with that.
https://adrianroselli.com/2020/11/under-engineered-responsive-tables.html
* The rule `width: calc(100% - 2px)` had no visible effect, because the
anonymous table box was not affected.
* The style is tweaked to basically be the same style GitHub uses.
In particular, it adds zebra stripes, and removes dotted borders.
[anonymous table box]: https://www.w3.org/TR/CSS2/tables.html#anonymous-boxes
|
|
Resolves this docker warning:
```
[WARNING]: Empty continuation line found in:
RUN apt-get update && apt-get install -y --no-install-recommends g++ gcc-multilib make ninja-build file curl ca-certificates python2.7 python3.9 git cmake sudo gdb llvm-13-tools llvm-13-dev libedit-dev libssl-dev pkg-config zlib1g-dev xz-utils nodejs apt-transport-https software-properties-common && curl -s "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb" > packages-microsoft-prod.deb && dpkg -i packages-microsoft-prod.deb && apt-get update && apt-get install -y powershell && rm -rf /var/lib/apt/lists/*
Warning: : Empty continuation lines will become errors in a future release.
```
|