diff --git a/pyscript.core/esm/runtime/pyodide.js b/pyscript.core/esm/runtime/pyodide.js index 244d8eaa..6f56358d 100644 --- a/pyscript.core/esm/runtime/pyodide.js +++ b/pyscript.core/esm/runtime/pyodide.js @@ -14,11 +14,12 @@ const type = "pyodide"; /* c8 ignore start */ export default { type: [type, "py"], - module: (version = "0.22.1") => + module: (version = "0.23.2") => `https://cdn.jsdelivr.net/pyodide/v${version}/full/pyodide.mjs`, - async engine({ loadPyodide }, config) { + async engine({ loadPyodide }, config, url) { const { stderr, stdout, get } = stdio(); - const runtime = await get(loadPyodide({ stderr, stdout })); + const indexURL = url.slice(0, url.lastIndexOf("/")); + const runtime = await get(loadPyodide({ stderr, stdout, indexURL })); if (config.fetch) await fetchPaths(this, runtime, config.fetch); if (config.packages) { await runtime.loadPackage("micropip"); diff --git a/pyscript.core/node.importmap b/pyscript.core/node.importmap index 83d0226b..2e3959bd 100644 --- a/pyscript.core/node.importmap +++ b/pyscript.core/node.importmap @@ -1,7 +1,7 @@ { "imports": { "http://pyodide": "./test/mocked/pyodide.mjs", - "https://cdn.jsdelivr.net/pyodide/v0.22.1/full/pyodide.mjs": "./test/mocked/pyodide.mjs", + "https://cdn.jsdelivr.net/pyodide/v0.23.2/full/pyodide.mjs": "./test/mocked/pyodide.mjs", "http://localhost:8080/micropython/micropython.mjs": "./test/mocked/micropython.mjs", "https://cdn.jsdelivr.net/npm/basic-toml@0.3.1/es.js": "./test/mocked/toml.mjs" } diff --git a/pyscript.core/package.json b/pyscript.core/package.json index bc5e57a2..0f0612eb 100644 --- a/pyscript.core/package.json +++ b/pyscript.core/package.json @@ -50,6 +50,6 @@ "coincident": "^0.2.3" }, "worker": { - "blob": "sha256-XIl723wj4b0gyB5IGnLem05DRvl5bzkeMahwAmQFMrM=" + "blob": "sha256-s/Qe9L8Mxmdjzk/TnVwmMYA5AvEemsRkOeqtZG6uBLM=" } } diff --git a/pyscript.core/test/index.js b/pyscript.core/test/index.js index fa0c19c2..5b67727e 100644 --- a/pyscript.core/test/index.js +++ b/pyscript.core/test/index.js @@ -69,7 +69,7 @@ const { registerPlugin } = require("../cjs"); // all tests for (const test of [ async function versionedRuntime() { - document.head.innerHTML = ``; + document.head.innerHTML = ``; await tick(); assert(pyodide.content, content); assert(pyodide.target.tagName, "PY-SCRIPT"); diff --git a/pyscript.core/test/worker/index.html b/pyscript.core/test/worker/index.html index aecdfac7..543c8425 100644 --- a/pyscript.core/test/worker/index.html +++ b/pyscript.core/test/worker/index.html @@ -14,9 +14,9 @@ } } - +
See console ➡️
- - diff --git a/pyscript.core/test/worker/worker.py b/pyscript.core/test/worker/worker.py index eb7874ae..34bc997e 100644 --- a/pyscript.core/test/worker/worker.py +++ b/pyscript.core/test/worker/worker.py @@ -1,9 +1,12 @@ +import re + from js import xworker def on_message(event): print(event.data) - xworker.postMessage("Pyodide: Hello MicroPython 👋") + foreign = re.search("^[^:]+", event.data).group(0) + xworker.postMessage("Python: Hello " + foreign + " 👋") xworker.onmessage = on_message