| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | pack: Add _read to filenames | 2026-01-28 | 1 | -578/+0 | |
| | | |||||
| * | hash: Use a hashAlgorithmDetails struct for single source of truth v0.1.2 | 2026-01-27 | 1 | -2/+2 | |
| | | | | | | | hashAlgorithm's are assumed to be valid; methods on invalid hashAlgorithms will panic from out-of-bounds read when it's not found in hashAlgorithmTable and that's expected and intended. | ||||
| * | More changes from the import URL update | 2026-01-19 | 1 | -2/+2 | |
| | | |||||
| * | repo: Drop hashSize and use hashAlgo.size() | 2026-01-17 | 1 | -2/+2 | |
| | | |||||
| * | hash: Key by algorithm, not size | 2026-01-17 | 1 | -2/+2 | |
| | | |||||
| * | loose/pack: Remove commented-out verifyTypedObject | 2026-01-15 | 1 | -4/+0 | |
| | | | | | It's not supposed to be used there anyway | ||||
| * | pack: Do not madvise | 2025-11-24 | 1 | -11/+0 | |
| | | | | | | Apparently although it's not fully sequential, the general pattern is sort-of increasing in offsets as trees are being traversed. | ||||
| * | bufpool: Return bytes.Buffer, rather than a pointer to it | 2025-11-23 | 1 | -32/+32 | |
| | | | | | | | It's silly to allocate a bytes.Buffer struct, however small it is, every time Borrow is called, since the entire purpose is to reduce allocations. | ||||
| * | obj: call parseObjectBody in ReadObject instead of loose/pack readers | 2025-11-22 | 1 | -10/+7 | |
| | | |||||
| * | pack: Allocate the header on the stack instead | 2025-11-22 | 1 | -1/+2 | |
| | | |||||
| * | bufpool: Return *Buffer | 2025-11-22 | 1 | -27/+27 | |
| | | |||||
| * | bufpool: Improve perf by using buckets of different size classes | 2025-11-22 | 1 | -1/+1 | |
| | | |||||
| * | pack: Don't use bytes.Reader cursor, use mmaped slice directly | 2025-11-22 | 1 | -74/+66 | |
| | | |||||
| * | Revert "Add initial support for multi pack indexes" | 2025-11-20 | 1 | -13/+0 | |
| | | | | | | | | This reverts commit 6f8acbf1503d2fa1ef705d35a743fc6b279942e5. Apparently my MIDX support is broken and it breaks some repos... it'll be added back when ready. | ||||
| * | Probably should name the custom packages specially | 2025-11-19 | 1 | -3/+2 | |
| | | |||||
| * | Remove some redundant code | 2025-11-19 | 1 | -54/+13 | |
| | | |||||
| * | pack: Iterative instead of recursive resolver | 2025-11-19 | 1 | -116/+160 | |
| | | |||||
| * | Initial attempt to make a compressor with less overhead | 2025-11-19 | 1 | -25/+30 | |
| | | | | | io.Reader actually has massive overhead... | ||||
| * | madvise | 2025-11-18 | 1 | -0/+12 | |
| | | |||||
| * | Fix import order | 2025-11-18 | 1 | -1/+2 | |
| | | |||||
| * | Use a pooled zlib implementation | 2025-11-18 | 1 | -1/+1 | |
| | | | | | | It's trivially forked from the standard library and improves git ls-tree -r --long speed by approximately 25%. | ||||
| * | Disable per-object validation during reads | 2025-11-17 | 1 | -4/+4 | |
| | | | | | | | | In general, git inflates the packed objects and recomputes the object hash before accepting them into hte object database during remote operations. But when simply inflating/parsing the objects for read from the local object store, it does not recompute the hash. | ||||
| * | pack: Use a Go map with a mutex instead of a sync.Map for packfiles | 2025-11-17 | 1 | -0/+24 | |
| | | | | | | Very few writes, you don't typically see more than a dozen packfiles. A ton of reads. Go maps are the obvious choice. | ||||
| * | Revert "Compute checksum when reading packfiles" | 2025-11-17 | 1 | -22/+2 | |
| | | | | | | | | This reverts commit 1dcb92427c23d0a8b23c0154b892243c749afa5a. Yeah this should be part of the network protocol rather than being done on *every read*. | ||||
| * | Compute checksum when reading packfiles | 2025-11-17 | 1 | -2/+22 | |
| | | |||||
| * | Fix some docs and API types | 2025-11-16 | 1 | -2/+2 | |
| | | |||||
| * | Documentation overhaul | 2025-11-16 | 1 | -1/+0 | |
| | | |||||
| * | Extract bufpool into its own package | 2025-11-16 | 1 | -45/+47 | |
| | | |||||
| * | Rename ObjType enum | 2025-11-16 | 1 | -39/+39 | |
| | | |||||
| * | Unexport Repository.HashSize | 2025-11-16 | 1 | -4/+4 | |
| | | |||||
| * | Rename ObjType -> ObjectType | 2025-11-16 | 1 | -9/+9 | |
| | | |||||
| * | hash: Make fewer helper functions need explicit hash length fields | 2025-11-16 | 1 | -4/+6 | |
| | | |||||
| * | Revert "hash: Generic hash-algorithm API" | 2025-11-16 | 1 | -16/+16 | |
| | | | | | | | | This reverts commit 94bfb1fa147f80e6ec39009d41fc2f853925e0a5. Generics actually kinda suck for these purposes... once you look at it from the user's perspective. | ||||
| * | hash: Generic hash-algorithm API | 2025-11-16 | 1 | -16/+16 | |
| | | |||||
| * | Support multiple hash sizes in one build | 2025-11-16 | 1 | -2/+2 | |
| | | |||||
| * | Add initial support for multi pack indexes | 2025-11-15 | 1 | -0/+13 | |
| | | |||||
| * | Unexport PackLocation | 2025-11-14 | 1 | -9/+9 | |
| | | |||||
| * | Read types and sizes without inflating entire object | 2025-11-14 | 1 | -0/+83 | |
| | | |||||
| * | Initial commit | 2025-11-13 | 1 | -0/+473 | |
