@command-center/command-center 0.8.2 → 0.8.3-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/command-center.js +29 -1
- package/package.json +7 -7
package/bin/command-center.js
CHANGED
|
@@ -161,8 +161,36 @@ function resolveBinary() {
|
|
|
161
161
|
// #######################################
|
|
162
162
|
|
|
163
163
|
function spawnBinary(binaryPath, argv) {
|
|
164
|
+
// WORKAROUND_BUN_SIGTSTP ym-han 2026.04.02
|
|
165
|
+
// Bun compiled binaries get randomly stopped (SIGTTIN/SIGTTOU) when run
|
|
166
|
+
// under interactive bash with job control. This is a known Bun bug
|
|
167
|
+
// (https://github.com/oven-sh/bun/issues/17500) with an unmerged fix
|
|
168
|
+
// (https://github.com/oven-sh/bun/pull/27216).
|
|
169
|
+
//
|
|
170
|
+
// On Linux, we spawn with `detached: true` so Node calls setsid(), giving
|
|
171
|
+
// the binary its own session. Without a controlling terminal, the kernel
|
|
172
|
+
// cannot send SIGTTIN/SIGTTOU. The binary still inherits stdio fds, so
|
|
173
|
+
// terminal I/O works — it just isn't subject to bash's job control.
|
|
174
|
+
// We forward SIGINT/SIGTERM manually since the binary is no longer in
|
|
175
|
+
// the terminal's foreground process group.
|
|
176
|
+
//
|
|
177
|
+
// Remove this workaround once the Bun fix is released.
|
|
178
|
+
const isLinux = process.platform === "linux";
|
|
179
|
+
|
|
164
180
|
return new Promise((resolve) => {
|
|
165
|
-
const child = spawn(binaryPath, argv, {
|
|
181
|
+
const child = spawn(binaryPath, argv, {
|
|
182
|
+
stdio: "inherit",
|
|
183
|
+
detached: isLinux,
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
if (isLinux) {
|
|
187
|
+
const forward = (sig) => {
|
|
188
|
+
if (!child.killed) child.kill(sig);
|
|
189
|
+
};
|
|
190
|
+
process.on("SIGINT", () => forward("SIGINT"));
|
|
191
|
+
process.on("SIGTERM", () => forward("SIGTERM"));
|
|
192
|
+
process.on("SIGHUP", () => forward("SIGHUP"));
|
|
193
|
+
}
|
|
166
194
|
|
|
167
195
|
child.on("error", (error) => {
|
|
168
196
|
resolve({ code: null, signal: null, error });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@command-center/command-center",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.3-rc.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Binary distribution of UpToSpeed Command Center",
|
|
6
6
|
"bin": {
|
|
@@ -23,12 +23,12 @@
|
|
|
23
23
|
"access": "public"
|
|
24
24
|
},
|
|
25
25
|
"optionalDependencies": {
|
|
26
|
-
"@command-center/command-center-linux-arm64": "0.8.
|
|
27
|
-
"@command-center/command-center-linux-x64": "0.8.
|
|
28
|
-
"@command-center/command-center-macos-arm64": "0.8.
|
|
29
|
-
"@command-center/command-center-macos-x64": "0.8.
|
|
30
|
-
"@command-center/command-center-win-arm64": "0.8.
|
|
31
|
-
"@command-center/command-center-win-x64": "0.8.
|
|
26
|
+
"@command-center/command-center-linux-arm64": "0.8.3-rc.1",
|
|
27
|
+
"@command-center/command-center-linux-x64": "0.8.3-rc.1",
|
|
28
|
+
"@command-center/command-center-macos-arm64": "0.8.3-rc.1",
|
|
29
|
+
"@command-center/command-center-macos-x64": "0.8.3-rc.1",
|
|
30
|
+
"@command-center/command-center-win-arm64": "0.8.3-rc.1",
|
|
31
|
+
"@command-center/command-center-win-x64": "0.8.3-rc.1"
|
|
32
32
|
},
|
|
33
33
|
"scripts": {}
|
|
34
34
|
}
|