Skip to content

Scipy issues with recent 0.25.0.dev0 changes #4140

@lesteve

Description

@lesteve

🐛 Bug

I noticed quite a few new errors in github.com/lesteve/scipy-tests-pyodide. This is on commit 2505d4d. On commit 4cc1410 (one day before) the tests passed.

To Reproduce

If that helps there is a Pyodide debug build here

Expected behavior

Tests pass

Additional context

See build log

--------------------------------------------------------------------------------
Unexpected test results
--------------------------------------------------------------------------------
scipy.fft.tests result expected in ['passed'], got 'fatal error or timeout' instead
scipy.optimize.tests result expected in ['failed'], got 'fatal error or timeout' instead
scipy.sparse.linalg._dsolve.tests result expected in ['passed'], got 'fatal error or timeout' instead
scipy.special.tests result expected in ['failed'], got 'fatal error or timeout' instead
scipy.stats.tests result expected in ['failed'], got 'fatal error or timeout' instead

Here are more details for each issue:

--------------------------------------------------------------------------------
scipy.fft.tests
--------------------------------------------------------------------------------

Pyodide has suffered a fatal error. Please report this to the Pyodide maintainers.
The cause of the fatal error was:
RuntimeError: Aborted(). Build with -sASSERTIONS for more info.
    at abort (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:651:15)
    at _abort (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:16907:7)
    at pyodide.asm.wasm.fatal_error_exit (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3780]:0x2bbd9e)
    at pyodide.asm.wasm.fatal_error (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3765]:0x2b0f72)
    at pyodide.asm.wasm._Py_FatalErrorFunc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3778]:0x2bbb3c)
    at pyodide.asm.wasm._Py_FatalError_TstateNULL (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3178]:0x260191)
    at pyodide.asm.wasm.PyThreadState_Get (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3825]:0x2c0728)
    at pyodide.asm.wasm.tupledealloc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[2360]:0x1f42b9)
    at pyodide.asm.wasm._Py_Dealloc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[2162]:0x1e9a0c)
    at pyodide.asm.wasm._PyObject_MakeTpCall (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[1061]:0x1a3255) {
  pyodide_fatal_error: true
}
RuntimeError: Aborted(). Build with -sASSERTIONS for more info.
    at abort (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:651:15)
    at _abort (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:16907:7)
    at pyodide.asm.wasm.fatal_error_exit (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3780]:0x2bbd9e)
    at pyodide.asm.wasm.fatal_error (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3765]:0x2b0f72)
    at pyodide.asm.wasm._Py_FatalErrorFunc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3778]:0x2bbb3c)
    at pyodide.asm.wasm._Py_FatalError_TstateNULL (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3178]:0x260191)
    at pyodide.asm.wasm.PyThreadState_Get (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[3825]:0x2c0728)
    at pyodide.asm.wasm.tupledealloc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[2360]:0x1f42b9)
    at pyodide.asm.wasm._Py_Dealloc (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[2162]:0x1e9a0c)
    at pyodide.asm.wasm._PyObject_MakeTpCall (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[1061]:0x1a3255) {
  pyodide_fatal_error: true
}


--------------------------------------------------------------------------------
scipy.optimize.tests
--------------------------------------------------------------------------------

test_zeros.py::test_gh9551_raise_error_if_disp_true PASSED               [ 98%]
test_zeros.py::test_gh3089_8394[brentq] scipy.optimize.tests exited with exit code 66

Reason unclear (no traceback)

--------------------------------------------------------------------------------
scipy.sparse.linalg._dsolve.tests
--------------------------------------------------------------------------------
RuntimeError: memory access out of bounds
    at pyodide.asm.wasm.__get_exception_message (wasm://wasm/pyodide.asm.wasm-025c82ca:wasm-function[12649]:0x4d016e)
    at Module.___get_exception_message (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:94609:48)
    at /home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:8471:9
    at withStackSave (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:8137:17)
    at getExceptionMessageCommon (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:8468:7)
    at Object.getExceptionMessage (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:8484:40)
    at convertCppException (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5911:31)
    at API.fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5925:48)
    at API.maybe_fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5963:17)
    at Module.callPyObjectKwargs (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:4552:17)

--------------------------------------------------------------------------------
scipy.special.tests
--------------------------------------------------------------------------------
Pyodide has suffered a fatal error. Please report this to the Pyodide maintainers.
The cause of the fatal error was:
CppException boost::wrapexcept<std::domain_error>: Error in function boost::math::erf_inv<double>(double, double): Argument outside range [-1, 1] in inverse erf function (got p=-10).
    at convertCppException (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5912:18)
    at API.fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5925:48)
    at API.maybe_fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5963:17)
    at Module.callPyObjectKwargs (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:4552:17)
    at Module.callPyObject (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:4604:25)
    at Qe.apply (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5673:22)
    at Object.apply (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5548:22)
    at main (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/scipy-pytest.js:56:24) {
  ty: 'boost::wrapexcept<std::domain_error>',
  pyodide_fatal_error: true
}
CppException boost::wrapexcept<std::domain_error>: Error in function boost::math::erf_inv<double>(double, double): Argument outside range [-1, 1] in inverse erf function (got p=-10).
    at convertCppException (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5912:18)
    at API.fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5925:48)
    at API.maybe_fatal_error (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5963:17)
    at Module.callPyObjectKwargs (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:4552:17)
    at Module.callPyObject (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:4604:25)
    at Qe.apply (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5673:22)
    at Object.apply (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/node_modules/pyodide/pyodide.asm.js:5548:22)
    at main (/home/runner/work/scipy-tests-pyodide/scipy-tests-pyodide/scipy-pytest.js:56:24) {
  ty: 'boost::wrapexcept<std::domain_error>',
  pyodide_fatal_error: true
}

--------------------------------------------------------------------------------
scipy.stats.tests
--------------------------------------------------------------------------------

Reason unclear last lines

test_continuous_basic.py::test_methods_with_lists[studentized_range-args96-ppf] FAILED [ 32%]
test_continuous_basic.py::test_methods_with_lists[studentized_range-args96-isf] scipy.stats.tests exited with exit code 66

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions