about summary refs log tree commit diff
path: root/src/ci/github-actions
AgeCommit message (Collapse)AuthorLines
2024-03-23Update upload-artifact to v4Nilstrieb-1/+1
This contains a breaking change around artifact merging no longer being done. This was not relied on, so it's fine.
2024-03-17Update the minimum external LLVM to 17Josh Stone-6/+1
2024-03-12Auto merge of #112268 - lqd:osx-1cgu, r=Kobzolbors-1/+1
Build `rustc` with 1CGU on `x86_64-apple-darwin` Distribute `x86_64-apple-darwin` artifacts built with `rust.codegen-units=1`, like we already do on Linux. 1) effect on code size on `x86_64-apple-darwin`: it's a 11.14% reduction on `librustc_driver.dylib` - before, [`41d97c8a5dea2731b0e56fe97cd7cb79e21cff79`](https://ci-artifacts.rust-lang.org/rustc-builds/41d97c8a5dea2731b0e56fe97cd7cb79e21cff79/rustc-nightly-x86_64-apple-darwin.tar.xz): 161232048 - after, [`7549dbdc09f0c4f6cc84002ac03081828054784b`](https://ci-artifacts.rust-lang.org/rustc-builds/7549dbdc09f0c4f6cc84002ac03081828054784b/rustc-nightly-x86_64-apple-darwin.tar.xz): 143256928 2) time it took on CI: - the [first `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8155512915/job/22291187124) took: 1h 33m - the [second `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8157057880/job/22295839911) took: 1h 45m 3) most recent perf results on (a noisy) x64 mac are [here](https://github.com/rust-lang/rust/pull/112268#issuecomment-1575635073). Related tracking issue for build configuration: #103595
2024-03-11Auto merge of #112267 - lqd:win-1cgu, r=Kobzolbors-0/+1
Build `rustc` with 1CGU on `x86_64-pc-windows-msvc` Distribute `x86_64-pc-windows-msvc` artifacts built with `rust.codegen-units=1`, like we already do on Linux. 1) effect on code size on `x86_64-pc-windows-msvc`: it's a 3.67% reduction on `rustc_driver.dll` - before, [`41d97c8a5dea2731b0e56fe97cd7cb79e21cff79`](https://ci-artifacts.rust-lang.org/rustc-builds/41d97c8a5dea2731b0e56fe97cd7cb79e21cff79/rustc-nightly-x86_64-pc-windows-msvc.tar.xz): 137605632 - after, [`704aaa875e4acccc973cbe4579e66afbac425691`](https://ci-artifacts.rust-lang.org/rustc-builds/704aaa875e4acccc973cbe4579e66afbac425691/rustc-nightly-x86_64-pc-windows-msvc.tar.xz): 132551680 2) time it took on CI - the [first `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8155647651/job/22291592507) took: 1h 31m - the [second `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8157043594/job/22295790552) took: 1h 32m 3) most recent perf results: - on a slightly noisy desktop [here](https://github.com/rust-lang/rust/pull/112267#issuecomment-1575758155) - ChrisDenton's results [here](https://github.com/rust-lang/rust/pull/112267#issuecomment-1583295338) Related tracking issue for build configuration: #103595
2024-03-07ci: add a runner for vanilla LLVM 18Josh Stone-0/+5
2024-03-05build rustc with 1CGU on x86_64-pc-windows-msvcRémy Rakic-0/+1
2024-03-05build rustc with 1CGU on x86_64-apple-darwinRémy Rakic-1/+1
2024-03-02Promote OpenHarmony targets to tier 2Amanieu d'Antras-0/+3
MCP: rust-lang/compiler-team#719
2024-02-25Auto merge of #121182 - majaha:mingw_ci_new, r=Mark-Simulacrumbors-0/+21
Improvements to building and CI for mingw/msys I was getting error messages when trying to follow the build instructions the mingw build for Rust, and managed to track the issue down to an incomparability of Rust's bootstrap program with MSYS2's version of git. Essentially, the problem is that MSYS2's git works in emulated unix-y paths, but bootstrap expects a Windows path. I found a workaround for this by using relative paths instead of absolute paths. Along with that fix, this PR also updates the build instructions for MinGW to be compatible with modern versions of MSYS2, and some changes to CI to make sure that MSYS2's version of git is tested. In particular, I'm suggesting using the [MSYS2 github action](https://github.com/marketplace/actions/setup-msys2) specially made for this purpose, which is much less hacky than the old approach and gives us more control of what packages are installed. I also cleaned up as many alternate versions of key tools as I could find from PATH, to avoid accidental usage, and cleaned up some abuses of the `CUSTOM_MINGW` environment variable. This fixes https://github.com/rust-lang/rust/issues/105696 and fixes https://github.com/rust-lang/rust/issues/117567
2024-02-16Changes to CI related to mingw and MSYSMatt Harding-0/+21
2024-02-10Downgrade Xcode from the default (15.0) to 14.3.1.Eric Huss-4/+5
This seems to fix two sporadic errors that have been appearing in CI. One is an issue with cmake being unable to verify that cmake is able to build a simple test program. The other is a `invalid r_symbolnum` linking error when trying to build one of cranelift's tests. This is intended as a temporary fix until we can figure out how to resolve those issues.
2024-02-04Use new publicly-available M1 runnersJake Goulding-1/+1
https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/
2024-02-04Re-enable M1 runners on GitHub ActionsJake Goulding-14/+22
This reverts commit 0f9844d10cc8210f1c0ef784ef8d67a1e073c3c1.
2024-01-31CI: Use ninja on apple buildersEric Huss-4/+3
2024-01-31Auto merge of #120358 - tmandry:bump-fuchsia-8c-tests, r=Mark-Simulacrumbors-1/+1
Bump Fuchsia, build tests, and use 8 core bots - Build Fuchsia on 8 cores instead of 16 - Skip building cranelift for Fuchsia - Bump Fuchsia (includes building tests) This includes a change to the upstream build_fuchsia_from_rust_ci script that builds a minimal set of tests, to improve coverage on this builder. This would have caught https://github.com/rust-lang/rust-clippy/issues/11952 and #119593. See prior discussion on #119400 about building on 8 cores instead of 16. This PR combines changes from that and #119399, plus clean up. r? `@Mark-Simulacrum`
2024-01-26Build Fuchsia on 8 cores instead of 16Tyler Mandry-1/+1
2024-01-22Cache CI Docker images in ghcr registryJakub Beránek-0/+2
2024-01-03Temporarily disable M1 runners on GitHub ActionsJan David-22/+14
This commit temporarily reverts the addition of M1 runners on GitHub Actions to work around a billing issue related to their beta. It also removes the `aarch64-apple` job, which was only added after the addition of M1 runners. Since it has never been tested on the prior hardware, we are skipping the tests to reduce the risk of build failures.
2023-12-21run fuchsia tests only on nightlyPietro Albini-0/+5
2023-12-07Build Fuchsia in CITyler Mandry-0/+4
2023-11-21Update the minimum external LLVM to 16.Dario Nieuwenhuis-6/+1
2023-11-08Run tests in CI for aarch64-apple-darwinJake Goulding-0/+19
2023-11-08Install tidy for aarch64-apple-darwinJake Goulding-0/+4
The GitHub Actions image has this preinstalled for x86_64 but not M1.
2023-11-02Fix invalid enabling of gcc backend in `run.sh`Guillaume Gomez-1/+1
2023-11-02Rename `SKIP_CODEGEN_TESTS` into `ENABLE_GCC_CODEGEN`Guillaume Gomez-1/+1
2023-11-02Run codegen tests outside if not llvm-15Guillaume Gomez-0/+2
2023-10-30Auto merge of #117267 - RalfJung:miri-tests, r=Mark-Simulacrumbors-0/+1
update which targets we test Miri on I hope this doesn't cost too much time; running only the "pass" tests should be reasonably fast (1-2 minutes on my system). Fixes https://github.com/rust-lang/rust/issues/117167
2023-10-30update which targets we test Miri onRalf Jung-0/+1
2023-10-27Explicitly mark which targets to distribute cg_clif for in CIbjorn3-0/+10
This avoids needlessly building cg_clif for other targets and makes it easier for the dist code to determine if it should distribute cg_clif as component.
2023-10-22Auto merge of #116950 - cuviper:ci-llvm-17, r=Mark-Simulacrumbors-0/+5
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-19ci: add a runner for vanilla LLVM 17Josh Stone-0/+5
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/+4
Unlike the other builders, this one doesn't come with it preinstalled.
2023-10-08Auto merge of #116450 - Kobzol:automation-try-bors-ci, r=Mark-Simulacrumbors-1/+0
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-05Remove `try-merge` from CI workflowJakub Beránek-1/+0
2023-10-04Auto merge of #116381 - Mark-Simulacrum:drop-wasm32-unknown-emscripten, r=Kobzolbors-3/+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-03Drop the wasm32 builderMark Rousskov-3/+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-09-28Add integration for new borsJakub Beránek-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-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-12Refactor EnvironmentJakub Beránek-1/+1
2023-09-07ci: actions/checkout@v3 to actions/checkout@v4Keita Nonaka-2/+2
2023-08-20Remove apple-alt dist build.Eric Huss-12/+0
2023-08-13Rollup merge of #114625 - klensy:ci-pr-workers, r=Mark-SimulacrumGuillaume Gomez-2/+2
CI: use smaller machines in PR runs mingw-check job-linux-16c -> job-linux-4c ~job-linux-4c 20 min in auto job ~job-linux-16c 13 min in pr job with current pr regressed to almost 21 min, it's ok. mingw-check-tidy job-linux-16c -> job-linux-4c small enough, so reduce to minimal ~ job-linux-16c 3 min with current pr regressed to almost 5 min, it's ok. x86_64-gnu-tools job-linux-16c this is top job by time in PR, so don't touch it ~ job-linux-8c 1.30 hour in auto job ~ job-linux-16c 1 hour in pr job (affected by #114613, actual time ~ 30 min) x86_64-gnu-llvm-15 job-linux-16c don't change too ~ job-linux-8c 1.30 hour in auto job ~ job-linux-16c 30 min in pr job Noticed while working on https://github.com/rust-lang/rust/pull/114621, so current time affected by always rebuilded docker images (but pr images always rebuilded before too, so nvm)
2023-08-08use smaller machines in CI PR runsklensy-2/+2
2023-08-06fix(bootstrap): rename exclude flag to skip 🐛Meysam Azad-3/+1
2023-08-01Auto merge of #113854 - klensy:aarch64-msvc-remove-hack, r=Mark-Simulacrumbors-3/+0
aarch64-msvc: remove CI hack for bad Windows SDK version This removes hack which manually replaced windows sdk version, as it looks like useless now, as CI uses newer version: https://github.com/rust-lang-ci/rust/actions/runs/5596259246/jobs/10233070602#step:24:929 `C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt_io.h` (look at version) related https://github.com/rust-lang/rust/issues/88796 It's nice to have some way to assert bad version, but i don't see anything except checking env https://github.com/rust-lang/cc-rs/pull/646
2023-07-27Update the minimum external LLVM to 15Josh Stone-6/+1