@@ -555,87 +555,27 @@ void WorkerdApi::compileModules(jsg::Lock& lockParam,
555555 auto path = kj::Path::parse (mainModule->getName ());
556556 modules->add (path, kj::mv (KJ_REQUIRE_NONNULL (info)));
557557 }
558+
558559 // Inject metadata that the entrypoint module will read.
559- {
560- using ModuleInfo = jsg::ModuleRegistry::ModuleInfo;
561- using ObjectModuleInfo = jsg::ModuleRegistry::ObjectModuleInfo;
562- using ResolveMethod = jsg::ModuleRegistry::ResolveMethod;
563- auto specifier = " pyodide-internal:runtime-generated/metadata" ;
564- auto metadataReader = makePyodideMetadataReader (conf, impl->pythonConfig );
565- modules->addBuiltinModule (specifier,
566- [specifier = kj::str (specifier), metadataReader = kj::mv (metadataReader)](
567- jsg::Lock& js, ResolveMethod, kj::Maybe<const kj::Path&>&) mutable {
568- auto & wrapper = JsgWorkerdIsolate_TypeWrapper::from (js.v8Isolate );
569- auto wrap = wrapper.wrap (js.v8Context (), kj::none, kj::mv (metadataReader));
570- return kj::Maybe (ModuleInfo (js, specifier, kj::none, ObjectModuleInfo (js, wrap)));
571- },
572- jsg::ModuleRegistry::Type::INTERNAL);
573- }
560+ modules->addBuiltinModule (" pyodide-internal:runtime-generated/metadata" ,
561+ makePyodideMetadataReader (conf, impl->pythonConfig ), jsg::ModuleRegistry::Type::INTERNAL);
562+
574563 // Inject artifact bundler.
575- {
576- using ModuleInfo = jsg::ModuleRegistry::ModuleInfo;
577- using ObjectModuleInfo = jsg::ModuleRegistry::ObjectModuleInfo;
578- using ResolveMethod = jsg::ModuleRegistry::ResolveMethod;
579- auto specifier = " pyodide-internal:artifacts" ;
580- modules->addBuiltinModule (specifier,
581- [specifier = kj::str (specifier)](
582- jsg::Lock& js, ResolveMethod, kj::Maybe<const kj::Path&>&) mutable {
583- auto & wrapper = JsgWorkerdIsolate_TypeWrapper::from (js.v8Isolate );
584- auto wrap =
585- wrapper.wrap (js.v8Context (), kj::none, ArtifactBundler::makeDisabledBundler ());
586- return kj::Maybe (ModuleInfo (js, specifier, kj::none, ObjectModuleInfo (js, wrap)));
587- },
588- jsg::ModuleRegistry::Type::INTERNAL);
589- }
564+ modules->addBuiltinModule (" pyodide-internal:artifacts" ,
565+ ArtifactBundler::makeDisabledBundler (), jsg::ModuleRegistry::Type::INTERNAL);
590566
591567 // Inject jaeger internal tracer in a disabled state (we don't have a use for it in workerd)
592- {
593- using ModuleInfo = jsg::ModuleRegistry::ModuleInfo;
594- using ObjectModuleInfo = jsg::ModuleRegistry::ObjectModuleInfo;
595- using ResolveMethod = jsg::ModuleRegistry::ResolveMethod;
596- auto specifier = " pyodide-internal:internalJaeger" ;
597- modules->addBuiltinModule (specifier,
598- [specifier = kj::str (specifier)](
599- jsg::Lock& js, ResolveMethod, kj::Maybe<const kj::Path&>&) mutable {
600- auto & wrapper = JsgWorkerdIsolate_TypeWrapper::from (js.v8Isolate );
601- auto wrap = wrapper.wrap (js.v8Context (), kj::none, DisabledInternalJaeger::create ());
602- return kj::Maybe (ModuleInfo (js, specifier, kj::none, ObjectModuleInfo (js, wrap)));
603- },
604- jsg::ModuleRegistry::Type::INTERNAL);
605- }
568+ modules->addBuiltinModule (" pyodide-internal:internalJaeger" , DisabledInternalJaeger::create (),
569+ jsg::ModuleRegistry::Type::INTERNAL);
606570
607571 // Inject disk cache module
608- {
609- using ModuleInfo = jsg::ModuleRegistry::ModuleInfo;
610- using ObjectModuleInfo = jsg::ModuleRegistry::ObjectModuleInfo;
611- using ResolveMethod = jsg::ModuleRegistry::ResolveMethod;
612- auto specifier = " pyodide-internal:disk_cache" ;
613- auto diskCache = jsg::alloc<DiskCache>(impl->pythonConfig .packageDiskCacheRoot );
614- modules->addBuiltinModule (specifier,
615- [specifier = kj::str (specifier), diskCache = kj::mv (diskCache)](
616- jsg::Lock& js, ResolveMethod, kj::Maybe<const kj::Path&>&) mutable {
617- auto & wrapper = JsgWorkerdIsolate_TypeWrapper::from (js.v8Isolate );
618- auto wrap = wrapper.wrap (js.v8Context (), kj::none, kj::mv (diskCache));
619- return kj::Maybe (ModuleInfo (js, specifier, kj::none, ObjectModuleInfo (js, wrap)));
620- },
621- jsg::ModuleRegistry::Type::INTERNAL);
622- }
572+ modules->addBuiltinModule (" pyodide-internal:disk_cache" ,
573+ jsg::alloc<DiskCache>(impl->pythonConfig .packageDiskCacheRoot ),
574+ jsg::ModuleRegistry::Type::INTERNAL);
623575
624576 // Inject a (disabled) SimplePythonLimiter
625- {
626- using ModuleInfo = jsg::ModuleRegistry::ModuleInfo;
627- using ObjectModuleInfo = jsg::ModuleRegistry::ObjectModuleInfo;
628- using ResolveMethod = jsg::ModuleRegistry::ResolveMethod;
629- auto specifier = " pyodide-internal:limiter" ;
630- modules->addBuiltinModule (specifier,
631- [specifier = kj::str (specifier)](
632- jsg::Lock& js, ResolveMethod, kj::Maybe<const kj::Path&>&) mutable {
633- auto & wrapper = JsgWorkerdIsolate_TypeWrapper::from (js.v8Isolate );
634- auto wrap = wrapper.wrap (js.v8Context (), kj::none, SimplePythonLimiter::makeDisabled ());
635- return kj::Maybe (ModuleInfo (js, specifier, kj::none, ObjectModuleInfo (js, wrap)));
636- },
637- jsg::ModuleRegistry::Type::INTERNAL);
638- }
577+ modules->addBuiltinModule (" pyodide-internal:limiter" , SimplePythonLimiter::makeDisabled (),
578+ jsg::ModuleRegistry::Type::INTERNAL);
639579 }
640580
641581 for (auto module : confModules) {
0 commit comments