Skip to content

Commit 89e9229

Browse files
authored
Merge branch 'main' into newHighs
2 parents 8c4832a + 6e6ccc7 commit 89e9229

File tree

206 files changed

+7545
-4491
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

206 files changed

+7545
-4491
lines changed

.github/workflows/array_api.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,10 @@ env:
2727
-t scipy.integrate.tests.test_tanhsinh
2828
-t scipy.integrate.tests.test_cubature
2929
-t scipy.optimize.tests.test_chandrupatla
30+
-t scipy.optimize.tests.test_optimize
3031
-t scipy.stats
3132
-t scipy.ndimage
33+
-t scipy.integrate.tests.test_quadrature
3234
3335
concurrency:
3436
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -72,7 +74,7 @@ jobs:
7274
7375
- name: Install Python packages
7476
run: |
75-
python -m pip install numpy cython pytest pytest-xdist pytest-timeout pybind11 mpmath gmpy2 pythran ninja meson click rich-click doit pydevtool pooch hypothesis array-api-strict
77+
python -m pip install numpy cython pytest pytest-xdist pytest-timeout pybind11 mpmath gmpy2 pythran ninja meson click rich-click doit pydevtool pooch hypothesis array-api-strict==2.1.0
7678
7779
- name: Install PyTorch CPU
7880
run: |

.github/workflows/free_threaded_wheels.yml

Lines changed: 0 additions & 218 deletions
This file was deleted.

.github/workflows/linux.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -460,10 +460,10 @@ jobs:
460460
submodules: recursive
461461
fetch-tags: true
462462
# TODO: replace with setup-python when there is support
463-
- uses: deadsnakes/action@e640ac8743173a67cca4d7d77cd837e514bf98e8 # v3.2.0
463+
- uses: Quansight-Labs/setup-python@b9ab292c751a42bcd2bb465b7fa202ea2c3f5796 # v5.3.1
464464
with:
465-
python-version: '3.13-dev'
466-
nogil: true
465+
python-version: '3.13t'
466+
467467
- name: Install Ubuntu dependencies
468468
run: |
469469
sudo apt-get update

.github/workflows/wheels.yml

Lines changed: 33 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
COMMIT_MSG=$(git log --no-merges -1)
5454
RUN="0"
5555
if [[ "$COMMIT_MSG" == *"[wheel build]"* ]]; then
56-
RUN="1"
56+
RUN="1"
5757
fi
5858
echo "message=$RUN" >> $GITHUB_OUTPUT
5959
echo github.ref ${{ github.ref }}
@@ -86,7 +86,7 @@ jobs:
8686
- [macos-14, macosx, arm64, openblas, "12.3"]
8787
- [macos-14, macosx, arm64, accelerate, "14.0"]
8888
- [windows-2019, win, AMD64, "", ""]
89-
python: [["cp310", "3.10"], ["cp311", "3.11"], ["cp312", "3.12"], ["cp313", "3.13"]]
89+
python: [["cp310", "3.10"], ["cp311", "3.11"], ["cp312", "3.12"], ["cp313", "3.13"], ["cp313t", "3.13"]]
9090
# python[0] is used to specify the python versions made by cibuildwheel
9191

9292
env:
@@ -150,7 +150,7 @@ jobs:
150150
echo "CIBW_ENVIRONMENT=$CIBW" >> "$GITHUB_ENV"
151151
152152
echo "REPAIR_PATH=$LIB_PATH" >> "$GITHUB_ENV"
153-
153+
154154
PREFIX=DYLD_LIBRARY_PATH="\$(dirname \$(gfortran --print-file-name libgfortran.dylib))"
155155
# remove libgfortran from location used for linking (if any), to
156156
# check wheel has bundled things correctly and all tests pass without
@@ -162,13 +162,13 @@ jobs:
162162
{delocate_archs} -w {dest_dir} {wheel} && echo "-----------" &&\
163163
delocate-listdeps -d {dest_dir}/*.whl && echo "-----------" &&\
164164
$POSTFIX"
165-
165+
166166
# Rename x86 Accelerate wheel to test on macOS 13 runner
167167
if [[ ${{ matrix.buildplat[0] }} == 'macos-13' && ${{ matrix.buildplat[4] }} == '14.0' ]]; then
168168
CIBW+=" && mv {dest_dir}/\$(basename {wheel}) \
169169
{dest_dir}/\$(echo \$(basename {wheel}) | sed 's/14_0/13_0/')"
170170
fi
171-
171+
172172
# macos-arm64-openblas wheels that target macos-12 need a
173173
# MACOS_DEPLOYMENT_TARGET of 12.3 otherwise delocate complains.
174174
# Unclear of cause, possibly build tool related.
@@ -178,39 +178,44 @@ jobs:
178178
if [[ ${{ matrix.buildplat[0] }} == 'macos-14' && ${{ matrix.buildplat[4] }} == '12.3' ]]; then
179179
CIBW+=" && echo \$(ls {dest_dir}) && \
180180
mv {dest_dir}/*.whl \$(find {dest_dir} -type f -name '*.whl' | sed 's/12_3/12_0/')"
181-
fi
181+
fi
182182
echo "CIBW_REPAIR_WHEEL_COMMAND_MACOS=$CIBW" >> "$GITHUB_ENV"
183183
184-
- name: Inject environment variable for python dev version
185-
if: matrix.python[1] == '3.13'
184+
# - name: Inject environment variable for python dev version
185+
# if: ${{ matrix.python[1] == '3.14-dev'
186+
# shell: bash
187+
# run: |
188+
# # For dev versions of python need to use wheels from scientific-python-nightly-wheels
189+
# # When the python version is released please comment out this section, but do not remove
190+
# # (there will soon be another dev version to target).
191+
# DEPS0="pip install --pre -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy"
192+
# DEPS1="pip install ninja meson-python pybind11 pythran cython"
193+
194+
# CIBW="$DEPS0;$DEPS1;bash {project}/tools/wheels/cibw_before_build_linux.sh {project}"
195+
# echo "CIBW_BEFORE_BUILD_LINUX=$CIBW" >> "$GITHUB_ENV"
196+
197+
# CIBW="$DEPS0 && $DEPS1 && bash {project}/tools/wheels/cibw_before_build_win.sh {project}"
198+
# echo "CIBW_BEFORE_BUILD_WINDOWS=$CIBW" >> "$GITHUB_ENV"
199+
200+
# CIBW="$DEPS0;$DEPS1;bash {project}/tools/wheels/cibw_before_build_macos.sh {project}"
201+
# echo "CIBW_BEFORE_BUILD_MACOS=$CIBW" >> "$GITHUB_ENV"
202+
203+
# echo "CIBW_BEFORE_TEST=$DEPS0" >> "$GITHUB_ENV"
204+
205+
- name: Disable build isolation for python free-threaded version
206+
if: endsWith(matrix.python[0], 't')
186207
shell: bash
187208
run: |
188-
# For dev versions of python need to use wheels from scientific-python-nightly-wheels
189-
# When the python version is released please comment out this section, but do not remove
190-
# (there will soon be another dev version to target).
191-
DEPS0="pip install --pre -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy"
192-
DEPS1="pip install ninja meson-python pybind11 pythran cython"
193-
194-
CIBW="$DEPS0;$DEPS1;bash {project}/tools/wheels/cibw_before_build_linux.sh {project}"
195-
echo "CIBW_BEFORE_BUILD_LINUX=$CIBW" >> "$GITHUB_ENV"
196-
197-
CIBW="$DEPS0 && $DEPS1 && bash {project}/tools/wheels/cibw_before_build_win.sh {project}"
198-
echo "CIBW_BEFORE_BUILD_WINDOWS=$CIBW" >> "$GITHUB_ENV"
199-
200-
CIBW="$DEPS0;$DEPS1;bash {project}/tools/wheels/cibw_before_build_macos.sh {project}"
201-
echo "CIBW_BEFORE_BUILD_MACOS=$CIBW" >> "$GITHUB_ENV"
202-
203-
echo "CIBW_BEFORE_TEST=$DEPS0" >> "$GITHUB_ENV"
204-
205209
CIBW="pip; args: --no-build-isolation"
206-
echo "CIBW_BUILD_FRONTEND=$CIBW" >> "$GITHUB_ENV"
210+
echo "CIBW_BUILD_FRONTEND=$CIBW" >> "$GITHUB_ENV"
207211
208212
- name: Build wheels
209-
uses: pypa/cibuildwheel@d4a2945fcc8d13f20a1b99d461b8e844d5fc6e23 # v2.21.1
213+
uses: pypa/cibuildwheel@7940a4c0e76eb2030e473a5f864f291f63ee879b # v2.21.3
210214
env:
211215
CIBW_BUILD: ${{ matrix.python[0] }}-${{ matrix.buildplat[1] }}*
212216
CIBW_ARCHS: ${{ matrix.buildplat[2] }}
213217
CIBW_PRERELEASE_PYTHONS: True
218+
CIBW_FREE_THREADED_SUPPORT: True
214219

215220
- name: Rename macOS wheels
216221
if: startsWith( matrix.buildplat[0], 'macos-' )
@@ -255,7 +260,7 @@ jobs:
255260
# an upload to:
256261
#
257262
# https://anaconda.org/scientific-python-nightly-wheels/scipy
258-
#
263+
#
259264
# Pushes to a maintenance branch that contain '[wheel build]' will
260265
# cause wheels to be built and uploaded to:
261266
#

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ doc/source/.jupyterlite.doit.db
107107
.cache/
108108
.pytest_cache/
109109

110-
# github cache #
110+
# GitHub cache #
111111
################
112112
gh_cache.json
113113

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
[submodule "scipy/_lib/cobyqa"]
2323
path = scipy/_lib/cobyqa
2424
url = https://github.com/cobyqa/cobyqa.git
25+
[submodule "scipy/_lib/array_api_extra"]
26+
path = scipy/_lib/array_api_extra
27+
url = https://github.com/lucascolley/array-api-extra.git
2528
# All submodules used as a Meson `subproject` are required to be under the
2629
# subprojects/ directory - see:
2730
# https://mesonbuild.com/Subprojects.html#why-must-all-subprojects-be-inside-a-single-directory

0 commit comments

Comments
 (0)