@@ -23,12 +23,19 @@ use deno_graph::ModuleGraph;
2323use deno_lib:: util:: hash:: FastInsecureHasher ;
2424use deno_lib:: worker:: create_isolate_create_params;
2525use deno_path_util:: resolve_url_or_path;
26+ use deno_resolver:: npm:: DenoInNpmPackageChecker ;
27+ use deno_runtime:: deno_permissions:: PermissionsContainer ;
28+ use deno_runtime:: permissions:: RuntimePermissionDescriptorParser ;
29+ use deno_runtime:: worker:: WorkerOptions ;
30+ use deno_runtime:: worker:: WorkerServiceOptions ;
2631use node_resolver:: ResolutionMode ;
2732
2833use super :: LAZILY_LOADED_STATIC_ASSETS ;
2934use super :: ResolveArgs ;
3035use super :: ResolveError ;
3136use crate :: args:: TypeCheckMode ;
37+ use crate :: npm:: CliNpmResolver ;
38+ use crate :: sys:: CliSys ;
3239use crate :: tsc:: Diagnostics ;
3340use crate :: tsc:: ExecError ;
3441use crate :: tsc:: LoadError ;
@@ -175,7 +182,7 @@ deno_core::extension!(deno_cli_tsc,
175182 ext. esm_files. to_mut( ) . push( ExtensionFileSource :: new_computed( "ext:deno_cli_tsc/99_main_compiler.js" , crate :: tsc:: MAIN_COMPILER_SOURCE . as_str( ) . into( ) ) ) ;
176183 ext. esm_files. to_mut( ) . push( ExtensionFileSource :: new_computed( "ext:deno_cli_tsc/97_ts_host.js" , crate :: tsc:: TS_HOST_SOURCE . as_str( ) . into( ) ) ) ;
177184 ext. esm_files. to_mut( ) . push( ExtensionFileSource :: new_computed( "ext:deno_cli_tsc/98_lsp.js" , crate :: tsc:: LSP_SOURCE . as_str( ) . into( ) ) ) ;
178- ext. js_files . to_mut( ) . push( ExtensionFileSource :: new_computed( "ext:deno_cli_tsc/00_typescript.js" , crate :: tsc:: TYPESCRIPT_SOURCE . as_str( ) . into( ) ) ) ;
185+ ext. esm_files . to_mut( ) . push( ExtensionFileSource :: new_computed( "ext:deno_cli_tsc/00_typescript.js" , crate :: tsc:: TYPESCRIPT_SOURCE . as_str( ) . into( ) ) ) ;
179186 ext. esm_entry_point = Some ( "ext:deno_cli_tsc/99_main_compiler.js" ) ;
180187 }
181188) ;
@@ -338,23 +345,64 @@ pub fn exec_request(
338345 } ) ;
339346 let exec_source = format ! ( "globalThis.exec({request_value})" ) ;
340347
341- let mut extensions =
342- deno_runtime:: snapshot_info:: get_extensions_in_snapshot ( ) ;
348+ let mut extensions = vec ! [ ] ;
343349 extensions. push ( deno_cli_tsc:: init ( request, root_map, remapped_specifiers) ) ;
344350 let extension_code_cache = code_cache. map ( |cache| {
345351 Rc :: new ( TscExtCodeCache :: new ( cache) ) as Rc < dyn deno_core:: ExtCodeCache >
346352 } ) ;
347- let mut runtime = JsRuntime :: new ( RuntimeOptions {
353+ let mut main_worker =
354+ deno_runtime:: worker:: MainWorker :: bootstrap_from_options (
355+ & ModuleSpecifier :: parse ( "file:///main.ts" ) . unwrap ( ) ,
356+ WorkerServiceOptions :: < DenoInNpmPackageChecker , CliNpmResolver , CliSys > {
357+ blob_store : Default :: default ( ) ,
358+ broadcast_channel : Default :: default ( ) ,
359+ deno_rt_native_addon_loader : None ,
360+ feature_checker : Default :: default ( ) ,
361+ fs : Arc :: new ( deno_runtime:: deno_fs:: RealFs ) ,
362+ module_loader : Rc :: new ( deno_core:: NoopModuleLoader ) ,
363+ node_services : None ,
364+ npm_process_state_provider : None ,
365+ permissions : PermissionsContainer :: allow_all ( Arc :: new (
366+ RuntimePermissionDescriptorParser :: new ( crate :: sys:: CliSys :: default ( ) ) ,
367+ ) ) ,
368+ root_cert_store_provider : None ,
369+ fetch_dns_resolver : Default :: default ( ) ,
370+ shared_array_buffer_store : None ,
371+ compiled_wasm_module_store : None ,
372+ v8_code_cache : None ,
373+ bundle_provider : None ,
374+ } ,
375+ WorkerOptions {
376+ startup_snapshot : deno_snapshots:: CLI_SNAPSHOT ,
377+ extensions,
378+ ..Default :: default ( )
379+ } ,
380+ ) ;
381+ eprintln ! ( "HERE" ) ;
382+ /* let mut runtime = JsRuntime::new(RuntimeOptions {
348383 extensions,
349384 create_params: create_isolate_create_params(&crate::sys::CliSys::default()),
350385 startup_snapshot: deno_snapshots::CLI_SNAPSHOT,
351386 extension_code_cache,
352387 ..Default::default()
353- } ) ;
388+ }); */
389+ let runtime = & mut main_worker. js_runtime ;
390+
391+ eprintln ! ( "HERE2" ) ;
392+ runtime
393+ . op_state ( )
394+ . borrow_mut ( )
395+ . put ( deno_runtime:: snapshot_info:: AllowAll ) ;
396+ runtime
397+ . op_state ( )
398+ . borrow_mut ( )
399+ . put ( crate :: sys:: CliSys :: default ( ) ) ;
354400
401+ eprintln ! ( "HERE3" ) ;
355402 runtime
356403 . execute_script ( located_script_name ! ( ) , exec_source)
357404 . map_err ( ExecError :: Js ) ?;
405+ eprintln ! ( "HERE4" ) ;
358406
359407 let op_state = runtime. op_state ( ) ;
360408 let mut op_state = op_state. borrow_mut ( ) ;
0 commit comments