-
-
Notifications
You must be signed in to change notification settings - Fork 813
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
Update to Python 3.9.5 #1637
Update to Python 3.9.5 #1637
Conversation
Thanks for working on this @hoodmane ! |
A lot of packages are failing to build with the error:
This comes from wasm-opt. If I remove |
# further investigation. This usually seems to be caused by calling into a | ||
# system function that doesn't behave as one would expect. | ||
# - crash-chrome: Same as crash but only affecting Chrome | ||
# - crash-firefox: Same as crash but only affecting Firefox |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should have this list either in that file or here, not both. Otherwise it's going to be annoying to maintain in sync.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I made it so that make_test_list.py
writes this header into python_tests.txt
. python_tests.txt
is a weird mix of a generated file and a hand modified file...
Patch building.py to deal with '[wasm-validator error in module] unexpected true: Imported global cannot be mutable'
Were the issues at build time or at run time? If I revert scikit-learn, scikit-image, statsmodels setup to the version on main, and then change the URL to a GitHub tag 3e28f4a they all build fine for me locally as part of this PR.
|
At build time. I haven't tested whether they build locally until just recently, I was just looking at the CI. My modification to regenerate the statsmodels patches fixed the statsmodels build in CI. They fail with error: no member named 'tp_print' in 'struct _typeobject' in Cython-generated files. See here for example: |
Could you push this here? |
On CI just now the Firefox statsmodels import test passes. Did you try to import it in Chrome or Firefox? We marked that test xfail in Chrome. |
Tests for statsmodels and scikit-image also passed when installed from GH with no other changes, but only after restarting CI. So I wonder if it means there is a function signature mismatch somewhere and it fails half the times. |
Is that a characteristic symptom of function signature mismatch? It does seem particularly flaky here. |
Well one of possible causes pyodide/packages/scipy/meta.yaml Lines 29 to 31 in f9a6899
Actually maybe we should apply those flags globally to all packages. |
Sounds logical to me. |
Is the use of the word "random" here accurate? Or does it really mean that some consistent fraction of the calls will fail? I don't really understand the mechanism that would cause the randomness here. Seems to me that there is a chance we are just hitting on typical CI flakiness here. |
Okay all tests passed. I think we should proceed with merging this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this work @hoodmane !
A few comments otherwise LGTM!
Please also,
- add a changelog entry
- don't forget to push the docker image and update
.circleci/config.yml
I think such issues might explain in part the CI flakiness. It does look like under some conditions emcripten compiled code fails non deterministically, there is some number of such issues in their issue tracker. Also apparently it's a documented behavior for
|
This is certainly good to know. Sad though...
Right... when I read these things I usually plug my ears and scream "unpredictable but repeatable". But one thing UB is allowed to do is fail non repeatably. In the |
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Closes #978