Conversation
|
I see that SciPy is being reverted from v1.13.0 to v1.12.0 in #4712 – I'm not sure what that means, so I'll be happy to wait until further progress or discussion on that PR (my understanding is that whichever packages still pass the tests with newer versions can stay and will not be reverted?) |
We do one big PR for all the easy packages and then have to handle the ones that cause trouble one at a time as we have time. Please go ahead with working on this PR. If there is a conflict with #4712 for some reason I can help resolve it. |
|
@agriyakhetarpal just curious, what is the status of this? Since you mentioned "as as I look to fix some of the older patches locally" I am guessing that you are still working on updating the patches? For some weird reasons, it looks like the full CI was not run (random guess maybe because this is a Draft PR, although seems unlikely), can you try pushing an empty commit to trigger the CI again? I was confused and thought this PR was green untill I unfolded the "All checks" and found out that there are only readthedocs and pre-commit ... |
Hi, @lesteve, thank you for the ping. I have just returned to this PR late last week, and I was going to post an update today about how this is going, so, yes, doing this and updating the patches here is well on my radar for this week. I'll be sure to request help wherever I don't understand something fully!
Ah, I guess the full CI was not run because I added the |
|
Ah makes sense I missed the |
|
It's an unfortunate thing about Skip Ci. Maybe we should add a "ci ran" check. Of course we can merge changes that skip CI, but the Ci is flaky enough that we merge failing CI a lot. |
[skip ci]
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
The patch is updated to account for the change from wrap_dummy_g77_abi.f to wrap_dummy_g77_abi.c, in which case return values of methods are changed in order to return integer values rather than void based on Emscripten regulations. Changes to fblas_l1.pyf.src have been dropped, putting into consideration the fact that they have made it upstream to v1.13.0 already and are most likely fixed. Co-Authored-By: Joe Marshall <joe.marshall@nottingham.ac.uk>
eda368c to
725cc1e
Compare
|
I rebased on top of the latest changes from the |
|
I assume that the failures under |
|
Oops, it looks like Edit: never mind, I saw that some new builds popped up on CircleCI. |
|
Note to self: most of the errors look to be coming from Fortran code because the f2c sub-command failed; I have to look at syntax errors in a few files, remove warnings about a few compiler flags (probably replace -Wno-maybe-unintialized with -Wno-unintialized and look at how Emscripten sets runtime search paths because -rpath was reported to be unknown, etc.), and correctly identify the file leading to the cause of the error (I am currently browsing through the logs on a mobile device and that does not help) – it's most likely inside FITPACK. |
Btw, @hoodmane, if you could elaborate on this slightly, I would be happy to add this "ci ran" check in some shape or form (if the change would not be non-trivial, that is, of course). |
|
The errors were in if(t(i).le.t(i-1))then; ier=30; go to 80; endif
...
if(x(1).lt.t(k1) .or. x(m).gt.t(nk2))then; ier=40; go to 80;
endif
...
if(i.ge.m)then; ier=50; go to 80; endifand so on. I checked the file versus SciPy v1.12 and scipy/scipy@ and now SciPy v1.13.0 builds successfully (🎉): workflow logs. I'll wait for the build to finish, following which I can add a CHANGELOG entry when this will be merged (please let me know if I should skip CI for that one) and complete the rest of the checklists. |
|
Never mind, there are 4 failures out of 5 tests on SciPy: Edit: and similarly for |
|
I don't entirely know how to debug this and I am afraid that my attempts to look further did not lead to much insight. As far as I understand, not being experienced with Fortran codes, there could be a missing Happy to receive suggestions on how I can debug this further and work towards a solution, @ryanking13 and @hoodmane – your comments will be highly appreciated! |
|
I'll take a look when I have a minute. At pycon right now. |
Every patch that makes sense to upstream (which should include most/all test skips) is welcome to be upstreamed for SciPy, so after adding the patch here to make this PR green it makes sense to me up upstream it so that when SciPy 1.15.0 comes around the patch here can be dropped. It doesn't really matter that SciPy doesn't yet have an out-of-tree build, we carry lots of fixes for things like niche CPU architectures that Debian supports or for AIX, none of which we test in CI. |
packages/scipy/patches/0005-Remove-test-modules-that-fails-to-build.patch
Outdated
Show resolved
Hide resolved
|
All tests passing after relevant ones were skipped or removed: https://github.com/pyodide/pyodide/actions/runs/10320686508/job/28573393091 |
|
The CircleCI test failures aren't related, I think, because they show that they timed out. I don't have permissions to re-run the CircleCI runners. Could someone trigger a re-run for them? Edit: I merged |
Hmm, that's strange, CircleCI roles and permission settings are inherited from GitHub, so you should be able to run it. I sent you an circle CI invite link just in case. |
There was a problem hiding this comment.
Thanks a lot @agriyakhetarpal! Let me go ahead and merge this. If the test timeout keep occurs, please increase the timeout.
|
I see that the test_SVDS_PROPACK test that we skip for GHA |
|
(maybe we merged too early) |
Add CHANGELOG entry for #4719, skip PROPACK test for `scipy.sparse.linalg._eigen`
Also add an entry for gensim which was upgraded in pyodide#4719 and missed in pyodide#5000
…sting (#7525) This PR follows up on changes made in gh-7350. Here's a small, point-wise summary noting the changes here: - It updates the Emscripten/Pyodide CI job added in gh-7350 and removes the workaround JavaScript-based test suite file, since we fixed the `s_cmp` OpenBLAS unresolved symbol coming from SciPy upstream, having updated SciPy in-tree in Pyodide (see pyodide/pyodide#4719, pyodide/pyodide#5012, pyodide/pyodide#5031, and more). This should make the testing slightly cleaner than before, and the test suite now runs till the end without any Pyodide fatal errors being reported. The [Pyodide xbuildenv](https://github.com/pyodide/pyodide/releases/tag/0.27.0a2) can now be used to set up a virtual environment in which the tests can be run in the same way they were before. The [`pyodide-build` tool](https://github.com/pyodide/pyodide-build) has been unvendored from the Pyodide repository and now infers the Pyodide version from the releases, downloading the relevant files from the GitHub release. Hence, the `PYODIDE_VERSION` environment variable is no longer required. - There were some tests that have been failing on 32-bit platforms, which were last discussed quite a while ago: #3091. They surprisingly passed in a WASM 32-bit environment here without issues, which is great. I have updated the skipping conditions to accommodate this. - There's a known problem with the pytest bytecode generation when running the tests with the xbuildenv interpreter – I disabled the pytest internal cache plugin to fix that, but ignoring the warning (pypa/cibuildwheel#1966 (comment)) works equally as well. Please let me know if there is a preference. :) Additional context - Pyodide CI support was first discussed in gh-7265. - At the time of writing, Pyodide 0.27alpha2 is used in the CI job; once 0.27 stable comes out (should be soon) and `cibuildwheel` updates to it, that (plus this PR) will help unblock another PR that I had opened a while back: gh-7440. I can rebase that PR when ready. - pyodide/pyodide#4871 (comment) --- Co-authored-by: Lars Grüter <20140352+lagru@users.noreply.github.com>
Description
This PR bumps the in-tree SciPy version in the Pyodide distribution to v1.13.0. This is an in-progress change, as I look to fix some of the older patches locally, and therefore this PR is being opened for purposes of visibility only at this time.
cc: @rgommers, and the package maintainers @lesteve, @steppi as listed in the recipe.
To be done
scipy/_build_utils/src/wrap_g77_abi.c– changed fromscipy/_build_utils/src/wrap_g77_abi.fin SciPy v1.12.0imports:Checklists