Releases: pyscript/pyscript
Releases · pyscript/pyscript
2025.7.3
Release notes
- This release is exclusively worker related:
ImageData
now travels directly from main to workers to allow.data
manipulation and relatedcontext.putImageData(ref)
operations: WebReflection/reflected-ffi#8- a non breaking error about
Promise
unable to travel, due structured clone algorhitm incompatibility, happening when asynchronous handlers are attached to main references, has been fixed: WebReflection/reflected-ffi@663a3e5 - when PyEditor or MpyEditor have multiple related
env
and/or asetup
node, the logic now stops properly all scripts if one of their execution gets somehow stuck, bootstrapping againsetup
nodes when present to fully reset the environment and start keeping latest typed code: #2361 - MicroPython workaround for
Symbol
properties accessed directly via theget
trap when common JS operations are performed on Python proxied objects: see bug micropython/micropython#17657
2025.7.2
Release Notes
- Updated to MicroPython version 1.26.0-preview-293, fixing a regression/bug in release 2027.7.1 (see: MicroPython #17604)
2025.7.1
Release Notes
- added and tested a new PyScript Bridge helper companion, to import from JS Python modules
- fixed a bug in
<label>
#2352 - updated polyscript dependency to its latest which brings in:
- a new
packages_cache = "passthrough"
option, beside"never"
, to avoid lazy micropip initialization and parallelize Pyodide bootstrap when network connection is good and offline ability is not a concern. This should help speeding up bootstrap pyscript/polyscript#138 - added a
debug = True
option in config to help debugging Pyodide pyscript/polyscript#135 - please note this degrades Pyodide performance - updated coincident orchestration to bring back the
service-worker
attribute without needing@pyscript/service-worker
at all and tested in multiple devices, including iOS and iPad OS - updated also coincident ffi logic via a dedicated project able to improve performance a lot, specially with all the JS primitives where performance matters, including TypedArray of all kinds and ArrayBuffer
- coincident ffi also has a smart cache feature that is able to make Pyodide bootstrap and performance nearly 1:1 with the main thread. Roundtrips can be cut off entirely for most JS primitives while DOM nodes or arrays from the main thread are not cached to preserve their constantly mutable state and preserve correctness.
- coincident ffi also exposes some extra feature that is reflected through
pyscript.ffi
, speciallydirect(ref)
to pass directly values instead of holding these on the main thread andassign
to update many fields at once from a worker. Both utilities work seamlessly on either main or worker but on worker these will have a boost.
- a new
2025.5.1
Release notes
- Updated Pyodide to 0.27.6
- Updated MicroPython to 1.25.0
- Automatic redirect to
localhost
when0.0.0.0
is reached: #2328 - Added
py-editor:done
to know when the editor has done processing: #2329 - Created a polyfill based on ServiceWorker to workaround the latest removal of a dependency when headers are missing or Safari is not working: #2334
- Included all 3rd-party licenses within our package: #2343
- Added
debug
config flag to improve debugging in compatible interpreters (currently only Pyodide): pyscript/polyscript#135 - Rewrote
experimental_create_proxy="auto"
to improve edge cases and overall performance: pyscript/polyscript#134 - improved 2X worker to main performance: pyscript/polyscript#132
2025.3.1
2025.2.4: Fix #2302 - Updated Polyscript to its latest (#2303)
Release notes
- Fix a bug that stopped folks from installing wheels copied over to the VFS. #2302
- Update README to acknowledge Anaconda's support of the project. #2297
- Update to latest Pyodide. #2300
- PyEditor stop button to interrupt evaluation of code stuck in an infinite loop. #2295
- Test clean-ups. #2296 and #2292
2025.2.3
2025.2.2
2025.2.1
2024.11.1
Release notes
- Improved terminal emoji handling: #2248
- Fixed Pyodide cache issue with
>=
versioning: #2251 - Exported lazy codemirror module to help PyScript developers using it with or without the PyEditor: #2252
- Fixed duplicated input on narrowed terminal container: #2254
- Updated Pyodide to its latest 0.26.4: https://pyodide.org/en/stable/project/changelog.html