diff --git a/pyodide-build/pyodide_build/buildall.py b/pyodide-build/pyodide_build/buildall.py index d4c08193a..60ca6b2a6 100755 --- a/pyodide-build/pyodide_build/buildall.py +++ b/pyodide-build/pyodide_build/buildall.py @@ -457,9 +457,16 @@ def generate_packages_json( output_dir: Path, pkg_map: dict[str, BasePackage] ) -> dict[str, dict[str, Any]]: """Generate the package.json file""" + + import sys + + sys.path.append(str(common.get_pyodide_root() / "src/py")) + from pyodide import __version__ + # Build package.json data. + [platform, _, arch] = common.platform().rpartition("_") package_data: dict[str, dict[str, Any]] = { - "info": {"arch": "wasm32", "platform": "Emscripten-1.0"}, + "info": {"arch": arch, "platform": platform, "version": __version__}, "packages": {}, } diff --git a/pyodide-build/pyodide_build/tests/test_buildall.py b/pyodide-build/pyodide_build/tests/test_buildall.py index 947d52862..6767aa763 100644 --- a/pyodide-build/pyodide_build/tests/test_buildall.py +++ b/pyodide-build/pyodide_build/tests/test_buildall.py @@ -33,7 +33,10 @@ def test_generate_packages_json(tmp_path): package_data = buildall.generate_packages_json(tmp_path, pkg_map) assert set(package_data.keys()) == {"info", "packages"} - assert package_data["info"] == {"arch": "wasm32", "platform": "Emscripten-1.0"} + assert set(package_data["info"].keys()) == {"arch", "platform", "version"} + assert package_data["info"]["arch"] == "wasm32" + assert package_data["info"]["platform"].startswith("emscripten") + assert set(package_data["packages"]) == { "pkg_1", "pkg_1_1",