Skip to content

Commit

Permalink
Merge pull request #19797 from tylerjereddy/treddy_1_12_0rc2_prep
Browse files Browse the repository at this point in the history
WIP, MAINT:  1.12.0rc2 prep
  • Loading branch information
tylerjereddy committed Jan 12, 2024
2 parents 60de9b9 + e8503e1 commit baa283b
Show file tree
Hide file tree
Showing 28 changed files with 222 additions and 194 deletions.
75 changes: 0 additions & 75 deletions .github/workflows/linux_meson.yml
Original file line number Diff line number Diff line change
Expand Up @@ -268,81 +268,6 @@ jobs:
python -m pytest --pyargs scipy -n2 --durations=10
popd
#################################################################################
prerelease_deps_coverage_64bit_blas:
# TODO: re-enable ILP64 build.
name: Prerelease deps, coverage, and 64-bit BLAS
needs: get_commit_message
if: >
needs.get_commit_message.outputs.message == 1
&& (github.repository == 'scipy/scipy' || github.repository == '')
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.9]

steps:
- uses: actions/checkout@v3
with:
submodules: recursive

- name: Setup Python
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}

- name: Install Ubuntu dependencies
run: |
sudo apt-get update
sudo apt-get install -y libgmp-dev libmpfr-dev libmpc-dev ccache gfortran
- name: Caching Python dependencies
uses: actions/cache@v3
id: cache
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-prerelease

- name: Install Python packages
run: |
python -m pip install cython pythran ninja meson-python pybind11 click rich_click pydevtool
python -m pip install --pre --upgrade --timeout=60 -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
python -m pip install --pre --upgrade pytest pytest-cov pytest-xdist mpmath gmpy2 threadpoolctl pooch matplotlib hypothesis
# TODO: once the scipy_ symbol prefix issue is fixed, install
# scipy-openblas32 from the pre-releases bucket again (see gh-19640)
python -m pip install "scipy-openblas32<=0.3.23.293.2"
- name: Prepare compiler cache
id: prep-ccache
shell: bash
run: |
mkdir -p "${CCACHE_DIR}"
echo "dir=$CCACHE_DIR" >> $GITHUB_OUTPUT
NOW=$(date -u +"%F-%T")
echo "timestamp=${NOW}" >> $GITHUB_OUTPUT
- name: Setup compiler cache
uses: actions/cache@v3
id: cache-ccache
with:
path: ${{ steps.prep-ccache.outputs.dir }}
# Restores ccache from either a previous build on this branch or on main
key: ${{ github.workflow }}-${{ matrix.python-version }}-ccache-linux-prerelease-${{ steps.prep-ccache.outputs.timestamp }}
restore-keys: |
${{ github.workflow }}-${{ matrix.python-version }}-ccache-linux-prerelease-
- name: Build and install SciPy
run: |
python dev.py build --gcov --with-scipy-openblas
- name: Ccache performance
shell: bash -l {0}
run: ccache -s

- name: Test SciPy
run: |
export OPENBLAS_NUM_THREADS=1
python dev.py test -j2 --mode full -- --cov --cov-report term-missing
#################################################################################
linux_32bit:
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2001-2002 Enthought, Inc. 2003-2023, SciPy Developers.
Copyright (c) 2001-2002 Enthought, Inc. 2003-2024, SciPy Developers.
All rights reserved.

Redistribution and use in source and binary forms, with or without
Expand Down
56 changes: 44 additions & 12 deletions doc/source/release/1.12.0-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,14 @@ Deprecated features
- All wavelet functions have been deprecated, as PyWavelets provides suitable
implementations; affected functions are: ``signal.{daub, qmf, cascade,
morlet, morlet2, ricker, cwt}``
- ``scipy.integrate.trapz``, ``scipy.integrate.cumtrapz``, and ``scipy.integrate.simps`` have
been deprecated in favour of `scipy.integrate.trapezoid`, `scipy.integrate.cumulative_trapezoid`,
and `scipy.integrate.simpson` respectively and will be removed in SciPy 1.14.
- The ``tol`` argument of ``scipy.sparse.linalg.{bcg,bicstab,cg,cgs,gcrotmk,gmres,lgmres,minres,qmr,tfqmr}``
is now deprecated in favour of ``rtol`` and will be removed in SciPy 1.14.
Furthermore, the default value of ``atol`` for these functions is due
to change to ``0.0`` in SciPy 1.14.



*********************
Expand All @@ -282,8 +290,11 @@ Expired Deprecations
There is an ongoing effort to follow through on long-standing deprecations.
The following previously deprecated features are affected:

- The ``centered`` keyword of `stats.qmc.LatinHypercube` has been removed.
- The ``centered`` keyword of `scipy.stats.qmc.LatinHypercube` has been removed.
Use ``scrambled=False`` instead of ``centered=True``.
- ``scipy.stats.binom_test`` has been removed in favour of `scipy.stats.binomtest`.
- In `scipy.stats.iqr`, the use of ``scale='raw'`` has been removed in favour
of ``scale=1``.


******************************
Expand All @@ -304,7 +315,7 @@ Authors

* Name (commits)
* endolith (1)
* h-vetinari (29)
* h-vetinari (32)
* Tom Adamczewski (3) +
* Anudeep Adiraju (1) +
* akeemlh (1)
Expand All @@ -321,16 +332,17 @@ Authors
* Sebastian Berg (1)
* Ben Boeckel (1) +
* David Boetius (1) +
* Jake Bowhay (102)
* Matt Borland (1)
* Jake Bowhay (103)
* Larry Bradley (1) +
* Dietrich Brunn (5)
* Evgeni Burovski (101)
* Evgeni Burovski (102)
* Matthias Bussonnier (18)
* CJ Carey (6)
* Colin Carroll (1) +
* Aadya Chinubhai (1) +
* Luca Citi (1)
* Lucas Colley (140) +
* Lucas Colley (141) +
* com3dian (1) +
* Anirudh Dagar (4)
* Danni (1) +
Expand All @@ -349,7 +361,7 @@ Authors
* Lukas Geiger (9) +
* Artem Glebov (22) +
* Caden Gobat (1)
* Ralf Gommers (125)
* Ralf Gommers (126)
* Alexander Goscinski (2) +
* Rohit Goswami (2) +
* Olivier Grisel (1)
Expand Down Expand Up @@ -386,7 +398,7 @@ Authors
* Thomas Loke (4) +
* Malte Londschien (1) +
* Christian Lorentzen (6)
* Adam Lugowski (9) +
* Adam Lugowski (10) +
* lutefiskhotdish (1)
* mainak33 (1) +
* Ben Mares (11) +
Expand All @@ -395,6 +407,7 @@ Authors
* Nikolay Mayorov (4)
* Nicholas McKibben (1)
* Melissa Weber Mendonça (7)
* Michał Górny (1)
* Kat Mistberg (2) +
* mkiffer (1) +
* mocquin (1) +
Expand All @@ -403,7 +416,7 @@ Authors
* Roberto Pastor Muela (3) +
* Bijay Nayak (1) +
* Andrew Nelson (105)
* Praveer Nidamaluri (2) +
* Praveer Nidamaluri (3) +
* Lysandros Nikolaou (2)
* Dimitri Papadopoulos Orfanos (7)
* Pablo Rodríguez Pérez (1) +
Expand All @@ -418,7 +431,7 @@ Authors
* Bharat Raghunathan (1)
* Chris Rapson (1) +
* Matteo Raso (4)
* Tyler Reddy (165)
* Tyler Reddy (201)
* Martin Reinecke (1)
* Tilo Reneau-Cardoso (1) +
* resting-dove (2) +
Expand All @@ -430,7 +443,7 @@ Authors
* Masahiro Sakai (2) +
* Omar Salman (14)
* Andrej Savikin (1) +
* Daniel Schmitz (52)
* Daniel Schmitz (54)
* Dan Schult (19)
* Scott Shambaugh (9)
* Sheila-nk (2) +
Expand Down Expand Up @@ -465,7 +478,7 @@ Authors
* Jinzhe Zeng (1) +
* JIMMY ZHAO (1) +

A total of 161 people contributed to this release.
A total of 163 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

Expand All @@ -482,6 +495,7 @@ Issues closed for 1.12.0
* `#5022 <https://github.com/scipy/scipy/issues/5022>`__: bicg returns last iterate, not the smallest-residue vector
* `#6198 <https://github.com/scipy/scipy/issues/6198>`__: callback for Krylov methods
* `#7241 <https://github.com/scipy/scipy/issues/7241>`__: ENH: Implement Chandrupatla's algorithm for root finding (simpler/faster...
* `#8792 <https://github.com/scipy/scipy/issues/8792>`__: Newton-CG throws error when Hessian is a \`scipy.sparse\` class
* `#9527 <https://github.com/scipy/scipy/issues/9527>`__: Anderson-Darling ksamples can not estimate p-values beyond given...
* `#11516 <https://github.com/scipy/scipy/issues/11516>`__: Recommend ccache for benchmarks in contributor documentation
* `#12017 <https://github.com/scipy/scipy/issues/12017>`__: Expose FACTOR parameter instead of using magic number in scipy.optimize.nnls
Expand All @@ -491,7 +505,6 @@ Issues closed for 1.12.0
* `#13437 <https://github.com/scipy/scipy/issues/13437>`__: DOC: Add example as to how to use solve_ivp to solve complex...
* `#14037 <https://github.com/scipy/scipy/issues/14037>`__: ENH: other quality metrics for random sampling
* `#14480 <https://github.com/scipy/scipy/issues/14480>`__: LSODA implementation of dense output yields incorrect result
* `#15533 <https://github.com/scipy/scipy/issues/15533>`__: BUG: test failure with MKL in presence of AVX512-capable processor
* `#15676 <https://github.com/scipy/scipy/issues/15676>`__: ENH: Implement \`multivariate_normal.fit\`
* `#15738 <https://github.com/scipy/scipy/issues/15738>`__: DEP: change default of atol in \`scipy.sparse.linalg.\*\`
* `#16729 <https://github.com/scipy/scipy/issues/16729>`__: _fitpack / dfitpack duplication
Expand Down Expand Up @@ -594,6 +607,7 @@ Issues closed for 1.12.0
* `#19448 <https://github.com/scipy/scipy/issues/19448>`__: DOC:fft: next_fast_len signature is empty in docs
* `#19490 <https://github.com/scipy/scipy/issues/19490>`__: MAINT: lint: fail inventory
* `#19544 <https://github.com/scipy/scipy/issues/19544>`__: DOC/MAINT: refguide-check errors
* `#19553 <https://github.com/scipy/scipy/issues/19553>`__: BUG: Test suite leaks file descriptors (\`OSError: [Errno 24]...
* `#19565 <https://github.com/scipy/scipy/issues/19565>`__: DOC/DX: \`meson-python\` missing from 'required build dependencies'
* `#19568 <https://github.com/scipy/scipy/issues/19568>`__: DOC/DX: \`cd scipy\` missing from 'Building from source'
* `#19575 <https://github.com/scipy/scipy/issues/19575>`__: BUG: scipy.ndimage.watershed_ift cost data type is too small...
Expand All @@ -604,6 +618,11 @@ Issues closed for 1.12.0
* `#19620 <https://github.com/scipy/scipy/issues/19620>`__: _lib: Test error in test_warning_calls_filters because of a Python...
* `#19636 <https://github.com/scipy/scipy/issues/19636>`__: DOC: issue in documentation for the callback argument in scipy.optimize.minimize
* `#19640 <https://github.com/scipy/scipy/issues/19640>`__: CI, MAINT: pre-release job failures with scipy-openblas32
* `#19726 <https://github.com/scipy/scipy/issues/19726>`__: BUG: 1.12.0rc1: build failure on windows due to macro collision...
* `#19747 <https://github.com/scipy/scipy/issues/19747>`__: BUG: Invalid \`IndexError\` from \`scipy.stats.nbinom.logcdf\`
* `#19795 <https://github.com/scipy/scipy/issues/19795>`__: MAINT: need stable Pythran release for SciPy 1.12.0 RC2
* `#19804 <https://github.com/scipy/scipy/issues/19804>`__: MAINT/TST: Warnings failing test suite with \`pytest 8\`
* `#19852 <https://github.com/scipy/scipy/issues/19852>`__: CI, MAINT: Windows 3.11 CI failure with file access issue

************************
Pull requests for 1.12.0
Expand Down Expand Up @@ -1052,9 +1071,22 @@ Pull requests for 1.12.0
* `#19658 <https://github.com/scipy/scipy/pull/19658>`__: MAINT: git blame ignores for lint clean-ups
* `#19660 <https://github.com/scipy/scipy/pull/19660>`__: STY: special: use indent width of 4 in clang-format
* `#19661 <https://github.com/scipy/scipy/pull/19661>`__: CI: fix pre-release job by correct version pin for scipy-openblas32
* `#19670 <https://github.com/scipy/scipy/pull/19670>`__: MAINT: version bounds for 1.12.0rc1
* `#19677 <https://github.com/scipy/scipy/pull/19677>`__: DOC: array types: mention partial support in \`special\`
* `#19686 <https://github.com/scipy/scipy/pull/19686>`__: TST: fix incorrect signal.sosfilt tests
* `#19690 <https://github.com/scipy/scipy/pull/19690>`__: BLD: avoid fast-math for oneAPI compilers, fix up handling of...
* `#19691 <https://github.com/scipy/scipy/pull/19691>`__: BUG: fix negative overflow in stats.boxcox_normmax
* `#19693 <https://github.com/scipy/scipy/pull/19693>`__: BUG: Prevent mutation of \`w\` parameter in \`spatial.distance.\*\`
* `#19702 <https://github.com/scipy/scipy/pull/19702>`__: DEP: Adopt \`\*tol\` deprecations also for \`gcrotmk/lgmres/minres/tfqmr\`
* `#19709 <https://github.com/scipy/scipy/pull/19709>`__: MAINT: Cumulative simpson follow-up comments
* `#19735 <https://github.com/scipy/scipy/pull/19735>`__: DOC: update release notes with all deprecations for 1.12 release
* `#19748 <https://github.com/scipy/scipy/pull/19748>`__: TST: skip RGI(..., method="pchip" for complex values)
* `#19751 <https://github.com/scipy/scipy/pull/19751>`__: BUG: Make FMM classes \`py::module_local\` (fix for 1.12RC)
* `#19761 <https://github.com/scipy/scipy/pull/19761>`__: MAINT: Avoid use of aligned_alloc in pocketfft on windows
* `#19779 <https://github.com/scipy/scipy/pull/19779>`__: BUG: Fix \`nbinom.logcdf\` for invalid input
* `#19785 <https://github.com/scipy/scipy/pull/19785>`__: BUG: support sparse Hessian in \`Newton-CG\`
* `#19800 <https://github.com/scipy/scipy/pull/19800>`__: TST: loosen tolerances for tests that fail otherwise on windows+MKL
* `#19806 <https://github.com/scipy/scipy/pull/19806>`__: TST: fix compatibility with pytest 8
* `#19830 <https://github.com/scipy/scipy/pull/19830>`__: REL: bump copyright to 2024
* `#19842 <https://github.com/scipy/scipy/pull/19842>`__: TST: move reference data for test_real_transforms to a fixture
* `#19859 <https://github.com/scipy/scipy/pull/19859>`__: BLD: improve scipy-openblas dependency check
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ requires = [
"meson-python>=0.15.0,<0.16.0", # working with 0.15.x series at branch time
"Cython>=0.29.35,!=3.0.3,<3.1.0", # when updating version, also update check in meson.build
"pybind11>=2.10.4,<2.12.0", # working with 2.11.x series at branch time
"pythran@git+https://github.com/serge-sans-paille/pythran", # TODO: pin back to stable release when ready
"pythran>=0.15.0,<0.16.0", # working with 0.15.x series at branch time

# When numpy 2.0.0rc1 comes out, we should update this to build against 2.0,
# and then runtime depend on the range 1.22.X to <2.3. No need to switch to
Expand Down
8 changes: 6 additions & 2 deletions scipy/fft/_pocketfft/pocketfft_hdronly.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#error This file is C++ and requires a C++ compiler.
#endif

#if !(__cplusplus >= 201103L || _MSVC_LANG+0L >= 201103L)
#if !(__cplusplus >= 201103L || (defined(_MSVC_LANG) && _MSVC_LANG >= 201103L))
#error This file requires at least C++11 support.
#endif

Expand Down Expand Up @@ -149,7 +149,11 @@ template<> struct VLEN<double> { static constexpr size_t val=2; };
#endif
#endif

#if __cplusplus >= 201703L
// MSVC does not provide the standard aligned allocation functions,
// yet _still_ sets the feature test macro (__cpp_aligned_new)...
// While there are replacement functions (_aligned_malloc & _aligned_free),
// those produce crashes when used here, see GH-19726
#if __cplusplus >= 201703L && !defined(_MSC_VER)
inline void *aligned_alloc(size_t align, size_t size)
{
void *ptr = ::aligned_alloc(align,size);
Expand Down

0 comments on commit baa283b

Please sign in to comment.