Robert Abel <rabel@xxxxxxxxxxxxx> writes: > On 05 Dec 2017 01:27, Junio C Hamano wrote: >> I know all of the above, but I think you misunderstood the point I >> wanted to raise, so let me try again. The thing is, none of what >> you just wrote changes the fact that lack of callers that want to do >> "multi-line" is IRRELEVANT. > > I disagree. The commit comment is meant to give context to the > introduced changes. One change is the additional comment for > __git_eread, which now clearly states that only a single line is read. I still do not understand why you think the 'next' person would care about the (lack of )multi-line aspect of the helper. Let's see how well the proposed log message gives the "context to the introduced changes" (from your v3). __git_eread is used to read a single line of a given file (if it exists) into a single variable without the EOL. All six current users of __git_eread use it that way and don't expect multi-line content. That does not include anything incorrect; but. The helper is about (1) reading the first line and (2) reading it as a whole into a single variable. Both are already covered by the first sentence, and there is no need to say 'and don't expect ...", unless you want to stress something. And it places a stress on the former, which is a less relevant thing, WITHOUT giving the same treatment to the latter, which is a more relevant thing. After all, this patch is not about replacing an earlier implementation that did $2=$(cat "$1") with read $2 <"$1" If that were the case, _then_ the fact that the purpose of the helper is to read from a single-liner file (i.e. we do not expect the input file to have more than one line) is VERY relevant. But this is not such a patch. And after readers read the above, they find this: Therefore, this patch removes the unused capability to split file conents into tokens by passing multiple variable names. And because the previous paragraph placed an emphasis on a wrong aspect of the context of the calls to the helper function, this "Therefore" does not quite "click" in the readers' minds. The reason why it is OK to remove the multi-variable feature is because the callers of the helper want to always read the result into a single variable, but the "no need for multi-variable" that they read in the first sentence of the previous paragraph is less strong in their mind by now, because they read an irrelevant (for the purpose of this "Therefore") mention of "no need for multi-line" aspect of the helper. Perhaps __git_eread is used to read the contents of a single-liner file into a single variable while dropping EOL. It is misleading to use the "read" built-in with "$@", as if some callers would want the contents read from the file to be split into multiple variables. Explicitly use a single variable, and also document that the helper only reads the first line (simply because the input files are designed to be single-liner files). would say it the same thing, but with emphasis on the right aspect of the facts. I would also rephase the new in-code comment # Helper function to read the first line of a file into a variable. to un-stress "the first line of a file" and place more stress on the fact that it is designed to read from a single-liner file (there is a subtle but important distinction between the two). # read the contents of a single-liner file into a variable, # while dropping the end-of-line from it. or something like that, perhaps.