about summary refs log tree commit diff
path: root/src/ci
AgeCommit message (Collapse)AuthorLines
2023-10-27Fix review commentsbjorn3-3/+2
2023-10-27Distribute cg_clif as a rustup componentbjorn3-1/+2
2023-10-24Auto merge of #116998 - pcc:new-ndk2, r=onur-ozkanbors-7/+2
Improve android-ndk property interface Re-creating #102994 which was closed. --- PR #105716 added support for NDK r25b, and removed support for r15. Since the switch to r25b would have broken existing r15 users anyway, let's take the opportunity to make the interface more user friendly. Firstly move the android-ndk property to [build] instead of the targets. This is possible now that the NDK has obsoleted the concept of target-specific toolchains. Also make the property take the NDK root directory instead of the "toolchains/llvm/prebuilt/<host tag>" subdirectory.
2023-10-23Improve android-ndk property interfacePeter Collingbourne-7/+2
PR #105716 added support for NDK r25b, and removed support for r15. Since the switch to r25b would have broken existing r15 users anyway, let's take the opportunity to make the interface more user friendly. Firstly move the android-ndk property to [build] instead of the targets. This is possible now that the NDK has obsoleted the concept of target-specific toolchains. Also make the property take the NDK root directory instead of the "toolchains/llvm/prebuilt/<host tag>" subdirectory.
2023-10-22Update rustc-perf versionJakub Beránek-2/+2
2023-10-22Auto merge of #116950 - cuviper:ci-llvm-17, r=Mark-Simulacrumbors-0/+59
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-22Auto merge of #116932 - Kobzol:fix-stage1-tests, r=Mark-Simulacrumbors-28/+28
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-21Auto merge of #116368 - shepmaster:github-actions-m1, r=Mark-Simulacrumbors-14/+40
Use GitHub Actions M1 builder for aarch64-apple-darwin r? `@ghost`
2023-10-19ci: set IS_NOT_LATEST_LLVM for llvm-16Josh Stone-0/+4
2023-10-19ci: add a runner for vanilla LLVM 17Josh Stone-0/+55
2023-10-19Fix x64_64-gnu-llvm-15 CI testsJakub Beránek-28/+28
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 command would happily continue forward, ignoring any test failures.
2023-10-15Fix podman detection in CI scriptsNilstrieb-1/+1
When docker-podman compat was set up in a way that causes "docker" to be the argv[0] of podman, the previous detection did not work. This was for example the case in the compat package from nixpkgs. This checks the output and should work everywhere.
2023-10-10Add two lockfilesbjorn3-0/+16
2023-10-09Use GitHub Actions M1 builder for aarch64-apple-darwinJake Goulding-14/+7
Additionally, this enables 1. building the documentation 2. Setting `rust.lto` to `thin` to match the x86_64 build
2023-10-09Install `awscli` on the aarch64-apple-darwin builderJake Goulding-0/+33
Unlike the other builders, this one doesn't come with it preinstalled.
2023-10-09Build GCC with support for BOLTJakub Beránek-1/+6
2023-10-08Drop all MIPS targets from CIJubilee Young-76/+1
2023-10-08Auto merge of #116450 - Kobzol:automation-try-bors-ci, r=Mark-Simulacrumbors-3/+3
Enable new bors try branch to run on CI Needed to fix [this error](https://github.com/rust-lang/rust/actions/runs/6420044833/job/17431256956). Inspired by https://github.com/rust-lang/rust/pull/99988 Also, removes `try-merge` from the workflow. It shouldn't have been added in https://github.com/rust-lang/rust/pull/116353. r? `@Mark-Simulacrum`
2023-10-08Auto merge of #114623 - Kobzol:opt-dist-gha-summaries, r=Mark-Simulacrumbors-0/+6
Print some information from try builds to GitHub summary This PR adds some logs from `opt-dist` (the duration of the individual steps of the build pipeline, and the size of the resulting artifacts) to GitHub [job summaries](https://github.blog/2022-05-09-supercharging-github-actions-with-job-summaries/), in order to quickly show useful information right in the GHA CI job page, without needing to read the full log. [This](https://github.com/rust-lang-ci/rust/actions/runs/5810621086) is how the summary currently looks like. r? `@ghost`
2023-10-07Auto merge of #116416 - Kobzol:ci-host-llvm-17-0-2, r=Mark-Simulacrumbors-1/+1
Bump host compiler on x64 dist Linux to LLVM 17.0.2 17.0.0-rc3 had a bunch of miscompilations, and it's probably better in general not to use a RC version of LLVM long term on CI.
2023-10-05Remove `try-merge` from CI workflowJakub Beránek-1/+0
2023-10-05Enable new bors try branch to run on CIJakub Beránek-2/+3
2023-10-04Auto merge of #116381 - Mark-Simulacrum:drop-wasm32-unknown-emscripten, r=Kobzolbors-66/+0
Remove wasm32-unknown-emscripten tests from CI This builder tested the wasm32-unknown-emscripten target, which is tier 2 (and so not eligible for testing). In the recent beta [promotion](https://github.com/rust-lang/rust/pull/116362#issuecomment-1744960904), we ran into a problem with this target: emscripten doesn't support passing environment variables into the std environment, so we can't enable RUSTC_BOOTSTRAP for libtest in order to pass -Zunstable-options. We worked around this for the beta/stable branches, but given this problem, and its tier 2 status, just dropping the target's tests entirely seems warranted. Downgrading to tier 3 may also be a good idea, but that is a separate conversation not proposed here.
2023-10-04Bump host compiler on x64 dist Linux to LLVM 17.0.2Jakub Beránek-1/+1
2023-10-03Drop the wasm32 builderMark Rousskov-66/+0
This builder tested the wasm32-unknown-emscripten target, which is tier 2 (and so not eligible for testing). In the recent beta promotion, we ran into a problem with this target: emscripten doesn't support passing environment variables into the std environment, so we can't enable RUSTC_BOOTSTRAP for libtest in order to pass -Zunstable-options. We worked around this for the beta/stable branches, but given this problem, and its tier 2 status, just dropping the target's tests entirely seems warranted. Downgrading to tier 3 may also be a good idea, but that is a separate conversation not proposed here.
2023-10-02Add new bors try branches to CIJakub Beránek-0/+2
2023-10-02Add artifact size and step duration summaries from `opt-dist` to github job ↵Jakub Beránek-0/+6
summary
2023-10-01Auto merge of #115554 - Kobzol:single-cgu, r=Mark-Simulacrumbors-1/+2
Build `rustc` with a single CGU on x64 Linux This PR adds the `rust.codegen-units=1` setting when compiling the 64-bit Linux `rustc` artifact (the one used for try builds and Linux rustup distribution). This had mixed results in the past, however after the bump to LLVM 17, the results now seem pretty [incredible](https://github.com/rust-lang/rust/pull/115554#issuecomment-1706518199). Instruction counts, cycles, wall time, max RSS and even artifact sizes see large improvements. The last [try build](https://github.com/rust-lang-ci/rust/actions/runs/6077686494/job/16487768049) with this setting took 1h 8m, which is basically the same duration for try builds that we have seen recently. So there shouldn't be any large hit to CI/build time. I hope that this could potentially also reduce codegen noise of `rustc` a little bit, since small changes within a single `rustc` crate should no longer perturb optimizations because of CGU movement. We still do cross-crate LTO, so it won't eliminate it though. r? `@Mark-Simulacrum`
2023-10-01Auto merge of #116225 - Kobzol:newbors-integration, r=Mark-Simulacrumbors-1/+1
Add integration for new bors I think that the best way to test the [new bors](https://github.com/rust-lang/bors/tree/staging) implementation is to start using it in the wild. This PR integrates this repo with the bot (some more integration has to be done externally through GitHub). For now, I would suggest to integrate it e.g. under the ``@borsnew`` name, and start testing its try build functionality. The bot cannot do merges or approvals yet, and it doesn't touch `master` in any way, so hopefully it shouldn't cause any troubles for this repo. r? `@Mark-Simulacrum`
2023-09-30Auto merge of #115368 - loongarch-rs:none-tier2, r=pietroalbinibors-0/+2
Promote loongarch64-unknown-none* to Tier 2 MCP: https://github.com/rust-lang/compiler-team/issues/664
2023-09-28Build `rustc` with a single CGU on x64 LinuxJakub Beránek-1/+2
2023-09-28Add integration for new borsJakub Beránek-1/+1
2023-09-28ci: upgrade to crosstool-ng 1.26.0WANG Rui-23/+5
2023-09-26Promote loongarch64-unknown-none* to Tier 2WANG Rui-0/+2
MCP: https://github.com/rust-lang/compiler-team/issues/664
2023-09-25Auto merge of #116147 - compiler-errors:jq, r=dtolnaybors-1/+1
Fix jq in CI r? `@Mark-Simulacrum`
2023-09-25Fix jq in CIMichael Goulet-1/+1
2023-09-24Auto merge of #104385 - BlackHoleFox:apple-minimum-bumps, r=petrochenkovbors-4/+4
Raise minimum supported Apple OS versions This implements the proposal to raise the minimum supported Apple OS versions as laid out in the now-completed MCP (https://github.com/rust-lang/compiler-team/issues/556). As of this PR, rustc and the stdlib now support these versions as the baseline: - macOS: 10.12 Sierra - iOS: 10 - tvOS: 10 - watchOS: 5 (Unchanged) In addition to everything this breaks indirectly, these changes also erase the `armv7-apple-ios` target (currently tier 3) because the oldest supported iOS device now uses ARMv7s. Not sure what the policy around tier3 target removal is but shimming it is not an option due to the linker refusing. [Per comment](https://github.com/rust-lang/compiler-team/issues/556#issuecomment-1297175073), this requires a FCP to merge. cc `@wesleywiser.`
2023-09-23Raise minimum supported macOS to 10.12BlackHoleFox-4/+4
2023-09-21Make ui-fulldeps --stage=1 builds in CIMichael Goulet-9/+12
2023-09-20Update browser-ui-test version to 0.16.10Guillaume Gomez-1/+1
2023-09-19Rollup merge of #115949 - GuillaumeGomez:update-browser-ui-test, r=notriddleMatthias Krüger-1/+1
Update browser-ui-test version It includes the fix from `@notriddle` (https://github.com/GuillaumeGomez/browser-UI-test/pull/537). r? `@notriddle`
2023-09-18Update browser-ui-test versionGuillaume Gomez-1/+1
2023-09-18Rollup merge of #115663 - Gumichocopengin8:ci/update-github-action, ↵Matthias Krüger-2/+2
r=Mark-Simulacrum ci: actions/checkout@v3 to actions/checkout@v4 - Bump `actions/checkout` from v3 to v4 since v3 uses Node v16 whose support lasts until `11 Sep 2023` [Ref](https://endoflife.date/nodejs) - https://github.com/actions/checkout/releases/tag/v4.0.0
2023-09-18Auto merge of #115795 - Kobzol:opt-dist-custom, r=Mark-Simulacrumbors-2/+2
Refactor `opt-dist` to simplify local building This PR refactors the `opt-dist` tool to make it easier to invoke it locally, outside of CI, and thus simplify building PGO/BOLT optimized `rustc` builds e.g. for distro maintainers. It should also make it easier to run the PGO/BOLT workflow locally e.g. to profile performance or debug issues (looking at you, https://github.com/rust-lang/rust/pull/115554).
2023-09-16Move to older, mirrored redox installMark Rousskov-1/+1
2023-09-16Bump to supported UbuntuMark Rousskov-2/+2
The 22.10 Ubuntu repositories were returning 404s in last stable build.
2023-09-12Refactor EnvironmentJakub Beránek-2/+2
2023-09-10Allow testing cg_clif using ./x.py testbjorn3-0/+3
2023-09-08Rollup merge of #115088 - LuuuXXX:issue-112009, r=albertlarsan68Guillaume Gomez-1/+2
Fix Step Skipping Caused by Using the `--exclude` Option The original code was overreacting to the `--exclude` option, https://github.com/rust-lang/rust/blob/eadf69a6c6edfe220fc5b1b659e46e271d75a3a1/src/bootstrap/builder.rs#L257-L260 For example: When `x test --exclude alloc` or `x test --exclude library/alloc` is passed, the entire libraray test is skipped. Related issues: https://github.com/rust-lang/rust/issues/112009
2023-09-08Fix Issue 112009LuuuX-1/+2
modify fuction clond() -> cloned() optimize the code Handle the problem that the pathset is empty and modify the judgment of the builder::tests::test_exclude_kind Delete unnecessary judegment conditions skip test for library/std duo to OOM in benches as library/alloc Add FIXME for WASM32