Conversation
b7bd24b to
75e5325
Compare
- Bump Python version from 3.13.2 to 3.14.0 - Update PYODIDE_ABI_VERSION to 2026_0 - Update pyo3 version from 0.24.0 to 0.27.0 - Remove upstreamed CPython patches (wasm-gc trampoline, iPad detection, ZoneInfo) - Update various version references and config files for Python 3.14 - Sync package-lock.json and other dependencies
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
This reverts commit ccf65a3.
| del exc_info | ||
| assert v == ["{1}", "{2}", "{3}", "{4}"] | ||
| assert sys.getrefcount(v) == 2 | ||
| assert sys.getrefcount(v) == 1 |
There was a problem hiding this comment.
My guess is that this is related to refcount optimization in CPython 3.14
|
|
||
|
|
||
| @requires_jspi | ||
| @pytest.mark.requires_dynamic_linking |
There was a problem hiding this comment.
I had issues making JSPI work in no-dylink build. Disabling for now.
| msg = "hiwire_{} on invalid reference 77. This is most likely due to use after free. It may also be due to memory corruption." | ||
| msg = "hiwire_{} on invalid reference 12345. This is most likely due to use after free. It may also be due to memory corruption." |
There was a problem hiding this comment.
The hiwire value for this index seems unstable, and I wonder if there is a better way to test this.
There was a problem hiding this comment.
If we're going to delete this, let's do it in a separate PR.
There was a problem hiding this comment.
Sounds good. I didn't realize that I removed this patch.
cpython/patches/0005-Remove-JSPI-related-parts-in-emscripten_syscalls.c.patch
Show resolved
Hide resolved
| // | ||
| // Changelog: | ||
| // - Python 3.14: | ||
| // asyncio state (running loop and task) is now stored directly | ||
| // in _PyThreadStateImpl fields (asyncio_running_loop, asyncio_running_task) | ||
| // instead of in a global dictionary. |
There was a problem hiding this comment.
I don't think we need this, people can look at git history if they care.
| void | ||
| restoreAsyncioState(AsyncioState as) | ||
| { | ||
| if (as.task == NULL) { |
There was a problem hiding this comment.
We should remove saveAsyncioState and restoreAsyncioState entirely since this function doesn't do anything anymore.
Preparing for Python update. Merging this PR doesn't mean that we are freezing ABI. We should decide when we freeze the ABI separately.
Checklist
2026_0or somthing