deno_std
deno_std copied to clipboard
@std/fs/exists returns true when a path is inaccessible.
Describe the bug
@std/fs/exists returns true when a path is inaccessible.
Steps to Reproduce
$ ls /root
ls: cannot open directory '/root': Permission denied
$ cat test.ts
import { exists } from "jsr:@std/fs@^1.0.15";
console.log(await exists("/root/foo"))
$ deno run --allow-read test.ts
true
$
Expected behavior
Throw an error. Maybe a Deno.errors.PermissionDenied like Deno.readDir("/root")?
Environment
- OS: Fedora 41
- deno version: 2.2.6
- std version: 1.0.15
exists has an option isReadable, does that cover your use case?
import { exists } from "jsr:@std/fs@^1.0.15";
console.log(await exists("/root/foo", { isReadable: true }));
this error is also reproducible in NodeJS