diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2022-09-28 13:04:16 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-28 13:04:16 -0400 |
commit | d677ba67f50e5edb0491d8ed1e4171473d662081 (patch) | |
tree | 9f8740666298ac8e1041fa3e169d8f3a9e074448 /cli/worker.rs | |
parent | 23125b275f282f96a6316d11f97e5603dab0d009 (diff) |
feat(npm): functionality to support child_process.fork (#15891)
Diffstat (limited to 'cli/worker.rs')
-rw-r--r-- | cli/worker.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/cli/worker.rs b/cli/worker.rs index 0454069fa..581d4f90f 100644 --- a/cli/worker.rs +++ b/cli/worker.rs @@ -354,7 +354,6 @@ pub async fn create_main_worker( ps.npm_resolver .add_package_reqs(vec![package_ref.req.clone()]) .await?; - ps.prepare_node_std_graph().await?; let node_resolution = node::node_resolve_binary_export( &package_ref.req, package_ref.sub_path.as_deref(), @@ -363,9 +362,20 @@ pub async fn create_main_worker( let is_main_cjs = matches!(node_resolution, node::NodeResolution::CommonJs(_)); (node_resolution.into_url(), is_main_cjs) + } else if ps.npm_resolver.is_npm_main() { + let node_resolution = + node::url_to_node_resolution(main_module, &ps.npm_resolver)?; + let is_main_cjs = + matches!(node_resolution, node::NodeResolution::CommonJs(_)); + (node_resolution.into_url(), is_main_cjs) } else { (main_module, false) }; + + if ps.npm_resolver.has_packages() { + ps.prepare_node_std_graph().await?; + } + let module_loader = CliModuleLoader::new(ps.clone()); let maybe_inspector_server = ps.maybe_inspector_server.clone(); |