summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAsher Gomez <ashersaupingomez@gmail.com>2024-02-21 08:40:32 +1100
committerGitHub <noreply@github.com>2024-02-20 16:40:32 -0500
commitca8bc7ece8a37bc49aa3668cb64eada3027305d5 (patch)
tree27f773656bd8c5e512e5969a5bfa7ab080085467
parentf90889e5ee19e0ddcd9c1dbcce98720e417dd83e (diff)
fix(ext/node): permission prompt for missing `process.env` permissions (#22487)
Closes #18665 Closes #20213
-rw-r--r--ext/node/polyfills/_process/process.ts9
-rw-r--r--tests/testdata/info/with_import_map/deno.lock5
2 files changed, 5 insertions, 9 deletions
diff --git a/ext/node/polyfills/_process/process.ts b/ext/node/polyfills/_process/process.ts
index 4fae1bc1b..cc52e7706 100644
--- a/ext/node/polyfills/_process/process.ts
+++ b/ext/node/polyfills/_process/process.ts
@@ -36,17 +36,10 @@ export const nextTick = _nextTick;
/** Wrapper of Deno.env.get, which doesn't throw type error when
* the env name has "=" or "\0" in it. */
function denoEnvGet(name: string) {
- const perm =
- Deno.permissions.querySync?.({ name: "env", variable: name }).state ??
- "granted"; // for Deno Deploy
- // Returns undefined if the env permission is unavailable
- if (perm !== "granted") {
- return undefined;
- }
try {
return Deno.env.get(name);
} catch (e) {
- if (e instanceof TypeError) {
+ if (e instanceof TypeError || e instanceof Deno.errors.PermissionDenied) {
return undefined;
}
throw e;
diff --git a/tests/testdata/info/with_import_map/deno.lock b/tests/testdata/info/with_import_map/deno.lock
index 78080ede2..540a44063 100644
--- a/tests/testdata/info/with_import_map/deno.lock
+++ b/tests/testdata/info/with_import_map/deno.lock
@@ -1,7 +1,10 @@
{
- "version": "2",
+ "version": "3",
"remote": {
"https://esm.sh/preact@10.15.1": "2b79349676a4942fbcf835c4efa909791c2f0aeca195225bf22bac9866e94b4e",
+ "https://esm.sh/preact@10.15.1/debug": "eb12af10d41f793ab3a8cf90bff89a9cd8efab57b541d43dada6efc5e3fa8e3c",
+ "https://esm.sh/stable/preact@10.15.1/denonext/debug.js": "e8e5e198bd48c93d484c91c4c78af1900bd81d9bfcfd543e8ac75216f5404c10",
+ "https://esm.sh/stable/preact@10.15.1/denonext/devtools.js": "7e3009ee2208a6cc8bbf747b61e9468d177ef55d94cf9b774ad2a6c926ae51cb",
"https://esm.sh/stable/preact@10.15.1/denonext/preact.mjs": "30710ac1d5ff3711ae0c04eddbeb706f34f82d97489f61aaf09897bc75d2a628"
}
}