Re: [PATCH v4 05/10] userdiff: add and use for_each_userdiff_driver()
flat view
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-04-09 19:45:04
On Fri, Mar 26 2021, Jeff King wrote:
On Thu, Mar 25, 2021 at 02:26:21AM +0100, Ævar Arnfjörð Bjarmason wrote:quoted
quoted
quoted
We could add a ifuncname and xifuncname or whatever for it I guess, but currently the ICASE behavior in the C code is magic.Good point. IMHO that is something we should consider fixing independently. It was a mistake to add builtins that couldn't be replicated via the config (though I notice it happened quite a while ago, and nobody seems to have cared, so perhaps it isn't that important).I'm conspiring to eventually optimistically replace these ERE patterns with PCRE if we build with that at some point. Then you could just prefix your pattern with (?i) here in this and other things that want icase...I really like PCRE myself, but is it portable/common enough for us to start using it for baked-in funcname patterns? I sort of assumed there were exotic platforms where libpcre wouldn't build (or at least it would be inconvenient or uncommon to have it). And it would be nice to degrade those gracefully (or at least better than "I guess you don't get any builtin funcnames. Tough luck").
I think it's as portable as git, the JIT backend isn't, but PCRE itself is portably C code, and e.g. everything that python, PHP and any other number of things that depend on PCRE has had PCRE ported to it. That plan involves an "git rm -r compat/regex" and a compat/pcre instead, I have some long-left-over patches for that.