hyper/bin/with-normalized-cwd.js
Philip Peterson d057ccc6e9
Fix Windows issues, upgrade dependencies (#253)
* Debug parallels

* Try fix cwd issue

* Try fix parallels issue

* Upgrade Node.js to 22.11.0 to fix Parallels build crash

libuv 1.46.0 (Node 20) calls uv_fatal_error when AssignProcessToJobObject
fails with ERROR_INVALID_PARAMETER inside Parallels, aborting the node-gyp
process with STATUS_BREAKPOINT (exit 2147483651). libuv 1.48.0 (Node 22)
handles this gracefully. Also resolves the stale Node 18 TODO in the ARM
Linux action.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Delete ava for simplicity

* Fix typings

* Remove dangling references

* Try to cleanup properly

* Allow parallels to skip gpu

* Update yarn.lock

* Try to disable gpu

* Fix ts error

* Fix flag

* Launch dev tools

* Open DevTools before loadURL so it captures renderer errors on blank window

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add verbose diagnostic logging to trace blank window / plugin crash

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Fix icons

* Fix icons again

* Add session creation logging to trace blank window after PTY rebuild

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Various versioning fixes

* Update gitignore

* Bump version correctly

* Fixes

* Remove msvs version lock

* Fix lint errors

* Fix lint errors

* Rebuild react icons

* Fixes

* Fixes

* Restore ava, formatting

* Upgrade node

* Fix yarn lockfile

* Fix ava reference

* Fixes

* Try to fix proxyquire

* Pre-build app TS declarations before unit tests

@ava/typescript calls `tsc --incremental` which doesn't build project
references, so dist/tmp/appdts/*.d.ts didn't exist when the root
tsconfig tried to use them, causing TS6305 errors. Running
`tsc -b app/tsconfig.json` first generates those declarations.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Make tests pass

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 04:52:41 -07:00

27 lines
800 B
JavaScript
Vendored

'use strict';
const {execSync, spawnSync} = require('child_process');
const args = process.argv.slice(2);
if (process.platform === 'win32') {
const cwd = process.cwd();
if (cwd.startsWith('\\\\')) {
try {
const netUse = execSync('net use', {encoding: 'utf8'});
for (const line of netUse.split(/\r?\n/)) {
const m = line.match(/\b([A-Z]:)\s+(\\\\[^\s]+)/i);
if (m) {
const [, letter, unc] = m;
if (cwd.toLowerCase().startsWith(unc.toLowerCase())) {
const normalized = letter + cwd.slice(unc.length);
process.chdir(normalized);
break;
}
}
}
} catch (_) {}
}
}
const result = spawnSync(args[0], args.slice(1), {stdio: 'inherit', shell: true});
process.exit(result.status ?? 0);