236959 Commits

Author SHA1 Message Date
Matthias Krüger
e86f9b6fce
Rollup merge of #105666 - notriddle:notriddle/stab-baseline, r=GuillaumeGomez
rustdoc: align stability badge to baseline instead of bottom

| desc | img |
|------|-----|
| before | ![image](https://user-images.githubusercontent.com/1593513/207412598-3a6468ca-a169-4810-a689-4797688385df.png) |
| | |
| after | ![image](https://user-images.githubusercontent.com/1593513/207412720-b120269a-48a3-40e9-a9b0-6769bb05e104.png) |

Preview: http://notriddle.com/notriddle-rustdoc-demos/stab-baseline/test_dingus/index.html

Based on comment from https://github.com/rust-lang/rust/pull/105509#discussion_r1044816673

r? ``@joshtriplett``
2023-10-23 08:12:39 +02:00
Michael Howell
b67985e113 rustdoc: wrap Type with Box instead of Generics
When these `Box<Generics>` types were introduced,
`Generics` was made with `Vec` and much larger.
Now that it's made with `ThinVec`, `Type` is bigger
and should be boxed instead.
2023-10-22 22:50:25 -07:00
bors
aec4741d42 Auto merge of #116606 - ChrisDenton:empty, r=dtolnay
On Windows make `read_dir` error on the empty path

This makes Windows consistent with other platforms. Note that this should not be taken to imply any decision on #114149 has been taken. However it was felt that while there is a lack of libs-api consensus, we should be consistent across platforms in the meantime.

This is a change in behaviour for Windows so will also need an fcp before merging.

r? libs-api
2023-10-23 05:38:33 +00:00
Sean Cross
1f9f041c35 x.ps1: remove the check for Python from Windows Store
When installing Python from the Windows Store, a copy of `python.exe` is
installed inder the Microsoft directory in the user's local AppData
directory. Currently, `x.ps1` checks for this file, because by default
running `python.exe` opens a link to the Microsoft Store rather than
running Python.

Once the user installs Python, however, this contains a valid
interpreter. Unfortuantely, `x.ps1` can't tell the difference between a
legitimate Python install and the stub.

Remove the check, as it makes it impossible to use the official version
from Microsoft once it has been installed.

Signed-off-by: Sean Cross <sean@xobs.io>
2023-10-23 13:25:48 +08:00
bors
62fae2305e Auto merge of #117066 - calebcartwright:rustfmt-sync, r=calebcartwright
rustfmt subtree update

r? `@ghost`

Includes let chain formatting amongst a few other smaller changes and fixes
2023-10-23 02:48:09 +00:00
Caleb Cartwright
35400e8c16 bump rustfmt version 2023-10-22 20:34:12 -05:00
Caleb Cartwright
7650a7542c Merge commit '81fe905ca83cffe84322f27ca43950b617861ff7' into rustfmt-sync 2023-10-22 20:21:44 -05:00
Yacin Tmimi
81fe905ca8 chore: prep v1.7.0 release
bumping from v1.6.0 -> v1.7.0 since we added support for let-chains
2023-10-22 20:18:45 -05:00
Yacin Tmimi
ff3ce6b53c Fix typos and remove merge conflict artifacts from the changelog 2023-10-22 20:18:45 -05:00
Yacin Tmimi
75c7d1daff Add outstanding changelog entries for the next release 2023-10-22 20:18:45 -05:00
bors
111adde7ed Auto merge of #115324 - francorbacho:master, r=davidtwco
Suggest removing redundant arguments in format!()

Closes #105225. This is also a follow-up to #105635, which seems to have become stale.

r? `@estebank`
2023-10-23 00:51:35 +00:00
bors
913ceaee96 Auto merge of #117062 - Kobzol:update-rustc-perf, r=Mark-Simulacrum
Update rustc-perf version

Needed to unblock https://github.com/rust-lang/rust/pull/116033.

The commit first needs to be uploaded to our mirrors.

r? `@Mark-Simulacrum`
2023-10-22 21:57:27 +00:00
bors
54b0434cea Auto merge of #117000 - weihanglo:update-cargo, r=weihanglo
Update cargo

22 commits in 8eb8acbb116e7923ea2ce33a50109933ed5ab375..d2f6a048529eb8e9ebc55d793abd63456c98fac2
2023-10-17 11:55:04 +0000 to 2023-10-20 18:25:30 +0000
- chore(deps): bump rustix from 0.38.18 to 0.38.19 (rust-lang/cargo#12851)
- refactor: centralize logic of getting max resolve version (rust-lang/cargo#12860)
- If there's a version in the lock file only use that exact version (rust-lang/cargo#12772)
- Make the precise field of a source an Enum (rust-lang/cargo#12849)
- fix(cli): Provide next steps for bad -Z flag (rust-lang/cargo#12857)
- fix(remove): Preserve feature comments (rust-lang/cargo#12837)
- docs: fix typo (rust-lang/cargo#12844)
- chore(triagebot): auto label when PR review state changes (rust-lang/cargo#12856)
- fix(add): Preserve more comments (rust-lang/cargo#12838)
- ci: big ⚠️ to ensure the CNAME file is always there (rust-lang/cargo#12853)
- docs(cargo-bench): `--bench` is passed in unconditionally to bench harnesses (rust-lang/cargo#12850)
- docs(contrib): generate redirection HTML pages in CI (rust-lang/cargo#12846)
- docs: remove review capacity notice (rust-lang/cargo#12842)
- fix(help):Clarify install's positional (rust-lang/cargo#12841)
- Adjust `-Zcheck-cfg` for new rustc syntax and behavior (rust-lang/cargo#12845)
- fix(replace): Partial-version spec support (rust-lang/cargo#12806)
- Print environment variables for build script executions with `-vv` (rust-lang/cargo#12829)
- fix(cli): Suggest cargo-search on bad commands (rust-lang/cargo#12840)
- docs(contrib): Policy on manifest editing (rust-lang/cargo#12836)
- ci/contrib: use separate concurrency group (rust-lang/cargo#12835)
- ci/contrib: do not fail on missing gh-pages (rust-lang/cargo#12834)
- Clarify flag behavior in `cargo remove --help` (rust-lang/cargo#12823)

r? ghost
2023-10-22 20:02:32 +00:00
David Tolnay
28785291f9
Eliminate redundant .parse_sess in rustc_attr::builtin errors 2023-10-22 12:40:00 -07:00
David Tolnay
f5429a0186
Eliminate rustc_attr::builtin::handle_errors 2023-10-22 12:36:35 -07:00
Caleb Cartwright
0bb2acf50f
Merge pull request #5944 from calebcartwright/subtree-sync-2023-10-22
sync subtree
2023-10-22 14:07:55 -05:00
Caleb Cartwright
c2515dfa41 tests: fix let chain tests 2023-10-22 13:30:25 -05:00
Caleb Cartwright
75d84974f4 deps: bump bytecount version 2023-10-22 13:15:46 -05:00
bors
6aeac60e5d Auto merge of #117007 - notriddle:notriddle/format-links-with-display, r=fmease
rustdoc: avoid allocating strings primitive link printing

This is aimed at hitting the allocator less in a function that gets called a lot.
2023-10-22 18:06:17 +00:00
Jakub Beránek
41dfebbd17 Update rustc-perf version 2023-10-22 20:04:20 +02:00
Caleb Cartwright
746bf48ec4 chore: bump toolchain and apply minor updates 2023-10-22 12:59:03 -05:00
Caleb Cartwright
f35f25287f Merge remote-tracking branch 'upstream/master' into subtree-sync-2023-10-22 2023-10-22 12:45:06 -05:00
bors
3c92dcc6f3 Auto merge of #117018 - Kobzol:opt-dist-cargo-stage0, r=lqd
Use beta cargo in opt-dist

Using the new stage2 cargo caused issues when a backwards-incompatible change was made to cargo. This means that we won't be testing the LTO/1-CGU optimized cargo, but I don't think that's a big issue, as we primarily want to test the compiler.

Should fix [this](https://github.com/rust-lang/rust/pull/117000#issuecomment-1773639109) failure.
2023-10-22 16:10:03 +00:00
gvozdvmozgu
bb67e0f47b
fix broken link: update incremental compilation url 2023-10-22 07:20:36 -07:00
dirreke
5454797577 tidy docs 2023-10-22 21:47:40 +08:00
bohan
482275b194 use visibility to check unused imports and delete some stmts 2023-10-22 21:27:46 +08:00
dirreke
dc00d03a11 add target csky-unknown-linux-gnuabiv2hf 2023-10-22 21:20:30 +08:00
Zalathar
6af9fef085 coverage: Emit the filenames section before encoding per-function mappings
Most coverage metadata is encoded into two sections in the final executable.
The `__llvm_covmap` section mostly just contains a list of filenames, while the
`__llvm_covfun` section contains encoded coverage maps for each instrumented
function.

The catch is that each per-function record also needs to contain a hash of the
filenames list that it refers to. Historically this was handled by assembling
most of the per-function data into a temporary list, then assembling the
filenames buffer, then using the filenames hash to emit the per-function data,
and then finally emitting the filenames table itself.

However, now that we build the filenames table up-front (via a separate
traversal of the per-function data), we can hash and emit that part first, and
then emit each of the per-function records immediately after building. This
removes the awkwardness of having to temporarily store nearly-complete
per-function records.
2023-10-22 23:17:15 +11:00
bors
9372999916 Auto merge of #116256 - apekros:issue-114912, r=cjgillot
Add test for rust-lang#114912

Closes #114912
2023-10-22 11:57:18 +00:00
Jakub Beránek
823d72abde Pass host triple when running tests in opt-dist 2023-10-22 12:58:35 +02:00
Jakub Beránek
a836fd65f9 Use beta cargo in opt-dist
Using the new cargo caused issues when a backwards-incompatible change was made to cargo.
2023-10-22 12:58:35 +02:00
Zalathar
de4cfbca2e coverage: Encode function mappings without re-sorting them
The main change here is that `VirtualFileMapping` now uses an internal hashmap
to de-duplicate incoming global file IDs. That removes the need for
`encode_mappings_for_function` to re-sort its mappings by filename in order to
de-duplicate them.

(We still de-duplicate runs of identical filenames to save work, but this is
not load-bearing for correctness, so a sort is not necessary.)
2023-10-22 20:37:39 +11:00
Zalathar
88159cafa7 coverage: Encapsulate local-to-global file mappings 2023-10-22 20:37:39 +11:00
Zalathar
e985ae5a45 coverage: Build the global file table ahead of time 2023-10-22 20:37:37 +11:00
Zalathar
86b55cccff coverage: Fetch expressions and mappings separately
The combined `get_expressions_and_counter_regions` method was an artifact of
having to prepare the expressions and mappings at the same time, to avoid
ownership/lifetime problems with temporary data used by both.

Now that we have an explicit transition from `FunctionCoverageCollector` to the
final `FunctionCoverage`, we can prepare any shared data during that step and
store it in the final struct.
2023-10-22 20:11:48 +11:00
Zalathar
371883a05a coverage: Split FunctionCoverage into distinct collector/finished phases
This gives us a clearly-defined place to run code after the instance's MIR has
been traversed by codegen, but before we emit its `__llvm_covfun` record.
2023-10-22 20:11:45 +11:00
bors
724ba7fe90 Auto merge of #117041 - matthiaskrgr:rollup-b18h0ln, r=matthiaskrgr
Rollup of 4 pull requests

Successful merges:

 - #116985 (Use gdb.ValuePrinter tag class)
 - #116989 (Skip test if Unix sockets are unsupported)
 - #117034 (Don't crash on empty match in the `nonexhaustive_omitted_patterns` lint)
 - #117037 (rustdoc book doc example error)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-10-22 08:09:40 +00:00
bors
f35c36af19 Auto merge of #3135 - RalfJung:nonatomic-clock, r=RalfJung
avoid AtomicU64 when a Cell is enough
2023-10-22 07:20:06 +00:00
Matthias Krüger
77d8a73fa2
Rollup merge of #117037 - csditchfield:fix_doc_writing_result_example, r=notriddle
rustdoc book doc example error

closes #117036

This is the minimal change required to make the second what-to-include.md example valid.
Another more modern solution could be considered:
```
/// Example
/// ```rust
/// let fortytwo = "42".parse::<u32>()?;
/// println!("{} + 10 = {}", fortytwo, fortytwo+10);
/// #     Ok::<(), <u32 as std::str::FromStr>::Err>(())
/// ```
```
2023-10-22 09:15:43 +02:00
Matthias Krüger
4681eb6c94
Rollup merge of #117034 - Nadrieril:fix-117033, r=cjgillot
Don't crash on empty match in the `nonexhaustive_omitted_patterns` lint

Oops

Fixes https://github.com/rust-lang/rust/issues/117033
2023-10-22 09:15:42 +02:00
Matthias Krüger
4d80740c1d
Rollup merge of #116989 - ChrisDenton:skip-unsupported, r=Mark-Simulacrum
Skip test if Unix sockets are unsupported

Fixes https://github.com/rust-lang/rust/pull/116683#issuecomment-1772314187

The test will be skipped if `AF_UNIX` is not supported. In that case [`WSASocketW` returns `WSAEAFNOSUPPORT`](https://learn.microsoft.com/en-us/windows/win32/api/winsock2/nf-winsock2-wsasocketw#return-value).

It will never skip the test when run in CI but maybe this is me being too defensive since the error code is narrowly scoped to just the af family parameter being unsupported?

Also fixed a minor typo.

r? `@Mark-Simulacrum`
2023-10-22 09:15:42 +02:00
Matthias Krüger
56b9f0327f
Rollup merge of #116985 - tromey:rust-printers-14, r=Mark-Simulacrum
Use gdb.ValuePrinter tag class

GDB 14 has a "gdb.ValuePrinter" tag class that was introduced to let GDB evolve the pretty-printer API.  Users of this tag are required to hide any local attributes or methods.  This patch makes this change to the Rust pretty-printers.  At present this is just a cleanup, providing the basis for any future changes.
2023-10-22 09:15:41 +02:00
Ralf Jung
b53c34f7b8 avoid AtomicU64 when a Cell is enough 2023-10-22 08:43:57 +02:00
bors
f6be93fc61 Auto merge of #3133 - rust-lang:rustup-2023-10-22, r=RalfJung
Automatic Rustup
2023-10-22 06:42:10 +00:00
Ralf Jung
8cbac823d0 clippy 2023-10-22 08:40:37 +02:00
bors
3932c87718 Auto merge of #116950 - cuviper:ci-llvm-17, r=Mark-Simulacrum
ci: add a runner for vanilla LLVM 17

For CI cost, this can be seen as replacing the llvm-14 runner we dropped in #114148.

Also, I've set `IS_NOT_LATEST_LLVM` in the llvm-16 runner, since that's not the latest anymore.
2023-10-22 06:15:18 +00:00
The Miri Conjob Bot
1f09dd21b7 Merge from rustc 2023-10-22 05:36:24 +00:00
The Miri Conjob Bot
193fec640d Preparing for merge from rustc 2023-10-22 05:29:24 +00:00
bors
cc3dce5bd0 Auto merge of #116956 - Amanieu:hashbrown-0.14.2, r=Mark-Simulacrum
Update hashbrown to 0.14.2

Fixes #116880
2023-10-22 03:55:24 +00:00
bors
9e3f784eb2 Auto merge of #116932 - Kobzol:fix-stage1-tests, r=Mark-Simulacrum
Fix x86_64-gnu-llvm-15 CI tests

The CI script was broken - if there was a test failure in the first command chain (inside the `if`), CI would not report the failure.

It happened because there were two command chains separated by `&&` in the script, and since `set -e` doesn't exit for chained commands, if the first chain has failed, the script would happily continue forward, ignoring any test failures.

This could be fixed e.g. by adding some `|| exit 1` to the first chain, but I suppose that the `&&` chaining is unnecessary here anyway.

Reported [on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/242791-t-infra/topic/test.20failure.20didn't.20stop.20CI).

Fixes: https://github.com/rust-lang/rust/issues/116867
2023-10-22 02:00:29 +00:00