dsh-unlag 1.9.83 → 1.9.84
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/index.js +13 -5
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1629,11 +1629,19 @@ export async function verifyStartupRows(graph, fetchBody, rows, budgetMs = MAX_V
|
|
|
1629
1629
|
if (graph === null || typeof graph !== 'object' || !Array.isArray(graph.entries)) {
|
|
1630
1630
|
return { status: 'blocked', reason: 'list', detail: 'the plugin list cannot be read, so no startup row can be checked against it' }
|
|
1631
1631
|
}
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1632
|
+
// The list is the running app's own object and it is re-composed while a swap runs, so reading a
|
|
1633
|
+
// row is a step that can fail like any other: a row that cannot be read leaves the list unread,
|
|
1634
|
+
// which is a refusal with a reason, not an exception out of the route.
|
|
1635
|
+
let entries
|
|
1636
|
+
try {
|
|
1637
|
+
entries = new Map(
|
|
1638
|
+
(Array.isArray(graph.entries) ? graph.entries : [])
|
|
1639
|
+
.filter((row) => typeof row?.id === 'string' && row.id !== '')
|
|
1640
|
+
.map((row) => [row.id, row]),
|
|
1641
|
+
)
|
|
1642
|
+
} catch (error) {
|
|
1643
|
+
return { status: 'blocked', reason: 'list', detail: `the plugin list cannot be read: ${String(error?.message ?? error)}` }
|
|
1644
|
+
}
|
|
1637
1645
|
// A startup list is a handful of addresses. Anything past that bound is not a list this app could
|
|
1638
1646
|
// boot from, and reading it would turn one request into unbounded work on the process that owns
|
|
1639
1647
|
// every running turn.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-unlag",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.84",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A press applies plugin edits right away and brings a laggy interface back; automatic reloading stays off unless you turn it on, so the press is the only trigger, and nothing restarts.",
|
|
6
6
|
"license": "MIT",
|