| Commit message (Expand) | Author | Age | Files | Lines |
| * | objectstore/chain: Add an actual chain object store v0.1.45 | Runxi Yu | 2026-03-04 | 7 | -0/+214 |
| * | *: Fix lints v0.1.43 | Runxi Yu | 2026-03-04 | 1 | -0/+1 |
| * | objectstore/packed: Make more tests iterate algorithms | Runxi Yu | 2026-03-04 | 1 | -10/+12 |
| * | objectstore/packed: Split | Runxi Yu | 2026-03-04 | 4 | -157/+164 |
| * | objectstore/loose: Split | Runxi Yu | 2026-03-04 | 4 | -183/+204 |
| * | objectstore/mix: Separate | Runxi Yu | 2026-03-04 | 8 | -257/+305 |
| * | objectstore/mix: Rename from objectstore/chain | Runxi Yu | 2026-03-04 | 1 | -52/+52 |
| * | objectstore/packed: Split | Runxi Yu | 2026-03-04 | 3 | -142/+151 |
| * | *: Lint | Runxi Yu | 2026-03-04 | 31 | -62/+490 |
| * | objectstore/packed: Check pack/idx checksums here.•••We previously had helpers in format/pack/checksum that checks
.pack/.idx-related checksums with []byte-based APIs. But it only really
makes sense to use those []byte-based APIs on mmap's (otherwise it'd be
horribly inefficient).
Since the packed object-store only needs to check that the .pack and
.idx trailer match, we move the relevant part into objectstore/packed.
The rest are deleted for now; we'll definitely need a streaming version
for the pack verification (when ingesting packfiles from the network)
(though we might just make it a streaming API (writer? reader? not
decided yet) that *produces* a hash, then verify it in the caller; this
way we could reuse the function in the pack-producing routines). The
others might get the []byte-based APIs back, or perhaps they too get
streaming APIs.
Remember that "reading objects from a packed object store",
"creating/writing packfiles", and "ingesting an incoming pack (which
usually involves creating an .idx for it)", are all very different
tasks.
| Runxi Yu | 2026-03-03 | 2 | -2/+31 |
| * | *: Fix the broken comments for overescaping that python script | Runxi Yu | 2026-02-22 | 2 | -3/+3 |
| * | internal/lru: Rename from internal/cache/lru | Runxi Yu | 2026-02-22 | 1 | -1/+1 |
| * | objectstore/chain: Fix lints v0.1.32 | Runxi Yu | 2026-02-22 | 1 | -59/+59 |
| * | objectstore/chain: MRU especially to reduce loose object syscall cost v0.1.31 | Runxi Yu | 2026-02-22 | 1 | -39/+122 |
| * | format/delta/apply, etc.: ReadHeaderSizes should use ByteReader | Runxi Yu | 2026-02-22 | 1 | -1/+3 |
| * | objectstore/packed: Pre-allocate instead of ReadAll | Runxi Yu | 2026-02-22 | 1 | -10/+17 |
| * | objectstore/*, repository: Add ReadSize•••For cases where knowing the type is unnecessary and incurs extra
overhead.
v0.1.28 | Runxi Yu | 2026-02-21 | 5 | -0/+88 |
| * | objectstore/packed: Don't use full delta reconstruction just to read headers | Runxi Yu | 2026-02-21 | 5 | -24/+84 |
| * | objectstore/packed: Improve delta base caching | Runxi Yu | 2026-02-21 | 4 | -80/+108 |
| * | objectstore/packed: Best-effort touchCandidate | Runxi Yu | 2026-02-21 | 1 | -1/+4 |
| * | objectstore/packed: Optimize pack candidate lookup and locking | Runxi Yu | 2026-02-21 | 3 | -40/+116 |
| * | objectstore/packed: Separate idx candidate lookup vs actually opening it | Runxi Yu | 2026-02-21 | 2 | -110/+116 |
| * | objectstore/packed: Lazily parse idx metadata | Runxi Yu | 2026-02-21 | 2 | -69/+144 |
| * | objectstore/packed: Verify that the index matches the pack | Runxi Yu | 2026-02-21 | 1 | -0/+33 |
| * | objectstore/packed: Use constants/functions from format/pack | Runxi Yu | 2026-02-21 | 5 | -85/+23 |
| * | format/delta/apply: Move core delta apply algorithm here | Runxi Yu | 2026-02-21 | 2 | -169/+4 |
| * | objectstore/{packed,loose}: Use internal zlib v0.1.26 | Runxi Yu | 2026-02-21 | 5 | -5/+6 |
| * | objectstore/packed: Use SplitSeq | Runxi Yu | 2026-02-21 | 1 | -1/+1 |
| * | objectstore/{loose,packed}: Use iolimit v0.1.23 | Runxi Yu | 2026-02-21 | 4 | -16/+30 |
| * | objectstore/loose, repository: Use a Reader-based API v0.1.22 | Runxi Yu | 2026-02-21 | 4 | -161/+97 |
| * | objectstore/packed: Fix ReadHeader to return resolved delta object size v0.1.21 | Runxi Yu | 2026-02-21 | 1 | -2/+70 |
| * | objectstore/packed: Add test for mismatched verify-pick -v size | Runxi Yu | 2026-02-21 | 1 | -0/+78 |
| * | repository, {ref,object}store: Make stores own their roots | Runxi Yu | 2026-02-21 | 2 | -10/+10 |
| * | *: Modernize and lint; add CI v0.1.17 | Runxi Yu | 2026-02-21 | 10 | -61/+104 |
| * | *: Update doc-comments v0.1.13 | Runxi Yu | 2026-02-21 | 4 | -4/+5 |
| * | *: Use testgit.NewRepo | Runxi Yu | 2026-02-21 | 4 | -30/+30 |
| * | objectstore/packed: Add initial pack reading support | Runxi Yu | 2026-02-21 | 16 | -0/+1427 |
| * | objectstore/loose: Move test helpers to their own file | Runxi Yu | 2026-02-21 | 2 | -53/+63 |
| * | objectstore/loose: Add streaming writer | Runxi Yu | 2026-02-21 | 3 | -125/+411 |
| * | objectstore/loose: Add loose writer in bytes | Runxi Yu | 2026-02-21 | 2 | -0/+216 |
| * | objectstore/loose: Rename loose_test to read_test | Runxi Yu | 2026-02-21 | 1 | -0/+0 |
| * | objectstore/loose: Use filepath instead of path when joining OS paths | Runxi Yu | 2026-02-21 | 1 | -2/+2 |
| * | objectstore/loose: We should receive the objects directory, not repo root | Runxi Yu | 2026-02-21 | 3 | -8/+11 |
| * | objectstore/loose: Add testing | Runxi Yu | 2026-02-21 | 1 | -0/+199 |
| * | objectstore/loose: We don't need this nil check either, I think | Runxi Yu | 2026-02-21 | 1 | -4/+0 |
| * | objectstore/loose: Simplify ReadBytes* with a helper | Runxi Yu | 2026-02-21 | 1 | -10/+18 |
| * | objectstore/loose: Remove redundant length check | Runxi Yu | 2026-02-21 | 1 | -3/+0 |
| * | objectstore/loose: Verify the length where possible. | Runxi Yu | 2026-02-21 | 2 | -4/+15 |
| * | objectstore: Clarify the hash contract in ReadBytesFull | Runxi Yu | 2026-02-21 | 1 | -1/+4 |
| * | objectstore/loose: Add loose backend | Runxi Yu | 2026-02-21 | 6 | -0/+269 |