| Age | Commit message (Collapse) | Author | Lines |
|
|
|
Allow setting hashmap toml values in `./configure`
Fixes https://github.com/rust-lang/rust/issues/108621
|
|
|
|
Update LLVM submodule
Fixes #105626
|
|
Make `x doc --open` work on every book
Before this PR, the `--open` flag had to be configured explicitly for every book, and most of them didn't configure it, resulting in the flag silently failing in all but two books.
In this PR, the code to check for the `--open` flag is in the underlying `RustbookSrc` step rather than all the individual steps. This is done by passing the parent step as a field of `RustbookSrc`, so that we can check for the correct step in `maybe_open_in_browser`.
This was part of a larger change that in the end wasn't worth it. Still, I think it could be useful as-is.
|
|
|
|
|
|
Allow building serde and serde_derive in parallel
This reduces build time of bootstrap by ~6s
|
|
This reduces build time of bootstrap by ~6s
|
|
bootstrap: Update the output of the `check` descriptions
This should bring the output from `x check` in line with the changes in #108171
|
|
[107049] Recognise top level keys in config.toml.example
Closes #107049
Test Plan
Configure changelog-seen
```
lionellloh@lionellloh-mbp rust % ./configure --set changelog-seen=1
configure: processing command line
configure:
configure: changelog-seen := 1
configure: build.configure-args := ['--set', 'changelog-seen=1']
configure:
configure: writing `config.toml` in current directory
configure:
configure: run `python /Users/lionellloh/rust/x.py --help`
lionellloh@lionellloh-mbp rust % diff config.toml config.toml.example
16c16
< changelog-seen = 1
---
> changelog-seen = 2
331c331
< configure-args = ['--set', 'changelog-seen=1']
---
> #configure-args = []
675c675
< [target.x86_64-apple-darwin]
---
> [target.x86_64-unknown-linux-gnu]
809d808
<
```
Configure profile
```
lionellloh@lionellloh-mbp rust % ./configure --set profile=xyz
configure: processing command line
configure:
configure: profile := xyz
configure: build.configure-args := ['--set', 'profile=xyz']
configure:
configure: writing `config.toml` in current directory
configure:
configure: run `python /Users/lionellloh/rust/x.py --help`
lionellloh@lionellloh-mbp rust % diff config.toml config.toml.example
26c26
< profile = xyz
---
> #profile = <none>
331c331
< configure-args = ['--set', 'profile=xyz']
---
> #configure-args = []
675c675
< [target.x86_64-apple-darwin]
---
> [target.x86_64-unknown-linux-gnu]
809d808
<
```
|
|
Split `x setup` sub-actions to CLI arguments
Closes #107846
This adds a new `none` profile option which simply skips the `config.toml` step. It also adds `hook` and `vscode` subcommands, for installing the pre-push hook and getting `settings.json` respectively.
|
|
Test that the compiler/library builds with validate-mir
Fixes #105706
|
|
|
|
support `x fmt` for sub and outside of rust directories
This PR makes `x fmt` to be succesfully work from sub or outside dir of rust.
The following cases are tested and the results were successful.
```sh
# from rust/library directory
../x fmt compiler --check
../x fmt compiler/rustc
# from outside of rust directory
../../rust/x fmt library/std library/core --check
../../rust/x fmt library/std
```
Resolves #108004
r? ``@albertlarsan68``
|
|
|
|
Signed-off-by: ozkanonur <work@onurozkan.dev>
|
|
|
|
r=ozkanonur
no-fail-fast support for tool testsuites
~~This commit adds a change to pass "--no-fail-fast" flag to `cargo test` inside `tool::prepare_tool_cargo()` so there is no need to do it manually in each `Step` trait implementation in src/bootstrap/test.rs.~~
~~Also, removes the flag from test.rs where prepare_tool_cargo() is called so cargo doesn't complain because the flag has been passed twice.~~
This commit adds `--no-fail-fast` flag to each `cargo test`
command in each tool Step trait implementation (`miri`, `rustfmt` and `clippy`).
Fixes #108261
|
|
This commit adds `--no-fail-fast` flag to each `cargo test`
command in each tool Step trait implementation.
Fixes #108261
|
|
Revert #107834
This reverts commit [41c6c5d4996728b5a635319ef9b077a3d0ccc480](https://github.com/rust-lang/rust/pull/107834). Trying to check if this fixes building `rustc` for perf bot.
|
|
This reverts commit 6990ab9ad2cde9b67073ffac29ffecc2be8e722f.
|
|
symlink for legacy rustfmt path"
This reverts commit 41c6c5d4996728b5a635319ef9b077a3d0ccc480.
|
|
|
|
Improve building compiler artifacts output
Fixes #108051
``@Manishearth,`` ``@jyn514`` mentioned you might be interested in these changes to the outputs.
|
|
|
|
|
|
Download rustfmt regardless of rustc being set in config.toml
Fixes #81155
cc : https://github.com/rust-lang/rust/issues/108210 for exact error details
|
|
Change src/etc/vscode_settings.json to always treat ./library as the sysroot source
See
https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/False.20error.20report.20for.20.60rust-analyzer.28private-field.29.60 for further discussion; previously this had various bugs.
I tested go-to-definition on:
- `use std::io::Write` in `src/bootstrap/setup.rs`
- `use std::cell::RefCell` in `src/librustdoc/core.rs`
- `use rustc_span::symbol::sym` in `src/librustdoc/core.rs`
- `use std::fmt` in `compiler/rustc_span/src/symbol.rs`
- `Global` in `library/alloc/src/alloc/tests.rs`
The following things still don't work:
- `Global.deallocate` in alloc/tests.rs. This function is under `cfg(not(test))`, so it can't be enabled without disabling RA in `tests.rs` altogether. I think this might be fixable by moving `library/alloc/src/alloc/tests.rs` to `library/alloc/tests/alloc/lib.rs`, so it's in a different crate, but I'd like to avoid blocking this improvement on that change.
cc `@thomcc` `@BoxyUwU` `@spastorino` - you've had issues with RA in the past, does this fix them? Are there any other use cases I should test? You can try these changes out by running `cp src/etc/vscode_settings.json .vscode/settings.json`, or running `x setup` and picking a random profile (it won't overwrite config.toml if it already exists). See https://github.com/rust-lang/rust/pull/108135 for plans to make updating the config easier.
r? `@Veykril`
|
|
|
|
|
|
keith:ks/add-sanitizer-support-for-modern-ios-platforms, r=badboy
Add sanitizer support for modern iOS platforms
asan and tsan generally support iOS, but that previously wasn't configured in rust. This only adds support for the simulator architectures, and arm64 device architecture, not the older 32 bit architectures.
|
|
source
See
https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/False.20error.20report.20for.20.60rust-analyzer.28private-field.29.60
for further discussion; previously this had various bugs.
I tested go-to-definition on:
- `use std::io::Write` in `src/bootstrap/setup.rs`
- `use std::cell::RefCell` in `src/librustdoc/core.rs`
- `use rustc_span::symbol::sym` in `src/librustdoc/core.rs`
- `use std::fmt` in `compiler/rustc_span/src/symbol.rs`
- `Global` in `library/alloc/src/alloc/tests.rs`
The following things still don't work:
- `Global.deallocate` in alloc/tests.rs. This function is under
`cfg(not(test))`, so it can't be enabled without disabling RA in
`tests.rs` altogether. I think this might be fixable by moving
`library/alloc/src/alloc/tests.rs` to
`library/alloc/tests/alloc/lib.rs`, so it's in a different crate, but
I'd like to avoid blocking this improvement on that change.
|
|
Copy `bin/*` and `lib/*.dylib` files to `stage0-sysroot`
Fixes #101691
|
|
|
|
Pass arguments to `x` subcommands with `--`
Fixes #107375
Any arguments passed to `x` following `--` are removed and not parsed, instead passed down to subcommands (just the ones listed in the issue, not sure if more are needed). This does not remove the existing `--args` and `--test-args` behaviour, just extends it. It's also not documented in the help, not sure of the best way to format it.
r? `@jyn514`
|
|
Most tests involving save-analysis were removed, but I kept a few where
the `-Zsave-analysis` was an add-on to the main thing being tested,
rather than the main thing being tested.
For `x.py install`, the `rust-analysis` target has been removed.
For `x.py dist`, the `rust-analysis` target has been kept in a
degenerate form: it just produces a single file `reduced.json`
indicating that save-analysis has been removed. This is necessary for
rustup to keep working.
Closes #43606.
|
|
Fix `x fix` on the standard library itself
Fixes https://github.com/rust-lang/rust/issues/107501
|
|
Update the minimum external LLVM to 14
With this change, we'll have stable support for LLVM 14 through 16 (pending release).
For reference, the previous increase to LLVM 13 was #100460.
|
|
Allow shortcuts to directories to be used for ./x.py fmt
Fixes #107944.
Maximum recursive search depth is 3 and only accepts shortcuts for directories. If there are no shortcut candidates, the previous behavior to panic is preserved. If there are multiple candidates, the shortcut candidates are ignored.
After this change, `./x.py fmt std` no longer panics and formats `library/std` instead.
|
|
Fixes #107944.
Maximum recursive search depth is 3 and only accepts shortcuts for
directories (single component paths, such as `./x.py fmt std`). If
there are no shortcut candidates but single componenet path(s) are
given, it falls back to the previous behavior to panic with unable to
find directory. If there are multiple shortcut candidates for a given
single component path, the shortcut candidates are considered
ambiguous, are then ignored, and the single component path is accepted
as-is.
After this change, `./x.py fmt std` no longer panics and formats
`library/std` instead.
|
|
|
|
asan and tsan generally support iOS, but that previously wasn't
configured in rust. This only adds support for the simulator
architectures, and arm64 device architecture, not the older 32 bit
architectures.
|
|
r=Mark-Simulacrum
Patch `build/rustfmt/lib/*.so` for NixOS
fixes #107676.
|
|
Emit JSON output for the building of bootstrap itself
Fixes #107832 .
Main changes are from line 792 onwards. Other changes are due to the flake8 formatter. Let me know if I should not use the formatter.
|
|
Add only modified subcommand for compiletest
r? `@jyn514`
From [discussion](https://rust-lang.zulipchat.com/#narrow/stream/326414-t-infra.2Fbootstrap/topic/Add.20subcommand.20to.20retest.20all.20tests.20with.20different.20results)
|
|
|
|
|
|
|
|
|