On Thu, May 13, 2021 at 09:37:36AM +0200, Ævar Arnfjörð Bjarmason wrote: > > My only concern is changing the interface of Git::config_regexp() in the > > final patch. Do we need to have a config_regexp_with_values() to avoid > > breaking third-party users of the module? > > As noted in 3/9 I don't think we need to worry about it, it's recently > introduced (a few months) API in Git.pm for send-email itself. I think > we can just change it. Ah, thanks for pointing that out. I _thought_ I had seen you mention it earlier, but when I went back to look I couldn't find it. I'm not entirely convinced, though. I agree it's probably not heavily used, but the existing interface was shipped in three releases already (v2.29 and up). > In general I think it's unfortunate that we have (at least in principle) > a "public by default" module like Git.pm that's mostly for our own use. I'd certainly agree with that sentiment. :) > This series doesn't try to deal with that in general at all, I'm > somewhat of the opinion that we should just fork it at this > point. I.e. have a Git.pm we freeze in time, and a Git/Ours.pm that's > going to be the private API. > > I stopped with these optimizations at the point of refactoring away > Error.pm, which is a large contributor to compilation time, but as long > as it's a public API that can't be done without changing the public > API. If all we needed to worry about was send-email, git-svn etc. just > changing it to Perl-native exceptions would be trivial. Yeah, I don't have any real problem with that, as long as we don't break third-party scripts that we've promised not to. I'd even be OK with deprecating Git.pm and eventually phasing it out, if we think it's a maintenance burden. -Peff