Date: Fri, 03 Apr 2026 22:19:30 +0000 From: Charlie Li <vishwin@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: ef9180aa8469 - main - science/py-scipy: update to 1.17.1 Message-ID: <69d03cf2.430ed.2d4d8408@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by vishwin: URL: https://cgit.FreeBSD.org/ports/commit/?id=ef9180aa84690bd5181cd60be75c891ee7bdb74e commit ef9180aa84690bd5181cd60be75c891ee7bdb74e Author: Charlie Li <vishwin@FreeBSD.org> AuthorDate: 2026-04-03 22:18:31 +0000 Commit: Charlie Li <vishwin@FreeBSD.org> CommitDate: 2026-04-03 22:18:31 +0000 science/py-scipy: update to 1.17.1 Changelogs: - https://docs.scipy.org/doc/scipy/release/1.17.0-notes.html (minor versions no longer offered) - https://docs.scipy.org/doc/scipy/release/1.16.3-notes.html - https://docs.scipy.org/doc/scipy/release/1.16.2-notes.html - https://docs.scipy.org/doc/scipy/release/1.16.1-notes.html - https://docs.scipy.org/doc/scipy/release/1.16.0-notes.html - https://docs.scipy.org/doc/scipy/release/1.15.3-notes.html - https://docs.scipy.org/doc/scipy/release/1.15.2-notes.html - https://docs.scipy.org/doc/scipy/release/1.15.1-notes.html - https://docs.scipy.org/doc/scipy/release/1.15.0-notes.html - https://docs.scipy.org/doc/scipy/release/1.14.1-notes.html - https://docs.scipy.org/doc/scipy/release/1.14.0-notes.html - https://docs.scipy.org/doc/scipy/release/1.13.1-notes.html - https://docs.scipy.org/doc/scipy/release/1.13.0-notes.html - https://docs.scipy.org/doc/scipy/release/1.12.0-notes.html - https://docs.scipy.org/doc/scipy/release/1.11.4-notes.html - https://docs.scipy.org/doc/scipy/release/1.11.3-notes.html - https://docs.scipy.org/doc/scipy/release/1.11.2-notes.html Switch from distutils to PEP-517. PR: 277826 Reported by: wen Tested by: michaelo, makc, wen (previous iteration) exp-run by: antoine (previous iteration) Differential Revision: https://reviews.freebsd.org/D42144 --- science/py-scipy/Makefile | 86 +++++++++++++--------- science/py-scipy/distinfo | 12 ++- science/py-scipy/files/patch-cython | 32 -------- science/py-scipy/files/patch-scipy_linalg_setup.py | 11 --- .../files/patch-scipy_sparse_tests_test__base.py | 35 --------- 5 files changed, 58 insertions(+), 118 deletions(-) diff --git a/science/py-scipy/Makefile b/science/py-scipy/Makefile index 3dc8d4ddacfb..828aadc23d6f 100644 --- a/science/py-scipy/Makefile +++ b/science/py-scipy/Makefile @@ -1,19 +1,15 @@ PORTNAME= scipy -DISTVERSION= 1.11.1 -PORTREVISION= 6 +DISTVERSION= 1.17.1 PORTEPOCH= 1 CATEGORIES= science python -MASTER_SITES= https://docs.scipy.org/doc/scipy-${DISTVERSION}/:doc \ +MASTER_SITES= https://docs.scipy.org/doc/${PORTNAME}-1.17.0/:doc \ PYPI:source \ SF:source PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:source \ - scipy-html-${DISTVERSION}.zip:doc + scipy-html-1.17.0.zip:doc EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} -PATCH_SITES= https://github.com/scipy/scipy/commit/ -PATCHFILES= ab7d08c6148286059f6498ab5c3070268d13cbd9.patch:-p1 # https://github.com/scipy/scipy/pull/21069 - MAINTAINER= python@FreeBSD.org COMMENT= Scientific tools for Python WWW= https://www.scipy.org/ @@ -21,45 +17,69 @@ WWW= https://www.scipy.org/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy1>=1.16:math/py-numpy1@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pip>0:devel/py-pip@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pybind11>0:devel/py-pybind11@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pythran>=0:devel/py-pythran@${PY_FLAVOR} \ - unzip>0:archivers/unzip -LIB_DEPENDS= libblas.so:math/blas \ - libopenblas.so:math/openblas -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy1>=1.16:math/py-numpy1@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gmpy2>0:math/py-gmpy2@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}mpmath>0:math/py-mpmath@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pooch>0:devel/py-pooch@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}meson-python>=0.15.0:devel/meson-python@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pybind11>=2.13.2:devel/py-pybind11@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pythran>=0.14.0:devel/py-pythran@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}numpy1>=1.26.4:math/py-numpy1@${PY_FLAVOR} \ + boost-libs>=1.89.0:devel/boost-libs +LIB_DEPENDS= libqhull_r.so:math/qhull +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy1>=1.26.4:math/py-numpy1@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-timeout>0:devel/py-pytest-timeout@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-xdist>0:devel/py-pytest-xdist@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}scikit-umfpack>0:math/py-scikit-umfpack@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}asv>0:benchmarks/py-asv@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mpmath>0:math/py-mpmath@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}gmpy2>0:math/py-gmpy2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}threadpoolctl>0:devel/py-threadpoolctl@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}scikit-umfpack>0:math/py-scikit-umfpack@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pooch>0:devel/py-pooch@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}hypothesis>=6.30:devel/py-hypothesis@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}array-api-strict>=2.3.1:devel/py-array-api-strict@${PY_FLAVOR} + +USES= compiler:c++17-lang cpe fortran pkgconfig python:3.11+ shebangfix +USE_PYTHON= autoplist concurrent cython pep517 pytest -USES= compiler:c++14-lang cpe fortran python:3.10-3.12 shebangfix -USE_PYTHON= autoplist concurrent cython0 distutils +PEP517_BUILD_CONFIG_SETTING= -Csetup-args=-Duse-system-libraries=all -FFLAGS+= -std=legacy -LDFLAGS+= -shared -PYDISTUTILS_BUILDARGS= --fcompiler=gnu95 -PYDISTUTILS_CONFIGUREARGS= --fcompiler=gnu95 +TEST_WRKSRC= ${WRKDIR} +TEST_ARGS= --pyargs scipy +PYTEST_BROKEN_TESTS= test_threading -PIE_UNSAFE= yes +BINARY_ALIAS= cython=cython-${PYTHON_VER} \ + pybind11-config=pybind11-config-${PYTHON_VER} \ + pythran=pythran-${PYTHON_VER} PORTDOCS= * OPTIONS_DEFINE= DOCS +OPTIONS_SINGLE= BLASLIB +OPTIONS_SINGLE_BLASLIB= BLIS FLEXIBLAS NETLIB OPENBLAS +OPTIONS_DEFAULT= OPENBLAS +BLIS_DESC= BLIS BLAS-like implementation +FLEXIBLAS_DESC= FlexiBLAS BLAS implementation -post-install: - ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/scipy/ -name '*.so' | ${XARGS} ${STRIP_CMD} +BLIS_USES= blaslapack:blis +BLIS_VARS= PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=blis -Csetup-args=-Dlapack=flame" +BLIS_BROKEN= math/libflame does not provide a pkg-config file +FLEXIBLAS_USES= blaslapack:flexiblas +FLEXIBLAS_VARS= PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=flexiblas -Csetup-args=-Dlapack=flexiblas" +NETLIB_USES= blaslapack:netlib +NETLIB_VARS= PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=blas -Csetup-args=-Dlapack=lapack" +OPENBLAS_USES= blaslapack:openblas +OPENBLAS_VARS= PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=openblas -Csetup-args=-Dlapack=openblas" + +post-patch: + @${REINPLACE_CMD} -e 's|pythran>=0.14.0,<0.19.0|pythran>=0.14.0|' \ + -e 's|Cython>=3.0.8,<3.3.0|Cython>=3.0.8|' \ + -e 's|numpy>=2.0.0|numpy>=1.26.4|g' \ + ${WRKSRC}/pyproject.toml + @${REINPLACE_CMD} -e "s|'boost', version : '1.89.0'|'boost'|g" \ + ${WRKSRC}/meson.build post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} - @${UNZIP_CMD} -d ${STAGEDIR}${DOCSDIR} ${DISTDIR}/scipy-html-${DISTVERSION}.zip + @${UNZIP_NATIVE_CMD} -d ${STAGEDIR}${DOCSDIR} ${DISTDIR}/scipy-html-1.17.0.zip @${RM} ${STAGEDIR}${DOCSDIR}/.buildinfo -do-test: - @cd ${WRKSRC} && ${TOUCH} .coveragerc && ${PYTHON_CMD} runtests.py - .include <bsd.port.mk> diff --git a/science/py-scipy/distinfo b/science/py-scipy/distinfo index adf47cea8ae6..839c17390bc1 100644 --- a/science/py-scipy/distinfo +++ b/science/py-scipy/distinfo @@ -1,7 +1,5 @@ -TIMESTAMP = 1723220234 -SHA256 (scipy-1.11.1.tar.gz) = fb5b492fa035334fd249f0973cc79ecad8b09c604b42a127a677b45a9a3d4289 -SIZE (scipy-1.11.1.tar.gz) = 56031509 -SHA256 (scipy-html-1.11.1.zip) = e0a90d5fb0b93f0433c63cc1f80c8084e54c0402606a60a7898f61b53be60f13 -SIZE (scipy-html-1.11.1.zip) = 50389323 -SHA256 (ab7d08c6148286059f6498ab5c3070268d13cbd9.patch) = 41f357e513cdad1f4dcef1ff299915f2e540d95dcc722d72c9b25bc5a4abfab8 -SIZE (ab7d08c6148286059f6498ab5c3070268d13cbd9.patch) = 1105 +TIMESTAMP = 1774076747 +SHA256 (scipy-1.17.1.tar.gz) = 95d8e012d8cb8816c226aef832200b1d45109ed4464303e997c5b13122b297c0 +SIZE (scipy-1.17.1.tar.gz) = 30573822 +SHA256 (scipy-html-1.17.0.zip) = e1cfb3b30662701460f183ed90000a27bdb8af8bb2ff3051c1742de18c72f8e7 +SIZE (scipy-html-1.17.0.zip) = 72758586 diff --git a/science/py-scipy/files/patch-cython b/science/py-scipy/files/patch-cython deleted file mode 100644 index 586b9ca4ca59..000000000000 --- a/science/py-scipy/files/patch-cython +++ /dev/null @@ -1,32 +0,0 @@ -Obtained from: https://github.com/scipy/scipy/commit/3c89445b6439f3ce7bffc4cf11c6407c39faedc5 - https://github.com/scipy/scipy/commit/217748476403a1e5726a921cedb674e7ffbc952e - ---- scipy/_lib/_ccallback_c.pyx.orig 1970-01-01 00:00:00 UTC -+++ scipy/_lib/_ccallback_c.pyx -@@ -58,7 +58,7 @@ def get_raw_capsule(func_obj, name_obj, context_obj): - elif context_obj is None: - context = NULL - else: -- context = PyLong_AsVoidPtr(long(context_obj)) -+ context = PyLong_AsVoidPtr(int(context_obj)) - - if PyCapsule_CheckExact(func_obj): - capsule_name = PyCapsule_GetName(func_obj) -@@ -70,7 +70,7 @@ def get_raw_capsule(func_obj, name_obj, context_obj): - if name == NULL: - name = capsule_name - else: -- func = PyLong_AsVoidPtr(long(func_obj)) -+ func = PyLong_AsVoidPtr(int(func_obj)) - - if name == NULL: - name_copy = name ---- scipy/optimize/cython_optimize.pxd.orig 1970-01-01 00:00:00 UTC -+++ scipy/optimize/cython_optimize.pxd -@@ -7,5 +7,5 @@ - # support. Changing it causes an ABI forward-compatibility break - # (gh-11793), so we currently leave it as is (no further cimport - # statements should be used in this file). --from .cython_optimize._zeros cimport ( -+from scipy.optimize.cython_optimize._zeros cimport ( - brentq, brenth, ridder, bisect, zeros_full_output) diff --git a/science/py-scipy/files/patch-scipy_linalg_setup.py b/science/py-scipy/files/patch-scipy_linalg_setup.py deleted file mode 100644 index c885d4d4a25f..000000000000 --- a/science/py-scipy/files/patch-scipy_linalg_setup.py +++ /dev/null @@ -1,11 +0,0 @@ ---- scipy/linalg/setup.py.orig 2022-08-08 07:24:08 UTC -+++ scipy/linalg/setup.py -@@ -160,7 +160,7 @@ def configuration(parent_package='', top_path=None): - - # Add any license files - config.add_data_files('src/id_dist/doc/doc.tex') -- config.add_data_files('src/lapack_deprecations/LICENSE') -+ #config.add_data_files('src/lapack_deprecations/LICENSE') - - # Type stubs - config.add_data_files('*.pyi') diff --git a/science/py-scipy/files/patch-scipy_sparse_tests_test__base.py b/science/py-scipy/files/patch-scipy_sparse_tests_test__base.py deleted file mode 100644 index eba1ce48a52c..000000000000 --- a/science/py-scipy/files/patch-scipy_sparse_tests_test__base.py +++ /dev/null @@ -1,35 +0,0 @@ ---- scipy/sparse/tests/test_base.py.orig 1970-01-01 00:00:00 UTC -+++ scipy/sparse/tests/test_base.py -@@ -4774,19 +4774,19 @@ class TestCSCNonCanonical(_NonCanonicalCSMixin, TestCS - pass - - --class TestBSRNonCanonical(_NonCanonicalCompressedMixin, TestBSR): -- def _insert_explicit_zero(self, M, i, j): -- x = M.tocsr() -- x[i,j] = 0 -- return x.tobsr(blocksize=M.blocksize) -- -- @pytest.mark.xfail(run=False, reason='diagonal broken with non-canonical BSR') -- def test_diagonal(self): -- pass -- -- @pytest.mark.xfail(run=False, reason='expm broken with non-canonical BSR') -- def test_expm(self): -- pass -+#class TestBSRNonCanonical(_NonCanonicalCompressedMixin, TestBSR): -+# def _insert_explicit_zero(self, M, i, j): -+# x = M.tocsr() -+# x[i,j] = 0 -+# return x.tobsr(blocksize=M.blocksize) -+# -+# @pytest.mark.xfail(run=False, reason='diagonal broken with non-canonical BSR') -+# def test_diagonal(self): -+# pass -+# -+# @pytest.mark.xfail(run=False, reason='expm broken with non-canonical BSR') -+# def test_expm(self): -+# pass - - - class TestCOONonCanonical(_NonCanonicalMixin, TestCOO):home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69d03cf2.430ed.2d4d8408>
