From 41fb0c4cc33de7456089c4c7b435063b6e12c21f Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Tue, 26 May 2026 14:46:25 -0400 Subject: [PATCH 01/10] update workflow.yml actions --- .github/workflows/workflow.yml | 42 +++++++++++++++++----------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index a1159460fc..34ae51e7ac 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -10,9 +10,9 @@ jobs: check: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install dependencies @@ -27,9 +27,9 @@ jobs: outputs: cache_hash: ${{ steps.compute-cache-hash.outputs.cache_hash }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install Dependencies @@ -37,7 +37,7 @@ jobs: python -m pip install --upgrade pip pip install -e ".[dev]" - name: Restore Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} restore-keys: | @@ -75,7 +75,7 @@ jobs: ls -lhR .github_cache/ASPIRE-data [ -f config.yaml ] - name: Save Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} path: .github_cache/ASPIRE-data @@ -100,9 +100,9 @@ jobs: pyenv: pip,docs steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} ${{ matrix.pyenv }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} - name: Install dependencies @@ -111,7 +111,7 @@ jobs: # Optional packages pip install pyfftw # `test_fft` runs for pyfftw when installed - name: Restore Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} restore-keys: | @@ -175,7 +175,7 @@ jobs: backend: win64 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Conda ${{ matrix.os }} Python ${{ matrix.python-version }} uses: conda-incubator/setup-miniconda@v2.3.0 with: @@ -193,7 +193,7 @@ jobs: pip freeze python -c "import numpy; numpy.show_config()" - name: Restore Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} restore-keys: | @@ -216,9 +216,9 @@ jobs: if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install Dependencies @@ -238,7 +238,7 @@ jobs: # Run on every code push, but only on review ready PRs if: ${{ github.event_name == 'push' || github.event.pull_request.draft == false }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Install dependencies run: | pip install -e ".[dev,gpu-13x]" @@ -282,9 +282,9 @@ jobs: needs: [check, data-cache] runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install Dependencies @@ -292,7 +292,7 @@ jobs: python -m pip install --upgrade pip pip install -e ".[dev]" - name: Restore Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} restore-keys: | @@ -311,7 +311,7 @@ jobs: make html working-directory: ./docs - name: Archive Sphinx docs - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: sphinx-docs path: docs/build @@ -333,8 +333,8 @@ jobs: # Run on every code push, but only on review ready PRs if: ${{ github.event_name == 'push' || github.event.pull_request.draft == false }} steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v5 + - uses: actions/setup-python@v6 with: python-version: '3.13' - name: Complete Install and Log Environment @@ -343,7 +343,7 @@ jobs: pip install -e ".[dev]" # install aspire pip freeze - name: Restore Cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: key: cached-data-${{ hashFiles('**/registry.py', '**/*workflow.yml') }} restore-keys: | From dd878f0a24bff58a1de69f8f64186007d65afad5 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Tue, 26 May 2026 14:48:10 -0400 Subject: [PATCH 02/10] update other workflows --- .github/workflows/long_workflow.yml | 2 +- .github/workflows/scheduled_workflow.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/long_workflow.yml b/.github/workflows/long_workflow.yml index 29bf29bf9c..2d1000ce28 100644 --- a/.github/workflows/long_workflow.yml +++ b/.github/workflows/long_workflow.yml @@ -11,7 +11,7 @@ jobs: if: ${{ github.event_name == 'pull_request' && github.event.pull_request.draft == false }} timeout-minutes: 360 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Install dependencies run: | python -m pip install --upgrade pip diff --git a/.github/workflows/scheduled_workflow.yml b/.github/workflows/scheduled_workflow.yml index 77a789597e..ae45542f4e 100644 --- a/.github/workflows/scheduled_workflow.yml +++ b/.github/workflows/scheduled_workflow.yml @@ -10,11 +10,11 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: ref: develop - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install Dependencies From 26138d653d0c21687f02843a20abdce7dd4428a2 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Tue, 26 May 2026 15:18:32 -0400 Subject: [PATCH 03/10] update codecov --- .github/workflows/workflow.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 34ae51e7ac..e66c898e9e 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -142,7 +142,7 @@ jobs: exit 1 fi - name: Upload Coverage to CodeCov - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v6 with: token: ${{ secrets.CODECOV_TOKEN }} @@ -271,7 +271,7 @@ jobs: run: | ASPIREDIR=${{ env.WORK_DIR }} PYTHONWARNINGS=error python -m pytest --durations=50 --cov=aspire --cov-report=xml - name: Upload Coverage to CodeCov - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v6 with: token: ${{ secrets.CODECOV_TOKEN }} - name: Cleanup From 69e6371c47b9cda699b68ba8e3c80e1da2f90977 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Wed, 27 May 2026 15:31:50 -0400 Subject: [PATCH 04/10] update setup-miniconda --- .github/workflows/workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index e66c898e9e..700d78428d 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -177,7 +177,7 @@ jobs: steps: - uses: actions/checkout@v5 - name: Set up Conda ${{ matrix.os }} Python ${{ matrix.python-version }} - uses: conda-incubator/setup-miniconda@v2.3.0 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: "latest" auto-update-conda: true From fd4cd03a1f9a3b230ca69b4e3bc384f64e48f88a Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Tue, 2 Jun 2026 11:25:53 -0400 Subject: [PATCH 05/10] verbose test for diagnosing MacOS failure --- .github/workflows/workflow.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 700d78428d..feb7bca818 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -209,7 +209,8 @@ jobs: export ASPIREDIR=. export OMP_NUM_THREADS=2 # -n runs test in parallel using pytest-xdist - pytest -n2 --durations=50 -s + pytest -n2 -vv --dist=loadscope --durations=50 -s + # pytest -n2 --durations=50 -s # Build and Deploy production (main) docs. docs_deploy: From eccca97fe4bfb5800750819becf76770e89b67a0 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Tue, 2 Jun 2026 14:23:04 -0400 Subject: [PATCH 06/10] try OMP_NUM_THREADS=1 --- .github/workflows/workflow.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index feb7bca818..5bbc235034 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -207,9 +207,9 @@ jobs: - name: Execute Pytest Conda ${{ matrix.os }} Python ${{ matrix.python-version }} run: | export ASPIREDIR=. - export OMP_NUM_THREADS=2 + export OMP_NUM_THREADS=1 # -n runs test in parallel using pytest-xdist - pytest -n2 -vv --dist=loadscope --durations=50 -s + pytest -n2 -vv --durations=50 -s # pytest -n2 --durations=50 -s # Build and Deploy production (main) docs. From 6d351057533161de3d86d2d9114104e273f8f9cd Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Wed, 3 Jun 2026 11:55:41 -0400 Subject: [PATCH 07/10] let conda install finufft --- environment-default.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/environment-default.yml b/environment-default.yml index 45702349b6..9286087a41 100644 --- a/environment-default.yml +++ b/environment-default.yml @@ -11,3 +11,4 @@ dependencies: - scipy=1.13.1 - scikit-learn - scikit-image + - finufft=2.5.0 # must be installed via conda if using (conda) optimized backends \ No newline at end of file From 6dd9ecff526acad6d18919d76560578020d1e00e Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Wed, 3 Jun 2026 12:12:08 -0400 Subject: [PATCH 08/10] revert OMP thread count --- .github/workflows/workflow.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 5bbc235034..700d78428d 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -207,10 +207,9 @@ jobs: - name: Execute Pytest Conda ${{ matrix.os }} Python ${{ matrix.python-version }} run: | export ASPIREDIR=. - export OMP_NUM_THREADS=1 + export OMP_NUM_THREADS=2 # -n runs test in parallel using pytest-xdist - pytest -n2 -vv --durations=50 -s - # pytest -n2 --durations=50 -s + pytest -n2 --durations=50 -s # Build and Deploy production (main) docs. docs_deploy: From 765a0a486e614e3ba1a3b4a220260f4151383d50 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Wed, 3 Jun 2026 14:05:56 -0400 Subject: [PATCH 09/10] auto-activate-base -> auto-activate --- .github/workflows/workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 700d78428d..3179280705 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -184,7 +184,7 @@ jobs: python-version: ${{ matrix.python-version }} activate-environment: aspire environment-file: environment-${{ matrix.backend }}.yml - auto-activate-base: false + auto-activate: false - name: Complete Install and Log Environment ${{ matrix.os }} Python ${{ matrix.python-version }} run: | conda info From bc2a9b277a0afe7cc8d862cfcdfdcaf9ff77ed04 Mon Sep 17 00:00:00 2001 From: Josh Carmichael Date: Wed, 3 Jun 2026 14:07:52 -0400 Subject: [PATCH 10/10] missing newline --- environment-default.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environment-default.yml b/environment-default.yml index 9286087a41..ce594d2204 100644 --- a/environment-default.yml +++ b/environment-default.yml @@ -11,4 +11,4 @@ dependencies: - scipy=1.13.1 - scikit-learn - scikit-image - - finufft=2.5.0 # must be installed via conda if using (conda) optimized backends \ No newline at end of file + - finufft=2.5.0 # must be installed via conda if using (conda) optimized backends