bors
5d707b07e4
Auto merge of #141912 - Kobzol:rollup-wurlnsx, r=Kobzol
...
Rollup of 5 pull requests
Successful merges:
- rust-lang/rust#141767 (ci: use free runner for aarch64-gnu-llvm-19-1 PR job)
- rust-lang/rust#141858 (Fix typo in `StructuralPartialEq` docs)
- rust-lang/rust#141865 (Optionally don't steal the THIR)
- rust-lang/rust#141874 (add f16_epsilon and f128_epsilon diagnostic items)
- rust-lang/rust#141904 (test-float-parse: apply `cfg(not(bootstrap))`)
r? `@ghost`
`@rustbot` modify labels: rollup
2025-06-02 19:35:39 +00:00
Jakub Beránek
2cb5b0deb9
Rollup merge of #141767 - marcoieni:free-pr-job, r=Kobzol
...
ci: use free runner for aarch64-gnu-llvm-19-1 PR job
2025-06-02 15:19:17 +02:00
Jakub Beránek
28cf702292
Fix citool tests when executed ocally
...
They couldn't be executed locally before due to some additional environment reads.
2025-06-02 13:34:29 +02:00
bors
52882f6522
Auto merge of #119899 - onur-ozkan:redesign-stage0-std, r=albertlarsan68,jieyouxu,mark-simulacrum,kobzol,jyn514,Noratrieb,WaffleLapkin,RalfJung,bjorn3
...
redesign stage 0 std
### Summary
**Blog post: https://blog.rust-lang.org/inside-rust/2025/05/29/redesigning-the-initial-bootstrap-sequence/ **
This PR changes how bootstrap builds the stage 1 compiler by switching to precompiled stage 0 standard library instead of building the in-tree one. The goal was to update bootstrap to use the beta standard library at stage 0 rather than compiling it from source (see the motivation at https://github.com/rust-lang/compiler-team/issues/619 ).
Previously, to build a stage 1 compiler bootstrap followed this path:
```
download stage0 compiler -> build in-tree std -> compile stage1 compiler with in-tree std
```
With this PR, the new path is:
```
download stage0 compiler -> compile stage1 compiler with precompiled stage0 std
```
This also means that `cfg(bootstrap)`/`cfg(not(bootstrap))` is no longer needed for library development.
### Building "library"
Since stage0 `std` is no longer in-tree `x build/test/check library --stage 0` is now no-op. The minimum supported stage to build `std` is now 1. For the same reason, default stage values in the library profile is no longer 0.
Because building the in-tree library now requires a stage1 compiler, I highly recommend library developers to enable `download-rustc` to speed up compilation time.
<hr>
**Blog post: https://blog.rust-lang.org/inside-rust/2025/05/29/redesigning-the-initial-bootstrap-sequence/ **
If you encounter a bug or unexpected results please open a topic in the [#t-infra/bootstrap](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap ) Zulip channel or create a [bootstrap issue](https://github.com/rust-lang/rust/issues/new?template=bootstrap.md ).
(Review thread: https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Review.20thread.3A.20stage.200.20redesign.20PR/with/508271433 )
~~Blocked on https://github.com/rust-lang/rust/pull/122709~~
try-job: dist-x86_64-linux
try-job: `x86_64-msvc*`
try-job: `x86_64-apple-*`
try-job: `aarch64-apple`
try-job: x86_64-gnu
try-job: `x86_64-gnu-llvm*`
2025-06-02 07:49:18 +00:00
Jacob Pratt
c4ba6b00cc
Rollup merge of #141277 - RalfJung:miri-ci, r=oli-obk
...
Miri CI: test aarch64-apple-darwin in PRs instead of the x86_64 target
The aarch64 target is more important, and also this ensures we cover all main architectures (x86_64, i686, aarch64) in PR CI.
2025-06-01 00:35:51 +02:00
Matthias Krüger
ec39208527
Rollup merge of #141646 - jieyouxu:distcheck, r=Mark-Simulacrum
...
Document what `distcheck` is intended to exercise
Or at least attempt to.
Closes rust-lang/rust#141387 .
cc `@marcoieni` (re. [#t-infra/bootstrap > Speed up distcheck](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Speed.20up.20distcheck/with/520208870 ))
r? `@Mark-Simulacrum` (as you may have some clues about if this is accurate)
2025-05-31 18:51:48 +02:00
onur-ozkan
305890541f
fix fs bug on CI and update ming-check-1 Dockerfile
...
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-05-30 21:04:25 +03:00
onur-ozkan
2b780cd517
split mingw-check into two
...
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-05-30 21:04:05 +03:00
onur-ozkan
d28cb1ceac
use stage 1 for std on CI
...
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-05-30 21:04:02 +03:00
MarcoIeni
7ad2c36e6f
ci: use free runner for aarch64-gnu-llvm-19-1 PR job
2025-05-30 15:08:59 +02:00
Matthias Krüger
4fce906481
Rollup merge of #141749 - Noratrieb:RUSTC_ACTUALLY_DO_NOT_RETRY_LINKER_ON_SEGFAULT, r=petrochenkov
...
Remove RUSTC_RETRY_LINKER_ON_SEGFAULT hack
It looks like this was added in rust-lang/rust#40422 6 years ago because of issues with the MacOS linker. MacOS got a new linker in the meantime, so that should probably be resolved now. Hopefully.
r? petrochenkov
2025-05-30 13:39:55 +02:00
Noratrieb
f1778074fb
Remove RUSTC_RETRY_LINKER_ON_SEGFAULT hack
...
It looks like this was added 6 years ago because of issues with the
MacOS linker. MacOS got a new linker in the meantime, so that should
probably be resolved now. Hopefully.
2025-05-29 23:30:29 +02:00
Guillaume Gomez
a547af9ffc
Rollup merge of #141705 - GuillaumeGomez:eslint-tidy, r=Kobzol
...
Add eslint as part of `tidy` run
Rustdoc uses `eslint` to run lints on the JS files. Currently you need to run it by hand since it's not part of any `x.py` command. This PR makes it part of `test tidy`. However, to prevent having all rust developers to install `npm` and `eslint`, I made it optional: if `eslint` is not installed, then the check is simply skipped (but will tell that it is being skipped).
The second commit removes the manual checks from the docker file since `eslint` is run as part of tidy.
cc `@lolbinarycat,` [#t-rustdoc > eslint seems to only be run in CI](https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc/topic/eslint.20seems.20to.20only.20be.20run.20in.20CI/with/520761477 )
2025-05-29 17:03:00 +02:00
Guillaume Gomez
8645ef7d8e
Fix npm install error
2025-05-29 15:53:16 +02:00
Guillaume Gomez
b1723fc83b
Centralize the eslint version between tidy and docker
2025-05-29 15:06:08 +02:00
Guillaume Gomez
f0f661db2b
Install eslint in host-x86_64 Dockerfile
2025-05-29 14:50:48 +02:00
bors
8afd71079a
Auto merge of #141717 - jhpratt:rollup-neu8nzl, r=jhpratt
...
Rollup of 4 pull requests
Successful merges:
- rust-lang/rust#138285 (Stabilize `repr128`)
- rust-lang/rust#139994 (add `CStr::display`)
- rust-lang/rust#141571 (coretests: extend and simplify float tests)
- rust-lang/rust#141656 (CI: Add cargo tests to aarch64-apple-darwin)
Failed merges:
- rust-lang/rust#141430 (remove `visit_clobber` and move `DummyAstNode` to `rustc_expand`)
- rust-lang/rust#141636 (avoid some usages of `&mut P<T>` in AST visitors)
r? `@ghost`
`@rustbot` modify labels: rollup
2025-05-29 08:53:27 +00:00
Jacob Pratt
ee3e807f90
Rollup merge of #141656 - ehuss:cargo-aarch64-macos, r=marcoieni,jieyouxu
...
CI: Add cargo tests to aarch64-apple-darwin
This adds running of cargo's tests to the aarch64-apple-darwin job. The reason for this is that tier-1 targets are ostensibly supposed to run tests for host tools, but we are not doing that here. We do have fairly good coverage in Cargo's CI, but we don't cover the beta or stable branches here. I think it would be good to have a fallback here.
I think this should only add about 7 minutes of CI time, but I have not measured it. The current job is about 1.5 hours.
In summary of the tier-1 targets:
| Target | rust-lang/cargo | rust-lang/rust |
|--------|-----------------|----------------|
| aarch64-apple-darwin | stable/nightly | ❌ (this PR) |
| aarch64-unknown-linux-gnu | stable/nightly | ✓ |
| x86_64-apple-darwin | nightly | ❌ |
| x86_64-pc-windows-gnu | nightly | ❌ |
| x86_64-pc-windows-msvc | stable | ✓ |
| x86_64-unknown-linux-gnu | stable/beta/nightly | ✓ |
| i686-pc-windows-msvc | ❌ | ❌ |
| i686-unknown-linux-gnu | ❌ | ❌ |
try-job: aarch64-apple
2025-05-29 04:50:48 +02:00
Jacob Pratt
e96b112672
Rollup merge of #141643 - marcoieni:codebuild-check, r=Kobzol
...
ci: verify that codebuild jobs use ghcr.io
2025-05-29 04:49:43 +02:00
Guillaume Gomez
9e5dd51166
Remove checks that are run with tidy
2025-05-28 22:37:08 +02:00
bors
40311c4dcf
Auto merge of #141576 - marcoieni:pr-free-runners-aarch, r=Kobzol
...
ci: move tests from x86_64-gnu-llvm-19 job to aarch64
2025-05-28 14:20:52 +00:00
bors
77101febcc
Auto merge of #141501 - marcoieni:dist-x86_64-linux-codebuild-again, r=Kobzol
...
ci: move dist-x86_64-linux job to codebuild
2025-05-28 08:58:49 +00:00
MarcoIeni
bf52d1a803
ci: verify that codebuild jobs use ghcr.io
2025-05-28 10:23:38 +02:00
Trevor Gross
77ddf1ac6b
Rollup merge of #141591 - marcoieni:fix-llvm-test-coverage, r=Kobzol
...
ci: fix llvm test coverage
try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-20-1
2025-05-27 20:28:33 -04:00
Eric Huss
d562c46be0
CI: Add cargo tests to aarch64-apple-darwin
...
This adds running of cargo's tests to the aarch64-apple-darwin job. The
reason for this is that tier-1 targets are ostensibly supposed to run
tests for host tools, but we are not doing that here. We do have fairly
good coverage in Cargo's CI, but we don't have much coverage of beta or
stable. I think it would be good to have a fallback here.
2025-05-27 10:05:50 -07:00
Jieyou Xu
d43c2e7448
distcheck: document what distcheck is intended to exercise
2025-05-27 20:44:47 +08:00
MarcoIeni
7314994008
ci: use ghcr registry for x86_64-gnu-tools job
2025-05-27 11:23:05 +02:00
MarcoIeni
1b7a927d84
ci: move tests from x86_64-gnu-llvm-19 job to aarch64
2025-05-26 22:27:20 +02:00
MarcoIeni
6ec41a7950
ci: fix llvm test coverage
2025-05-26 16:52:24 +02:00
MarcoIeni
1e7c4377de
ci: move dist-x86_64-linux job to codebuild
2025-05-26 15:37:45 +02:00
Jacob Pratt
905b46a6d4
Rollup merge of #141502 - marcoieni:x86_64-gnu-tools-codebuild, r=Kobzol
...
ci: move PR job x86_64-gnu-tools to codebuild
2025-05-26 03:38:18 +02:00
Guillaume Gomez
0846035d2d
Rollup merge of #141487 - GuillaumeGomez:update-askama, r=notriddle
...
Update askama to `0.14.0`
[Askama 0.14.0 release notes](https://github.com/askama-rs/askama/releases/tag/v0.14.0 )
Just one change needed for a filter in rustdoc.
r? ```@notriddle```
2025-05-24 21:23:48 +02:00
MarcoIeni
ec5e841957
ci: move PR job x86_64-gnu-tools to codebuild
2025-05-24 15:12:14 +02:00
Guillaume Gomez
a6438924c9
Update askama version to 0.14.0 in citool
2025-05-24 12:31:21 +02:00
est31
6d71674321
Remove #![feature(let_chains)] from libcore
2025-05-23 02:47:43 +02:00
bors
2eef47813f
Auto merge of #141388 - Kobzol:x64-github-runner, r=marcoieni
...
Move `dist-x86_64-linux` CI job to GitHub temporarily
To make it easier to migrate off the `rust-lang-ci/rust` repository.
r? `@marcoieni`
2025-05-22 18:05:06 +00:00
Matthias Krüger
9507b10ed3
Rollup merge of #141382 - marcoieni:distcheck-free-x86, r=Kobzol
...
ci: convert distcheck to free runner
try-job: x86_64-gnu-distcheck
2025-05-22 16:04:14 +02:00
Matthias Krüger
8757915a70
Rollup merge of #141355 - marcoieni:citool-errors, r=Kobzol
...
ci: improve citool job db errors
2025-05-22 16:04:11 +02:00
Jakub Beránek
7d32303574
Move dist-x86_64-linux CI job to GitHub temporarily
...
To make it easier to migrate off the `rust-lang-ci/rust` repository.
2025-05-22 12:09:37 +02:00
MarcoIeni
27677ef143
ci: convert distcheck to free runner
2025-05-22 09:53:35 +02:00
MarcoIeni
f57a64ae5a
ci: improve citool job db errors
2025-05-21 18:50:01 +02:00
Matthias Krüger
7a53ef7af3
Rollup merge of #141280 - Kobzol:docker-rust-lang-cache, r=marcoieni
...
Use Docker cache from the current repository
This is needed to make the cache work after moving CI from the `rust-lang-ci` org to `rust-lang`. Shouldn't be merged until we actually move bors.
Context: https://github.com/rust-lang/infra-team/issues/188
r? `@marcoieni`
2025-05-21 15:38:09 +02:00
Matthias Krüger
64a5a66666
Rollup merge of #140994 - onur-ozkan:cc2ar-removal, r=albertlarsan68
...
replace `cc_detect::cc2ar` with `cc::try_get_archiver`
~~Awaiting new release of [cc](https://crates.io/crates/cc ) version with https://github.com/rust-lang/cc-rs/pull/1456 to bump the version.~~
~~Blocked by https://github.com/rust-lang/cc-rs/pull/1456.~~
Kind a self-explanatory.
try-job: dist-android
2025-05-21 11:28:44 +02:00
Matthias Krüger
c5920278d3
Rollup merge of #141078 - marcoieni:split-dist-arm-linux, r=Kobzol
...
ci: split dist-arm-linux job
try-job: `dist-arm-linux-*`
2025-05-21 08:05:18 +02:00
Matthias Krüger
f547636b7e
Rollup merge of #141042 - marcoieni:split-dist-powerpc64le-linux, r=Kobzol
...
ci: split powerpc64le-linux job
try-job: `dist-powerpc64le-linux-*`
2025-05-21 08:05:15 +02:00
onur-ozkan
5c4eb87dbe
add missing PATH
...
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-05-21 06:18:17 +03:00
bors
bc82152863
Auto merge of #140757 - dpaoliello:llvm20, r=Kobzol
...
[win][ci] Update LLVM toolchain used to build LLVM to 20
While trying to get the aarch64-msvc build working correctly (#140136 ), I needed to update the version of LLVM used to build LLVM in Windows CI runners to 20 (as this has improved support for Arm64 and Arm64EC on Windows).
This catches Windows up to Linux which was updated to 20 by #137189
try-job: `x86_64-apple-*`
try-job: `aarch64-apple`
try-job: `x86_64-msvc-*`
try-job: `i686-msvc-*`
try-job: `x86_64-mingw-*`
2025-05-20 19:29:34 +00:00
MarcoIeni
a8173fcd1f
ci: split powerpc64le-linux job
2025-05-20 15:16:29 +02:00
Jakub Beránek
eb530325f0
Use Docker cache from the current repository
...
This is needed to make the cache work after moving CI from the `rust-lang-ci` org to `rust-lang`.
2025-05-20 10:39:34 +02:00
Ralf Jung
cb07fd8cf7
Miri CI: test aarch64-apple-darwin in PRs instead of the x86_64 target
2025-05-20 08:56:00 +02:00