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

Re: Why not default to an external diffing engine?

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2004-07-22 15:13:10 CEST

auke.jilderda@philips.com wrote:
> On a related note to the bug I ran into: why does SVN provide its own
> diffing engine at all? Something wrong with using external diffing
> libs, e.g. from GNU or parties.

In the early days, svn used to depend on external diff and diff3
binaries. Basic functions like "svn up" couldn't work without them. It
was a major drag to tell windows users to fetch these things, or to have
to bundle them with binaries. It was also a drag to try and auto-detect
the location of these programs on different flavors of unix. And worse
yet, different unix OSes all had slightly different versions of these
binaries with slightly different behaviors (e.g. FreeBSD's 'diff' is
different than GNU 'diff')... which messed up automated tests, made our
code messy, and so on.

CVS uses the GNU diff code internally, but it can only do that because
both programs are GPLed. It was a miracle that Sander finally sat down
and wrote a non-GPLed open-source diff2/diff3 library for us. It's been
working great for years, and gives consistent behavior on all OSes.

Sorry that you managed to find a bug in it (issue 1966). :-/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jul 22 15:13:14 2004

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