Skip to content

Commit 95add6c

Browse files
committed
Preparing better lockFileContents for Pyodide 0.28.1
1 parent 2f800a9 commit 95add6c

File tree

12 files changed

+153
-148
lines changed

12 files changed

+153
-148
lines changed

docs/index.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/index.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/zip-Cv6FEM4N.js

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/zip-Cv6FEM4N.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

esm/interpreter/pyodide.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ const indexURLs = new WeakMap();
6969

7070
export default {
7171
type,
72-
module: (version = '0.27.7') =>
72+
module: (version = '0.28.1') =>
7373
`https://cdn.jsdelivr.net/pyodide/v${version}/full/pyodide.mjs`,
7474
async engine({ loadPyodide, version }, config, url, baseURL) {
7575
progress('Loading Pyodide');
@@ -99,17 +99,19 @@ export default {
9999
// packages are uniquely stored as JSON key
100100
const key = stringify(packages);
101101
if (storage.has(key)) {
102-
const blob = new Blob(
103-
[storage.get(key)],
104-
{ type: 'application/json' },
105-
);
106-
// this should be used to bootstrap loadPyodide
107-
options.lockFileURL = URL.createObjectURL(blob);
108-
// versions are not currently understood by pyodide when
109-
// a lockFileURL is used instead of micropip.install(packages)
110-
// https://github.com/pyodide/pyodide/issues/5135#issuecomment-2441038644
111-
// https://github.com/pyscript/pyscript/issues/2245
112-
options.packages = packages.map(name => name.split(/[>=<]=/)[0]);
102+
const value = storage.get(key);
103+
if (save && !version.startsWith('0.27'))
104+
options.lockFileContents = Promise.resolve(value);
105+
else {
106+
const blob = new Blob([value], { type: 'application/json' });
107+
// this should be used to bootstrap loadPyodide
108+
options.lockFileURL = URL.createObjectURL(blob);
109+
// versions are not currently understood by pyodide when
110+
// a lockFileURL is used instead of micropip.install(packages)
111+
// https://github.com/pyodide/pyodide/issues/5135#issuecomment-2441038644
112+
// https://github.com/pyscript/pyscript/issues/2245
113+
options.packages = packages.map(name => name.split(/[>=<]=/)[0]);
114+
}
113115
packages = null;
114116
}
115117
}

esm/interpreter/webr.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ const run = async (interpreter, code) => {
1919
export default {
2020
type,
2121
experimental: true,
22-
module: (version = '0.5.5-dev') =>
22+
module: (version = '0.5.4') =>
2323
`https://cdn.jsdelivr.net/npm/webr@${version}/dist/webr.mjs`,
2424
async engine(module, config, _, baseURL) {
2525
const { get } = stdio();

node.importmap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"imports": {
33
"http://pyodide": "./test/mocked/pyodide.mjs",
4-
"https://cdn.jsdelivr.net/pyodide/v0.27.7/full/pyodide.mjs": "./test/mocked/pyodide.mjs",
5-
"https://cdn.jsdelivr.net/npm/@micropython/[email protected]386/micropython.mjs": "./test/mocked/micropython.mjs",
4+
"https://cdn.jsdelivr.net/pyodide/v0.28.1/full/pyodide.mjs": "./test/mocked/pyodide.mjs",
5+
"https://cdn.jsdelivr.net/npm/@micropython/[email protected]464/micropython.mjs": "./test/mocked/micropython.mjs",
66
"./3rd-party/toml.js": "./test/mocked/toml.mjs"
77
}
88
}

package-lock.json

Lines changed: 121 additions & 121 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,17 @@
4747
"license": "APACHE-2.0",
4848
"devDependencies": {
4949
"@node-loader/import-maps": "^1.1.0",
50-
"@playwright/test": "^1.54.1",
50+
"@playwright/test": "^1.54.2",
5151
"@rollup/plugin-node-resolve": "^16.0.1",
5252
"@rollup/plugin-terser": "^0.4.4",
53-
"@zip.js/zip.js": "^2.7.64",
53+
"@zip.js/zip.js": "^2.7.72",
5454
"c8": "^10.1.3",
5555
"chokidar": "^4.0.3",
56-
"eslint": "^9.31.0",
56+
"eslint": "^9.32.0",
5757
"linkedom": "^0.18.11",
58-
"rollup": "^4.45.1",
58+
"rollup": "^4.46.2",
5959
"static-handler": "^0.5.3",
60-
"typescript": "^5.8.3"
60+
"typescript": "^5.9.2"
6161
},
6262
"type": "module",
6363
"module": "./dist/index.js",
@@ -83,7 +83,7 @@
8383
"./package.json": "./package.json"
8484
},
8585
"dependencies": {
86-
"@webreflection/fetch": "^0.1.5",
86+
"@webreflection/fetch": "^0.2.0",
8787
"@webreflection/idb-map": "^0.3.2",
8888
"@webreflection/utils": "^0.1.1",
8989
"basic-devtools": "^0.1.6",
@@ -95,6 +95,6 @@
9595
"to-json-callback": "^0.1.1"
9696
},
9797
"worker": {
98-
"blob": "sha256-d7SYf82fGwDeepoQQTqVQLvjLDIMpNGufbRrGAk9tM0="
98+
"blob": "sha256-DZ81ixhnlzIrT6B/ZFVItg4abAx60k37f0qWG2Tk6gU="
9999
}
100100
}

test/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ import("../esm/index.js").then(async polyscript => {
7676
// all tests
7777
for (const test of [
7878
async function versionedRuntime() {
79-
document.head.innerHTML = `<script type="pyodide" version="0.27.7">${content}</script>`;
79+
document.head.innerHTML = `<script type="pyodide" version="0.28.1">${content}</script>`;
8080
await tick();
8181
assert(pyodide.content, dedent(content));
8282
assert(pyodide.target.tagName, "PYODIDE-SCRIPT");

0 commit comments

Comments
 (0)