Subject: Re: macOS git grep change in required character classes

From: Junio C Hamano <[email-masked]>
Date: Sat, 01 Apr 2023 09:27:10 -0700

Matt Gardner <[email-masked]> writes:

> My best guess is that
> https://github.com/git/git/commit/1819ad327b7a1f19540a819813b70a0e8a7f798f
> is causing git grep -E to require BSD style regular expression
> character classes.  I don't know if this is a bug or an unadvertised
> change in behavior.

I think you diagnosed it correctly.  The story is "Once upon a time,
we declared that the regex library of macOS is so broken and
unusable.  We used a fallback definition to work it around, but
unfortunately the fallback library did not support multi-byte
matching correctly, which made some folks on macOS unhappy.  So we
let Git built with the regex library shipped with macOS starting
that commit, with one side effect that patterns you would feed Git
on that platform would behave more like patterns you give to other
tools on the platform."

So, it is not a bug in Git, it is a deliberate change in behaviour
with unintended consequences X-<.