On Mon, Oct 3, 2016 at 1:33 PM, Jeff King wrote:
> This series is the result of René nerd-sniping me with the claim that we
> could "easily" teach count-objects to print out the list of alternates
> in:
>
> http://public-inbox.org/git/c27dc1a4-3c7a-2866-d9d8-f5d3eb161...@web.de/
>
Hah. Nerd snipes are fun.
> My real goal is just patch 17, which is needed for the quarantine series
> in that thread. But along the way there were quite a few opportunities
> for cleanups along with a few minor bugfixes (in patches 7 and 18), and
> I think the count-objects change in patch 16 is a nice general debugging
> tool.
Yea there are a *lot* of cleanups here.
>
> The rest of it is "just" cleanup, but I'll note that it clears up some
> hairy allocation code. These were bits that I noticed in my big
> allocation-cleanup series last year, but were too nasty to fit any of
> the more general fixes. I think the end result is much better.
>
Definitely agreed. I read through all the patches, and each one seemed
reasonable.
> The number of patches is a little intimidating, but I tried hard to
> break the refactoring down into a sequence of obviously-correct steps.
> You can be the judge of my success.
>
I read through them once. I'm going to re-read through them again and
leave any comments I had.
Regards,
Jake
> [01/18]: t5613: drop reachable_via function
> [02/18]: t5613: drop test_valid_repo function
> [03/18]: t5613: use test_must_fail
> [04/18]: t5613: whitespace/style cleanups
> [05/18]: t5613: do not chdir in main process
> [06/18]: t5613: clarify "too deep" recursion tests
> [07/18]: link_alt_odb_entry: handle normalize_path errors
> [08/18]: link_alt_odb_entry: refactor string handling
> [09/18]: alternates: provide helper for adding to alternates list
> [10/18]: alternates: provide helper for allocating alternate
> [11/18]: alternates: encapsulate alt->base munging
> [12/18]: alternates: use a separate scratch space
> [13/18]: fill_sha1_file: write "boring" characters
> [14/18]: alternates: store scratch buffer as strbuf
> [15/18]: fill_sha1_file: write into a strbuf
> [16/18]: count-objects: report alternates via verbose mode
> [17/18]: sha1_file: always allow relative paths to alternates
> [18/18]: alternates: use fspathcmp to detect duplicates
>
> Documentation/git-count-objects.txt | 5 +
> builtin/count-objects.c | 12 +++
> builtin/fsck.c | 10 +-
> builtin/submodule--helper.c | 11 +-
> cache.h | 36 ++-
> sha1_file.c | 179 ++--
> sha1_name.c | 17 +--
> strbuf.c| 20
> strbuf.h| 8 ++
> submodule.c | 23 +---
> t/t5613-info-alternate.sh | 202
>
> transport.c | 4 +-
> 12 files changed, 305 insertions(+), 222 deletions(-)
>