Re: [ANNOUNCE] Git v2.12.0
From: Willy Tarreau
Date: Sat Feb 25 2017 - 03:36:53 EST
On Sat, Feb 25, 2017 at 12:31:21AM -0800, Junio C Hamano wrote:
> Willy Tarreau <w@xxxxxx> writes:
>
> > Hi Junio,
> >
> > On Fri, Feb 24, 2017 at 11:28:58AM -0800, Junio C Hamano wrote:
> >> * Use of an empty string that is used for 'everything matches' is
> >> still warned and Git asks users to use a more explicit '.' for that
> >> instead. The hope is that existing users will not mind this
> >> change, and eventually the warning can be turned into a hard error,
> >> upgrading the deprecation into removal of this (mis)feature. That
> >> is not scheduled to happen in the upcoming release (yet).
> >
> > FWIW '.' is not equivalent to '' when it comes to grep or such commands,
>
> I am amused and amazed ;-).
>
> The above is not about "grep" but was meant to describe "pathspec".
> We used to take "" as a pathspec element that means "every path
> matches", but recently started deprecating it and ask users to be
> more explicit by using "." (as a directory as a pathspec element
> matches everything inside the directory). We are not changing the
> pattern matching done by "git grep" or "log --grep". What is
> changing is that between the two that means the same thing:
>
> cd t/ && git log ""
> cd t/ && git log .
>
> the former is deprecated.
Ah that's fun indeed I never used it like this :-)
> I find it amusing that I have been writing the above in the draft
> release notes without realizing that I failed to say that it is
> about pathspec for quite some time, and without realizing that the
> above can be misinterpreted as if it is talking about grep patterns.
>
> And I find it amazing that it took this long for somebody to spot
> that misleading vagueness in this description and point it out.
>
> It should probably be updated to start like so:
>
> Use of an empty string as a pathspec element that is used
> for 'everything matches' is ...
Hey it's the usual matter of perspective and context. When you know
what you do it's always obvious when you explain it while for others
something different is obvious :-)
Thanks for your clarification!
Willy