$ rome rage --summary
Environment Variables
Object {
COLORTERM: "truecolor"
LANG: "en_US.UTF-8"
PATH: "C:\\Users\\rvion\\AppData\\Roaming\\npm;C:\\Program Files\\Git\\mingw64\\bin;C:\\Program
Files\\Git\\usr\\bin;C:\\Users\\rvion\\bin;C:\\Users\\rvion\\AppData\\Roaming\\npm;C:\\Program Files\\Git\\mingw64\\bin;C:\\Program Files\\Git\\usr\\bin;C:\\Users\\rvion\\bin;C:\\Program
Files (x86)\\Microsoft
SDKs\\Azure\\CLI2\\wbin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0;C:\\Windows\\System32\\OpenSSH;C:\\Program Files
(x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Program Files\\NVIDIA Corporation\\NVIDIA NvDLISR;C:\\Program Files\\dotnet;C:\\Program Files\\Microsoft SQL
Server\\130\\Tools\\Binn;C:\\Program Files\\Microsoft SQL Server\\Client SDK\\ODBC\\170\\Tools\\Binn;C:\\Program Files\\Git\\cmd;C:\\Program
Files\\Docker\\Docker\\resources\\bin;C:\\ProgramData\\DockerDesktop\\version-bin;C:\\Program
Files\\nodejs;C:\\Users\\rvion\\scoop\\shims;C:\\Users\\rvion\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\rvion\\AppData\\Local\\Programs\\Microsoft VS Code
Insiders\\bin;C:\\Users\\rvion\\AppData\\Local\\GitHubDesktop\\bin;C:\\Users\\rvion\\AppData\\Roaming\\npm;C:\\Users\\rvion\\.fzf\\bin"
TERM: "cygwin"
TERM_PROGRAM: "vscode"
}
User Config
unset
Rome Version
10.0.3-beta
Node Version
14.4.0
Platform
win32 x64 10.0.18362
Terminal Features
Object {
background: "unknown"
colorDepth: 24
columns: 195
cursor: true
hyperlinks: true
isTTY: true
unicode: false
}
Client Flags
Object {
clientName: "cli"
cwd: "C:\\Users\\rvion\\dev\\rome-test"
realCwd: "C:\\Users\\rvion\\dev\\rome-test"
silent: false
}
Server Status
Object {
projects: Array [
Object {id: 0}
Object {id: 1}
]
server: Object {
heapTotal: 26_079_232
pid: 20_916
uptime: 0.1493524
}
workers: Array [
Object {
astCacheSize: 0
heapTotal: 26_079_232
ownedBytes: 0
ownedFileCount: 0
pid: 20_916
uptime: 0.149304201
}
]
}
$ mkdir hello-world
$ cd hello-world
$ rome init
$ rome start
I don't know what to expect, this was the first invocation.
Hi @rvion could you please paste the entire stack trace? There aren't enough information to triage your issue
@ematipico sure, here is it:
$ rome start
i No running daemon found. Starting one...
net.js:1296:20 internalError/fatal INTERNAL โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ร Permission denied for C:\Users\rvion\AppData\Local\Temp\rome-wait-10.0.3-beta.sock
1. Server._listen2 (net.js:1296:20)
2. listenInCluster (net.js:1361:11)
3. Server.listen (net.js:1458:4)
4. listen (project-rome/@internal/core/client/Client.ts:724:17)
5. <anonymous> (project-rome/@internal/core/client/Client.ts:745:4)
6. <anonymous>
File stats for ~/AppData/Local/Temp
Object {
atime: 2020-08-10T09:03:19.086Z
atimeMs: 1_597_050_199_086.4243
birthtime: 2020-06-24T08:42:22.067Z
birthtimeMs: 1_592_988_142_067.4624
blksize: 4_096
blocks: 512
ctime: 2020-08-10T09:03:19.086Z
ctimeMs: 1_597_050_199_086.4243
dev: 1_956_045_687
gid: 0
ino: 9_288_674_231_551_268
isBlockDevice: false
isCharacterDevice: false
isDirectory: true
isFIFO: false
isFile: false
isSocket: false
isSymbolicLink: false
mode: 16_822
mtime: 2020-08-10T09:03:19.086Z
mtimeMs: 1_597_050_199_086.4243
nlink: 1
rdev: 0
size: 0
uid: 0
}
! This diagnostic was derived from an internal Rome error. Potential bug, please report if necessary.
Also, I have a fairly standard setup on a relatively fresh windows installation.
I'm running the command through git bash, but I didn't mess with permissions nor did anything really strange with folders, path, o permissions
Is your Windows install managed by any chance? That folder should be writable but appears like named pipes under Windows can be disabled with access control. It's how Rome communicates between the CLI and a running server.
No, regular windows setup. I have no clues why this happens.
I'm wondering if it might be more reliable for us to listen on a local port instead of a named pipe. Although I think there's some strong performance issues to consider there. We could potentially support detecting and gracefully falling back, but I think we should only do that if this issue is more widespread since supporting both would be tricky.
I'd love a port fallback, especially for custom setups / weird setups. I find it very practical.
Also, could you try another folder location as fallback ?
Ran into the same issue while just starting into Rome.
Windows 10 Pro, Git Bash (run as Admin), fairly stock setup.
$ rome start
i No running daemon found. Starting one...
net.js:1283:18 internalError/fatal INTERNAL โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ร Permission denied for C:\Users\Jonathan\AppData\Local\Temp\rome-wait-10.0.4-beta.sock
1. Server._listen2 (net.js:1283:18)
2. listenInCluster (net.js:1348:11)
3. Server.listen (net.js:1447:4)
4. listen (project-rome/@internal/core/client/Client.ts:720:17)
5. <anonymous> (project-rome/@internal/core/client/Client.ts:741:4)
6. <anonymous>
File stats for ~/AppData/Local/Temp
Object {
atime: 2020-08-16T17:42:53.487Z
atimeMs: 1_597_599_773_487.3743
birthtime: 2019-09-25T06:56:10.459Z
birthtimeMs: 1_569_394_570_458.953
blksize: 4_096
blocks: 1_080
ctime: 2020-08-16T17:42:53.465Z
ctimeMs: 1_597_599_773_465.374
dev: 3_392_670_624
gid: 0
ino: 844_424_932_059_605
isBlockDevice: false
isCharacterDevice: false
isDirectory: true
isFIFO: false
isFile: false
isSocket: false
isSymbolicLink: false
mode: 16_822
mtime: 2020-08-16T17:42:53.465Z
mtimeMs: 1_597_599_773_465.374
nlink: 1
rdev: 0
size: 0
uid: 0
}
! This diagnostic was derived from an internal Rome error. Potential bug, please report if
necessary.
Named pipes/unix sockets is a pretty basic IPC primitive so I doubt we'll need to implement a port solution. Keep in mind that rome start is an optional feature, a daemon is not required.
I'm not sure what other location we could use, I don't know if there's another location that is safe to be written to.
If you could open a node repl and run:
require("fs").writeFileSync(require("os").tmpdir() + "/foo", "bar");
And let me know if it still produces an error, would help narrow it down to see if it's actually a permission issue or just a red herring.
That worked fine for me.
I setup a Windows VM and I can confirm you can't create named pipes in $TMP. Not sure why and seems consistent to all Windows installs. I'm in the process of consolidating all the various directories we write to and I'll make sure to fix this.
Lol from the net.listen docs:
Listening on a file descriptor is not supported on Windows.
We can figure something out.
Fixed by #1126.