From dc51e45d687df7d797649300050ab647bea963d9 Mon Sep 17 00:00:00 2001 From: MStarRobotics Date: Sun, 29 Mar 2026 21:46:39 +0530 Subject: [PATCH 1/4] ci: raise Alpine Main timeout via matrix override --- .github/workflows/main.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index eebbd493cff..624fb82c800 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,10 +25,11 @@ jobs: os: ubuntu-latest container_image: alpine:3.21 host_dmd: ldmd2 + timeout_minutes: 60 # Alpine/musl currently pushes `test_phobos` beyond the 40 minute default budget # macOS - job_name: macOS x64 os: macos-14 - timeout-minutes: 60 + timeout_minutes: 60 # Windows - job_name: Windows x64 os: windows-2022 @@ -38,7 +39,7 @@ jobs: name: ${{ matrix.job_name }} runs-on: ${{ matrix.os }} container: ${{ matrix.container_image }} - timeout-minutes: ${{ matrix.timeout-minutes || 40 }} + timeout-minutes: ${{ matrix.timeout_minutes || 40 }} env: # for ci/run.sh: OS_NAME: ${{ startsWith(matrix.os, 'ubuntu') && 'linux' || (startsWith(matrix.os, 'macos') && 'osx' || (startsWith(matrix.os, 'windows') && 'windows' || '')) }} From 31859d5a6905fdbf27623fbaf4a2a2b84232f25f Mon Sep 17 00:00:00 2001 From: MStarRobotics Date: Mon, 30 Mar 2026 10:32:23 +0530 Subject: [PATCH 2/4] ci: increase macOS timeout to 120m to prevent cancellation --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 624fb82c800..2a3eec16b99 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -29,7 +29,7 @@ jobs: # macOS - job_name: macOS x64 os: macos-14 - timeout_minutes: 60 + timeout_minutes: 120 # macOS generally takes more time than Linux/Alpine # Windows - job_name: Windows x64 os: windows-2022 From 1c7e3a4deb0f20ebb86de2b743c8125ea3b9f08c Mon Sep 17 00:00:00 2001 From: MStarRobotics Date: Mon, 30 Mar 2026 10:36:31 +0530 Subject: [PATCH 3/4] ci: add fallback to master branch for dlang/dmd clone on push events --- .github/workflows/main.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2a3eec16b99..246ac4c8c6b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -62,7 +62,7 @@ jobs: fetch-depth: 50 - name: Clone DMD run: | - set -uexo pipefail + set -uxo pipefail ref='${{ github.ref }}' if [[ "$ref" =~ ^refs/pull/ ]]; then @@ -78,7 +78,13 @@ jobs: exit 1 fi - git clone --branch "$REPO_BRANCH" --depth 1 https://github.com/dlang/dmd.git ../dmd + # Clone DMD: try the specific branch, fall back to master if it doesn't exist + if git clone --branch "$REPO_BRANCH" --depth 1 https://github.com/dlang/dmd.git ../dmd 2>/dev/null; then + echo "Cloned dlang/dmd branch: $REPO_BRANCH" + else + echo "Branch '$REPO_BRANCH' not found; cloning master instead" + git clone --branch master --depth 1 https://github.com/dlang/dmd.git ../dmd + fi - name: Set environment variable N (parallelism) run: echo "N=$(${{ runner.os == 'macOS' && 'sysctl -n hw.logicalcpu' || 'nproc' }})" >> $GITHUB_ENV From ada25cd761adcae617fc4885fc8d13817fb96ce1 Mon Sep 17 00:00:00 2001 From: MStarRobotics Date: Mon, 30 Mar 2026 11:22:42 +0530 Subject: [PATCH 4/4] ci: add DMD branch fallback in FreeBSD VM workflow path --- .github/workflows/main.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 246ac4c8c6b..ed82de852aa 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -184,7 +184,13 @@ jobs: exit 1 fi - git clone --branch "$REPO_BRANCH" --depth 1 https://github.com/dlang/dmd.git ../dmd + # Clone DMD: try requested branch, fall back to master if missing + if git clone --branch "$REPO_BRANCH" --depth 1 https://github.com/dlang/dmd.git ../dmd 2>/dev/null; then + echo "Cloned dlang/dmd branch: $REPO_BRANCH" + else + echo "Branch '$REPO_BRANCH' not found; cloning master instead" + git clone --branch master --depth 1 https://github.com/dlang/dmd.git ../dmd + fi echo '::endgroup::' cd ../dmd