diff --git a/lang/deno/Makefile b/lang/deno/Makefile index 38ff7634a73..6b250f1e334 100644 --- a/lang/deno/Makefile +++ b/lang/deno/Makefile @@ -6,7 +6,7 @@ DPB_PROPERTIES = parallel USE_WXNEEDED = Yes -VERSION = 2.4.0 +VERSION = 2.4.1 HOMEPAGE = https://deno.com/runtime DISTNAME = deno-${VERSION} diff --git a/lang/deno/crates.inc b/lang/deno/crates.inc index 49a1c6819ab..2b1c8cdf714 100644 --- a/lang/deno/crates.inc +++ b/lang/deno/crates.inc @@ -146,7 +146,7 @@ MODCARGO_CRATES += data-url 0.3.1 # MIT OR Apache-2.0 MODCARGO_CRATES += debug-ignore 1.0.5 # MIT OR Apache-2.0 MODCARGO_CRATES += debugid 0.8.0 # Apache-2.0 MODCARGO_CRATES += deno-tower-lsp-macros 0.11.3 # MIT OR Apache-2.0 -MODCARGO_CRATES += deno_ast 0.48.0 # MIT +MODCARGO_CRATES += deno_ast 0.48.1 # MIT MODCARGO_CRATES += deno_cache_dir 0.23.0 # MIT MODCARGO_CRATES += deno_core 0.352.0 # MIT MODCARGO_CRATES += deno_core_icudata 0.74.0 # MIT @@ -585,7 +585,7 @@ MODCARGO_CRATES += scopeguard 1.2.0 # MIT OR Apache-2.0 MODCARGO_CRATES += scrypt 0.11.0 # MIT OR Apache-2.0 MODCARGO_CRATES += sec1 0.7.3 # Apache-2.0 OR MIT MODCARGO_CRATES += security-framework 2.10.0 # MIT OR Apache-2.0 -MODCARGO_CRATES += security-framework-sys 2.10.0 # MIT OR Apache-2.0 +MODCARGO_CRATES += security-framework-sys 2.14.0 # MIT OR Apache-2.0 MODCARGO_CRATES += semver 0.9.0 # MIT/Apache-2.0 MODCARGO_CRATES += semver 1.0.25 # MIT OR Apache-2.0 MODCARGO_CRATES += semver-parser 0.7.0 # MIT/Apache-2.0 diff --git a/lang/deno/distinfo b/lang/deno/distinfo index feafe01c84e..d51935ca916 100644 --- a/lang/deno/distinfo +++ b/lang/deno/distinfo @@ -146,7 +146,7 @@ SHA256 (cargo/data-url-0.3.1.tar.gz) = XCl6HHS3GuKd8Aw+It2VNIIdYOua9aAZKCP6Ks6nD SHA256 (cargo/debug-ignore-1.0.5.tar.gz) = /+ftHZP0VTAD4gtimr6QheHoGxQpUg+Jf4+IYLxt/CE= SHA256 (cargo/debugid-0.8.0.tar.gz) = vvVS5vWI5EYJj2ukDYmsFGyMe2Sq3oPAUe4Au10rwY0= SHA256 (cargo/deno-tower-lsp-macros-0.11.3.tar.gz) = +SIbmfHMfDlWhrny1WUsWFVmapKCyNWmj6vUsdSZT6k= -SHA256 (cargo/deno_ast-0.48.0.tar.gz) = D4g72Ork38gBnZJew90EtjS2r5NGpRaKzCWdVfX1Ah0= +SHA256 (cargo/deno_ast-0.48.1.tar.gz) = DO0J/biITilxbMBpHoUQ+cZVdiu7naMRHazAou9uiWA= SHA256 (cargo/deno_cache_dir-0.23.0.tar.gz) = eCXaBVHmcKJwo6ILkvigv/631hIPqGtk5dqpabjdGhA= SHA256 (cargo/deno_core-0.352.0.tar.gz) = 95xJZ1pDVgaPTfrmUT9+AJfh7oVIwJimj1u/mpMzDFE= SHA256 (cargo/deno_core_icudata-0.74.0.tar.gz) = /k3MthR7s/O6DHpI6ZO/65mdLC5HqBut7oDis3DI1pU= @@ -585,7 +585,7 @@ SHA256 (cargo/scopeguard-1.2.0.tar.gz) = lBQ/N3JRCfksJi7Sz15ZvOdJjAG8wVAte5r+Q5p SHA256 (cargo/scrypt-0.11.0.tar.gz) = BRajhYZsCTaPC1vNHK/zNmqs55D81G4rsDJpe7Fy/R8= SHA256 (cargo/sec1-0.7.3.tar.gz) = 0+l6Vl92IzpgA/n1xUvh2cW9+j7M+xiUafEexJAcR9w= SHA256 (cargo/security-framework-2.10.0.tar.gz) = dwRS43ytk+ClDVq8OZDSvDUcNtAyj4bO/sLy+yBurvY= -SHA256 (cargo/security-framework-sys-2.10.0.tar.gz) = QfPMRjwO+X4Rw0YanTeHQS0w6OfrkHx5GAxKV798BO8= +SHA256 (cargo/security-framework-sys-2.14.0.tar.gz) = SdsjHVahkEkctK7alSfxrUU0WvULCFFiKnrbjAOwHDI= SHA256 (cargo/semver-0.9.0.tar.gz) = HX657ywYZhkCzEflNfm8UbeKzSVNpx03XC9nINmkBAM= SHA256 (cargo/semver-1.0.25.tar.gz) = 953+LShbBIiBbzDnAKdDjFpz2Ba1t9OscvvEiw0YXgM= SHA256 (cargo/semver-parser-0.7.0.tar.gz) = OIod8lPsoIVQvvbHI5LP58MJFL9B31Jptoy9b/j1cKM= @@ -857,7 +857,7 @@ SHA256 (cargo/zstd-safe-7.2.4.tar.gz) = j0nE1fCrtgKpP7hzavKk9N2VEuNvf1cNZuZf+Gft SHA256 (cargo/zstd-sys-2.0.15+zstd.1.5.7.tar.gz) = 64EYPd2X0MdM7fHVDYXI0Iwbi2juhjve6ecG7tuhojc= SHA256 (cargo/zune-core-0.4.12.tar.gz) = P0I6LBcCmWSHDPqrsfE9+rfQkqYqKaiSZPTTaZDKQUo= SHA256 (cargo/zune-jpeg-0.4.13.tar.gz) = FgmUGGALTY8ChiL3P/bj3qq9/zMPuaKhMd6nge6LB2g= -SHA256 (deno-2.4.0.tar.gz) = UxA5t7JzGPQm28DGuJKNll3DmhHWSUxjQu3NBaK/tPc= +SHA256 (deno-2.4.1.tar.gz) = q9N4Iw2BnuutsBzTzHfyn7jb4BNvZohmgWo6BeT5Qwg= SIZE (cargo/Inflector-0.11.4.tar.gz) = 17438 SIZE (cargo/addr2line-0.24.2.tar.gz) = 39015 SIZE (cargo/adler-1.0.2.tar.gz) = 12778 @@ -1006,7 +1006,7 @@ SIZE (cargo/data-url-0.3.1.tar.gz) = 21109 SIZE (cargo/debug-ignore-1.0.5.tar.gz) = 12016 SIZE (cargo/debugid-0.8.0.tar.gz) = 12757 SIZE (cargo/deno-tower-lsp-macros-0.11.3.tar.gz) = 3540 -SIZE (cargo/deno_ast-0.48.0.tar.gz) = 100165 +SIZE (cargo/deno_ast-0.48.1.tar.gz) = 94209 SIZE (cargo/deno_cache_dir-0.23.0.tar.gz) = 46696 SIZE (cargo/deno_core-0.352.0.tar.gz) = 303319 SIZE (cargo/deno_core_icudata-0.74.0.tar.gz) = 4581089 @@ -1445,7 +1445,7 @@ SIZE (cargo/scopeguard-1.2.0.tar.gz) = 11619 SIZE (cargo/scrypt-0.11.0.tar.gz) = 13440 SIZE (cargo/sec1-0.7.3.tar.gz) = 17979 SIZE (cargo/security-framework-2.10.0.tar.gz) = 79723 -SIZE (cargo/security-framework-sys-2.10.0.tar.gz) = 18676 +SIZE (cargo/security-framework-sys-2.14.0.tar.gz) = 20537 SIZE (cargo/semver-0.9.0.tar.gz) = 17344 SIZE (cargo/semver-1.0.25.tar.gz) = 31291 SIZE (cargo/semver-parser-0.7.0.tar.gz) = 10268 @@ -1717,4 +1717,4 @@ SIZE (cargo/zstd-safe-7.2.4.tar.gz) = 29350 SIZE (cargo/zstd-sys-2.0.15+zstd.1.5.7.tar.gz) = 774847 SIZE (cargo/zune-core-0.4.12.tar.gz) = 17355 SIZE (cargo/zune-jpeg-0.4.13.tar.gz) = 62999 -SIZE (deno-2.4.0.tar.gz) = 35325819 +SIZE (deno-2.4.1.tar.gz) = 35343638 diff --git a/lang/deno/patches/patch-cli_Cargo_toml b/lang/deno/patches/patch-cli_Cargo_toml index 796057e49db..14e9e7b1eeb 100644 --- a/lang/deno/patches/patch-cli_Cargo_toml +++ b/lang/deno/patches/patch-cli_Cargo_toml @@ -22,3 +22,11 @@ Index: cli/Cargo.toml [build-dependencies] deno_runtime = { workspace = true, features = ["include_js_files_for_snapshotting", "only_snapshotted_js_sources"] } +@@ -135,7 +135,6 @@ indexmap.workspace = true + jsonc-parser = { workspace = true, features = ["cst", "serde"] } + jupyter-protocol = "0.8.0" + jupyter_runtime = { package = "runtimelib", version = "=0.28.0", default-features = false, features = ["tokio-runtime", "aws-lc-rs"] } +-keyring = { version = "4.0.0-rc.1", features = ["vendored"] } + lazy-regex.workspace = true + libc.workspace = true + libz-sys.workspace = true diff --git a/lang/deno/patches/patch-cli_main_rs b/lang/deno/patches/patch-cli_main_rs index b20e994b218..b67165e6ac4 100644 --- a/lang/deno/patches/patch-cli_main_rs +++ b/lang/deno/patches/patch-cli_main_rs @@ -4,7 +4,21 @@ In addition, disable the generation of a stacktrace URL Index: cli/main.rs --- cli/main.rs.orig +++ cli/main.rs -@@ -462,7 +462,7 @@ pub fn main() { +@@ -135,9 +135,10 @@ async fn run_subcommand( + ); + tools::bundle::bundle(flags, bundle_flags).await + }), +- DenoSubcommand::Deploy => spawn_subcommand(async { +- tools::deploy::deploy(Arc::unwrap_or_clone(flags)).await +- }), ++ DenoSubcommand::Deploy => exit_with_message( ++ "Deno Deploy is currently not supported on OpenBSD.", ++ 1, ++ ), + DenoSubcommand::Doc(doc_flags) => { + spawn_subcommand(async { tools::doc::doc(flags, doc_flags).await }) + } +@@ -524,7 +525,7 @@ pub fn main() { #[cfg(feature = "dhat-heap")] let profiler = dhat::Profiler::new_heap(); @@ -13,3 +27,27 @@ Index: cli/main.rs util::unix::raise_fd_limit(); util::windows::ensure_stdio_open(); +@@ -624,6 +625,7 @@ async fn resolve_flags_and_init( + + // Tunnel is initialized before OTEL since + // OTEL data is submitted via the tunnel. ++ #[cfg(not(target_os="openbsd"))] + if let Some(host) = flags + .connected + .clone() +@@ -834,6 +836,7 @@ fn wait_for_start( + }) + } + ++#[cfg(not(target_os="openbsd"))] + async fn auth_tunnel() -> Result { + let mut child = tokio::process::Command::new(env::current_exe()?) + .args(["deploy", "tunnel-login"]) +@@ -848,6 +851,7 @@ async fn auth_tunnel() -> Result Result, JsErrorBox> { +- match get_token_entry() +- .map_err(|e| JsErrorBox::type_error(e.to_string()))? +- .get_password() +- { +- Ok(password) => Ok(Some(password)), +- Err(keyring::Error::NoEntry) => Ok(None), +- Err(e) => Err(JsErrorBox::type_error(e.to_string())), +- } +-} +- +-#[op2(fast)] +-#[string] +-pub fn op_deploy_token_set(#[string] s: &str) -> Result<(), JsErrorBox> { +- get_token_entry() +- .map_err(|e| JsErrorBox::type_error(e.to_string()))? +- .set_password(s) +- .map_err(|e| JsErrorBox::type_error(e.to_string())) +-} +- +-#[op2(fast)] +-#[string] +-pub fn op_deploy_token_delete() -> Result<(), JsErrorBox> { +- get_token_entry() +- .map_err(|e| JsErrorBox::type_error(e.to_string()))? +- .delete_credential() +- .map_err(|e| JsErrorBox::type_error(e.to_string())) +-} diff --git a/lang/deno/patches/patch-cli_task_runner_rs b/lang/deno/patches/patch-cli_task_runner_rs index 9539af9bcb3..6994229b0f7 100644 --- a/lang/deno/patches/patch-cli_task_runner_rs +++ b/lang/deno/patches/patch-cli_task_runner_rs @@ -34,7 +34,7 @@ Index: cli/task_runner.rs } } -@@ -393,7 +398,8 @@ impl ShellCommand for NpmPackageBinCommand { +@@ -399,7 +404,8 @@ impl ShellCommand for NpmPackageBinCommand { args.extend(context.args); let executable_command = deno_task_shell::ExecutableCommand::new( "deno".to_string(), @@ -44,7 +44,7 @@ Index: cli/task_runner.rs ); executable_command.execute(ShellCommandContext { args, ..context }) } -@@ -420,7 +426,8 @@ impl ShellCommand for NodeModulesFileRunCommand { +@@ -426,7 +432,8 @@ impl ShellCommand for NodeModulesFileRunCommand { args.extend(context.args); let executable_command = deno_task_shell::ExecutableCommand::new( "deno".to_string(), diff --git a/lang/deno/patches/patch-cli_tools_deploy_rs b/lang/deno/patches/patch-cli_tools_deploy_rs new file mode 100644 index 00000000000..ba7e3ddca99 --- /dev/null +++ b/lang/deno/patches/patch-cli_tools_deploy_rs @@ -0,0 +1,29 @@ +Index: cli/tools/deploy.rs +--- cli/tools/deploy.rs.orig ++++ cli/tools/deploy.rs +@@ -63,23 +63,10 @@ pub async fn deploy(mut flags: Flags) -> Result Result { + keyring::Entry::new("Deno Deploy Token", "Deno Deploy") + } diff --git a/lang/deno/patches/patch-ext_os_lib_rs b/lang/deno/patches/patch-ext_os_lib_rs index 50fe657609a..79264cfbbf7 100644 --- a/lang/deno/patches/patch-ext_os_lib_rs +++ b/lang/deno/patches/patch-ext_os_lib_rs @@ -1,25 +1,21 @@ Index: ext/os/lib.rs --- ext/os/lib.rs.orig +++ ext/os/lib.rs -@@ -3,10 +3,10 @@ +@@ -3,6 +3,7 @@ use std::collections::HashMap; use std::collections::HashSet; use std::env; +use std::path::PathBuf; + use std::sync::Arc; use std::sync::atomic::AtomicI32; use std::sync::atomic::Ordering; - use std::sync::Arc; -- - use deno_core::op2; - use deno_core::v8; - use deno_core::OpState; -@@ -116,7 +116,8 @@ pub enum OsError { +@@ -116,7 +117,8 @@ pub enum OsError { #[op2] #[string] fn op_exec_path() -> Result { - let current_exe = env::current_exe().unwrap(); -+ let current_exe -+ = env::current_exe().unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")); ++ let current_exe = ++ env::current_exe().unwrap_or_else(|_| PathBuf::from("${PREFIX}/bin/deno")); // normalize path so it doesn't include '.' or '..' components let path = normalize_path(current_exe); diff --git a/lang/deno/patches/patch-runtime_js_99_main_js b/lang/deno/patches/patch-runtime_js_99_main_js new file mode 100644 index 00000000000..d37929c0a6d --- /dev/null +++ b/lang/deno/patches/patch-runtime_js_99_main_js @@ -0,0 +1,14 @@ +Index: runtime/js/99_main.js +--- runtime/js/99_main.js.orig ++++ runtime/js/99_main.js +@@ -717,10 +717,6 @@ const NOT_IMPORTED_OPS = [ + "op_set_exit_code", + "op_napi_open", + +- // deno deploy subcommand +- "op_deploy_token_get", +- "op_deploy_token_set", +- "op_deploy_token_delete", + ]; + + function removeImportedOps() {