summaryrefslogtreecommitdiff
path: root/runtime/shared.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2024-03-06 13:17:49 +0000
committerGitHub <noreply@github.com>2024-03-06 14:17:49 +0100
commit8b1f160bb58a36a6f75759165f91de8c5c7afe06 (patch)
tree38bf485f126305250017ecf2e3f2d96a76c051df /runtime/shared.rs
parent6ba0b7952d1ca867d0e166de4d36dcd6fe489e89 (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.rs7
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))
}