Skip to content

Commit 95846e4

Browse files
committed
add scheduled builds to windows
1 parent ee0b583 commit 95846e4

7 files changed

Lines changed: 61 additions & 4 deletions

File tree

‎.github/workflows/publish.yml‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,14 @@ jobs:
2727

2828
call-windows:
2929
uses: ./.github/workflows/windows.yml
30+
with:
31+
publish: true
3032

3133

3234
call-windows-arm:
3335
uses: ./.github/workflows/windows-arm.yml
36+
with:
37+
publish: true
3438

3539

3640
# -------------------------------------------------------------------------------------

‎.github/workflows/windows-arm.yml‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,15 @@ on:
77
branches:
88
- main
99
- maintenance/**
10+
workflow_dispatch: null
11+
schedule:
12+
- cron: '0 0 * * 0'
1013
workflow_call:
14+
inputs:
15+
publish:
16+
type: boolean
17+
default: false
18+
required: false
1119

1220

1321
env:
@@ -29,6 +37,10 @@ jobs:
2937

3038
env:
3139
INTERFACE64: ${{ matrix.INTERFACE64 }}
40+
# A scheduled or manually triggered run builds against the latest
41+
# OpenBLAS HEAD instead of openblas_commit.txt
42+
# A run called from publish.yml builds the pinned commit.
43+
NIGHTLY: ${{ inputs.publish == false && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') }}
3244

3345
steps:
3446

‎.github/workflows/windows.yml‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,14 @@ on:
88
- main
99
- maintenance/**
1010
workflow_dispatch: null
11+
schedule:
12+
- cron: '0 0 * * 0'
1113
workflow_call:
14+
inputs:
15+
publish:
16+
type: boolean
17+
default: false
18+
required: false
1219

1320
env:
1421
OPENBLAS_ROOT: "c:\\opt"
@@ -30,6 +37,12 @@ jobs:
3037
fail-fast: false
3138
runs-on: ${{ matrix.os }}
3239

40+
env:
41+
# A scheduled or manually triggered run builds against the latest
42+
# OpenBLAS HEAD instead of openblas_commit.txt
43+
# A run called from publish.yml builds the pinned commit.
44+
NIGHTLY: ${{ inputs.publish == false && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') }}
45+
3346
timeout-minutes: 90
3447
steps:
3548
- uses: actions/checkout@v6.0.1

‎CHANGELOG.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
## OpenBLAS v0.3.34 (v0.3.34)
22

3+
### 0.3.34.481.1 (2026-10-29)
4+
5+
- Add a weekly scheduled run to both Windows workflows against OpenBLAS HEAD.
6+
37
### 0.3.34.481.0 (2026-10-20)
48

59
- update to latest develop HEAD, fix `NO_LIBGFORTRAN` patch

‎pyproject.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"
99
[project]
1010
name = "scipy-openblas64"
1111
# 0.3.34-481-g5137bb62
12-
version = "0.3.34.481.0"
12+
version = "0.3.34.481.1"
1313
requires-python = ">=3.7"
1414
description = "Provides OpenBLAS for python packaging"
1515
readme = "README.md"

‎tools/build_steps_win_arm64.bat‎

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,14 @@ set /p OPENBLAS_COMMIT=<openblas_commit.txt
6262

6363
REM Enter OpenBLAS directory and checkout buildable commit
6464
cd OpenBLAS
65-
git checkout %OPENBLAS_COMMIT%
65+
if "%NIGHTLY%"=="true" (
66+
REM Build the latest HEAD of develop
67+
git fetch origin
68+
git checkout -B develop origin/develop
69+
) else (
70+
git checkout %OPENBLAS_COMMIT%
71+
)
72+
if errorlevel 1 exit /b 1
6673
git merge-base --is-ancestor %first_woa_buildable_commit% HEAD 2>NUL
6774
if errorlevel 1 (
6875
echo OpenBLAS commit does not contain WoA build fixes.
@@ -82,6 +89,12 @@ REM Patch VERSION
8289
REM version=$(grep "^version =" ../pyproject.toml | sed 's/version = "//;s/"//')
8390
REM sed -e "s/^VERSION = .*/VERSION = ${version}/" -i.bak Makefile.rule
8491

92+
if "%NIGHTLY%"=="true" (
93+
REM v0.3.24-30-g138ed79f -> 0.3.24.30.0 in pyproject.toml
94+
powershell -Command "$v = ((git describe --tags --abbrev=8) -replace '^v(.*)-g.*', '$1') -replace '-', '.'; (Get-Content ..\pyproject.toml) -replace '^version = .*', ('version = \"' + $v + '.0\"') | Set-Content ..\pyproject.toml"
95+
if errorlevel 1 exit /b 1
96+
)
97+
8598
for /f "tokens=3 delims= " %%v in ('findstr /b "version = " ..\pyproject.toml') do set version=%%v
8699
set version=%version:"=%
87100
REM cwd is already OpenBLAS here, so the source is Makefile.rule, not

‎tools/build_steps_windows.sh‎

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,12 @@ git submodule update --init --recursive
4949

5050
# Get / clean code
5151
git fetch origin
52-
git checkout $(cat ../openblas_commit.txt)
52+
if [ "$NIGHTLY" == "true" ]; then
53+
# Build the latest HEAD of develop
54+
git checkout -B develop origin/develop
55+
else
56+
git checkout $(cat ../openblas_commit.txt)
57+
fi
5358
git clean -fxd
5459
git reset --hard
5560
rm -rf $openblas_root/$build_bits
@@ -100,7 +105,13 @@ for p in ../patches-common/*.patch ../patches-windows/*.patch; do
100105
done
101106

102107
# Patch VERSION
103-
version=$(grep "^version =" ../pyproject.toml | sed 's/version = "//;s/"//')
108+
if [ "$NIGHTLY" == "true" ]; then
109+
# v0.3.24-30-g138ed79f -> 0.3.24.30.0 in pyproject.toml
110+
version=$(echo $OPENBLAS_VERSION | sed -e "s/^v\(.*\)-g.*/\1/" | sed -e "s/-/./g").0
111+
sed -e "s/^version = .*/version = \"${version}\"/" -i.bak ../pyproject.toml
112+
else
113+
version=$(grep "^version =" ../pyproject.toml | sed 's/version = "//;s/"//')
114+
fi
104115
sed -e "s/^VERSION = .*/VERSION = ${version}/" -i.bak Makefile.rule
105116

106117
# Build OpenBLAS

0 commit comments

Comments
 (0)