From 60bf79c18410fd332b6b9b7c222e6d3d62bfe3f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Wed, 14 Jun 2023 00:36:16 +0200 Subject: =?UTF-8?q?Revert=20"refactor(core):=20cleanup=20feature=20flags?= =?UTF-8?q?=20for=20js=20source=20inclusion=E2=80=A6=20(#19490)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit … (#19463)" This reverts commit ceb03cfb037cf7024a5048b17b508ddda59cfa05. This is being reverted because it causes 3.5Mb increase in the binary size, due to runtime JS code being included in the binary, even though it's already snapshotted. CC @nayeemrmn --- ext/fs/lib.rs | 1 + ext/net/ops.rs | 2 +- ext/url/benches/url_ops.rs | 9 ++++++--- ext/web/benches/encoding.rs | 16 +++++++++++----- ext/web/benches/timers_ops.rs | 15 ++++++++------- ext/webidl/benches/dict.rs | 7 +++++-- 6 files changed, 32 insertions(+), 18 deletions(-) (limited to 'ext') diff --git a/ext/fs/lib.rs b/ext/fs/lib.rs index d27712927..7ba6cd7ca 100644 --- a/ext/fs/lib.rs +++ b/ext/fs/lib.rs @@ -19,6 +19,7 @@ use crate::ops::*; use deno_core::error::AnyError; use deno_core::OpState; use std::cell::RefCell; +use std::convert::From; use std::path::Path; use std::rc::Rc; diff --git a/ext/net/ops.rs b/ext/net/ops.rs index 354acb3bd..05aa416b4 100644 --- a/ext/net/ops.rs +++ b/ext/net/ops.rs @@ -1034,7 +1034,7 @@ mod tests { ); let mut runtime = JsRuntime::new(RuntimeOptions { - extensions: vec![test_ext::init()], + extensions: vec![test_ext::init_ops()], ..Default::default() }); diff --git a/ext/url/benches/url_ops.rs b/ext/url/benches/url_ops.rs index 1e3d201f6..835dfea2e 100644 --- a/ext/url/benches/url_ops.rs +++ b/ext/url/benches/url_ops.rs @@ -7,17 +7,20 @@ use deno_bench_util::bencher::Bencher; use deno_core::Extension; use deno_core::ExtensionFileSource; +use deno_core::ExtensionFileSourceCode; fn setup() -> Vec { vec![ - deno_webidl::deno_webidl::init(), - deno_url::deno_url::init(), + deno_webidl::deno_webidl::init_ops_and_esm(), + deno_url::deno_url::init_ops_and_esm(), Extension::builder("bench_setup") .esm(vec![ExtensionFileSource { specifier: "ext:bench_setup/setup", - code: r#"import { URL } from "ext:deno_url/00_url.js"; + code: ExtensionFileSourceCode::IncludedInBinary( + r#"import { URL } from "ext:deno_url/00_url.js"; globalThis.URL = URL; "#, + ), }]) .esm_entry_point("ext:bench_setup/setup") .build(), diff --git a/ext/web/benches/encoding.rs b/ext/web/benches/encoding.rs index 9d12d9c2c..5b147f00c 100644 --- a/ext/web/benches/encoding.rs +++ b/ext/web/benches/encoding.rs @@ -6,6 +6,7 @@ use deno_bench_util::bencher::benchmark_group; use deno_bench_util::bencher::Bencher; use deno_core::Extension; use deno_core::ExtensionFileSource; +use deno_core::ExtensionFileSourceCode; use deno_core::OpState; use deno_web::BlobStore; @@ -23,18 +24,23 @@ impl deno_web::TimersPermission for Permissions { fn setup() -> Vec { vec![ - deno_webidl::deno_webidl::init(), - deno_url::deno_url::init(), - deno_console::deno_console::init(), - deno_web::deno_web::init::(BlobStore::default(), None), + deno_webidl::deno_webidl::init_ops_and_esm(), + deno_url::deno_url::init_ops_and_esm(), + deno_console::deno_console::init_ops_and_esm(), + deno_web::deno_web::init_ops_and_esm::( + BlobStore::default(), + None, + ), Extension::builder("bench_setup") .esm(vec![ExtensionFileSource { specifier: "ext:bench_setup/setup", - code: r#" + code: ExtensionFileSourceCode::IncludedInBinary( + r#" import { TextDecoder } from "ext:deno_web/08_text_encoding.js"; globalThis.TextDecoder = TextDecoder; globalThis.hello12k = Deno.core.encode("hello world\n".repeat(1e3)); "#, + ), }]) .state(|state| { state.put(Permissions {}); diff --git a/ext/web/benches/timers_ops.rs b/ext/web/benches/timers_ops.rs index c6afea9c1..084fac98b 100644 --- a/ext/web/benches/timers_ops.rs +++ b/ext/web/benches/timers_ops.rs @@ -6,6 +6,7 @@ use deno_bench_util::bencher::benchmark_group; use deno_bench_util::bencher::Bencher; use deno_core::Extension; use deno_core::ExtensionFileSource; +use deno_core::ExtensionFileSourceCode; use deno_core::OpState; use deno_web::BlobStore; @@ -21,19 +22,19 @@ impl deno_web::TimersPermission for Permissions { fn setup() -> Vec { vec![ - deno_webidl::deno_webidl::init(), - deno_url::deno_url::init(), - deno_console::deno_console::init(), - deno_web::deno_web::init::(BlobStore::default(), None), + deno_webidl::deno_webidl::init_ops_and_esm(), + deno_url::deno_url::init_ops_and_esm(), + deno_console::deno_console::init_ops_and_esm(), + deno_web::deno_web::init_ops_and_esm::(BlobStore::default(), None), Extension::builder("bench_setup") .esm(vec![ ExtensionFileSource { - specifier: "ext:bench_setup/setup", - code: r#" + specifier: "ext:bench_setup/setup", + code: ExtensionFileSourceCode::IncludedInBinary(r#" import { setTimeout, handleTimerMacrotask } from "ext:deno_web/02_timers.js"; globalThis.setTimeout = setTimeout; Deno.core.setMacrotaskCallback(handleTimerMacrotask); - "# + "#) }, ]) .state(|state| { diff --git a/ext/webidl/benches/dict.rs b/ext/webidl/benches/dict.rs index bf5c0554b..b3d95c8a3 100644 --- a/ext/webidl/benches/dict.rs +++ b/ext/webidl/benches/dict.rs @@ -7,14 +7,17 @@ use deno_bench_util::bencher::Bencher; use deno_core::Extension; use deno_core::ExtensionFileSource; +use deno_core::ExtensionFileSourceCode; fn setup() -> Vec { vec![ - deno_webidl::deno_webidl::init(), + deno_webidl::deno_webidl::init_ops_and_esm(), Extension::builder("deno_webidl_bench") .esm(vec![ExtensionFileSource { specifier: "ext:deno_webidl_bench/setup.js", - code: include_str!("dict.js"), + code: ExtensionFileSourceCode::IncludedInBinary(include_str!( + "dict.js" + )), }]) .esm_entry_point("ext:deno_webidl_bench/setup.js") .build(), -- cgit v1.2.3