Re: [PATCH v2 00/19] object_id part 6
From: brian m. carlson <hidden>
Date: 2017-02-17 21:45:26
On Fri, Feb 17, 2017 at 10:55:03AM +0100, Michael Haggerty wrote:
On 02/14/2017 03:31 AM, brian m. carlson wrote:quoted
This is another series in the continuing conversion to struct object_id. This series converts more of the builtin directory and some of the refs code to use struct object_id. Additionally, it implements an nth_packed_object_oid function which provides a struct object_id version of the nth_packed_object function, and a parse_oid_hex function that makes parsing easier. The patch to use parse_oid_hex in the refs code has been split out into its own patch, just because I'm wary of that code and potentially breaking things, and I want it to be easy to revert in case things go wrong. I have no reason to believe it is anything other than fully functional, however. Changes from v1: * Implement parse_oid_hex and use it. * Make nth_packed_object_oid take a variable into which to store the object ID. This avoids concerns about unsafe casts. * Rebase on master.Thanks as always for working on this! I skimmed over the patches (looking more carefully at the refs-related ones) and left a few minor comments but didn't find anything serious.
I'll send out a new series shortly with those changes.
I'm curious; what fraction of the overall convert-to-object_id campaign do you estimate is done so far? Are you getting close to the promised land yet?
So I think that the current scope left is best estimated by the following command: git grep -P 'unsigned char\s+(\*|.*20)' | grep -v '^Documentation' So there are approximately 1200 call sites left, which is quite a bit of work. I estimate between the work I've done and other people's refactoring work (such as the refs backend refactor), we're about 40% done. I'm hoping to send out more smaller series in the future, since running make test on a huge series takes a long time. Part of the problem is that some places are almost completely convertible, except for one or two components that rely on something like sha1_array. I have patches somewhere that convert that to oid_array, but I'm not sure how well they'll be received at this point. I think converting a lot of shallow-related code requires that conversion, though. -- brian m. carlson / brian with sandals: Houston, Texas, US +1 832 623 2791 | https://www.crustytoothpaste.net/~bmc | My opinion only OpenPGP: https://keybase.io/bk2204
Attachments
- signature.asc [application/pgp-signature] 868 bytes