diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-05-06 19:21:58 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-06 19:21:58 -0400 |
commit | 2dcbef2abbf03055d64ee79c5b23318f23a31386 (patch) | |
tree | a43ea29993de06d18c2d93f5517ed64b41c037ea /cli/standalone | |
parent | f698bc70e2f1d4cd58d17544258cf1b19726b66a (diff) |
fix(compile): relative permissions should be retained as relative (#23719)
Closes #23715
Diffstat (limited to 'cli/standalone')
-rw-r--r-- | cli/standalone/binary.rs | 6 | ||||
-rw-r--r-- | cli/standalone/mod.rs | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/cli/standalone/binary.rs b/cli/standalone/binary.rs index 4442f5a24..143c1824d 100644 --- a/cli/standalone/binary.rs +++ b/cli/standalone/binary.rs @@ -24,7 +24,6 @@ use deno_core::futures::AsyncSeekExt; use deno_core::serde_json; use deno_core::url::Url; use deno_npm::NpmSystemInfo; -use deno_runtime::permissions::PermissionsOptions; use deno_semver::package::PackageReq; use deno_semver::VersionReqSpecifierParseError; use log::Level; @@ -37,6 +36,7 @@ use crate::args::CaData; use crate::args::CliOptions; use crate::args::CompileFlags; use crate::args::PackageJsonDepsProvider; +use crate::args::PermissionFlags; use crate::args::UnstableConfig; use crate::cache::DenoDir; use crate::file_fetcher::FileFetcher; @@ -134,7 +134,7 @@ pub enum NodeModules { pub struct Metadata { pub argv: Vec<String>, pub seed: Option<u64>, - pub permissions: PermissionsOptions, + pub permissions: PermissionFlags, pub location: Option<Url>, pub v8_flags: Vec<String>, pub log_level: Option<Level>, @@ -621,7 +621,7 @@ impl<'a> DenoCompileBinaryWriter<'a> { argv: compile_flags.args.clone(), seed: cli_options.seed(), location: cli_options.location_flag().clone(), - permissions: cli_options.permissions_options(), + permissions: cli_options.permission_flags().clone(), v8_flags: cli_options.v8_flags().clone(), unsafely_ignore_certificate_errors: cli_options .unsafely_ignore_certificate_errors() diff --git a/cli/standalone/mod.rs b/cli/standalone/mod.rs index 47b035fc7..4b7962a5f 100644 --- a/cli/standalone/mod.rs +++ b/cli/standalone/mod.rs @@ -499,7 +499,9 @@ pub async fn run( }; let permissions = { - let mut permissions = metadata.permissions; + let maybe_cwd = std::env::current_dir().ok(); + let mut permissions = + metadata.permissions.to_options(maybe_cwd.as_deref())?; // if running with an npm vfs, grant read access to it if let Some(vfs_root) = maybe_vfs_root { match &mut permissions.allow_read { |