diff --git a/MODULE.bazel b/MODULE.bazel index f6860655898..72e4a241a1b 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -45,6 +45,7 @@ include("//build/deps:gen/shared_deps.MODULE.bazel") include("//build/deps:rust.MODULE.bazel") include("//build/deps:nodejs.MODULE.bazel") include("//build/deps:python.MODULE.bazel") +include("//build/deps:pyodide.MODULE.bazel") include("//build/deps:v8.MODULE.bazel") include("//build/deps:oci.MODULE.bazel") include("//build/deps/formatters:rustfmt.MODULE.bazel") diff --git a/build/deps/dep_pyodide.bzl b/build/deps/dep_pyodide.bzl index 010ca57be69..b95df833ec0 100644 --- a/build/deps/dep_pyodide.bzl +++ b/build/deps/dep_pyodide.bzl @@ -149,12 +149,3 @@ def dep_pyodide(): deps += _snapshot_http_files() return deps - -def _impl(module_ctx): - deps = dep_pyodide() - return module_ctx.extension_metadata( - root_module_direct_deps = deps, - root_module_direct_dev_deps = [], - ) - -pyodide = module_extension(implementation = _impl) diff --git a/build/deps/pyodide.MODULE.bazel b/build/deps/pyodide.MODULE.bazel new file mode 100644 index 00000000000..0c465451fc1 --- /dev/null +++ b/build/deps/pyodide.MODULE.bazel @@ -0,0 +1,39 @@ +# The repos below are derived from //:build/python_metadata.bzl, so this list is maintained by +# `bazel mod tidy` rather than by hand. + +pyodide = use_extension("@//build/deps:pyodide.bzl", "pyodide") +use_repo( + pyodide, + "all_pyodide_wheels_20240829.4", + "all_pyodide_wheels_20250808", + "beautifulsoup4_src_0.26.0a2", + "beautifulsoup4_src_0.28.2", + "beautifulsoup4_src_314.0.4", + "beautifulsoup4_src_development", + "fastapi_src_0.26.0a2", + "fastapi_src_0.28.2", + "numpy_src_0.28.2", + "numpy_src_314.0.4", + "numpy_src_development", + "pyodide-0.26.0a2", + "pyodide-0.28.2", + "pyodide-314.0.4", + "pyodide-snapshot-baseline-2ffc5dfa7.bin", + "pyodide-snapshot-baseline-4569679fb.bin", + "pyodide-snapshot-baseline-61eedf943.bin", + "pyodide-snapshot-snapshot_a6b652a95810783f5078b9a5dbd4a07c30718acb4ff724e82c25db7353dd7f2d.bin", + "pyodide_0.26.0a2_2024-03-01_84.capnp.bin", + "pyodide_0.28.2_2025-01-16_15.capnp.bin", + "pyodide_314.0.4_2026-06-10_15.capnp.bin", + "pyodide_dev.capnp.bin", + "pytest-asyncio_src_0.26.0a2", + "pytest-asyncio_src_0.28.2", + "pytest-asyncio_src_314.0.4", + "pytest-asyncio_src_development", + "python-workers-runtime-sdk_src_0.26.0a2", + "python-workers-runtime-sdk_src_0.28.2", + "python-workers-runtime-sdk_src_314.0.4", + "python-workers-runtime-sdk_src_development", + "scipy_src_0.26.0a2", + "shapely_src_0.28.2", +) diff --git a/build/deps/pyodide.bzl b/build/deps/pyodide.bzl new file mode 100644 index 00000000000..9c7fb9f05af --- /dev/null +++ b/build/deps/pyodide.bzl @@ -0,0 +1,12 @@ +load("@workerd//build/deps:dep_pyodide.bzl", "dep_pyodide") + +def _pyodide_impl(module_ctx): + direct_deps = dep_pyodide() + return module_ctx.extension_metadata( + root_module_direct_deps = direct_deps, + root_module_direct_dev_deps = [], + ) + +pyodide = module_extension( + implementation = _pyodide_impl, +) diff --git a/build/deps/python.MODULE.bazel b/build/deps/python.MODULE.bazel index fd4cb217a0e..39ccbf28e52 100644 --- a/build/deps/python.MODULE.bazel +++ b/build/deps/python.MODULE.bazel @@ -16,40 +16,3 @@ pip.parse( requirements_lock = "//build/deps:requirements.txt", ) use_repo(pip, "py_deps", "v8_python_deps") - -pyodide = use_extension("//build/deps:dep_pyodide.bzl", "pyodide") -use_repo( - pyodide, - "all_pyodide_wheels_20240829.4", - "all_pyodide_wheels_20250808", - "beautifulsoup4_src_0.26.0a2", - "beautifulsoup4_src_0.28.2", - "beautifulsoup4_src_314.0.4", - "beautifulsoup4_src_development", - "fastapi_src_0.26.0a2", - "fastapi_src_0.28.2", - "numpy_src_0.28.2", - "numpy_src_314.0.4", - "numpy_src_development", - "pyodide-0.26.0a2", - "pyodide-0.28.2", - "pyodide-314.0.4", - "pyodide-snapshot-baseline-2ffc5dfa7.bin", - "pyodide-snapshot-baseline-4569679fb.bin", - "pyodide-snapshot-baseline-61eedf943.bin", - "pyodide-snapshot-snapshot_a6b652a95810783f5078b9a5dbd4a07c30718acb4ff724e82c25db7353dd7f2d.bin", - "pyodide_0.26.0a2_2024-03-01_84.capnp.bin", - "pyodide_0.28.2_2025-01-16_15.capnp.bin", - "pyodide_314.0.4_2026-06-10_15.capnp.bin", - "pyodide_dev.capnp.bin", - "pytest-asyncio_src_0.26.0a2", - "pytest-asyncio_src_0.28.2", - "pytest-asyncio_src_314.0.4", - "pytest-asyncio_src_development", - "python-workers-runtime-sdk_src_0.26.0a2", - "python-workers-runtime-sdk_src_0.28.2", - "python-workers-runtime-sdk_src_314.0.4", - "python-workers-runtime-sdk_src_development", - "scipy_src_0.26.0a2", - "shapely_src_0.28.2", -)