Tk Source Code

Check-in [ee19ce1e]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Merge nab-reliquats (via nab-tagops-merge): tag clearing undo trigger and boundary line cache repairs, restore proc fork hygiene, UpdateElideInfo walk pairing and search anchoring. See the branch commits for the root causes. Tests btree-14.84 - 14.91.
Downloads: See separate download page
Timelines: family | ancestors | descendants | both | revised_text | tip-466
Files: files | file ages | folders
SHA3-256: ee19ce1e46e9e85fdb725bc5a19a7eb2778c0ed370a76152dd667b12f3c9d20d
User & Date: nab 2026-07-15 19:51:13.729
Context
2026-07-15
23:27
Merge nab-reliquats-p3 (via nab-reliquats-p3-merge): state-aware repair of the elide walk pairings crossed by verbatim restores, tag clear undo repairs (node sums, chunk skip), multi-node tag clear bounds, tag search end-line fix, adjacent switch processing, and the elide/switch cross-check in TkBTreeCheck. See the branch commits for the root causes. Tests btree-14.92 - 14.101. check-in: 9ce533fc user: nab tags: revised_text, tip-466
23:26
Staging merge of nab-reliquats-p3 for revised_text: state-aware repair of the elide walk pairings crossed by verbatim restores, tag clear undo repairs (node sums, chunk skip), multi-node tag clear bounds, tag search end-line fix, adjacent switch processing, and the elide/switch cross-check in TkBTreeCheck. See the branch commits for the root causes. Tests btree-14.92 - 14.101. leaf check-in: 10582454 user: nab tags: nab-reliquats-p3-merge
19:51
Merge nab-reliquats (via nab-tagops-merge): tag clearing undo trigger and boundary line cache repairs, restore proc fork hygiene, UpdateElideInfo walk pairing and search anchoring. See the branch commits for the root causes. Tests btree-14.84 - 14.91. check-in: ee19ce1e user: nab tags: revised_text, tip-466
19:30
Staging merge of nab-reliquats for revised_text: tag clearing undo trigger and boundary line cache repairs, restore proc fork hygiene, UpdateElideInfo walk pairing and search anchoring. See the branch commits for the root causes. Tests btree-14.84 - 14.91. leaf check-in: 3be0e1c8 user: nab tags: nab-tagops-merge
17:26
Merge nab-reliquats: harden elision, tag and section handling against the remaining corruption classes. Undo/redo of deletions now reconciles the elide topology of the restored range with the current tag information (UpdateElideInfo gets a recompute mode; covers tags excluded from undo and elide states reconfigured between deletion and undo); insertion of non-elided text inside an elided range splits the range (meeting point of two elide tags); switches enrolled in undo tokens survive the annihilation of their counterpart (annihilation marker, stash references, drop at restore); the index arithmetic of joined delete undo tokens handles line-crossing chunks and refuses mark-based joins it cannot compute; the section producers no longer leave short sections at arbitrary cuts (RebuildSections giveback, SplitSection walk-back, BalanceSectionWithLeft, rebalancing after boundary mark removal); [pathName clear] works on peers; tag clearing repairs its range search beyond the boundary line, its undo change list anchoring, its line cache references, partial clears of elided ranges, and re-merges interior chunk boundaries at undo; the branch search examines the first line of a node; TkBTreeTag sets up its undo information before the elision update frees merged segments. With regression tests btree-14.40 - 14.83, text-27.37 - 27.43, text-42.1/42.2. check-in: 22f07785 user: nab tags: revised_text, tip-466
Changes
Unified Diff Side-by-Side Diff Patch
Changes to generic/tkTextBTree.c.
Changes to tests/textBTree.test.