[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: regexp matching in svn?

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Sat, 28 Jan 2012 11:44:57 +0200

Johan Corveleyn wrote on Sat, Jan 28, 2012 at 10:10:05 +0100:
> On Sat, Jan 28, 2012 at 9:54 AM, Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:
> > On Fri, Jan 27, 2012, at 21:30, Johan Corveleyn wrote:
> >> On Fri, Jan 27, 2012 at 4:44 PM, Bert Huijben <bert_at_qqmail.nl> wrote:
> >> >> -----Original Message-----
> >> >> From: Johan Corveleyn [mailto:jcorvel_at_gmail.com]
> >> >> Sent: vrijdag 27 januari 2012 16:31
> >> >> To: Subversion Development
> >> >> Subject: regexp matching in svn?
> >> >>
> >> >> Hi,
> >> >>
> >> >> Is there any existing regexp matching functionality somewhere in de
> >> >> svn codebase, in a way that is reusable for new functionality? If not,
> >> >> does anyone know of a reusable third-party library that could be
> >> >> easily intregrated (I know, it would be Yet Another Dependency, but
> >> >> I'm just asking for options ...)?
> >> >>
> >> >> Use-case: I like the '-x-p' (show C-function) option for 'svn diff',
> >> >> but this is limited to C-like syntax. GNU diff also has a '-F RE'
> >> >> option, where RE is a regular expression that is used for matching the
> >> >> "function-line". I know I could make use of this functionality by
> >> >> invoking GNU diff as external diff command, but for several reasons it
> >> >> would be interesting if svn could do this internally (for one thing:
> >> >> GNU diff isn't always available / installed).
> >> >>
> >> >> And I'm sure there would be other useful things people could do with
> >> >> regexp functionality ...
> >> >
> >> > Apr (or Apr-Util) has regex support, not sure which but we require both.
> >>
> >> Thanks, but I can't find it. I found apr_strmatch in apr-util, but
> >> that doesn't do regex, it just matches a fixed string (which would
> >> also be useful (it actually covers my concrete use-case), but it's not
> >> -F). Maybe I'm overlooking something.
> >>
> >> If it's not in apr(-util) or some other dependency we already have,
> >> how about PCRE (www.pcre.org) ?
> >
> > I must have missed the point where you explained why decreeing "GNU diff
> > must be installed" company policy is not an option.
>
> Yes, it's an option. But it's a hassle. I'm investigating other options.

Installing GNU diff requires deploying a precompiled .exe file and two
.dll files into %PATH%.

Implementing -F support in Subversion requires patching configure,
patching the windows build, revving the relevant libsvn_diff APIs,
waiting for the next minor release, and deploying it.

Seems to me that the former is the path of least resistance.

>
> Other than that, there is something about GNU diff's -F option that I
> don't like: it doesn't trim leading whitespace from the matched
> "function line", unlike the -p option.
>
> If we implement this ourselves, we can decide to do this (depending on
> community consensus of course). We don't have to do exactly the same
> as GNU diff's -p / -F (just like we also show 50 characters of -p,
> unlike GNU diff which shows 40 characters).
>
> --
> Johan
Received on 2012-01-28 10:46:00 CET

This is an archived mail posted to the Subversion Dev mailing list.