| Comment: | fix(sync): reclassify held artifacts and phantoms from igot (#403)
sync-protocol-01 Section 7.5 has a pushed igot reclassify what the server holds: public igot makes it public, igot HASH 1 private, the latter from a requester without x too, where it still makes no phantom. This matches page_xfer's content_make_public and content_make_private. Tracked in #391. |
|---|---|
| Timelines: | family | ancestors | descendants | both | main | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
5004d66398df97a7906ba97003c74a92 |
| User & Date: | [email protected] on 2026-10-13 07:19:48.000 |
| Other Links: | branch diff | manifest | tags |
|
2026-10-13
| ||
| 07:32 |
fix(sync): stop the client reply loop at a card with no artifact name (#404)
* fix(sync): stop the client reply loop at a gimme or igot with no artifact name fossil's client reads gimme and igot only with blob_is_hname; any other line is an unknown command that ends the reply-card loop, as sync-protocol-01 Section 5.2 requires of a malformed defined card. A server case pins the existing bad-command answer to such a gimme. Tracked in #397. * fix(sync): stop the client reply loop at a file or cfile with no artifact name Tracked in #397. * test(conformance): split the case tables this round grew past 70 lines Tracked in #397. Each half keeps its cases in order; only the table functions move. check-in: 636e873e6a user: [email protected] tags: main, trunk | |
| 07:19 |
fix(sync): reclassify held artifacts and phantoms from igot (#403)
sync-protocol-01 Section 7.5 has a pushed igot reclassify what the server holds: public igot makes it public, igot HASH 1 private, the latter from a requester without x too, where it still makes no phantom. This matches page_xfer's content_make_public and content_make_private. Tracked in #391. check-in: 5004d66398 user: [email protected] tags: main, trunk | |
| 07:12 |
fix(sync): end card processing when a pushed file fails its handler (#402)
* fix(sync): end card processing when a pushed file fails its handler sync-protocol-01 Section 5.2 has a file or cfile handler failure reset the reply, send the error and stop parsing, as fossil's xfer_accept_file path does. A wrong hash, a bad HASH or DELTASRC and a storage failure now break the card loop; a file delta with a held basis is verified before it is stored (Section 7.5). Tracked in #390. * fix(sync): model a bad file name in the clone-fatal probe Tracked in #390. check-in: c36a69e366 user: [email protected] tags: main, trunk | |