querysub 0.301.0 → 0.303.0
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/package.json
CHANGED
|
@@ -1469,6 +1469,7 @@ export class PathValueProxyWatcher {
|
|
|
1469
1469
|
);
|
|
1470
1470
|
let newReadCheck = !!value.isTransparent;
|
|
1471
1471
|
if (oldReadCheck !== newReadCheck) {
|
|
1472
|
+
console.error(`Old read check ${oldReadCheck} !== newReadCheck ${newReadCheck} for ${value.path}, canGCValue: ${value.canGCValue}, isTransparent: ${value.isTransparent}`);
|
|
1472
1473
|
// IMPORTANT! IF WE HIT THIS ASSERT, DEBUG IT RIGHT NOW!
|
|
1473
1474
|
// - I updated the read check to use isTransparent. BUT... I'm not sure
|
|
1474
1475
|
// this is correct. This WILL break if we add any new isTransparent values,
|
|
@@ -229,7 +229,10 @@ async function edgeNodeFunction(config: {
|
|
|
229
229
|
// JUST use it on the first loop, so if we can't find any matches, we ignore it.
|
|
230
230
|
if (liveHashOverrideObj) {
|
|
231
231
|
try {
|
|
232
|
-
let liveHashOverrideObject = JSON.parse(liveHashOverrideObj)
|
|
232
|
+
let liveHashOverrideObject = JSON.parse(liveHashOverrideObj) as {
|
|
233
|
+
liveHash: string;
|
|
234
|
+
time: number;
|
|
235
|
+
};
|
|
233
236
|
liveHashOverrideExpiryTime = liveHashOverrideObject.time + 1000 * 30;
|
|
234
237
|
liveHashOverride = liveHashOverrideObject.liveHash;
|
|
235
238
|
} catch (e: any) {
|
|
@@ -87,9 +87,11 @@ function onLiveHashChange(liveHash: string, refreshThresholdTime: number) {
|
|
|
87
87
|
if (i < notifyIntervals.length - 2 && waitDuration <= 30 * 1000) continue;
|
|
88
88
|
|
|
89
89
|
// Update the URL override for manual refreshes
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
90
|
+
if (!liveHash.startsWith("forced")) {
|
|
91
|
+
Querysub.localCommit(() => {
|
|
92
|
+
liveHashOverrideURL.value = { liveHash, time: Date.now() };
|
|
93
|
+
});
|
|
94
|
+
}
|
|
93
95
|
if (!skipFirst) {
|
|
94
96
|
if (currentNotification) {
|
|
95
97
|
currentNotification.close();
|
|
@@ -367,6 +367,14 @@ const runScreenCommand = measureWrap(async function runScreenCommand(config: {
|
|
|
367
367
|
} else {
|
|
368
368
|
console.log(red(`No nodeId file found for ${screenName}, not triggering rolling update notification`));
|
|
369
369
|
}
|
|
370
|
+
// Stop the pipe-pane, and delete the pipe file
|
|
371
|
+
try {
|
|
372
|
+
await runPromise(`${prefix}tmux pipe-pane -O -t ${screenName}`);
|
|
373
|
+
await fs.promises.unlink(os.homedir() + "/" + SERVICE_FOLDER + screenName + "/pipe.txt");
|
|
374
|
+
} catch (e: any) {
|
|
375
|
+
console.warn(`Error stopping pipe-pane for ${screenName}: ${e.stack}`);
|
|
376
|
+
}
|
|
377
|
+
|
|
370
378
|
let rollingScreenName = screenName + "-rolling" + SCREEN_SUFFIX;
|
|
371
379
|
console.log(green(`Renaming screen ${screenName} to ${rollingScreenName} for rolling interval ${config.rollingWindow} at ${new Date().toLocaleString()}`));
|
|
372
380
|
await runPromise(`${prefix}tmux rename-session -t ${screenName} ${rollingScreenName}`);
|
|
@@ -1,7 +1,23 @@
|
|
|
1
|
+
TODO: It seems like every other time it fails to reload?
|
|
2
|
+
|
|
3
|
+
Uh... we get a failure in commitWrites, and then we never receive the path values we need?
|
|
4
|
+
- Although we only don't receive the values we need once, so... maybe the failed check is okay?
|
|
5
|
+
|
|
1
6
|
1) Verify clientside notifications work when we rolling update cyoa
|
|
2
7
|
2) Verify edge nodes are removed when we rolling update cyoa
|
|
8
|
+
- Eh... it removes most of the time?
|
|
3
9
|
3) Update cyoa rolling time back to 4 hours
|
|
4
10
|
|
|
11
|
+
1) Auto restart if the connect to the cyoa server is down, after 30 seconds, instead of just infinitely erroring out.
|
|
12
|
+
- Give a notification after 15 seconds warning them, with the ability to not restart if they click "do not restart"
|
|
13
|
+
- In edgeClientWatcher
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
9) In machine info, support an object which can show current, and max, so we can show it as a bar and the max amount for:
|
|
17
|
+
RAM
|
|
18
|
+
CPU
|
|
19
|
+
DISK
|
|
20
|
+
|
|
5
21
|
10) Add RAM total, ram % used, cpu count, CPU %, disk size, disk % used to machine info
|
|
6
22
|
- Show this all in the list page, with nice bars?
|
|
7
23
|
- Filled, but the total size will also depend on the maximum (to a degree), so it's very nice.
|
|
@@ -9,4 +25,5 @@
|
|
|
9
25
|
(Yes, it overlaps with node metrics, but that's okay, sometimes we want to look at machines, other times services, and the types of errors that show up in either changes).
|
|
10
26
|
|
|
11
27
|
|
|
12
|
-
11) Restart the server and verify everything starts up nicely on reboot!
|
|
28
|
+
11) Restart the server and verify everything starts up nicely on reboot!
|
|
29
|
+
- Or... screw it, and move onto audio apis...
|