Revision history for Data-DisjointSet-Shared 0.07 2026-10-16 - Fix shared-lock wakeups and interrupted reset publication. - Preserve permissions when another process finishes initialization. - Link threading dependencies explicitly. 0.06 2026-09-26 - Recovery re-derives set sizes and num_sets after a writer killed mid-union, and reruns an interrupted reset. - Segments are reserved, so a full filesystem fails the constructor; DATA_DISJOINTSET_SHARED_SPARSE=1 skips the reservation. - A failed create no longer leaves a full-size file behind. 0.05 2026-09-15 - Recover a lock left ownerless by a corrupt file instead of hanging. - Fix a writer stall on ARM64 after readers release. 0.04 2026-08-12 - Recover a file left behind by an interrupted create instead of leaving the path unopenable. - Documentation and test-harness corrections. - unlink() reports a removal that failed; one already gone is not an error. 0.03 2026-07-22 - Fix a use-after-free in union_many() when tied or overloaded arguments destroy the set; it now croaks. - On-disk format change (v1 -> v2): recreate 0.02 files. - Validate the element count from one snapshot at attach. 0.02 2026-07-03 - Security and robustness hardening; backing files now created mode 0600 (pass a file-mode argument to new() for cross-user sharing). 0.01 2026-06-26 - Initial release.