Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DEV: Update spin to accept arguments of meson compile and meson install #256

Merged
merged 2 commits into from
Dec 4, 2024

Conversation

czgdp1807
Copy link
Contributor

@czgdp1807 czgdp1807 commented Nov 27, 2024

Continues - #238

Copy link
Contributor Author

@czgdp1807 czgdp1807 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the minimal set of change.

Copy link
Contributor

@rgommers rgommers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @czgdp1807, this looks much better. Seems trivially correct to me, and fully backwards compatible (nothing changes unless the user starts using the new keywords). Assuming CI is green, should be good to go.

@czgdp1807

This comment was marked as off-topic.

@czgdp1807

This comment was marked as outdated.

@czgdp1807 czgdp1807 marked this pull request as draft November 27, 2024 14:52
@czgdp1807 czgdp1807 marked this pull request as ready for review November 27, 2024 14:52
@czgdp1807
Copy link
Contributor Author

czgdp1807 commented Nov 28, 2024

Regarding --destdir issue,

So I created a entirely new conda environment on my macOS. Installed meson_kwargs (this branch) for spin. spin test fails. I am using the latest commit from scipy/scipy#21674. See the logs below,

Logs for failure of `spin test` on macOS
Invoking `build` prior to running tests:
$ meson compile -j 10 -C build
ninja: Entering directory `/Users/czgdp1807/Quansight/scipy/build'
[1/338] Generating scipy/generate-version with a custom command
[2/338] Generating subprojects/highs/src/HConfig.h with a custom command
INFO: autodetecting backend as ninja
INFO: calculating backend command to run: /Users/czgdp1807/mambaforge/envs/scipy-dev-latest/bin/ninja -C /Users/czgdp1807/Quansight/scipy/build -j 10
$ meson install --only-changed -C build --destdir ../build-install --tags=runtime,python-runtime,tests,devel
$ export PYTHONPATH="/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages"
$ /Users/czgdp1807/mambaforge/envs/scipy-dev-latest/bin/python3.13 -P -c 'import scipy'
$ cd /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages
$ /Users/czgdp1807/mambaforge/envs/scipy-dev-latest/bin/python3.13 -P -m pytest -m 'not slow' --pyargs scipy
============================= test session starts ==============================
platform darwin -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0
rootdir: /Users/czgdp1807/Quansight/scipy
configfile: pytest.ini
plugins: cov-6.0.0, hypothesis-6.121.0, timeout-2.3.1, anyio-4.6.2.post1, xdist-3.6.1
collected 23402 items / 227 errors / 4752 deselected / 18650 selected

==================================== ERRORS ====================================
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_disjoint_set.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_disjoint_set.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/cluster/__init__.py:27: in <module>
    from . import vq, hierarchy
scipy/cluster/vq.py:76: in <module>
    from scipy.spatial.distance import cdist
scipy/spatial/__init__.py:116: in <module>
    from ._geometric_slerp import geometric_slerp
scipy/spatial/_geometric_slerp.py:9: in <module>
    from scipy.spatial.distance import euclidean
scipy/spatial/distance.py:121: in <module>
    from ..special import rel_entr
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_hierarchy.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_hierarchy.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/cluster/__init__.py:27: in <module>
    from . import vq, hierarchy
scipy/cluster/vq.py:76: in <module>
    from scipy.spatial.distance import cdist
scipy/spatial/__init__.py:116: in <module>
    from ._geometric_slerp import geometric_slerp
scipy/spatial/_geometric_slerp.py:9: in <module>
    from scipy.spatial.distance import euclidean
scipy/spatial/distance.py:121: in <module>
    from ..special import rel_entr
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_vq.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/cluster/tests/test_vq.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/cluster/__init__.py:27: in <module>
    from . import vq, hierarchy
scipy/cluster/vq.py:76: in <module>
    from scipy.spatial.distance import cdist
scipy/spatial/__init__.py:116: in <module>
    from ._geometric_slerp import geometric_slerp
scipy/spatial/_geometric_slerp.py:9: in <module>
    from scipy.spatial.distance import euclidean
scipy/spatial/distance.py:121: in <module>
    from ..special import rel_entr
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/differentiate/tests/test_differentiate.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/differentiate/tests/test_differentiate.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/differentiate/tests/test_differentiate.py:11: in <module>
    from scipy import stats, optimize, special
scipy/__init__.py:136: in __getattr__
    return _importlib.import_module(f'scipy.{name}')
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/stats/__init__.py:618: in <module>
    from ._stats_py import *
scipy/stats/_stats_py.py:39: in <module>
    from scipy.spatial import distance_matrix
scipy/spatial/__init__.py:116: in <module>
    from ._geometric_slerp import geometric_slerp
scipy/spatial/_geometric_slerp.py:9: in <module>
    from scipy.spatial.distance import euclidean
scipy/spatial/distance.py:121: in <module>
    from ..special import rel_entr
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/fft/_pocketfft/tests/test_basic.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/fft/_pocketfft/tests/test_basic.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/fft/__init__.py:91: in <module>
    from ._fftlog import fht, ifht, fhtoffset
scipy/fft/_fftlog.py:10: in <module>
    from ._fftlog_backend import fhtoffset
scipy/fft/_fftlog_backend.py:4: in <module>
    from ..special import loggamma, poch
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/fft/_pocketfft/tests/test_real_transforms.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/fft/_pocketfft/tests/test_real_transforms.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/fft/__init__.py:91: in <module>
    from ._fftlog import fht, ifht, fhtoffset
scipy/fft/_fftlog.py:10: in <module>
    from ._fftlog_backend import fhtoffset
scipy/fft/_fftlog_backend.py:4: in <module>
    from ..special import loggamma, poch
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
_ ERROR collecting build-install/usr/lib/python3.13/site-packages/scipy/fft/tests/test_backend.py _
ImportError while importing test module '/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/fft/tests/test_backend.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Users/czgdp1807/mambaforge/envs/scipy-dev-latest/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
scipy/fft/__init__.py:91: in <module>
    from ._fftlog import fht, ifht, fhtoffset
scipy/fft/_fftlog.py:10: in <module>
    from ._fftlog_backend import fhtoffset
scipy/fft/_fftlog_backend.py:4: in <module>
    from ..special import loggamma, poch
scipy/special/__init__.py:816: in <module>
    from . import _ufuncs
E   ImportError: dlopen(/Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so, 0x0002): Library not loaded: /usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib
E     Referenced from: <7DAAAF33-80C3-39DF-A6BB-4E86CE3E3946> /Users/czgdp1807/Quansight/scipy/build-install/usr/lib/python3.13/site-packages/scipy/special/_ufuncs.cpython-313-darwin.so
E     Reason: tried: '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file), '/usr/lib/python3.13/site-packages/scipy/special/libsf_error_state.dylib' (no such file, not in dyld cache)
.
.
.
=========================== short test summary info ============================
ERROR scipy/cluster/tests/test_disjoint_set.py
ERROR scipy/cluster/tests/test_hierarchy.py
ERROR scipy/cluster/tests/test_vq.py
ERROR scipy/differentiate/tests/test_differentiate.py
ERROR scipy/fft/_pocketfft/tests/test_basic.py
ERROR scipy/fft/_pocketfft/tests/test_real_transforms.py
ERROR scipy/fft/tests/test_backend.py
ERROR scipy/fft/tests/test_basic.py
ERROR scipy/fft/tests/test_fftlog.py
ERROR scipy/fft/tests/test_helper.py
ERROR scipy/fft/tests/test_multithreading.py
ERROR scipy/fft/tests/test_real_transforms.py
ERROR scipy/fftpack/tests/test_basic.py
ERROR scipy/fftpack/tests/test_helper.py
ERROR scipy/fftpack/tests/test_import.py
ERROR scipy/fftpack/tests/test_pseudo_diffs.py
ERROR scipy/fftpack/tests/test_real_transforms.py
ERROR scipy/integrate/_ivp/tests/test_ivp.py
ERROR scipy/integrate/_ivp/tests/test_rk.py
ERROR scipy/integrate/tests/test__quad_vec.py
ERROR scipy/integrate/tests/test_banded_ode_solvers.py
ERROR scipy/integrate/tests/test_bvp.py
ERROR scipy/integrate/tests/test_cubature.py
ERROR scipy/integrate/tests/test_integrate.py
ERROR scipy/integrate/tests/test_odeint_jac.py
ERROR scipy/integrate/tests/test_quadpack.py
ERROR scipy/integrate/tests/test_quadrature.py
ERROR scipy/integrate/tests/test_tanhsinh.py
ERROR scipy/interpolate/tests/test_bary_rational.py
ERROR scipy/interpolate/tests/test_bsplines.py
ERROR scipy/interpolate/tests/test_fitpack.py
ERROR scipy/interpolate/tests/test_fitpack2.py
ERROR scipy/interpolate/tests/test_gil.py
ERROR scipy/interpolate/tests/test_interpnd.py
ERROR scipy/interpolate/tests/test_interpolate.py
ERROR scipy/interpolate/tests/test_ndgriddata.py
ERROR scipy/interpolate/tests/test_pade.py
ERROR scipy/interpolate/tests/test_polyint.py
ERROR scipy/interpolate/tests/test_rbf.py
ERROR scipy/interpolate/tests/test_rbfinterp.py
ERROR scipy/interpolate/tests/test_rgi.py
ERROR scipy/linalg/tests/test_decomp.py
ERROR scipy/linalg/tests/test_decomp_cossin.py
ERROR scipy/linalg/tests/test_interpolative.py
ERROR scipy/linalg/tests/test_lapack.py
ERROR scipy/linalg/tests/test_matfuncs.py
ERROR scipy/linalg/tests/test_special_matrices.py
ERROR scipy/ndimage/tests/test_c_api.py
ERROR scipy/ndimage/tests/test_datatypes.py
ERROR scipy/ndimage/tests/test_filters.py
ERROR scipy/ndimage/tests/test_fourier.py
ERROR scipy/ndimage/tests/test_interpolation.py
ERROR scipy/ndimage/tests/test_measurements.py
ERROR scipy/ndimage/tests/test_morphology.py
ERROR scipy/ndimage/tests/test_ni_support.py
ERROR scipy/ndimage/tests/test_splines.py
ERROR scipy/optimize/_trustregion_constr/tests/test_canonical_constraint.py
ERROR scipy/optimize/_trustregion_constr/tests/test_nested_minimize.py
ERROR scipy/optimize/_trustregion_constr/tests/test_report.py
ERROR scipy/optimize/tests/test__basinhopping.py
ERROR scipy/optimize/tests/test__differential_evolution.py
ERROR scipy/optimize/tests/test__dual_annealing.py
ERROR scipy/optimize/tests/test__linprog_clean_inputs.py
ERROR scipy/optimize/tests/test__numdiff.py
ERROR scipy/optimize/tests/test__remove_redundancy.py
ERROR scipy/optimize/tests/test__root.py
ERROR scipy/optimize/tests/test__shgo.py
ERROR scipy/optimize/tests/test__spectral.py
ERROR scipy/optimize/tests/test_bracket.py
ERROR scipy/optimize/tests/test_chandrupatla.py
ERROR scipy/optimize/tests/test_cobyla.py
ERROR scipy/optimize/tests/test_cobyqa.py
ERROR scipy/optimize/tests/test_constraint_conversion.py
ERROR scipy/optimize/tests/test_constraints.py
ERROR scipy/optimize/tests/test_cython_optimize.py
ERROR scipy/optimize/tests/test_differentiable_functions.py
ERROR scipy/optimize/tests/test_direct.py
ERROR scipy/optimize/tests/test_extending.py
ERROR scipy/optimize/tests/test_hessian_update_strategy.py
ERROR scipy/optimize/tests/test_isotonic_regression.py
ERROR scipy/optimize/tests/test_lbfgsb_hessinv.py
ERROR scipy/optimize/tests/test_lbfgsb_setulb.py
ERROR scipy/optimize/tests/test_least_squares.py
ERROR scipy/optimize/tests/test_linear_assignment.py
ERROR scipy/optimize/tests/test_linesearch.py
ERROR scipy/optimize/tests/test_linprog.py
ERROR scipy/optimize/tests/test_lsq_common.py
ERROR scipy/optimize/tests/test_lsq_linear.py
ERROR scipy/optimize/tests/test_milp.py
ERROR scipy/optimize/tests/test_minimize_constrained.py
ERROR scipy/optimize/tests/test_minpack.py
ERROR scipy/optimize/tests/test_nnls.py
ERROR scipy/optimize/tests/test_nonlin.py
ERROR scipy/optimize/tests/test_optimize.py
ERROR scipy/optimize/tests/test_quadratic_assignment.py
ERROR scipy/optimize/tests/test_regression.py
ERROR scipy/optimize/tests/test_slsqp.py
ERROR scipy/optimize/tests/test_tnc.py
ERROR scipy/optimize/tests/test_trustregion.py
ERROR scipy/optimize/tests/test_trustregion_exact.py
ERROR scipy/optimize/tests/test_trustregion_krylov.py
ERROR scipy/optimize/tests/test_zeros.py
ERROR scipy/signal/tests/test_array_tools.py
ERROR scipy/signal/tests/test_bsplines.py
ERROR scipy/signal/tests/test_cont2discrete.py
ERROR scipy/signal/tests/test_czt.py
ERROR scipy/signal/tests/test_dltisys.py
ERROR scipy/signal/tests/test_filter_design.py
ERROR scipy/signal/tests/test_fir_filter_design.py
ERROR scipy/signal/tests/test_ltisys.py
ERROR scipy/signal/tests/test_max_len_seq.py
ERROR scipy/signal/tests/test_peak_finding.py
ERROR scipy/signal/tests/test_result_type.py
ERROR scipy/signal/tests/test_savitzky_golay.py
ERROR scipy/signal/tests/test_short_time_fft.py
ERROR scipy/signal/tests/test_signaltools.py
ERROR scipy/signal/tests/test_spectral.py
ERROR scipy/signal/tests/test_splines.py
ERROR scipy/signal/tests/test_upfirdn.py
ERROR scipy/signal/tests/test_waveforms.py
ERROR scipy/signal/tests/test_wavelets.py
ERROR scipy/signal/tests/test_windows.py
ERROR scipy/sparse/linalg/tests/test_matfuncs.py
ERROR scipy/spatial/tests/test__plotutils.py
ERROR scipy/spatial/tests/test__procrustes.py
ERROR scipy/spatial/tests/test_distance.py
ERROR scipy/spatial/tests/test_hausdorff.py
ERROR scipy/spatial/tests/test_kdtree.py
ERROR scipy/spatial/tests/test_qhull.py
ERROR scipy/spatial/tests/test_slerp.py
ERROR scipy/spatial/tests/test_spherical_voronoi.py
ERROR scipy/spatial/transform/tests/test_rotation.py
ERROR scipy/spatial/transform/tests/test_rotation_groups.py
ERROR scipy/spatial/transform/tests/test_rotation_spline.py
ERROR scipy/special/tests/test_basic.py
ERROR scipy/special/tests/test_bdtr.py
ERROR scipy/special/tests/test_boost_ufuncs.py
ERROR scipy/special/tests/test_boxcox.py
ERROR scipy/special/tests/test_cdflib.py
ERROR scipy/special/tests/test_cdft_asymptotic.py
ERROR scipy/special/tests/test_cephes_intp_cast.py
ERROR scipy/special/tests/test_cosine_distr.py
ERROR scipy/special/tests/test_cython_special.py
ERROR scipy/special/tests/test_data.py
ERROR scipy/special/tests/test_dd.py
ERROR scipy/special/tests/test_digamma.py
ERROR scipy/special/tests/test_ellip_harm.py
ERROR scipy/special/tests/test_erfinv.py
ERROR scipy/special/tests/test_exponential_integrals.py
ERROR scipy/special/tests/test_extending.py
ERROR scipy/special/tests/test_faddeeva.py
ERROR scipy/special/tests/test_gamma.py
ERROR scipy/special/tests/test_gammainc.py
ERROR scipy/special/tests/test_hyp2f1.py
ERROR scipy/special/tests/test_hypergeometric.py
ERROR scipy/special/tests/test_iv_ratio.py
ERROR scipy/special/tests/test_kolmogorov.py
ERROR scipy/special/tests/test_lambertw.py
ERROR scipy/special/tests/test_legendre.py
ERROR scipy/special/tests/test_log_softmax.py
ERROR scipy/special/tests/test_loggamma.py
ERROR scipy/special/tests/test_logit.py
ERROR scipy/special/tests/test_logsumexp.py
ERROR scipy/special/tests/test_mpmath.py
ERROR scipy/special/tests/test_nan_inputs.py
ERROR scipy/special/tests/test_ndtr.py
ERROR scipy/special/tests/test_ndtri_exp.py
ERROR scipy/special/tests/test_orthogonal.py
ERROR scipy/special/tests/test_orthogonal_eval.py
ERROR scipy/special/tests/test_owens_t.py
ERROR scipy/special/tests/test_pcf.py
ERROR scipy/special/tests/test_pdtr.py
ERROR scipy/special/tests/test_powm1.py
ERROR scipy/special/tests/test_precompute_expn_asy.py
ERROR scipy/special/tests/test_precompute_gammainc.py
ERROR scipy/special/tests/test_precompute_utils.py
ERROR scipy/special/tests/test_round.py
ERROR scipy/special/tests/test_sf_error.py
ERROR scipy/special/tests/test_sici.py
ERROR scipy/special/tests/test_specfun.py
ERROR scipy/special/tests/test_spence.py
ERROR scipy/special/tests/test_spfun_stats.py
ERROR scipy/special/tests/test_sph_harm.py
ERROR scipy/special/tests/test_spherical_bessel.py
ERROR scipy/special/tests/test_support_alternative_backends.py
ERROR scipy/special/tests/test_trig.py
ERROR scipy/special/tests/test_ufunc_signatures.py
ERROR scipy/special/tests/test_wright_bessel.py
ERROR scipy/special/tests/test_wrightomega.py
ERROR scipy/special/tests/test_xsf_cuda.py
ERROR scipy/special/tests/test_zeta.py
ERROR scipy/stats/_bws_test.py
ERROR scipy/stats/_page_trend_test.py
ERROR scipy/stats/tests/test_axis_nan_policy.py
ERROR scipy/stats/tests/test_binned_statistic.py
ERROR scipy/stats/tests/test_censored_data.py
ERROR scipy/stats/tests/test_contingency.py
ERROR scipy/stats/tests/test_continuous.py
ERROR scipy/stats/tests/test_continuous_basic.py
ERROR scipy/stats/tests/test_continuous_fit_censored.py
ERROR scipy/stats/tests/test_correlation.py
ERROR scipy/stats/tests/test_crosstab.py
ERROR scipy/stats/tests/test_discrete_basic.py
ERROR scipy/stats/tests/test_discrete_distns.py
ERROR scipy/stats/tests/test_distributions.py
ERROR scipy/stats/tests/test_entropy.py
ERROR scipy/stats/tests/test_fast_gen_inversion.py
ERROR scipy/stats/tests/test_fit.py
ERROR scipy/stats/tests/test_hypotests.py
ERROR scipy/stats/tests/test_kdeoth.py
ERROR scipy/stats/tests/test_mgc.py
ERROR scipy/stats/tests/test_morestats.py
ERROR scipy/stats/tests/test_mstats_basic.py
ERROR scipy/stats/tests/test_mstats_extras.py
ERROR scipy/stats/tests/test_multicomp.py
ERROR scipy/stats/tests/test_multivariate.py
ERROR scipy/stats/tests/test_odds_ratio.py
ERROR scipy/stats/tests/test_qmc.py
ERROR scipy/stats/tests/test_rank.py
ERROR scipy/stats/tests/test_relative_risk.py
ERROR scipy/stats/tests/test_resampling.py
ERROR scipy/stats/tests/test_sampling.py
ERROR scipy/stats/tests/test_sensitivity_analysis.py
ERROR scipy/stats/tests/test_stats.py
ERROR scipy/stats/tests/test_survival.py
ERROR scipy/stats/tests/test_tukeylambda_stats.py
ERROR scipy/stats/tests/test_variation.py
!!!!!!!!!!!!!!!!!! Interrupted: 227 errors during collection !!!!!!!!!!!!!!!!!!!
===================== 4752 deselected, 227 errors in 5.68s =====================

However, with my meson_kwargs_backup branch of spin, where I remove --destdir from meson compile step. I also specify, abs_install_dir for prefix in meson setup step (see the diff below), the tests work on my macOS.

(scipy-dev-latest) 16:15:56:~/Quansight/spin % git diff meson_kwargs
diff --git a/spin/cmds/meson.py b/spin/cmds/meson.py
index c68273d..b42627e 100644
--- a/spin/cmds/meson.py
+++ b/spin/cmds/meson.py
@@ -335,7 +335,7 @@ def build(
     if gcov:
         meson_args_setup = meson_args_setup + ["-Db_coverage=true"]

-    setup_cmd = _meson_cli() + ["setup", build_dir, f"--prefix={prefix}"] + meson_args_setup
+    setup_cmd = _meson_cli() + ["setup", build_dir, f"--prefix={abs_install_dir}"] + meson_args_setup

     if clean:
         print(f"Removing `{build_dir}`")
@@ -381,10 +381,6 @@ def build(
             "--only-changed",
             "-C",
             build_dir,
-            "--destdir",
-            install_dir
-            if os.path.isabs(install_dir)
-            else os.path.relpath(abs_install_dir, abs_build_dir),
         ] + meson_install_args,
         output=(not quiet) and verbose,
     )

On Linux, it works perfectly well with meson_kwargs (this branch).

Conclusion - I have to retain my --destdir change and --prefix change from #238 to make things work with SciPy on my macOS. Writing this comment for our knowledge.

cc: @rgommers

@rgommers
Copy link
Contributor

Conclusion - I have to retain my --destdir change and --prefix change from #238 to make things work with SciPy on my macOS. Writing this comment for our knowledge.

If it works on Linux but not on macOS, it's a specific issue with how SciPy is building/installing a shared library, and unlikely to be a generic spin issue (and certainly unrelated to this PR) - so we'll try to figure it out as part of scipy/scipy#21674.

@stefanv stefanv added the type: Enhancement New feature or request label Dec 4, 2024
@stefanv stefanv merged commit 794cabf into scientific-python:main Dec 4, 2024
20 checks passed
@stefanv
Copy link
Member

stefanv commented Dec 4, 2024

Thanks @czgdp1807!

@jarrodmillman jarrodmillman added this to the 0.14 milestone Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: Enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants