Skip to content

Commit 29caa86

Browse files
committed
[iris] Give 3.14t leg 60min for cold-start source builds
Free-threaded wheels are missing for duckdb, grpcio, zstandard, pyarrow and others, so the first uv sync builds them from sdist (~30+ min). 10min timeout killed both 3.14t jobs mid-build before pytest ran. Bump timeout for the 3.14t leg only; 3.12 stays at 10min. Warm runs use setup-uv's python-version aware cache and finish fast.
1 parent 0955dbe commit 29caa86

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

.github/workflows/iris-unit.yaml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@ jobs:
3535
needs: changes
3636
if: needs.changes.outputs.should_run == 'true'
3737
runs-on: ubuntu-latest
38-
timeout-minutes: 10
38+
# 3.14t needs a large budget for the cold-start uv sync — many deps
39+
# (duckdb, grpcio, zstandard, pyarrow, …) have no free-threaded wheels yet
40+
# and get built from sdist. Once setup-uv caches the built wheels (cache
41+
# is python-version-aware), warm runs finish quickly.
42+
timeout-minutes: ${{ matrix.python-version == '3.14t' && 60 || 10 }}
3943
strategy:
4044
fail-fast: false
4145
matrix:
@@ -72,7 +76,11 @@ jobs:
7276
needs: changes
7377
if: needs.changes.outputs.should_run == 'true'
7478
runs-on: ubuntu-latest
75-
timeout-minutes: 10
79+
# 3.14t needs a large budget for the cold-start uv sync — many deps
80+
# (duckdb, grpcio, zstandard, pyarrow, …) have no free-threaded wheels yet
81+
# and get built from sdist. Once setup-uv caches the built wheels (cache
82+
# is python-version-aware), warm runs finish quickly.
83+
timeout-minutes: ${{ matrix.python-version == '3.14t' && 60 || 10 }}
7684
strategy:
7785
fail-fast: false
7886
matrix:

0 commit comments

Comments
 (0)