From 8988ef61db92c823348520710519a7bc1d2089dc Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 09:18:14 +0300 Subject: [PATCH 1/8] update to v0.3.27-333-gfb7c53c5 for NAN fix --- .github/workflows/posix.yml | 2 +- .github/workflows/windows.yml | 2 +- .travis.yml | 7 ++----- pyproject.toml | 3 ++- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/posix.yml b/.github/workflows/posix.yml index bfe0abca..fbf57bb2 100644 --- a/.github/workflows/posix.yml +++ b/.github/workflows/posix.yml @@ -47,7 +47,7 @@ jobs: INTERFACE64: '1' env: REPO_DIR: OpenBLAS - OPENBLAS_COMMIT: "35d84ad012" + OPENBLAS_COMMIT: "fb7c53c5e" NIGHTLY: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }} MACOSX_DEPLOYMENT_TARGET: 10.9 MB_PYTHON_VERSION: ${{ matrix.python-version }} diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 6caa41fb..46ea1d30 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -8,7 +8,7 @@ on: workflow_dispatch: null env: - OPENBLAS_COMMIT: "35d84ad012" + OPENBLAS_COMMIT: "fb7c53c5e" OPENBLAS_ROOT: "c:\\opt" # Preserve working directory for calls into bash # Without this, invoking bash will cd to the home directory diff --git a/.travis.yml b/.travis.yml index 754cd796..e7af7491 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ env: global: # The archive that gets built has name from ``git describe`` on this # commit. - - OPENBLAS_COMMIT: "35d84ad012" + - OPENBLAS_COMMIT: "fb7c53c5e" - REPO_DIR=OpenBLAS language: python @@ -92,10 +92,7 @@ script: fi - libc=${MB_ML_LIBC:-manylinux} - docker_image=quay.io/pypa/${libc}${MB_ML_VER}_${PLAT} - - docker run --rm -e INTERFACE64="${INTERFACE64}" \ - -e MB_ML_LIBC="${MB_ML_LIBC}" \ - -v $(pwd):/openblas $docker_image \ - /bin/bash -xe /openblas/tools/build_wheel.sh + - docker run --rm -e INTERFACE64="${INTERFACE64}" -e MB_ML_LIBC="${MB_ML_LIBC}" -v $(pwd):/openblas "${docker_image}" /bin/bash -xe /openblas/tools/build_wheel.sh after_success: - set +ex diff --git a/pyproject.toml b/pyproject.toml index 339695bb..e431be14 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,8 @@ build-backend = "setuptools.build_meta" [project] name = "scipy-openblas64" -version = "0.3.27.63.1" +# v0.3.27-333-gfb7c53c5 +version = "0.3.27.333.0" requires-python = ">=3.7" description = "Provides OpenBLAS for python packaging" readme = "README.md" From f7acef9ae43abb5ba214c19bfb52cec1f5eb58ac Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 09:35:07 +0300 Subject: [PATCH 2/8] i686 failed, make build more verbose --- tools/build_steps.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/build_steps.sh b/tools/build_steps.sh index 6a07e49d..5427a7c2 100644 --- a/tools/build_steps.sh +++ b/tools/build_steps.sh @@ -172,7 +172,7 @@ function do_build_lib { CFLAGS="$CFLAGS -fvisibility=protected -Wno-uninitialized" \ make BUFFERSIZE=20 DYNAMIC_ARCH=1 \ USE_OPENMP=0 NUM_THREADS=64 \ - BINARY=$bitness $interface_flags $target_flags > /dev/null + BINARY=$bitness $interface_flags $target_flags make PREFIX=$BUILD_PREFIX $interface_flags install popd stop_spinner From e06cd217631765b7f97568cb5a548320ecfb9864 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 09:42:58 +0300 Subject: [PATCH 3/8] update travis image to 'jammy' --- .travis.yml | 2 +- tools/build_steps.sh | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index e7af7491..27468395 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,7 +7,7 @@ env: language: python sudo: required -dist: bionic +dist: jammy services: docker matrix: diff --git a/tools/build_steps.sh b/tools/build_steps.sh index 5427a7c2..b963b286 100644 --- a/tools/build_steps.sh +++ b/tools/build_steps.sh @@ -78,6 +78,7 @@ function build_lib { local libc=${MB_ML_LIBC:-manylinux} local docker_image=quay.io/pypa/${libc}${manylinux}_${plat} docker pull $docker_image + echo done pulling image, starting docker run # Docker sources this script, and runs `do_build_lib` docker run --rm \ -e BUILD_PREFIX="$BUILD_PREFIX" \ @@ -89,6 +90,7 @@ function build_lib { -e MB_ML_LIBC=${libc} \ -v $PWD:/io \ $docker_image /io/tools/docker_build_wrap.sh + echo done docker run of docker_build_wrap.sh } function patch_source { From 65bad26965a6f8e01874b6fc4f80bc58583d653e Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 10:04:05 +0300 Subject: [PATCH 4/8] travis cleanup --- .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 27468395..f303804c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,6 @@ env: - OPENBLAS_COMMIT: "fb7c53c5e" - REPO_DIR=OpenBLAS -language: python sudo: required dist: jammy services: docker From 5387003e53a088d0e88a76ff38c5dc10b5fce611 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 16:10:18 +0300 Subject: [PATCH 5/8] update to latest HEAD, split build into shared and tests --- .github/workflows/posix.yml | 8 +++++--- .github/workflows/windows.yml | 2 +- .travis.yml | 2 +- tools/build_steps.sh | 5 ++++- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.github/workflows/posix.yml b/.github/workflows/posix.yml index fbf57bb2..14f4d7ab 100644 --- a/.github/workflows/posix.yml +++ b/.github/workflows/posix.yml @@ -9,6 +9,11 @@ on: schedule: - cron: '0 0 * * 0' +env: + REPO_DIR: OpenBLAS + OPENBLAS_COMMIT: "0929865" + MACOSX_DEPLOYMENT_TARGET: 10.9 + jobs: build: runs-on: ${{ matrix.os }} @@ -46,10 +51,7 @@ jobs: - PLAT: i686 INTERFACE64: '1' env: - REPO_DIR: OpenBLAS - OPENBLAS_COMMIT: "fb7c53c5e" NIGHTLY: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }} - MACOSX_DEPLOYMENT_TARGET: 10.9 MB_PYTHON_VERSION: ${{ matrix.python-version }} TRAVIS_PYTHON_VERSION: ${{ matrix.python-version }} MB_ML_LIBC: ${{ matrix.MB_ML_LIBC }} diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 46ea1d30..c86930cf 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -8,7 +8,7 @@ on: workflow_dispatch: null env: - OPENBLAS_COMMIT: "fb7c53c5e" + OPENBLAS_COMMIT: "0929865" OPENBLAS_ROOT: "c:\\opt" # Preserve working directory for calls into bash # Without this, invoking bash will cd to the home directory diff --git a/.travis.yml b/.travis.yml index f303804c..59b27a54 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ env: global: # The archive that gets built has name from ``git describe`` on this # commit. - - OPENBLAS_COMMIT: "fb7c53c5e" + - OPENBLAS_COMMIT: "0929865" - REPO_DIR=OpenBLAS sudo: required diff --git a/tools/build_steps.sh b/tools/build_steps.sh index b963b286..f931f4b2 100644 --- a/tools/build_steps.sh +++ b/tools/build_steps.sh @@ -174,7 +174,10 @@ function do_build_lib { CFLAGS="$CFLAGS -fvisibility=protected -Wno-uninitialized" \ make BUFFERSIZE=20 DYNAMIC_ARCH=1 \ USE_OPENMP=0 NUM_THREADS=64 \ - BINARY=$bitness $interface_flags $target_flags + BINARY=$bitness $interface_flags $target_flags shared > /dev/null + make BUFFERSIZE=20 DYNAMIC_ARCH=1 \ + USE_OPENMP=0 NUM_THREADS=64 \ + BINARY=$bitness $interface_flags $target_flags tests make PREFIX=$BUILD_PREFIX $interface_flags install popd stop_spinner From db7a4612068d7702ae1738ffaea5191b8f3bbf84 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 16:13:43 +0300 Subject: [PATCH 6/8] fix version --- OpenBLAS | 2 +- pyproject.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/OpenBLAS b/OpenBLAS index 5fbe2595..09298658 160000 --- a/OpenBLAS +++ b/OpenBLAS @@ -1 +1 @@ -Subproject commit 5fbe25954b0ddf88c6fc4f4644cd17b282e5c1b0 +Subproject commit 092986582f8fb27dde00918d1f618776fe58c11a diff --git a/pyproject.toml b/pyproject.toml index e431be14..b85163a5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,8 +8,8 @@ build-backend = "setuptools.build_meta" [project] name = "scipy-openblas64" -# v0.3.27-333-gfb7c53c5 -version = "0.3.27.333.0" +# v0.3.27-341-g09298658 +version = "0.3.27.341.0" requires-python = ">=3.7" description = "Provides OpenBLAS for python packaging" readme = "README.md" From 11cc850159c37fc187ad3c726c09ed9c76c5b724 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 16:39:38 +0300 Subject: [PATCH 7/8] allow 20 minutes for travis build --- .travis.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 59b27a54..8b739d32 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,6 +16,7 @@ matrix: env: - PLAT=aarch64 - MB_ML_VER=_1_1 + - INTERFACE64=0 - MB_ML_LIBC=musllinux - DOCKER_TEST_IMAGE=multibuild/xenial_{PLAT} - os: linux @@ -31,6 +32,7 @@ matrix: env: - PLAT=aarch64 - MB_ML_VER=2014 + - INTERFACE64=0 - DOCKER_TEST_IMAGE=multibuild/xenial_{PLAT} - os: linux arch: arm64 @@ -44,6 +46,7 @@ matrix: env: - PLAT=s390x - MB_ML_VER=2014 + - INTERFACE64=0 - DOCKER_TEST_IMAGE=multibuild/xenial_{PLAT} - os: linux arch: s390x @@ -57,6 +60,7 @@ matrix: env: - PLAT=ppc64le - MB_ML_VER=2014 + - INTERFACE64=0 - DOCKER_TEST_IMAGE=multibuild/xenial_{PLAT} - os: linux arch: ppc64le @@ -83,11 +87,11 @@ script: # Build library and collect into libs subdirectory - | if [ ${TRAVIS_EVENT_TYPE} == "cron" ]; then - build_lib "$PLAT" "$INTERFACE64" 1 + travis wait build_lib "$PLAT" "$INTERFACE64" 1 version=$(cd OpenBLAS && git describe --tags --abbrev=8 | sed -e "s/^v\(.*\)-g.*/\1/" | sed -e "s/-/./g") sed -e "s/^version = .*/version = \"${version}\"/" -i.bak pyproject.toml else - build_lib "$PLAT" "$INTERFACE64" 0 + travis wait build_lib "$PLAT" "$INTERFACE64" 0 fi - libc=${MB_ML_LIBC:-manylinux} - docker_image=quay.io/pypa/${libc}${MB_ML_VER}_${PLAT} From 9cb69b7cb157ce9e25306d0dfb698f2a1bb3cabb Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 26 Jul 2024 17:50:14 +0300 Subject: [PATCH 8/8] add more debug to build for travis --- tools/build_steps.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/build_steps.sh b/tools/build_steps.sh index f931f4b2..859bfacd 100644 --- a/tools/build_steps.sh +++ b/tools/build_steps.sh @@ -63,6 +63,7 @@ function build_lib { # BUILD_PREFIX - install suffix e.g. "/usr/local" # GFORTRAN_DMG # MB_ML_VER + echo running build_lib set -x local plat=${1:-$PLAT} local interface64=${2:-$INTERFACE64} @@ -71,12 +72,14 @@ function build_lib { # Make directory to store built archive if [ -n "$IS_OSX" ]; then # Do build, add gfortran hash to end of name + echo building on macox since IS_OSX is defined wrap_wheel_builder do_build_lib "$plat" "gf_${GFORTRAN_SHA:0:7}" "$interface64" "$nightly" return fi # Manylinux wrapper local libc=${MB_ML_LIBC:-manylinux} local docker_image=quay.io/pypa/${libc}${manylinux}_${plat} + echo pulling image ${docker_image} docker pull $docker_image echo done pulling image, starting docker run # Docker sources this script, and runs `do_build_lib`