microsoft / microsoft/VFSForGit
Object IDs used in requests should be lowercase
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 6.1k
- Forks
- 474
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 8
Description
I've implemented preliminary support for GVFS operations in Atlassian Bitbucket Server (note: not Bitbucket Cloud, e.g. bitbucket.org). In doing so, one of the things I've noticed is that GET /gvfs/objects/<sha> requests, as well as application/x-gvfs-loose-objects requests to POST /gvfs/objects, use uppercase object IDs. (Interestingly, application/x-git-packfile requests to POST /gvfs/objects use lowercase object IDs; I'm assuming that's because it drew the values from the ref advertisement, which uses lowercase values.)
When running on Windows this detail doesn't matter, since the filesystem is case-insensitive. And, naturally, I can lowercase the IDs on the server before processing (and I do so). But for the protocol, this is a nonsequitor choice. By convention, if not by absolute requirement, git always writes object IDs in lowercase hex, both on disk and in its wire protocol. For simplicity when implementing server-side processing for this, the GVFS client should also use lowercase object IDs.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Trace GVFS client handling for GET /gvfs/objects/ and loose-object POST /gvfs/objects requests, comparing it with packfile POST handling. Verify generated object IDs are lowercase hexadecimal while packfile behavior remains unchanged, using protocol or request tests if available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, git
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100