Skip to content

CI: new failures: segfault in free-threaded, linprog invalid value encountered in dot #22700

@mdhaber

Description

@mdhaber

Describe your issue.

CI is failing with a segfault in the free-threaded job; see e.g. gh-22698.

I'm also seeing a failure in the mypy job, e.g. gh-22695.

Reproducing Code Example

NA

Error message

In free-threaded(1):
...
scipy/sparse/tests/test_matrix_io.py .......                             [ 99%]
scipy/sparse/tests/test_minmax1d.py ............                         [ 99%]
Fatal Python error: Segmentation fault

Current thread 0x00007f379c41eb80 (most recent call first):
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/traceback.py", line 200 in _safe_string
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/traceback.py", line 1053 in __init__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/traceback.py", line 1134 in __init__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/traceback.py", line 176 in format_exception_only
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 592 in exconly
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 884 in get_exconly
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 872 in get_source
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 938 in repr_traceback_entry
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 992 in repr_traceback
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 1058 in repr_excinfo
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/_code/code.py", line 690 in getrepr
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/nodes.py", line 456 in _repr_failure_py
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/python.py", line 1669 in repr_failure
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/reports.py", line 376 in from_item_and_call
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/runner.py", line 368 in pytest_runtest_makereport
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/runner.py", line 244 in call_and_report
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/runner.py", line 132 in runtestprotocol
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/runner.py", line 113 in pytest_runtest_protocol
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/main.py", line 362 in pytest_runtestloop
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/main.py", line 337 in _main
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/main.py", line 283 in wrap_session
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/main.py", line 330 in pytest_cmdline_main
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/_pytest/config/__init__.py", line 175 in main
  File "/home/runner/work/scipy/scipy/build-install/lib/python3.13t/site-packages/scipy/_lib/_testutils.py", line 131 in __call__
  File "/home/runner/work/scipy/scipy/dev.py", line 830 in scipy_tests
  File "/home/runner/work/scipy/scipy/dev.py", line 852 in run
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/action.py", line 461 in execute
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/task.py", line 473 in execute
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/runner.py", line 176 in execute_task
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/runner.py", line 220 in run_tasks
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/runner.py", line 254 in run_all
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/cmd_run.py", line 265 in _execute
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/cmd_base.py", line 570 in execute
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/cmd_base.py", line 150 in parse_execute
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/doit/api.py", line 50 in run_tasks
  File "/home/runner/work/scipy/scipy/dev.py", line 252 in run_doit_task
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/pydevtool/cli.py", line 267 in callback
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/click/core.py", line 788 in invoke
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/click/core.py", line 1443 in invoke
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/click/core.py", line 1697 in invoke
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/rich_click/rich_command.py", line 166 in main
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/click/core.py", line 1161 in __call__
  File "/opt/hostedtoolcache/Python/3.13.2/x64-freethreaded/lib/python3.13t/site-packages/rich_click/rich_command.py", line 378 in __call__
  File "/home/runner/work/scipy/scipy/dev.py", line 1740 in <module>

Extension modules: numpy._core._multiarray_umath, numpy.linalg._umath_linalg, cython.cimports.libc.math, scipy._lib._ccallback_c, scipy._lib._fpumode, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, scipy.sparse._sparsetools, _csparsetools, scipy.sparse._csparsetools, scipy.linalg._fblas, scipy.linalg._flapack, scipy.linalg.cython_lapack, scipy.linalg._cythonized_array_utils, scipy.linalg._solve_toeplitz, scipy.linalg._decomp_lu_cython, scipy.linalg._matfuncs_sqrtm_triu, scipy.linalg._matfuncs_expm, scipy.linalg._linalg_pythran, scipy.linalg.cython_blas, scipy.linalg._decomp_update, scipy.sparse.linalg._dsolve._superlu, scipy.sparse.linalg._eigen.arpack._arpack, scipy.sparse.linalg._propack._spropack, scipy.sparse.linalg._propack._dpropack, scipy.sparse.linalg._propack._cpropack, scipy.sparse.linalg._propack._zpropack, scipy.sparse.csgraph._tools, scipy.sparse.csgraph._shortest_path, scipy.sparse.csgraph._traversal, scipy.sparse.csgraph._min_spanning_tree, scipy.sparse.csgraph._flow, scipy.sparse.csgraph._matching, scipy.sparse.csgraph._reordering, scipy.spatial._ckdtree, scipy._lib.messagestream, scipy.spatial._qhull, scipy.spatial._voronoi, scipy.spatial._distance_wrap, scipy.spatial._hausdorff, scipy.special._ufuncs_cxx, scipy.special._ellip_harm_2, scipy.special._special_ufuncs, scipy.special._gufuncs, scipy.special._ufuncs, scipy.special._specfun, scipy.special._comb, scipy.spatial.transform._rotation, scipy.spatial.transform._rigid_transform, scipy.cluster._vq, scipy.cluster._hierarchy, scipy.cluster._optimal_leaf_ordering, scipy.optimize._group_columns, scipy.optimize._trlib._trlib, scipy.optimize._lbfgsb, _moduleTNC, scipy.optimize._moduleTNC, scipy.optimize._cobyla, scipy.optimize._slsqp, scipy.optimize._minpack, scipy.optimize._lsq.givens_elimination, scipy.optimize._zeros, scipy.optimize._cython_nnls, scipy._lib._uarray._uarray, scipy.linalg._decomp_interpolative, scipy.optimize._bglu_dense, scipy.optimize._lsap, scipy.optimize._direct, scipy.integrate._odepack, scipy.integrate._quadpack, scipy.integrate._vode, scipy.integrate._dop, scipy.integrate._lsoda, scipy.interpolate._fitpack, scipy.interpolate._dfitpack, scipy.interpolate._dierckx, scipy.interpolate._ppoly, scipy.interpolate._interpnd, scipy.interpolate._rbfinterp_pythran, scipy.interpolate._rgi_cython, scipy.interpolate._bspl, scipy.special.cython_special, scipy.stats._stats, scipy.stats._biasedurn, scipy.stats._stats_pythran, scipy.stats._levy_stable.levyst, scipy.stats._ansari_swilk_statistics, scipy.stats._sobol, scipy.stats._qmc_cy, scipy.stats._rcont.rcont, scipy.stats._qmvnt_cy, scipy.ndimage._nd_image, scipy.ndimage._rank_filter_1d, _ni_label, scipy.ndimage._ni_label, scipy.fftpack.convolve, scipy.integrate._test_odeint_banded, scipy.io.matlab._mio_utils, scipy.io.matlab._streams, scipy.io.matlab._mio5_utils, scipy.io._test_fortran, scipy.ndimage._ctest, _cytest, scipy.ndimage._cytest, scipy.odr.__odrpack, scipy.optimize.cython_optimize._zeros, scipy.signal._sigtools, scipy.signal._max_len_seq_inner, scipy.signal._upfirdn_apply, scipy.signal._spline, scipy.signal._sosfilt, scipy.signal._peak_finding_utils, extending, extending_cpp (total: 121)
/home/runner/work/_temp/a8dac759-6f15-4aa4-9faa-9bab9b38bb77.sh: line 3:  9686 Segmentation fault      (core dumped) python dev.py --no-build test $TEST_SUBMODULES -- --parallel-threads=4
scipy/sparse/tests/test_sparsetools.py 

---

In mypy job:
=========================== short test summary info ============================
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexDefault::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexDefault::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexDefault::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexDefault::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexBland::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexBland::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexBland::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogSimplexBland::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPDense::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPDense::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPDense::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPDense::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparse::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparse::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparse::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparse::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSCommon::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSCommon::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSCommon::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSCommon::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSBland::test_zero_column_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSBland::test_unbounded_no_nontrivial_constraints_1 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSBland::test_unbounded_no_nontrivial_constraints_2 - RuntimeWarning: invalid value encountered in dot
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogRSBland::test_enzo_example_c_with_unboundedness - RuntimeWarning: invalid value encountered in dot
FAILED scipy/sparse/linalg/_isolve/tests/test_gcrotmk.py::TestGCROTMK::test_denormals - RuntimeWarning: invalid value encountered in dot
= 25 failed, 60324 passed, 3970 skipped, 192 xfailed, 13 xpassed in 337.24s (0:05:37) =

SciPy/NumPy/Python version and system information

NA

Metadata

Metadata

Assignees

No one assigned

    Labels

    CIItems related to the CI tools such as CircleCI, GitHub Actions or AzuredefectA clear bug or issue that prevents SciPy from being installed or used as expectedfree-threadingItems related to supporting free-threaded (a.k.a. "no-GIL") builds of CPython

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions