diff --git a/RELEASES.md b/RELEASES.md index 34bb372b..6698493f 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -10,6 +10,18 @@ Full auto-generated changelog: `CHANGELOG.md` · Releases: https://github.com/so --- +## v8.0.11 — 2026-07-02 (no script shape can hang on brainy's internals) + +Completes v8.0.10's exit fix for every operation class. Two further mechanisms found and fixed: +the `beforeExit` auto-flush hook looped forever on any script that never reaches `close()` (Node +re-emits `beforeExit` after each event-loop drain and the async flush schedules new work — it now +self-deregisters before its single flush, which still lands your buffered data before exit), and +every background-maintenance interval (graph auto-flush, LSM compaction, metadata write-buffer, +VFS/path-cache maintenance, statistics debounce) is now unref'd at creation. Verified against the +published package: an `add + relate` script exits cleanly both with `close()` (~0.5 s) and with no +teardown at all — with the data confirmed durable on reopen. A per-operation-class sweep test now +asserts no ref'd timer survives `close()`, so this bug class stays closed. + ## v8.0.10 — 2026-07-02 (a bare script exits cleanly after `close()`) A minimal `init → add → close` script used to hang forever after `close()` returned — brainy held