Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 34.2k
Closed
Labels
fsIssues and PRs related to the fs subsystem / file system.Issues and PRs related to the fs subsystem / file system.
Description
Version
v20.11.1
Platform
macOS arm64
Subsystem
No response
What steps will reproduce the bug?
fs.writeFileSync failed to EACCES: permission denied error with Node 20, but works with Node 18.
importfsfrom'fs'importpathfrom'path'importosfrom'os'functionmodify(fsPath,key,value){letdir=path.dirname(fsPath)if(!fs.existsSync(dir))fs.mkdirSync(dir,{recursive: true})letcontent=fs.readFileSync(fsPath,{encoding: 'utf8',flag: 'a+'})content=content||'{}'content=JSON.parse(content)content[key]=valuecontent=JSON.stringify(content)fs.writeFileSync(fsPath,content)}constp=path.join(os.tmpdir(),'test','foo.json')modify(p,'key','foobar')How often does it reproduce? Is there a required condition?
No response
What is the expected behavior? Why is that the expected behavior?
No response
What do you see instead?
❯ /opt/homebrew/opt/node@20/bin/node x.mjs node:fs:2352 return binding.writeFileUtf8( ^ Error: EACCES: permission denied, open '/private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json' at Object.writeFileSync (node:fs:2352:20) at modify (file:///Users/fannheyward/x.mjs:13:6) at file:///Users/fannheyward/x.mjs:17:1 at ModuleJob.run (node:internal/modules/esm/module_job:218:25) at async ModuleLoader.import (node:internal/modules/esm/loader:329:24) at async loadESM (node:internal/process/esm_loader:28:7) at async handleMainPromise (node:internal/modules/run_main:113:12){errno: -13, code: 'EACCES', syscall: 'open', path: '/private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json' } Node.js v20.11.1 ❯ ls -lh /private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json ---------- 1 fannheyward staff 0B 3 14 12:38 /private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json Works with Node 18:
~ ❯ /opt/homebrew/opt/node@18/bin/node x.mjs ❯ ls -lh /private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json -rw-r--r--@ 1 fannheyward staff 16B 3 14 12:36 /private/var/folders/7q/r_8_1r5d5bb0dfycljk5pr1h0000gn/T/test/foo.json Additional information
No response
Metadata
Metadata
Assignees
Labels
fsIssues and PRs related to the fs subsystem / file system.Issues and PRs related to the fs subsystem / file system.