git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/3] show-index: implement automatic hash detection

From
Patrick Steinhardt <ps@pks.im>
Date
Jan 23, 2026, 07:22 UTC
Message-ID
<aXMh0pYw2ZrptCNj@pks.im>
In-Reply-To
<20260121103431.793004-1-shreyanshpaliwalcmsmn@gmail.com>
On Wed, Jan 21, 2026 at 04:01:47PM +0530, Shreyansh Paliwal wrote:
Show 29 quoted lines
> > On Tue, Jan 20, 2026 at 10:07:42AM -0800, Junio C Hamano wrote:
> > > Shreyansh Paliwal <shreyanshpaliwalcmsmn@gmail.com> writes:
> > > > @@ -71,6 +60,40 @@ int cmd_show_index(int argc,
> > [snip]
> > > By the way, what happens if we find SHA-256 also broken and end up
> > > choosing another hash function that is 256-bit wide in the next hash
> > > revamp?
> > 
> > Yeah, agreed. The index unfortunately does not carry sufficient info to
> > clearly identify the hash function that is in use, and second-guessing
> > via the hash length doesn't really seem like a sensible solution to me.
> > If we cannot tell for sure what the hash is, then we should rather ask
> > the user to specify the object format. And in fact we already do that,
> > as we have the `--object-format=` option for git-show-index(1).
> 
> Yes this is exactly why I was peculiar about this patch and the
> TODO comment, also why I sent it out as an RFC.
> 
> I initially assumed that in the near future we’re unlikely to move away
> from SHA-256 to another hash, but I agree that relying
> on hash length is still a heuristic that won't be a good approach
> in the long term as well as it creates ambiguity in the large files
> containing 64-bit offsets.
> 
> So should we drop this thought entirely and just make sure
> that if git show-index is run outside a repo,
> it should throw an error asking the the user
> to use --object-format option rather than silently
> falling back to SHA-1 which is the current approach.

That would be a regression for users that currently _can_ run git-show-index(1) outside of a repository with a SHA-1 based index. It's not going to be a common use case, but I wouldn't be surprised if there was at least one user out there that we'd break with such a change.

Patrick
Previous: Shreyansh PaliwalNext: Shreyansh Paliwal
Message 6 of 25 in “show-index: modernize and implement auto-detection of hash algorithm”
  1. Shreyansh PaliwalJan 20, 2026
  2. 1/3 show-index: implement automatic hash detectionShreyansh Paliwal, Jan 20, 2026
  3. Junio C HamanoJan 20, 2026
  4. Patrick SteinhardtJan 21, 2026
  5. Shreyansh PaliwalJan 21, 2026
  6. Patrick SteinhardtJan 23, 2026
  7. Shreyansh PaliwalJan 23, 2026
  8. brian m. carlsonJan 23, 2026
  9. Shreyansh PaliwalJan 21, 2026
  10. 2/3 show-index: use gettext wrapping in error messagesShreyansh Paliwal, Jan 20, 2026
  11. 3/3 show-index: remove global state variablesShreyansh Paliwal, Jan 20, 2026
  12. Phillip WoodJan 21, 2026
  13. Shreyansh PaliwalJan 21, 2026
  14. Junio C HamanoJan 21, 2026
  15. show-index: warn when falling back to SHA-1 outside a repositoryShreyansh Paliwal, Jan 29, 2026
  16. Junio C HamanoJan 29, 2026
  17. Shreyansh PaliwalJan 30, 2026
  18. brian m. carlsonJan 29, 2026
  19. Shreyansh PaliwalJan 30, 2026
  20. Patrick SteinhardtJan 30, 2026
  21. Junio C HamanoJan 30, 2026
  22. 0/2 show-index: add warning and wrap error messages with gettextShreyansh Paliwal, Jan 30, 2026
  23. 1/2 show-index: warn when falling back to SHA-1 outside a repositoryShreyansh Paliwal, Jan 30, 2026
  24. 2/2 show-index: use gettext wrapping in user facing error messagesShreyansh Paliwal, Jan 30, 2026
  25. Junio C HamanoJan 30, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.