summaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2023-03-18 18:30:04 -0400
committerGitHub <noreply@github.com>2023-03-18 18:30:04 -0400
commit3c9771deb2d615c47a2570023039c6a71f1c774b (patch)
tree759ce45a956798ddae58108286eafee29414d913 /cli
parenta5ad3a44b5476909f12ae90501d8c7c451669be6 (diff)
Reland "perf(core): preserve ops between snapshots (#18080)" (#18272)
Relanding 4b6305f4f25fc76f974bbdcc9cdb139d5ab8f5f4
Diffstat (limited to 'cli')
-rw-r--r--cli/build.rs3
-rw-r--r--cli/lsp/tsc.rs3
-rw-r--r--cli/ops/bench.rs3
-rw-r--r--cli/ops/mod.rs3
-rw-r--r--cli/ops/testing.rs3
-rw-r--r--cli/tsc/mod.rs11
6 files changed, 23 insertions, 3 deletions
diff --git a/cli/build.rs b/cli/build.rs
index c2269aca3..173c8b85d 100644
--- a/cli/build.rs
+++ b/cli/build.rs
@@ -5,7 +5,6 @@ use std::path::PathBuf;
use deno_core::snapshot_util::*;
use deno_core::Extension;
-use deno_core::ExtensionBuilder;
use deno_core::ExtensionFileSource;
use deno_core::ExtensionFileSourceCode;
use deno_runtime::deno_cache::SqliteBackedCache;
@@ -318,7 +317,7 @@ deno_core::extension!(
dir "js",
"40_testing.js"
],
- customizer = |ext: &mut ExtensionBuilder| {
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
ext.esm(vec![ExtensionFileSource {
specifier: "ext:cli/runtime/js/99_main.js",
code: ExtensionFileSourceCode::LoadedFromFsDuringSnapshot(
diff --git a/cli/lsp/tsc.rs b/cli/lsp/tsc.rs
index 91eb6e24b..c8d8103b9 100644
--- a/cli/lsp/tsc.rs
+++ b/cli/lsp/tsc.rs
@@ -2843,6 +2843,9 @@ deno_core::extension!(deno_tsc,
options.performance,
));
},
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
);
/// Instruct a language server runtime to start the language server and provide
diff --git a/cli/ops/bench.rs b/cli/ops/bench.rs
index 6fa9edee8..86498cd7c 100644
--- a/cli/ops/bench.rs
+++ b/cli/ops/bench.rs
@@ -38,6 +38,9 @@ deno_core::extension!(deno_bench,
state.put(options.sender);
state.put(options.filter);
},
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
);
#[derive(Clone)]
diff --git a/cli/ops/mod.rs b/cli/ops/mod.rs
index c12409514..4d5595e09 100644
--- a/cli/ops/mod.rs
+++ b/cli/ops/mod.rs
@@ -21,6 +21,9 @@ deno_core::extension!(deno_cli,
state = |state, options| {
state.put(options.ps);
},
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
);
#[op]
diff --git a/cli/ops/testing.rs b/cli/ops/testing.rs
index 0849f1c7a..8b5c95fea 100644
--- a/cli/ops/testing.rs
+++ b/cli/ops/testing.rs
@@ -44,6 +44,9 @@ deno_core::extension!(deno_test,
state.put(options.fail_fast_tracker);
state.put(options.filter);
},
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
);
#[derive(Clone)]
diff --git a/cli/tsc/mod.rs b/cli/tsc/mod.rs
index 45589780f..48ab131fe 100644
--- a/cli/tsc/mod.rs
+++ b/cli/tsc/mod.rs
@@ -114,7 +114,13 @@ pub fn get_types_declaration_file_text(unstable: bool) -> String {
}
fn get_asset_texts_from_new_runtime() -> Result<Vec<AssetText>, AnyError> {
- deno_core::extension!(deno_cli_tsc, ops_fn = deno_ops,);
+ deno_core::extension!(
+ deno_cli_tsc,
+ ops_fn = deno_ops,
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
+ );
// the assets are stored within the typescript isolate, so take them out of there
let mut runtime = JsRuntime::new(RuntimeOptions {
@@ -846,6 +852,9 @@ pub fn exec(request: Request) -> Result<Response, AnyError> {
.unwrap(),
));
},
+ customizer = |ext: &mut deno_core::ExtensionBuilder| {
+ ext.force_op_registration();
+ },
);
let startup_source = "globalThis.startup({ legacyFlag: false })";