<feed xmlns='http://www.w3.org/2005/Atom'>
<title>~runxiyu/furgit.git/objectstore/packed/pack_idx_checksum.go, branch master</title>
<subtitle>Git library in pure Go</subtitle>
<id>https://cgit.space/~runxiyu/furgit.git/atom/objectstore/packed/pack_idx_checksum.go?h=master</id>
<link rel='self' href='https://cgit.space/~runxiyu/furgit.git/atom/objectstore/packed/pack_idx_checksum.go?h=master'/>
<link rel='alternate' type='text/html' href='https://cgit.space/~runxiyu/furgit.git/'/>
<updated>2026-03-25T14:30:31Z</updated>
<entry>
<title>*: objectstore -&gt; object/store</title>
<updated>2026-03-25T14:30:31Z</updated>
<author>
<name>Runxi Yu</name>
</author>
<published>2026-03-25T14:30:31Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~runxiyu/furgit.git/commit/?id=bfa0a3f5f18b752a6ebd3d5b37411c6871f7bb17'/>
<id>urn:sha1:bfa0a3f5f18b752a6ebd3d5b37411c6871f7bb17</id>
<content type='text'>
</content>
</entry>
<entry>
<title>*: objectid -&gt; object/id</title>
<updated>2026-03-25T14:22:01Z</updated>
<author>
<name>Runxi Yu</name>
</author>
<published>2026-03-25T14:21:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~runxiyu/furgit.git/commit/?id=e4373a7e553f8523db3e99ea316e1c25d30cc059'/>
<id>urn:sha1:e4373a7e553f8523db3e99ea316e1c25d30cc059</id>
<content type='text'>
</content>
</entry>
<entry>
<title>*: Lint</title>
<updated>2026-03-04T00:59:53Z</updated>
<author>
<name>Runxi Yu</name>
</author>
<published>2026-03-04T00:26:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~runxiyu/furgit.git/commit/?id=ab7501be34032fb9e5c48726a68ae90a917af9eb'/>
<id>urn:sha1:ab7501be34032fb9e5c48726a68ae90a917af9eb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>objectstore/packed: Check pack/idx checksums here.</title>
<updated>2026-03-03T10:31:11Z</updated>
<author>
<name>Runxi Yu</name>
</author>
<published>2026-03-03T10:26:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~runxiyu/furgit.git/commit/?id=bd9519b464f919f2ca174a45c3c19c9a8a1fe3d1'/>
<id>urn:sha1:bd9519b464f919f2ca174a45c3c19c9a8a1fe3d1</id>
<content type='text'>
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.
</content>
</entry>
</feed>
