diff --git a/.github/workflows/posix.yml b/.github/workflows/posix.yml index 871f87d5..ac3f30af 100644 --- a/.github/workflows/posix.yml +++ b/.github/workflows/posix.yml @@ -70,19 +70,19 @@ jobs: submodules: recursive fetch-depth: 0 - - uses: maxim-lobanov/setup-xcode@v1.6.0 + - uses: maxim-lobanov/setup-xcode@v1.7.0 if: ${{ matrix.os == 'macos-latest' }} with: xcode-version: '16.0' - - uses: maxim-lobanov/setup-xcode@v1.6.0 + - uses: maxim-lobanov/setup-xcode@v1.7.0 if: ${{ matrix.os == 'macos-14' }} with: xcode-version: '15.4' - name: Set up QEMU if: matrix.PLAT == 'ppc64le' || matrix.PLAT == 's390x' || matrix.PLAT == 'riscv64' - uses: docker/setup-qemu-action@v3.7.0 + uses: docker/setup-qemu-action@v4.0.0 with: platforms: all @@ -123,22 +123,9 @@ jobs: name: wheels-${{ matrix.os }}-${{ matrix.PLAT }}-${{ matrix.INTERFACE64 }}-${{ matrix.MB_ML_LIBC }}-${{ matrix.MB_ML_VER }} path: dist/scipy_openblas*.whl - - - uses: conda-incubator/setup-miniconda@v3.3.0 + - name: Upload to ananconda.org + if: ${{ inputs.publish == false && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') }} + uses: scientific-python/upload-nightly-action@0.6.4 with: - channels: conda-forge - channel-priority: true - activate-environment: upload - miniforge-version: latest - conda-remove-defaults: "true" - - - name: Upload - # see https://github.com/marketplace/actions/setup-miniconda for why - # `-el {0}` is required. - shell: bash -el {0} - env: - ANACONDA_SCIENTIFIC_PYTHON_UPLOAD: ${{ secrets.ANACONDA_SCIENTIFIC_PYTHON_UPLOAD }} - run: | - conda install -y anaconda-client - source tools/upload_to_anaconda_staging.sh - upload_wheels + artifacts_path: dist + anaconda_nightly_upload_token: ${{secrets.ANACONDA_SCIENTIFIC_PYTHON_UPLOAD}} diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index b8034e2c..cf86222d 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -170,7 +170,7 @@ jobs: python -m pip install pkgconf python -m pkgconf scipy-openblas --cflags - - uses: conda-incubator/setup-miniconda@v3.1.1 + - uses: conda-incubator/setup-miniconda@v4.0.1 with: channels: conda-forge channel-priority: true diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ac2464b..8eee17f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +## OpenBLAS v0.3.33 + +### 0.3.33.0.0 (2026-05-03) +- Update to OpenBLAS 0.3.33 + ## OpenBLAS v0.3.31.188 (v0.3.31-188-g4956446c) ### 0.3.31.188.1 (2026-03-23) diff --git a/build-openblas.sh b/build-openblas.sh index 427f6d3f..20145b33 100755 --- a/build-openblas.sh +++ b/build-openblas.sh @@ -7,5 +7,6 @@ before_build echo "------ CLEAN CODE --------" clean_code $OPENBLAS_COMMIT +sed -e "s/^VERSION = .*/VERSION = ${OPENBLAS_VERSION}/" -i.bak OpenBLAS/Makefile.rule echo "------ BUILD LIB --------" build_lib "$PLAT" "$INTERFACE64" diff --git a/ci-before-build.sh b/ci-before-build.sh index d1382e7f..8d063057 100755 --- a/ci-before-build.sh +++ b/ci-before-build.sh @@ -15,13 +15,18 @@ else version=$(grep "^version =" pyproject.toml | sed 's/version = "//;s/"//') fi -# Sanity check, strip off the last (build) number from version, convert - to . in OPENBLAS_COMMIT -if [[ "${OPENBLAS_COMMIT//-/.}" != *"${version%.*}"* ]]; then +obcommit=$OPENBLAS_COMMIT +# add .0 if OPENBLAS_COMMIT is an actual tag +[[ "$obcommit" == *-* ]] || obcommit="$obcommit.0" + +# convert - to . in OPENBLAS_COMMIT +# strip off the last (build) number from version +if [[ "${obcommit//-/.}" != *"${version%.*}"* ]]; then echo "OPENBLAS_COMMIT $OPENBLAS_COMMIT does not match the pyproject.toml version $version" exit -1 fi -sed -e "s/^VERSION = .*/VERSION = ${version}/" -i.bak OpenBLAS/Makefile.rule +export OPENBLAS_VERSION=$version echo "creating wheel from $OPENBLAS_COMMIT (NIGHTLY is $NIGHTLY)" case "$PLAT" in diff --git a/openblas_commit.txt b/openblas_commit.txt index e8c91502..42bae871 100644 --- a/openblas_commit.txt +++ b/openblas_commit.txt @@ -1 +1 @@ -v0.3.31-188-g4956446c +v0.3.33 diff --git a/pyproject.toml b/pyproject.toml index 44c7ac9a..d93ec5eb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,8 +8,8 @@ build-backend = "setuptools.build_meta" [project] name = "scipy-openblas64" -# v0.3.31-188-g4956446c -version = "0.3.31.188.1" +# v0.3.33 +version = "0.3.33.0.0" requires-python = ">=3.7" description = "Provides OpenBLAS for python packaging" readme = "README.md" diff --git a/tools/build_prepare_wheel.sh b/tools/build_prepare_wheel.sh index a6ef2604..c25fedeb 100644 --- a/tools/build_prepare_wheel.sh +++ b/tools/build_prepare_wheel.sh @@ -18,6 +18,9 @@ tar -C local/scipy_openblas64 --strip-components=2 -xf libs/openblas.tar.gz find local/scipy_openblas64/lib -maxdepth 1 -type l -delete rm local/scipy_openblas64/lib/*.a # Check that the pyproject.toml and the pkgconfig versions agree. +echo "============ scipy-openblas.pc =======================" +cat ./local/scipy_openblas64/lib/pkgconfig/scipy-openblas*.pc +echo "============ scipy-openblas.pc =======================" py_version=$(grep "^version" pyproject.toml | sed -e "s/version = \"//") pkg_version=$(grep "version=" ./local/scipy_openblas64/lib/pkgconfig/scipy-openblas*.pc | sed -e "s/version=//" | sed -e "s/dev//") if [[ -z "$pkg_version" ]]; then