diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2024-03-06 13:17:49 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-06 14:17:49 +0100 |
commit | 8b1f160bb58a36a6f75759165f91de8c5c7afe06 (patch) | |
tree | 38bf485f126305250017ecf2e3f2d96a76c051df /runtime/shared.rs | |
parent | 6ba0b7952d1ca867d0e166de4d36dcd6fe489e89 (diff) |
fix: Provide source map for internal extension code (#22716)
This commit adds support for source maps for `ext/` crates that are
authored in TypeScript. As a result any exceptions thrown from eg. `ext/node`
will now have correct stack traces.
This is only enabled in debug mode as it adds about 2Mb to the binary.
Diffstat (limited to 'runtime/shared.rs')
-rw-r--r-- | runtime/shared.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/runtime/shared.rs b/runtime/shared.rs index fc91be145..f9af2c7d4 100644 --- a/runtime/shared.rs +++ b/runtime/shared.rs @@ -97,8 +97,13 @@ pub fn maybe_transpile_source( let transpiled_source = parsed.transpile(&deno_ast::EmitOptions { imports_not_used_as_values: deno_ast::ImportsNotUsedAsValues::Remove, inline_source_map: false, + source_map: cfg!(debug_assertions), ..Default::default() })?; - Ok((transpiled_source.text.into(), None)) + let maybe_source_map: Option<SourceMapData> = transpiled_source + .source_map + .map(|sm| sm.into_bytes().into()); + + Ok((transpiled_source.text.into(), maybe_source_map)) } |