npm / pyodide
pyodide
What changed in pyodide 314, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-21.
1 breaking1 new APIs and options9 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initpyodide 31411 changes
Breaking changes 1
Python entry points invoked with stack switching enabled now run with a copy of the context, so their ContextVar.set() calls are not visible to the caller.
New APIs and options 1
Adds a dedent option to control whether source is dedented before execution; it defaults to True, preserving existing behavior. The option is also available on runPythonAsync and the underlying evaluation APIs.
Fixes and other changes 9
No longer reports a loop that is not actually running from inside a function called with stack switching enabled.
When given a requirement specifier such as
numpy>=1.0, it now points tomicropip.install(), which accepts requirement specifiers.Fixed a regression in the interaction between signal handling and stack switching.
Callbacks are now correctly handled when stack switching.
Callbacks are now correctly handled when stack switching.
Top-level code no longer loses its context when suspended stacks resume in a different order than they suspended in.
Values set inside a call that suspends no longer leak into later unrelated stack switches or keep referenced objects alive forever.
Hooks now apply inside a call that stack switches, so async generators created there are handed to the event loop that must shut them down.
Values are now consistently shared with calls that stack switch.