On Mon, Sep 08, 2008 at 09:06:53PM +0200, Erik Huelsmann wrote:
> On Mon, Sep 8, 2008 at 8:36 PM, Trent Nelson
> <svn-dev-list_at_trentnelson.com> wrote:
> > mailer.py suffers a similar issue on Windows as svnperms.py, both
> > due to its use of popen() to run '/usr/bin/diff', as well as the
> > lack of said program on Windows.
> >
> > I used mailer.py as a reference when I started the svn2cq module,
> > which will eventually sync svn changes into a relational database,
> > although currently it's no more than a more object-oriented version
> > of mailer.py, without, er, the ability to send e-mail. As it's for
> > a client that's a Windows shop, I just packaged diff.exe and the
> > dependent .dlls in the module directory and replaced mailer.py's
> > popen with subprocess:
> >
> > http://code.google.com/p/svn2cq/source/browse/trunk/src/svn2cq/
> >
> > You know what would be nice? If the out-of-the-box Subversion 1.5
> > installer on Windows shipped not only mailer.py, but diff.exe and
> > the .dlls as well. Oh, and used subprocess, if available.
>
> How about -instead of using diff.exe- using the built-in diff engine
> (libsvn_diff)? It's available to use from the python bindings and - if
> you think that won't do it for you - you could instead use 'svnlook
> diff' which extracts the diffs right out of the repository, whenever
> possible.
I believe that's what the rest of the code uses when generating
diffs. The reliance on /usr/bin/diff is, or was, required for
generating diffs against propchanges, I think. Does that sound
right? If all the relevant diff facilities are available via
libsvn_diff, why does mailer.py bother calling /usr/bin/diff?
(Assuming libsvn_diff doesn't work, I agree that 'svnlook diff'
would be a much better option (via subprocess, of course) than
shipping diff.exe et al.)
Trent.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-09-08 21:29:26 CEST