mirror of
https://github.com/pyscript/pyscript.git
synced 2026-02-28 14:01:35 -05:00
* Fix #1512 - Improve worker tests + update Pyodide * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
7d3b792a79
commit
50b1a1d7c5
@@ -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");
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
@@ -50,6 +50,6 @@
|
||||
"coincident": "^0.2.3"
|
||||
},
|
||||
"worker": {
|
||||
"blob": "sha256-XIl723wj4b0gyB5IGnLem05DRvl5bzkeMahwAmQFMrM="
|
||||
"blob": "sha256-s/Qe9L8Mxmdjzk/TnVwmMYA5AvEemsRkOeqtZG6uBLM="
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ const { registerPlugin } = require("../cjs");
|
||||
// all tests
|
||||
for (const test of [
|
||||
async function versionedRuntime() {
|
||||
document.head.innerHTML = `<script type="py" version="0.22.1">${content}</script>`;
|
||||
document.head.innerHTML = `<script type="py" version="0.23.2">${content}</script>`;
|
||||
await tick();
|
||||
assert(pyodide.content, content);
|
||||
assert(pyodide.target.tagName, "PY-SCRIPT");
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<script defer src="../counter.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div>See console ➡️</div>
|
||||
<!-- XWorker - JavaScript to MicroPython -->
|
||||
<script type="module">
|
||||
import { XWorker } from "@pyscript/core";
|
||||
@@ -63,17 +63,5 @@
|
||||
w.postMessage('MicroPython: Hello Lua 👋')
|
||||
w.onmessage = handle_message
|
||||
</script>
|
||||
|
||||
<!-- XWorker - MicroPython to Ruby
|
||||
<script type="mpy">
|
||||
from js import XWorker
|
||||
|
||||
def handle_message(event):
|
||||
print(event.data)
|
||||
|
||||
w = XWorker('./worker.rb', type="rb")
|
||||
w.postMessage('MicroPython: Hello Ruby 👋')
|
||||
w.onmessage = handle_message
|
||||
</script><!---->
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user