Subject: Re: [PATCH v8 0/8] Rewrite `git_config()` using config-set API

From: Junio C Hamano <[email-masked]>
Date: Thu, 07 Aug 2014 13:31:13 -0700

Matthieu Moy <[email-masked]> writes:

>>> Why is this needed? Are you now using key_value_info outside config.c?
>>> Or is it a leftover from a previous experiment?
>>
>> Has this been resolved in the new round?
>
> Tanay explained in another subthread why this was needed. For callers
> iterating over the string_list who want to get the file/line info, they
> need to be able to cast the void * pointer to struct key_value_info *.

For callers that want to see all the multi-values, it would be
preferrable for the iterator to pass the filename and the linenumber
to the callback function, instead of exposing its implementation
detail as a single string list and telling them to pick it apart,
no?

Not a very convincing argument, but OK for now in the sense that we
can fix it later if we wanted to before it gets too late.