Skip to content

ENH: sparse: Add indexing for 1D arrays #12793

ENH: sparse: Add indexing for 1D arrays

ENH: sparse: Add indexing for 1D arrays #12793

Workflow file for this run

name: Windows tests
on:
push:
branches:
- maintenance/**
pull_request:
branches:
- main
- maintenance/**
permissions:
contents: read # to fetch code (actions/checkout)
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
get_commit_message:
name: Get commit message
uses: ./.github/workflows/commit_message.yml
test:
name: fast, py3.12/npAny, dev.py
needs: get_commit_message
# Ensure (a) this doesn't run on forks by default, and
# (b) it does run with Act locally (`github` doesn't exist there)
if: >
needs.get_commit_message.outputs.message == 1
&& (github.repository == 'scipy/scipy' || github.repository == '')
runs-on: windows-2019
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
architecture: 'x64'
cache: 'pip'
cache-dependency-path: 'environment.yml'
- name: Install rtools (mingw-w64)
run: |
choco install rtools -y --no-progress --force --version=4.0.0.20220206
echo "c:\rtools40\ucrt64\bin;" >> $env:GITHUB_PATH
- name: pip-packages
run: |
pip install numpy cython pybind11 pythran meson ninja pytest pytest-xdist pytest-timeout pooch rich_click click doit pydevtool hypothesis "scipy-openblas32<=0.3.23.293.2"
- name: Build
run: |
python dev.py build --with-scipy-openblas
- name: Test
run: |
python dev.py test -j2
#############################################################################
full_dev_py_min_numpy:
name: full, py3.10/npMin, dev.py
needs: get_commit_message
if: >
needs.get_commit_message.outputs.message == 1
&& (github.repository == 'scipy/scipy' || github.repository == '')
runs-on: windows-2019
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: 'pip'
cache-dependency-path: 'environment.yml'
- name: Install rtools (mingw-w64)
run: |
choco install rtools -y --no-progress --force --version=4.0.0.20220206
echo "c:\rtools40\ucrt64\bin;" >> $env:GITHUB_PATH
- name: pip-packages
run: |
# 1.23.5 is currently the oldest numpy usable on cp3.10 according
# to pyproject.toml
python -m pip install numpy==1.23.5 cython pybind11 pythran meson-python meson ninja pytest pytest-xdist pytest-timeout pooch rich_click click doit pydevtool hypothesis "scipy-openblas32<=0.3.23.293.2"
- name: Build
run: |
python dev.py build --with-scipy-openblas
- name: Test
run: |
python dev.py test -j2 --mode full
#############################################################################
full_build_sdist_wheel:
# TODO: enable ILP64 once possible
name: no pythran & sdist+wheel, full, py3.11/npPre, pip+pytest
needs: get_commit_message
if: >
needs.get_commit_message.outputs.message == 1
&& (github.repository == 'scipy/scipy' || github.repository == '')
runs-on: windows-2019
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'pip'
cache-dependency-path: 'environment.yml'
- name: Win_amd64 - install rtools
run: |
# mingw-w64
choco install rtools -y --no-progress --force --version=4.0.0.20220206
echo "c:\rtools40\ucrt64\bin;" >> $env:GITHUB_PATH
- name: Install OpenBLAS
shell: bash
run: |
# Keep this using the OpenBLAS tarballs for now, as long as we use those for wheel builds
set -xe
bash tools/wheels/cibw_before_build_win.sh .
echo "PKG_CONFIG_PATH=c:\opt\64\lib\pkgconfig;" >> $GITHUB_ENV
- name: pip-packages
run: |
python -m pip install build delvewheel cython pybind11 meson-python meson ninja pytest pytest-xdist pytest-timeout pooch hypothesis
python -m pip install --pre --upgrade --timeout=60 -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
- name: Build
run: |
python -m build --no-isolation -x -Csetup-args="-Duse-pythran=false"
# Vendor openblas.dll and the DLL's it depends on into the wheel
# Ignore `libsf_error_state.dll` for special function error handling;
# it will be loaded using ctypes in scipy/special/__init__.py.
$env:wheel_name=Get-ChildItem -Path dist/* -Include *.whl
delvewheel repair --add-path c:\opt\openblas\openblas_dll --no-dll libsf_error_state.dll -w dist $env:wheel_name
python -m pip install $env:wheel_name
- name: Test
run: |
cd $RUNNER_TEMP
# run full test suite
pytest --pyargs scipy