Skip to content

Releases: pyscript/pyscript

2026.7.3

Choose a tag to compare

@WebReflection WebReflection released this 29 Jul 12:06
ad4e87e

2026.7.2

Choose a tag to compare

@WebReflection WebReflection released this 09 Jul 10:37
932dc27

2026.7.1

Choose a tag to compare

@WebReflection WebReflection released this 01 Jul 08:37
0c8e440

2026.6.2

Choose a tag to compare

@WebReflection WebReflection released this 30 Jun 09:37
785031d

2026.6.1

Choose a tag to compare

@ntoll ntoll released this 16 Jun 10:51
691c6ca

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

Choose a tag to compare

@ntoll ntoll released this 02 Mar 14:14
98011af
  • Update to the latest MicroPython (#2454 and pyscript/polyscript#172):
    • weakref support
    • Template strings
    • Complete asyncio.Future support.
    • 4 variants of the wasm build: micropython.wasm (standard), micropython-settrace.wasm (for debugging), micropython-ulab.wasm (ulab = numpy-like API) and micropython-settrace-ulab.wasm (everything).
  • Minor consistency fix in pyscript.web API (#2455 - thanks @iliketocode2)

2026.2.1

Choose a tag to compare

@ntoll ntoll released this 05 Feb 12:58
d6f401a
  • Removed warnings about window and document when sync_main_only config property is true: #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.web API where el.append("string") will now work as expected: #2447 Thanks to new contributor @iliketocode2.
  • Docstring fixes so Markdown API docs render properly: #2449
  • Ensure the remove method 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

Choose a tag to compare

@ntoll ntoll released this 20 Jan 12:00
c3d4998
  • 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_js renamed to context (but everything should still only be referenced via the core pyscript namespace).
    • A much requested change in pyscript.web: use page["#an-id"] to get a single element by id (rather than page.find("#an-id")[0]).
    • In pyscript.web an Element's styles are a Python dict and classes a Python set (rather than custom objects with a similar API to those Python classes).
    • Explicitly use update_all with ElementCollection instances. 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

Choose a tag to compare

@ntoll ntoll released this 25 Nov 11:32
4a801fa
  • Include a new unstuck feature for dealing with web workers stuck in an unresponsive loop (see the docs for more information).
  • A new offline.zip file 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

Choose a tag to compare

@ntoll ntoll released this 10 Nov 10:25
d8250f2
  • 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