stashes 0.1.22 → 0.1.24
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/dist/cli.js +17 -16
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +26 -19
- package/dist/commands/update.js.map +1 -1
- package/dist/web/assets/{index-BakECFUI.js → index-CrqSrNLl.js} +21 -21
- package/dist/web/assets/index-Yo4820v-.css +1 -0
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/web/assets/index-DCsUby8f.css +0 -1
package/dist/cli.js
CHANGED
|
@@ -2564,8 +2564,8 @@ async function setupCommand(options) {
|
|
|
2564
2564
|
}
|
|
2565
2565
|
|
|
2566
2566
|
// src/commands/update.ts
|
|
2567
|
-
import {
|
|
2568
|
-
import { writeFileSync as writeFileSync3, chmodSync, readFileSync as readFileSync8 } from "fs";
|
|
2567
|
+
import { execFileSync, execSync } from "child_process";
|
|
2568
|
+
import { writeFileSync as writeFileSync3, unlinkSync, chmodSync, readFileSync as readFileSync8 } from "fs";
|
|
2569
2569
|
import { tmpdir } from "os";
|
|
2570
2570
|
import { join as join11, dirname as dirname4 } from "path";
|
|
2571
2571
|
import { fileURLToPath as fileURLToPath2 } from "url";
|
|
@@ -2586,7 +2586,7 @@ function fetchLatestVersion() {
|
|
|
2586
2586
|
return null;
|
|
2587
2587
|
}
|
|
2588
2588
|
}
|
|
2589
|
-
function buildUpdateScript(
|
|
2589
|
+
function buildUpdateScript() {
|
|
2590
2590
|
return [
|
|
2591
2591
|
"#!/bin/bash",
|
|
2592
2592
|
"set -e",
|
|
@@ -2602,12 +2602,8 @@ function buildUpdateScript(scriptPath) {
|
|
|
2602
2602
|
'echo "Re-registering with AI tools..."',
|
|
2603
2603
|
"stashes setup",
|
|
2604
2604
|
"",
|
|
2605
|
-
"NEW_VERSION=$(stashes --version)",
|
|
2606
2605
|
'echo ""',
|
|
2607
|
-
'echo "\u2713
|
|
2608
|
-
"",
|
|
2609
|
-
"# Self-cleanup",
|
|
2610
|
-
`rm -f "${scriptPath}"`
|
|
2606
|
+
'echo "\u2713 Update complete!"'
|
|
2611
2607
|
].join(`
|
|
2612
2608
|
`);
|
|
2613
2609
|
}
|
|
@@ -2655,15 +2651,20 @@ async function updateCommand() {
|
|
|
2655
2651
|
s.stop(`Removed from ${configuredTools.length} tool${configuredTools.length === 1 ? "" : "s"}`);
|
|
2656
2652
|
}
|
|
2657
2653
|
const scriptPath = join11(tmpdir(), `stashes-update-${Date.now()}.sh`);
|
|
2658
|
-
writeFileSync3(scriptPath, buildUpdateScript(
|
|
2654
|
+
writeFileSync3(scriptPath, buildUpdateScript(), "utf-8");
|
|
2659
2655
|
chmodSync(scriptPath, 493);
|
|
2660
|
-
|
|
2661
|
-
|
|
2662
|
-
|
|
2663
|
-
|
|
2664
|
-
|
|
2665
|
-
|
|
2666
|
-
|
|
2656
|
+
try {
|
|
2657
|
+
execFileSync("bash", [scriptPath], { stdio: "inherit" });
|
|
2658
|
+
} catch {
|
|
2659
|
+
console.error(`
|
|
2660
|
+
Update failed. Try manually:`);
|
|
2661
|
+
console.error(" npm install -g stashes@latest && stashes setup");
|
|
2662
|
+
process.exitCode = 1;
|
|
2663
|
+
} finally {
|
|
2664
|
+
try {
|
|
2665
|
+
unlinkSync(scriptPath);
|
|
2666
|
+
} catch {}
|
|
2667
|
+
}
|
|
2667
2668
|
}
|
|
2668
2669
|
|
|
2669
2670
|
// src/index.ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAmDA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAmFnD"}
|
package/dist/commands/update.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { writeFileSync, chmodSync, readFileSync } from 'node:fs';
|
|
1
|
+
import { execFileSync, execSync } from 'node:child_process';
|
|
2
|
+
import { writeFileSync, unlinkSync, chmodSync, readFileSync } from 'node:fs';
|
|
3
3
|
import { tmpdir } from 'node:os';
|
|
4
4
|
import { join, dirname } from 'node:path';
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
@@ -23,7 +23,7 @@ function fetchLatestVersion() {
|
|
|
23
23
|
return null;
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
function buildUpdateScript(
|
|
26
|
+
function buildUpdateScript() {
|
|
27
27
|
return [
|
|
28
28
|
'#!/bin/bash',
|
|
29
29
|
'set -e',
|
|
@@ -39,12 +39,8 @@ function buildUpdateScript(scriptPath) {
|
|
|
39
39
|
'echo "Re-registering with AI tools..."',
|
|
40
40
|
'stashes setup',
|
|
41
41
|
'',
|
|
42
|
-
'NEW_VERSION=$(stashes --version)',
|
|
43
42
|
'echo ""',
|
|
44
|
-
'echo "✓
|
|
45
|
-
'',
|
|
46
|
-
'# Self-cleanup',
|
|
47
|
-
`rm -f "${scriptPath}"`,
|
|
43
|
+
'echo "✓ Update complete!"',
|
|
48
44
|
].join('\n');
|
|
49
45
|
}
|
|
50
46
|
// ── Command ─────────────────────────────────────────────────────────────────────
|
|
@@ -98,18 +94,29 @@ export async function updateCommand() {
|
|
|
98
94
|
}
|
|
99
95
|
s.stop(`Removed from ${configuredTools.length} tool${configuredTools.length === 1 ? '' : 's'}`);
|
|
100
96
|
}
|
|
101
|
-
//
|
|
102
|
-
//
|
|
103
|
-
//
|
|
97
|
+
// Run uninstall → install → setup via a synchronous shell script.
|
|
98
|
+
// Safe on Unix: npm uninstall deletes the binary on disk, but the OS keeps
|
|
99
|
+
// the inode alive for this running process (all code is already in memory).
|
|
100
|
+
// The parent blocks until the script finishes, then exits cleanly — no
|
|
101
|
+
// shell prompt interleaving, no dangling background process.
|
|
104
102
|
const scriptPath = join(tmpdir(), `stashes-update-${Date.now()}.sh`);
|
|
105
|
-
writeFileSync(scriptPath, buildUpdateScript(
|
|
103
|
+
writeFileSync(scriptPath, buildUpdateScript(), 'utf-8');
|
|
106
104
|
chmodSync(scriptPath, 0o755);
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
105
|
+
try {
|
|
106
|
+
execFileSync('bash', [scriptPath], { stdio: 'inherit' });
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
console.error('\nUpdate failed. Try manually:');
|
|
110
|
+
console.error(' npm install -g stashes@latest && stashes setup');
|
|
111
|
+
process.exitCode = 1;
|
|
112
|
+
}
|
|
113
|
+
finally {
|
|
114
|
+
try {
|
|
115
|
+
unlinkSync(scriptPath);
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
// Script may already be gone
|
|
119
|
+
}
|
|
120
|
+
}
|
|
114
121
|
}
|
|
115
122
|
//# sourceMappingURL=update.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|