diff options
Diffstat (limited to 'cli')
-rw-r--r-- | cli/ops/compiler.rs | 39 | ||||
-rw-r--r-- | cli/tests/error_004_missing_module.ts.out | 9 | ||||
-rw-r--r-- | cli/tests/error_005_missing_dynamic_import.ts.out | 9 | ||||
-rw-r--r-- | cli/tests/error_006_import_ext_failure.ts.out | 9 | ||||
-rw-r--r-- | cli/tests/error_011_bad_module_specifier.ts.out | 9 | ||||
-rw-r--r-- | cli/tests/error_012_bad_dynamic_import_specifier.ts.out | 9 | ||||
-rw-r--r-- | cli/tests/error_type_definitions.ts.out | 9 |
7 files changed, 31 insertions, 62 deletions
diff --git a/cli/ops/compiler.rs b/cli/ops/compiler.rs index 2dd7422df..8fb1ad988 100644 --- a/cli/ops/compiler.rs +++ b/cli/ops/compiler.rs @@ -1,7 +1,8 @@ // Copyright 2018-2019 the Deno authors. All rights reserved. MIT license. use super::dispatch_json::{Deserialize, JsonOp, Value}; +use crate::futures::future::join_all; +use crate::futures::Future; use crate::state::ThreadSafeState; -use crate::tokio_util; use deno::*; #[derive(Deserialize)] @@ -40,7 +41,7 @@ struct FetchSourceFilesArgs { pub fn op_fetch_source_files( state: &ThreadSafeState, args: Value, - _zero_copy: Option<PinnedBuf>, + _data: Option<PinnedBuf>, ) -> Result<JsonOp, ErrBox> { let args: FetchSourceFilesArgs = serde_json::from_value(args)?; @@ -58,23 +59,25 @@ pub fn op_fetch_source_files( futures.push(fut); } - // WARNING: Here we use tokio_util::block_on() which starts a new Tokio - // runtime for executing the future. This is so we don't inadvertently run - // out of threads in the main runtime. - let files = tokio_util::block_on(futures::future::join_all(futures))?; - let res: Vec<serde_json::value::Value> = files - .into_iter() - .map(|file| { - json!({ - "moduleName": file.url.to_string(), - "filename": file.filename.to_str().unwrap(), - "mediaType": file.media_type as i32, - "sourceCode": String::from_utf8(file.source_code).unwrap(), - }) - }) - .collect(); + let future = join_all(futures) + .map_err(ErrBox::from) + .and_then(move |files| { + let res = files + .into_iter() + .map(|file| { + json!({ + "url": file.url.to_string(), + "filename": file.filename.to_str().unwrap(), + "mediaType": file.media_type as i32, + "sourceCode": String::from_utf8(file.source_code).unwrap(), + }) + }) + .collect(); + + futures::future::ok(res) + }); - Ok(JsonOp::Sync(json!(res))) + Ok(JsonOp::Async(Box::new(future))) } #[derive(Deserialize)] diff --git a/cli/tests/error_004_missing_module.ts.out b/cli/tests/error_004_missing_module.ts.out index c2a0d0208..7a5f50938 100644 --- a/cli/tests/error_004_missing_module.ts.out +++ b/cli/tests/error_004_missing_module.ts.out @@ -2,11 +2,4 @@ [WILDCARD]dispatch_json.ts:[WILDCARD] at DenoError ([WILDCARD]errors.ts:[WILDCARD]) at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at sendSync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at fetchSourceFiles ([WILDCARD]compiler.ts:[WILDCARD]) - at _resolveModules ([WILDCARD]compiler.ts:[WILDCARD]) - at resolveModuleNames ([WILDCARD]compiler.ts:[WILDCARD]) - at resolveModuleNamesWorker ([WILDCARD]typescript.js:[WILDCARD]) - at resolveModuleNamesReusingOldState ([WILDCARD]typescript.js:[WILDCARD]) - at processImportedModules ([WILDCARD]typescript.js:[WILDCARD]) - at findSourceFile ([WILDCARD]typescript.js:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) diff --git a/cli/tests/error_005_missing_dynamic_import.ts.out b/cli/tests/error_005_missing_dynamic_import.ts.out index ec1468b09..7a5f50938 100644 --- a/cli/tests/error_005_missing_dynamic_import.ts.out +++ b/cli/tests/error_005_missing_dynamic_import.ts.out @@ -2,11 +2,4 @@ [WILDCARD]dispatch_json.ts:[WILDCARD] at DenoError ([WILDCARD]errors.ts:[WILDCARD]) at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at sendSync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at fetchSourceFiles ([WILDCARD]compiler.ts:[WILDCARD]) - at _resolveModules ([WILDCARD]compiler.ts:[WILDCARD]) - at [WILDCARD]compiler.ts:[WILDCARD] - at resolveModuleNamesWorker ([WILDCARD]) - at resolveModuleNamesReusingOldState ([WILDCARD]typescript.js:[WILDCARD]) - at processImportedModules ([WILDCARD]typescript.js:[WILDCARD]) - at findSourceFile ([WILDCARD]typescript.js:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) diff --git a/cli/tests/error_006_import_ext_failure.ts.out b/cli/tests/error_006_import_ext_failure.ts.out index aa82c10aa..d88477df8 100644 --- a/cli/tests/error_006_import_ext_failure.ts.out +++ b/cli/tests/error_006_import_ext_failure.ts.out @@ -2,11 +2,4 @@ [WILDCARD]dispatch_json.ts:[WILDCARD] at DenoError ([WILDCARD]errors.ts:[WILDCARD]) at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at sendSync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at fetchSourceFiles ([WILDCARD]compiler.ts:[WILDCARD]) - at _resolveModules ([WILDCARD]compiler.ts:[WILDCARD]) - at [WILDCARD]compiler.ts:[WILDCARD] - at resolveModuleNamesWorker ([WILDCARD]) - at resolveModuleNamesReusingOldState ([WILDCARD]typescript.js:[WILDCARD]) - at processImportedModules ([WILDCARD]typescript.js:[WILDCARD]) - at findSourceFile ([WILDCARD]typescript.js:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) diff --git a/cli/tests/error_011_bad_module_specifier.ts.out b/cli/tests/error_011_bad_module_specifier.ts.out index 97f59f2ca..0a90cd32c 100644 --- a/cli/tests/error_011_bad_module_specifier.ts.out +++ b/cli/tests/error_011_bad_module_specifier.ts.out @@ -2,11 +2,4 @@ [WILDCARD]dispatch_json.ts:[WILDCARD] at DenoError ([WILDCARD]errors.ts:[WILDCARD]) at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at sendSync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at fetchSourceFiles ([WILDCARD]compiler.ts:[WILDCARD]) - at _resolveModules ([WILDCARD]compiler.ts:[WILDCARD]) - at [WILDCARD]compiler.ts:[WILDCARD] - at resolveModuleNamesWorker ([WILDCARD]) - at resolveModuleNamesReusingOldState ([WILDCARD]typescript.js:[WILDCARD]) - at processImportedModules ([WILDCARD]typescript.js:[WILDCARD]) - at findSourceFile ([WILDCARD]typescript.js:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) diff --git a/cli/tests/error_012_bad_dynamic_import_specifier.ts.out b/cli/tests/error_012_bad_dynamic_import_specifier.ts.out index 97f59f2ca..0a90cd32c 100644 --- a/cli/tests/error_012_bad_dynamic_import_specifier.ts.out +++ b/cli/tests/error_012_bad_dynamic_import_specifier.ts.out @@ -2,11 +2,4 @@ [WILDCARD]dispatch_json.ts:[WILDCARD] at DenoError ([WILDCARD]errors.ts:[WILDCARD]) at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at sendSync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) - at fetchSourceFiles ([WILDCARD]compiler.ts:[WILDCARD]) - at _resolveModules ([WILDCARD]compiler.ts:[WILDCARD]) - at [WILDCARD]compiler.ts:[WILDCARD] - at resolveModuleNamesWorker ([WILDCARD]) - at resolveModuleNamesReusingOldState ([WILDCARD]typescript.js:[WILDCARD]) - at processImportedModules ([WILDCARD]typescript.js:[WILDCARD]) - at findSourceFile ([WILDCARD]typescript.js:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) diff --git a/cli/tests/error_type_definitions.ts.out b/cli/tests/error_type_definitions.ts.out index cc09c149d..d0b599862 100644 --- a/cli/tests/error_type_definitions.ts.out +++ b/cli/tests/error_type_definitions.ts.out @@ -1,4 +1,5 @@ -[WILDCARD]error: Uncaught TypeError: Automatic type resolution not supported -[WILDCARD]compiler.ts:[WILDCARD] - at fileExists ([WILDCARD]compiler.ts:[WILDCARD]) -[WILDCARD]
\ No newline at end of file +[WILDCARD]error: Uncaught ImportPrefixMissing: relative import path "baz" not prefixed with / or ./ or ../ +[WILDCARD]dispatch_json.ts:[WILDCARD] + at DenoError ([WILDCARD]errors.ts:[WILDCARD]) + at unwrapResponse ([WILDCARD]dispatch_json.ts:[WILDCARD]) + at sendAsync[WILDCARD] ([WILDCARD]dispatch_json.ts:[WILDCARD]) |