| Age | Commit message (Collapse) | Author | Lines |
|
remove outdated `FIXME`s in bootstrap internals
self-explanatory
|
|
misc bootstrap cleanups
- rename `detail_exit_macro` to `exit`
- remove unnecessary `Builder::new_standalone` function
- support `x suggest` with build-metrics
|
|
the right one is `build_helper::CiEnv`; this one wasn't even used.
|
|
It was only used when a `builder` is available, and I want to encourage using the version that supports `--no-fail-fast`.
|
|
|
|
This does three things:
1. Remove `forward!(Build, fn try_run())`. Having `try_run` behave differently as a free function than an associated function is confusing, and `Builder::try_run` is a very desirable name.
2. Move `test::try_run` and `run::try_run` to `Builder::try_run`. These functions are different than `Config::try_run` - they delay the failure and print it out at the end of the build.
3. Mark `Config::try_run` as deprecated to encourage people to use `Builder::try_run` instead.
|
|
Signed-off-by: WANG Rui <wangrui@loongson.cn>
|
|
|
|
|
|
- group rustdoc-js-std
- group rust-installer/test.sh
|
|
this makes the panics on nested GHA groups more useful
|
|
|
|
|
|
This caught several places which weren't waiting until the command finished to drop the Group.
I also took the liberty of calling `msg_sysroot_tool` from `run_cargo_test` to reduce code duplication and make errors like this less likely in the future.
|
|
|
|
This avoids the following broken logging in CI:
```
{"book":"test-pass","reference":"test-pass","rustbook":"test-fail","rust-by-example":"test-pass","nomicon":"test-pass","embedded-book":"test-pass","edition-guide":"test-pass"}::group::Building bootstrap
```
|
|
|
|
We don't actually need it and it's quite slow.
|
|
|
|
This also adds a dynamic check that we don't emit nested groups, since GHA currently doesn't support them.
|
|
i broke this in the previous commit; and metrics never worked until i switched from `execute_cli` to build
|
|
Signed-off-by: ozkanonur <work@onurozkan.dev>
|
|
|
|
Make `nodejs` control the default for RustdocJs tests instead of a hard-off switch
If someone says `x test rustdoc-js-std` explicitly on the command line, it's because they want to run the tests. Give an error instead of doing nothing and reporting success.
Before:
```
; x t rustdoc-js
No nodejs found, skipping "tests/rustdoc-js" tests
Build completed successfully in 0:00:00
```
After:
```
; x t rustdoc-js
thread 'main' panicked at 'need nodejs to run js-doc-test suite', test.rs:1566:13
Build completed unsuccessfully in 0:00:00
```
I recommend viewing the diff with whitespace changes disabled.
r? ````@GuillaumeGomez````
|
|
Bump bootstrap to 1.72 beta
|
|
Fix bootstrap.py uname error
The x.py script fails with `ValueError: too many values to unpack (expected 3)` when uname -smp gives more than 3 words
The error I got:
```
❯ ./x check
Traceback (most recent call last):
File "/data1/edgar/rust/x.py", line 50, in <module>
bootstrap.main()
File "/data1/edgar/rust/src/bootstrap/bootstrap.py", line 1113, in main
bootstrap(args)
File "/data1/edgar/rust/src/bootstrap/bootstrap.py", line 1070, in bootstrap
build = RustBuild(config_toml, args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data1/edgar/rust/src/bootstrap/bootstrap.py", line 505, in __init__
self.build = args.build or self.build_triple()
^^^^^^^^^^^^^^^^^^^
File "/data1/edgar/rust/src/bootstrap/bootstrap.py", line 976, in build_triple
return config or default_build_triple(self.verbose)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data1/edgar/rust/src/bootstrap/bootstrap.py", line 259, in default_build_triple
kernel, cputype, processor = uname.decode(default_encoding).split()
^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: too many values to unpack (expected 3)
```
This is because
```
❯ uname -smp
Linux x86_64 AMD Ryzen 7 5800X 8-Core Processor
```
Returns more than 3 space separated words.
|
|
|
|
|
|
`detail` and `macro` weren't adding any info.
|
|
switch
If someone says `x test rustdoc-js-std` explicitly on the command line, it's because they want to
run the tests. Give an error instead of doing nothing and reporting success.
|
|
|
|
Don't fail early if `try_run` returns an error
Fixes https://github.com/rust-lang/rust/issues/113208.
Follow-up of #112962.
r? `@jyn514`
|
|
The x.py script fails with `ValueError: too many values to unpack (expected 3)` when uname -smp gives more than 3 words
|
|
Revert "fix: :bug: etc/bash_complettion -> src/etc/... to avoid copy …
## why
- [x] revert my broken PR
https://github.com/rust-lang/rust/pull/110906
This reverts commit 08ce68b6a6bad360e9c3611ad60cf6598401f878.
|
|
various download-rustc fixes
separated out from https://github.com/rust-lang/rust/pull/112143 because it keeps getting stuck in limbo.
best reviewed commit-by-commit
|
|
|
|
This reverts commit 08ce68b6a6bad360e9c3611ad60cf6598401f878.
|
|
|
|
bootstrap: Don't print "Skipping" twice
Bootstrap executes itself twice: once with DryRun::SelfCheck and DryRun::Disabled. Change it not to print the "Skipping" message if SelfCheck is enabled.
See https://github.com/rust-lang/rust/actions/runs/5503931599/jobs/10029625567?pr=113514#step:24:772.
|
|
Bootstrap executes itself twice: once with DryRun::SelfCheck and DryRun::Disabled.
Change it not to print the "Skipping" message if SelfCheck is enabled.
See https://github.com/rust-lang/rust/actions/runs/5503931599/jobs/10029625567?pr=113514#step:24:772.
|
|
Copy stage0 `rustc` binaries to `stage0-sysroot`
This is basically a revival of https://github.com/rust-lang/rust/pull/101711 and https://github.com/rust-lang/rust/pull/107956, with an added check that the full sysroot will only be created if the original rustc comes from `stage0/bin`.
What is/should be tested:
- [x] `rustup toolchain link stage0` (new libstd is used correctly)
- [x] `python3 x.py fmt dist --stage 0`
- [x] Custom rustc/cargo in `config.toml` (in this case this logic is ignored)
- [x] Perfbot (try perf run has succeeded)
- [x] Real use case (https://github.com/rust-lang/backtrace-rs/pull/542)
(Hopefully) fixes: https://github.com/rust-lang/rust/issues/101691
This is not the "end all, be all" solution to this problem, but as long as it resolves the basic use-case, and doesn't break perfbot, I say ship it. This code will probably be nuked anyway Soon™ because of the stage redesign.
|
|
Use String or Int to set the opt level
Address https://github.com/rust-lang/rust/pull/112756/files#r1249345725
Use String or Int to set the opt level.
r? ``@jyn514``
|
|
|
|
Signed-off-by: hi-rustin <rustin.liu@gmail.com>
|
|
Rollup of 7 pull requests
Successful merges:
- #112931 (Enable zlib in LLVM on aarch64-apple-darwin)
- #113158 (tests: unset `RUSTC_LOG_COLOR` in a test)
- #113173 (CI: include workflow name in concurrency group)
- #113335 (Reveal opaques in new solver)
- #113390 (CGU formation tweaks)
- #113399 (Structurally normalize again for byte string lit pat checking)
- #113412 (Add basic types to SMIR)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
This was removed in
https://github.com/rust-lang/rust/pull/113260/commits/de69d556eb5006a21f868b8c12d48f0ef1308a5a#diff-8479eab02701e686aedb15b567dc8fc31220c6e4efb9565ccc9d662b7fee2214
which caused CI to ignore clippy failures. This adds back the exit,
which should cause CI to fail again if a test is broken (like right
now, as clippy tests are broken on master).
|
|
Enable zlib in LLVM on aarch64-apple-darwin
Works on macOS 13.4, Xcode version 14.3.1.0.1.1683849156
This was disabled in #75500 on Apple Silicon Developer Transition Kit, but Apple appears to have fixed their zlib now
|
|
Fix submodule handling when the current branch is named after a tag
If:
1. The current branch has the same name as git tag, and
2. The current branch is set to track a remote other than `origin`, and
3. We try to update a submodule
then we'll get the following error:
```
; x c
Updating submodule src/doc/reference
remote: Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
fatal: 'personal' does not appear to be a git repository
fatal: Could not read from remote repository.
```
The problem is that 1. causes `git symbolic-ref --short HEAD` to try and disambiguate the branch from the tag using `heads/branch-name`, which breaks a previous workaround for a bug in `git submodule update` that uses the wrong remote.
Adapt the workaround to strip `heads/` from the output.
|
|
by using `rustc-builds-alt` if download-rustc is set
this also changes the download code to use a separate build/cache/ directory and .rustc-stamp stamp file depending on whether assertions are enabled.
|
|
|