Commit graph

144518 commits

Author SHA1 Message Date
Jakub Beránek
e5038f3e2a
Unify passing of flags to rustdoc 2023-11-18 14:43:08 +01:00
bors
2c1b65ee14 Auto merge of #115694 - clarfonthey:std-hash-private, r=dtolnay
Add `std:#️⃣:{DefaultHasher, RandomState}` exports (needs FCP)

This implements rust-lang/libs-team#267 to move the libstd hasher types to `std::hash` where they belong, instead of `std::collections::hash_map`.

<details><summary>The below no longer applies, but is kept for clarity.</summary>
This is a small refactor for #27242, which moves the definitions of `RandomState` and `DefaultHasher` into `std::hash`, but in a way that won't be noticed in the public API.

I've opened rust-lang/libs-team#267 as a formal ACP to move these directly into the root of `std::hash`, but for now, they're at least separated out from the collections code in a way that will make moving that around easier.

I decided to simply copy the rustdoc for `std::hash` from `core::hash` since I think it would be ideal for the two to diverge longer-term, especially if the ACP is accepted. However, I would be willing to factor them out into a common markdown document if that's preferred.
</details>
2023-11-11 21:12:20 +00:00
bors
ed086d86b8 Auto merge of #117820 - Mark-Simulacrum:bump-version, r=Mark-Simulacrum
Bump nightly version

https://forge.rust-lang.org/release/process.html#bump-the-stable-version-number-t-6-days-friday-the-week-before

r? `@Mark-Simulacrum`
2023-11-11 18:37:45 +00:00
Mark Rousskov
be67b7bdc7 Bump nightly version 2023-11-11 11:29:33 -05:00
bors
1db4b12494 Auto merge of #117797 - weihanglo:update-cargo, r=weihanglo
Update cargo

12 commits in 7046d992f9f32ba209a8079f662ebccf9da8de25..6790a5127895debec95c24aefaeb18e059270df3
2023-11-08 03:24:57 +0000 to 2023-11-10 17:09:35 +0000
- refactor(source): Prepare for new PackageIDSpec syntax (rust-lang/cargo#12938)
- credential: include license files in all published crates (rust-lang/cargo#12953)
- fix: preserve jobserver file descriptors on rustc invocation in `fix_exec_rustc` (rust-lang/cargo#12951)
- refactor(resolver): Consolidate logic in `VersionPreferences` (rust-lang/cargo#12930)
- refactor(toml): Simplify code to make schema split easier (rust-lang/cargo#12948)
- Filter `cargo-credential-*` dependencies by OS (rust-lang/cargo#12949)
- refactor(util): Pull out `mod util_semver` (rust-lang/cargo#12940)
- Fix the invalidate feature name message (rust-lang/cargo#12939)
- refactor(util): Prepare for splitting out semver logic (rust-lang/cargo#12926)
- feat: Make browser links out of HTML file paths (rust-lang/cargo#12889)
- Do not allow empty feature name (rust-lang/cargo#12928)
- fix(timings): unnecessary backslash when error happens (rust-lang/cargo#12934)

r? ghost
2023-11-11 02:01:04 +00:00
bors
6f308b8713 Auto merge of #117799 - erickt:fuchsia, r=tmandry
Switch `fuchsia-test-runner.py` to `ffx product`

The subcommand `ffx product-bundle` has been removed, and replaced with the subcommand `ffx product`. This changes `fuchsia-test-runner.py` to use it to download the SDK and product bundle for the latest release of Fuchsia.
2023-11-11 00:03:52 +00:00
Erick Tryzelaar
d7fd2dec7c Switch fuchsia-test-runner.py to ffx product
The subcommand `ffx product-bundle` has been removed, and replaced with
the subcommand `ffx product`. This changes `fuchsia-test-runner.py` to
use it to download the SDK and product bundle for the latest release of
Fuchsia.
2023-11-10 23:57:07 +00:00
Weihang Lo
8a2bee415c
Update cargo 2023-11-10 18:18:37 -05:00
bors
3d0e99d632 Auto merge of #117765 - onur-ozkan:fix-117762, r=clubby789
enable unstable feature on `x clean [PATH]`

Since https://github.com/rust-lang/rust/pull/111076 enables unstable cargo feature (`public-dependency`), we need to ensure that unstable features are enabled before reading libstd Cargo.toml.

Fixes #117762

cc `@Nilstrieb`
2023-11-10 10:05:28 +00:00
bors
0a1e5598b0 Auto merge of #117750 - klensy:icu-followup, r=Nilstrieb
bump few ICU4X leftover deps

implements https://github.com/rust-lang/rust/pull/117632#issuecomment-1795027801 suggestion

There no strict version dependencies between some crates, so yoke was 0.7.2, but yoke-derive left with 0.7.1, same with zerofrom, zerofrom-derive, zerovec, zerovec-derive; drops synstructure 0.12* dependency, less syn 1.* users left.
2023-11-10 06:06:08 +00:00
Matthias Krüger
9dc022dd80
Rollup merge of #114191 - rcvalle:rust-exploit-mitigations, r=cuviper
Update exploit mitigations documentation

Updates the rustc book with most up to date information about exploit mitigations supported by the Rust compiler.
2023-11-10 01:50:23 +01:00
onur-ozkan
fdb72795d1 enable unstable feature on x clean [PATH]
Since https://github.com/rust-lang/rust/pull/111076 enables
unstable cargo feature (`public-dependency`), we need to ensure
that unstable features are enabled before reading libstd Cargo.toml.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-09 23:04:51 +03:00
bors
eae4135939 Auto merge of #117708 - onur-ozkan:x-setup, r=clubby789
check config file before prompts on `x setup`

First 2 commit moves the check of configuration existence to the first step of `x setup`. And then followed by a prompt that allows devs to decide whether to continue with the configuration override or exit bootstrap.

Closes #110471

I can revert the last commit if needed. Maybe it's just me, but I feel it's better to have those tags capitalized. If you think otherwise, please let me know so that I can revert.
2023-11-09 19:16:59 +00:00
bors
4c8862b263 Auto merge of #117122 - ferrocene:pa-configure-git-diff, r=albertlarsan68
Allow configuring the parent GitHub repository

The git integration in build_helper hardcoded `rust-lang/rust` as the parent GitHub repository, and `master` as the branch name. This works great for `rust-lang/rust`, but causes problems in downstream forks like Ferrocene whenever those functions are invoked (like `./x fmt`).

In `src/stage0.json` there was already a configuration key for the name of the nightly branch, but it wasn't used by build_helper. This PR adds the `github_repository` key to the file, and requires both values to be passed to build_helper whenever a git function is called. This will allow downstream forks to tweak the values.
2023-11-09 16:49:28 +00:00
Pietro Albini
488dd9bc73
fmt 2023-11-09 14:44:54 +01:00
klensy
7142c8d83c bump few ICU4X leftover deps
implements https://github.com/rust-lang/rust/pull/117632#issuecomment-1795027801 suggestion
2023-11-09 14:53:21 +03:00
bors
287ae4db75 Auto merge of #117632 - Nilstrieb:icup, r=davidtwco
Update ICU4X

This updates all ICU4X crates and regenerates rustc_baked_icu_data.

Since the new unicode license under which they are licensed does not have an SPDX identifier yet, we define some exceptions. The license has to be reviewed to make sure it is still fine to use here, but I assume that is the case.

I also added an exception for rustc_icu_data to the unexplained ignore doctest tidy lint. This is a bit hacky but the whole style.rs in tidy is a mess so I didn't want to touch it more than this small hack.

part of #112865

r? `@davidtwco` `@wesleywiser` `@Manishearth`
2023-11-09 09:00:57 +00:00
onur-ozkan
d1e26401bc chore(bootstrap): capitalize {error, warning, info, note} tags
This should enhance the readability.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-09 09:22:43 +03:00
onur-ozkan
42fbf3ebf5 allow users to override the existing configuration during x setup
Instead of immediately terminating bootstrap, users are now given
the option to decide whether they want to override the file or leave
it unchanged.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-09 09:21:38 +03:00
onur-ozkan
3d6417fc7a check config file before prompts on x setup
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-09 09:21:35 +03:00
Takayuki Maeda
f5195c52bb
Rollup merge of #117724 - Kobzol:shim-error-message, r=onur-ozkan
Restore rustc shim error message

Fixes: https://github.com/rust-lang/rust/pull/117595#discussion_r1382482249

The error message was originally introduced in https://github.com/rust-lang/rust/pull/111323, and subsequently broken by my change in https://github.com/rust-lang/rust/pull/116448.

r? ``@onur-ozkan``
2023-11-09 11:36:54 +09:00
Takayuki Maeda
e603f4491c
Rollup merge of #117723 - onur-ozkan:keep-bootstrap-on-x-clean, r=albertlarsan68
speed up `x clean`

Since `x clean` runs with bootstrap, we can speed up this process by avoiding the cleaning of bootstrap artifacts, as they are not necessarily needed to be cleaned.

ref #https://github.com/rust-lang/rust/issues/117653#issuecomment-1802482768
2023-11-09 11:36:53 +09:00
bors
57fb1e643a Auto merge of #117454 - shepmaster:github-actions-m1-tests, r=GuillaumeGomez,onur-ozkan
Run tests in CI for aarch64-apple-darwin

r? `@ghost`
2023-11-08 22:40:10 +00:00
Jakub Beránek
622be2d138
Restore rustc shim error message 2023-11-08 22:38:31 +01:00
onur-ozkan
de0458af97 speed up x clean
Since `x clean` runs with bootstrap, we can speed up
this process by avoiding the cleaning of bootstrap artifacts,
as they are not necessarily needed to be cleaned.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-08 23:45:31 +03:00
Guillaume Gomez
e05e4f38b5
Rollup merge of #117263 - onur-ozkan:change-id-fix, r=saethlin
handle the case when the change-id isn't found

When we switch back and forth between the old and recent branches, if there was a breaking change in the bootstrap configuration in between, we have to update the change-id in the build configuration with each checkout, which can be exhausting. This change fixes that.

r? saethlin
2023-11-08 17:14:35 +01:00
Ramon de C Valle
7c385f5a03 Update exploit mitigations documentation
Updates the rustc book with most up to date information about exploit
mitigations supported by the Rust compiler.
2023-11-08 07:27:57 -08:00
Jake Goulding
6909992501 Run tests in CI for aarch64-apple-darwin 2023-11-08 08:54:42 -05:00
Jake Goulding
64090536d4 Install tidy for aarch64-apple-darwin
The GitHub Actions image has this preinstalled for x86_64 but not M1.
2023-11-08 08:54:42 -05:00
onur-ozkan
e0cb1cc296 bootstrap: add more detail on change-id comments
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-08 14:06:45 +03:00
onur-ozkan
e878100386 bootstrap: improve fn check_version
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-08 14:06:01 +03:00
onur-ozkan
ae4d18b2da handle the case when the change-id isn't found
When we switch back and forth between the old and recent branches,
if there was a breaking change in the bootstrap configuration in
between, we have to update the change-id in the build configuration
with each checkout, which can be exhausting. This change fixes that.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-11-08 14:05:56 +03:00
Matthias Krüger
7e4ffa98b5
Rollup merge of #117700 - Zalathar:rename-run-coverage, r=onur-ozkan
coverage: Rename the `run-coverage` test mode to `coverage-run`

Follow-up to https://github.com/rust-lang/rust/pull/117484#issuecomment-1788916563.

Renaming this test mode to `coverage-run` makes it more consistent with the `coverage-map` mode and the shared `tests/coverage` test directory.

---

``@rustbot`` label +A-code-coverage
2023-11-08 11:25:56 +01:00
Matthias Krüger
b1b5a8ea9d
Rollup merge of #117667 - Alexendoo:doc-clippy-config, r=albertlarsan68
Document clippy_config in nightly-rustc docs

A new clippy crate added in https://github.com/rust-lang/rust-clippy/pull/11685
2023-11-08 11:25:56 +01:00
Matthias Krüger
adf4981969
Rollup merge of #117663 - klensy:bump-deps, r=davidtwco
bump some deps

* drop `num_cpus` from rust-installer as not used
* update `rayon`, `rayon-core`, which drops it's deps on `num_cpus` and `crossbeam-channel` (for bootstrap too) (https://github.com/rayon-rs/rayon/blob/v1.8.0/RELEASES.md)
* update `errno`, which drops `errno-dragonfly` (5341791935/CHANGELOG.md)
2023-11-08 11:25:55 +01:00
Matthias Krüger
ba7ec56639
Rollup merge of #117531 - fmease:rustdoc-effects-properly-elide-x-crate-host-args, r=GuillaumeGomez
rustdoc: properly elide cross-crate host effect args

Fixes FIXMEs introduced in #116670.
2023-11-08 11:25:54 +01:00
Matthias Krüger
b74a84c0bc
Rollup merge of #114316 - ecnelises:aix_doc, r=workingjubilee
Add AIX platform support document
2023-11-08 11:25:54 +01:00
bors
750c2ecd15 Auto merge of #116881 - LuuuXXX:issue-110087, r=onur-ozkan
Add a new `download-ci-llvm = if-unchanged` option and enable it by default for `profile = codegen`

Three tasks have been implemented here.

Add a new `download-ci-llvm = if-unchange` option and enable if by
default for `profile = codegen`.

Include all build artifacts by traversing the llvm-project build output,
Keep the downloadable llvm the same state as if you have just run a full
source build.

After selecting the codegen profile during ./x.py setup, the submodule
will be automatically downloaded.

Resolves #110087
2023-11-08 08:08:50 +00:00
Qiu Chaofan
b9b7982f72 Add AIX platform-support doc 2023-11-08 15:03:56 +08:00
Zalathar
a573880373 coverage: Rename the run-coverage test mode to coverage-run
This makes it more consistent with the `coverage-map` mode and the shared
`tests/coverage` test directory.
2023-11-08 16:41:24 +11:00
bors
7cc997d373 Auto merge of #117699 - weihanglo:update-cargo, r=weihanglo
Update cargo

7 commits in 65e297d1ec0dee1a74800efe600b8dc163bcf5db..7046d992f9f32ba209a8079f662ebccf9da8de25
2023-11-03 20:56:31 +0000 to 2023-11-08 03:24:57 +0000
- fix: Report more detailed semver errors (rust-lang/cargo#12924)
- Fix some broken links in the man pages (rust-lang/cargo#12929)
- Add better error message when it can not find the search section (rust-lang/cargo#12865)
- Bug 12920 (rust-lang/cargo#12923)
- Update link in environment-variables.md (rust-lang/cargo#12922)
- refactor(toml): Pull out the schema (rust-lang/cargo#12911)
- tests: Remove plugin tests (rust-lang/cargo#12921)

r? ghost
2023-11-08 05:05:04 +00:00
Weihang Lo
0670466e2c
Update cargo 2023-11-07 23:40:22 -05:00
bors
91cfcb0219 Auto merge of #117484 - Zalathar:tests, r=cjgillot
coverage: Unify `tests/coverage-map` and `tests/run-coverage` into `tests/coverage`

Ever since the introduction of the `coverage-map` suite, it's been awkward to have to manage two separate coverage test directories containing dozens of mostly-identical files.

However, those two suites were separate for good reasons. They have very different requirements (since only one of them requires actually running the test program), running only one suite is noticeably faster than running both, and having separate suites allows them to be blessed separately if desired. So while unifying them was an obvious idea, actually doing so was non-trivial.

---

Nevertheless, this PR finds a way to merge the two suites into one directory while retaining almost all of the developer-experience benefits of having two suites. This required non-trivial implementations of `Step`, but the end result works very smoothly.

---

The first 5 commits are a copy of #117340, which has been closed in favour of this PR.
2023-11-08 03:00:14 +00:00
LuuuX
1b8dee19e8 Fix issue #110087
Three tasks have been implemented here.

Add a new `download-ci-llvm = if-unchange` option and enable if by
default for `profile = codegen`.

Include all build artifacts by traversing the llvm-project build output,
Keep the downloadable llvm the same state as if you have just run a full
source build.

After selecting the codegen profile during ./x.py setup, the submodule
will be automatically downloaded.
2023-11-08 09:22:28 +08:00
bors
0d5ec963bb Auto merge of #117692 - matthiaskrgr:rollup-umaf5pr, r=matthiaskrgr
Rollup of 4 pull requests

Successful merges:

 - #113925 (Improve diagnostic for const ctors in array repeat expressions)
 - #116399 (Small changes w/ `query::Erase<_>`)
 - #117625 (Fix some clippy perf lints)
 - #117655 (Method suggestion code tweaks)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-11-08 01:01:58 +00:00
Matthias Krüger
7552dd19ad
Rollup merge of #117625 - nnethercote:clippy-perf, r=cuviper
Fix some clippy perf lints

`@matthiaskrgr` gave me the output of a clippy run with perf lints enabled. This PR fixes ones that I thought were worth fixing.

r? `@cuviper`
2023-11-08 00:47:51 +01:00
Nicholas Nethercote
e8cf29b584 rustdoc: minor changes suggested by clippy perf lints. 2023-11-08 09:35:35 +11:00
bors
ff0b4b6091 Auto merge of #117672 - lqd:ci-gcc-lld, r=Kobzol
ci: bump gcc on dist x64 linux builder to 9.5

Support for `-fuse-ld=lld` was added in GCC 9, so this PR bumps gcc to the latest 9.x release, to prepare for switching to LLD.

`-Clinker-flavor=gnu-lld-cc -Clink-self-contained=+linker` will require our CI's GCC to understand `-fuse-ld=lld` when bootstrapping in a future where `x86_64-unknown-linux-gnu` is using `rust-lld` by default.
2023-11-07 22:07:23 +00:00
Matthias Krüger
f6f6fd1d1a
Rollup merge of #117639 - rustbot:docs-update, r=ehuss
Update books

## rust-lang/reference

4 commits in 16fd3c06d9e558dae2d52000818274ae70c9e90a..cd8193e972f61b92117095fc73b67af767b4d6bc
2023-11-04 17:19:39 UTC to 2023-10-30 16:04:52 UTC

- Guarantee that raw pointer conversions preserve slice element count (rust-lang/reference#1417)
- some asm block flags also mean there can be no fences (rust-lang/reference#1413)
- Guarantee `char` layout (rust-lang/reference#1401)
- Doc: Add the RISC-V stabilized target features (rust-lang/reference#1415)

## rust-lang/rust-by-example

3 commits in 6709beeb7d0fbc5ffc91ac4893a24434123b9bfa..311b84962016b28c75525c86e7b3f49fd9101a39
2023-10-31 18:32:09 UTC to 2023-10-31 18:30:39 UTC

- Fixed explanation mistake in comment (rust-lang/rust-by-example#1761)
- Fix typos (rust-lang/rust-by-example#1759)
- docs(9.2): fix typo (rust-lang/rust-by-example#1754)

## rust-lang/rustc-dev-guide

6 commits in b0ee9ec8fa59a6c7620165e061f4747202377a62..77dbe5782b2488af3bb489ad702eaff438f465bf
2023-11-06 16:14:34 UTC to 2023-10-29 17:16:02 UTC

- add a new type system invariant (rust-lang/rustc-dev-guide#1822)
- Update some outdated descriptions of coverage instrumentation (rust-lang/rustc-dev-guide#1809)
- Add some documentation for unsizing (rust-lang/rustc-dev-guide#1817)
- Bibliography: fixing author of "You Can't Spell Trust Without Rust" (rust-lang/rustc-dev-guide#1815)
- remove change-id from sample build configuration (rust-lang/rustc-dev-guide#1813)
- Update name of "active" features to "unstable" (rust-lang/rustc-dev-guide#1814)
2023-11-07 19:29:57 +01:00
Rémy Rakic
1d1fe9a205 add note to remember to update a url when bumping to gcc 10.1.0 2023-11-07 18:26:20 +00:00