Skip to content
go-libfossil Check-in [5a070508db]
Login

Check-in [5a070508db]

Overview
Comment:fix(checkout): keep a pending merge across a sparse update

Fossil's update leaves vmerge alone, so the next commit records the merge parent. The sparse update cleared vmerge, losing the parent and letting a partial commit through while the merge was still pending.

Timelines: family | ancestors | descendants | both | main | trunk | feat/submanifest-reader
Files: files | file ages | folders
SHA3-256: 5a070508db8e97062f63d5a349d0177d58be6af7e26f780c97b24a18bb0ac7ff
User & Date: [email protected] on 2026-10-21 11:24:19.000
Other Links: branch diff | manifest | tags
Context
2026-10-21
11:27
fix(checkout): hold record-only changes to the commit queue

A partial commit wrote every pending change outside the cone into the check-in. Such changes now behave as disk changes do: a full commit records them, a partial commit leaves them pending against the new version, and a partial commit is still refused while a merge is pending. Fossil-oracle tests cover the dense analog of each case. check-in: 802906e3b8 user: [email protected] tags: feat/submanifest-reader, main, trunk

11:24
fix(checkout): keep a pending merge across a sparse update

Fossil's update leaves vmerge alone, so the next commit records the merge parent. The sparse update cleared vmerge, losing the parent and letting a partial commit through while the merge was still pending. check-in: 5a070508db user: [email protected] tags: feat/submanifest-reader, main, trunk

11:18
fix(manifest): bound MergeParentFiles' required-content check by the caller's context

The fallback that explains a parent whose tree the store does not hold ran under context.Background, so a cancelled commit still paid for it. Commit passes its context; snapshot, which has no deadline, says so explicitly. check-in: c25e714b08 user: [email protected] tags: feat/submanifest-reader, main, trunk

Changes