aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add DiffBytesGravatar Runxi Yu2025-11-212-0/+548
|
* Add stringToBytes/bytesToStringGravatar Runxi Yu2025-11-211-0/+17
|
* Add DiffTreesGravatar Runxi Yu2025-11-212-0/+433
|
* adler32: Add benchmarkGravatar Runxi Yu2025-11-201-0/+22
|
* Fix linter errorsGravatar Runxi Yu2025-11-202-4/+4
|
* Revert "Add initial support for multi pack indexes"Gravatar Runxi Yu2025-11-203-336/+0
| | | | | | | This reverts commit 6f8acbf1503d2fa1ef705d35a743fc6b279942e5. Apparently my MIDX support is broken and it breaks some repos... it'll be added back when ready.
* refs: Support resolving hashes as refsGravatar Runxi Yu2025-11-202-0/+60
|
* refs: ResolveRef and ResolveRefFully, no HEAD splitGravatar Runxi Yu2025-11-203-107/+267
|
* README: no more zlib branchGravatar Runxi Yu2025-11-191-2/+1
|
* README: A little bit of optional Go assemblyGravatar Runxi Yu2025-11-191-1/+2
|
* Add purego to testsGravatar Runxi Yu2025-11-191-0/+3
|
* Add the right go:build'sGravatar Runxi Yu2025-11-192-0/+4
|
* Replace adler32 with github.com/mhr3/adler32-simdGravatar Runxi Yu2025-11-1919-895/+937
| | | | Unfortunately no VSX support yet
* Ignore some errors in the tests (actually from stdlib but linter complains)Gravatar Runxi Yu2025-11-192-11/+11
|
* Remove the broken compression benchmarking utilityGravatar Runxi Yu2025-11-196-224/+0
|
* SIMD with AVX2 on supported AMD64 machinesGravatar Runxi Yu2025-11-195-92/+423
| | | | | | | | | Some help from gpt-5.1-thinking taken: used wrong register size for the weighted sum at first, so it was truncating the second half of our block; also there was an overflow from the modulus and stuff. Unfortunately the AVX2 adler32 is only about 20% faster than the generic version which doesn't make for much.
* Well, we use a dependency (golang.org/x/sys/cpu) now...Gravatar Runxi Yu2025-11-193-3/+6
|
* adler32: Add tests from the standard libraryGravatar Runxi Yu2025-11-192-0/+388
|
* Switch back to internal zlib for loose objects tooGravatar Runxi Yu2025-11-195-3/+425
| | | | Still marginally less overhead due to pooling
* Probably should name the custom packages speciallyGravatar Runxi Yu2025-11-1912-25/+24
|
* Remove some redundant codeGravatar Runxi Yu2025-11-192-55/+14
|
* flate: Remove unused codeGravatar Runxi Yu2025-11-193-447/+4
|
* pack: Iterative instead of recursive resolverGravatar Runxi Yu2025-11-191-116/+160
|
* SliceInflater is probably a better name for thatGravatar Runxi Yu2025-11-192-52/+496
| | | | And let's just basically not use io.Reader at all
* Initial attempt to make a compressor with less overheadGravatar Runxi Yu2025-11-197-42/+386
| | | | io.Reader actually has massive overhead...
* adler32: Unroll update loopGravatar Runxi Yu2025-11-191-7/+70
|
* byteorder: ImportGravatar Runxi Yu2025-11-192-0/+176
|
* Add adler32 and LICENSEGravatar Runxi Yu2025-11-192-0/+156
|
* zlib: Use internal adler32Gravatar Runxi Yu2025-11-191-1/+1
|
* Our zlib ought to be read-only for nowGravatar Runxi Yu2025-11-196-1942/+10
|
* Add zlib test dataGravatar Runxi Yu2025-11-196-0/+222
|
* Import flateGravatar Runxi Yu2025-11-1910-2/+3234
|
* README: Mention the zlib branchGravatar Runxi Yu2025-11-191-0/+1
|
* zlib: Add missing error check for flate ResetGravatar Runxi Yu2025-11-181-1/+4
|
* madviseGravatar Runxi Yu2025-11-181-0/+12
|
* hare-git historyGravatar Runxi Yu2025-11-181-0/+5
|
* Fix import orderGravatar Runxi Yu2025-11-182-2/+4
|
* Faster than libgit2 at recursive ls-treeGravatar Runxi Yu2025-11-181-2/+2
|
* Use a pooled zlib implementationGravatar Runxi Yu2025-11-185-2/+416
| | | | | It's trivially forked from the standard library and improves git ls-tree -r --long speed by approximately 25%.
* Remove redundant copy in loose.goGravatar Runxi Yu2025-11-181-2/+1
|
* Add tests with race detectorGravatar Runxi Yu2025-11-181-0/+6
|
* Bump Go version to 1.25.3Gravatar Runxi Yu2025-11-181-1/+1
|
* README: Drop gccgo compatibility sectionGravatar Runxi Yu2025-11-181-8/+0
|
* Add a basic change-id fieldGravatar Runxi Yu2025-11-171-0/+5
|
* Disable per-object validation during readsGravatar Runxi Yu2025-11-173-9/+9
| | | | | | | 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.
* Update perf statsGravatar Runxi Yu2025-11-171-15/+19
|
* pack: Use a Go map with a mutex instead of a sync.Map for packfilesGravatar Runxi Yu2025-11-172-25/+37
| | | | | 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"Gravatar Runxi Yu2025-11-174-58/+3
| | | | | | | This reverts commit 1dcb92427c23d0a8b23c0154b892243c749afa5a. Yeah this should be part of the network protocol rather than being done on *every read*.
* Remove an unnecessary blank lineGravatar Runxi Yu2025-11-172-2/+0
|
* Compute checksum when reading packfilesGravatar Runxi Yu2025-11-174-3/+58
|