Releases: pyscript/pyscript
Releases · pyscript/pyscript
Release list
2026.7.3
- updated Pyodide to version 314.0.3 via pyscript/polyscript#186
- forced-disabled package cache when the config contains relative/local files instead via pyscript/polyscript#184
- migrated Polyscript to oxlint due eslint vulnerabilities and/or problematic CommonJS-first approach via pyscript/polyscript#188
- updated all dev/dependencies, including Polyscript/Pyodide, and migrated to oxlint in PyScript too
2026.7.2
- PyEditor - Fixed thrown error on output removal
2026.7.1
- updated Pyodide to its latest 314.0.2 version
2026.6.2
- Updated Polyscript and Pyodide to its latest 314.0.1 version
- this is @WebReflection mostly testing the release instructions wrote by @ntoll
2026.6.1
- Updated Pyodide to its 3.14 version: https://pyodide.org/en/stable/project/changelog.html#version-314-0-0
- Removed experimental remote packages, now supported by default: https://github.com/pyscript/pyscript/discussions/2470
- Landed the ability to use ulab and settrace for debugging MicroPython: pyscript/polyscript#173
- Various improvement to the PyEditor: #2472
- Minor maintenance and dev-dependencies related updates around the stack
Breaking
Other runtimes have mostly been removed due little interest so that we're currently supporting MicroPython and Pyodide and, for the time being, not much else.
2026.3.1
- Update to the latest MicroPython (#2454 and pyscript/polyscript#172):
weakrefsupport- Template strings
- Complete
asyncio.Futuresupport. - 4 variants of the wasm build:
micropython.wasm(standard),micropython-settrace.wasm(for debugging),micropython-ulab.wasm(ulab = numpy-like API) andmicropython-settrace-ulab.wasm(everything).
- Minor consistency fix in
pyscript.webAPI (#2455 - thanks @iliketocode2)
2026.2.1
- Removed warnings about
windowanddocumentwhensync_main_onlyconfig property istrue: #2434 - Improved errors on bootstrap when the config cannot be parsed or contains errors: #2435
- Updated Pyodide to its 0.29.3 version: https://pyodide.org/en/stable/project/changelog.html
- Improved packages resolution by ignoring case-sensitive names: pyscript/polyscript#168
- Removed the legacy, archived, toml-j0.4 parser #2442 in favor of our own improved basic-toml parser pyscript/polyscript#171
- Improved
pyscript.webAPI whereel.append("string")will now work as expected: #2447 Thanks to new contributor @iliketocode2. - Docstring fixes so Markdown API docs render properly: #2449
- Ensure the
removemethod for CSS classes is more forgiving (it logs a warning rather than throws an exception if the class to be removed does not exist): #2450 - Documentation updates given feedback by users: pyscript/docs#209 pyscript/docs#210 (thanks for the suggestion @clayote).
2026.1.1
- Minor fixes in coincident.
- Removed WebR (for the time being) and improved packages details in polyscript.
- Updated polyscript module to include latest coincident and latest Pyodide 0.29.1.
- INCLUDES BREAKING CHANGES API/docstring refactor #2414
magic_jsrenamed tocontext(but everything should still only be referenced via the corepyscriptnamespace).- A much requested change in
pyscript.web: usepage["#an-id"]to get a single element by id (rather thanpage.find("#an-id")[0]). - In
pyscript.weban Element's styles are a Pythondictand classes a Pythonset(rather than custom objects with a similar API to those Python classes). - Explicitly use
update_allwithElementCollectioninstances. You used to be able to do implicit changes via:my_collection.innerHTML = "foo". Feedback was this felt risky (folks thought they were mutating an element, not an element collection and they were getting strange results). Now you just:my_collection.update_all(innerHTML="foo")which also makes it more obvious what's going on. - Extensive rewrite of docstrings with examples. These form the basis of our new API docs.
- Added many more tests for the purpose of coverage and testing edge-cases.
2025.11.2
- Include a new
unstuckfeature for dealing with web workers stuck in an unresponsive loop (see the docs for more information). - A new
offline.zipfile is added to each release. This is an archive of an offline-first version of PyScript.
Full Changelog: 2025.11.1...2025.11.2
2025.11.1
- PyScript does not throw errors anymore if a package is not available in the official Pyodide packages "graph". See this PR for more details.
- PyScript allows passing File and Blob instances to any worker from the main thread, through worker related Python code. See this change for the underlying technical details.
Full Changelog: 2025.10.3...2025.11.1