Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Apr 2012 23:30:48 -0400
From:      Matthew Story <matthewstory@gmail.com>
To:        Ben Fiedler <bfiedler@asu.edu>
Cc:        freebsd-hackers@freebsd.org, Gabor Kovesdan <gabor@freebsd.org>
Subject:   Re: Status of BSD Diff replacement?
Message-ID:  <CAB%2B9ogca7RXBMhecMBpPR0SbmhcAadr4=uLepML3UPmUZmieGw@mail.gmail.com>
In-Reply-To: <CAD0qd_%2BcSVx58FMiquXHuE0nhXg9XKHC%2BLC9q-tswkQE8nsD%2BA@mail.gmail.com>
References:  <CAB%2B9ogdGm0F=eJJFayb%2B1m8-e178au9VApA0wq74COKC=cAGPw@mail.gmail.com> <4F8E0163.9030009@FreeBSD.org> <CAD0qd_%2BcSVx58FMiquXHuE0nhXg9XKHC%2BLC9q-tswkQE8nsD%2BA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 17, 2012 at 10:01 PM, Ben Fiedler <bfiedler@asu.edu> wrote:

> Gabor,
>
> I made a branch off of your perforce diff code in my work on the diff
> tool: From my understanding you started those modifications from OpenBSD's
> diff in 2008, so Matthew's assertion that "our incomplete BSD diff is
> OpenBSD diff + improvements" is 100% correct. I also ported and started
> work on sdiff and diff3 from OpenBSD, but made minimal headway on each.
>
> The red items on the table here lists the needed argument support to match
> GNU grep:  http://wiki.freebsd.org/SOC2010BenFiedler#diff


Awesome, thanks for that link.


>
>
> Though there's only a few left, they are not trivial by any means.
>
> -Ben
>
>
>
> On Tue, Apr 17, 2012 at 4:48 PM, Gabor Kovesdan <gabor@freebsd.org> wrote:
>
>> On 2012.04.17. 23:03, Matthew Story wrote:
>>
>>> Just wondering what the current status is on a BSD diff replacement.
>>>  The IdeasPage suggests that a goodly amount of work was done on this for
>>> GSoC 2010 (http://wiki.freebsd.org/**IdeasPage#BSD-licensed_Text-**
>>> Processing_Tools<http://wiki.freebsd.org/IdeasPage#BSD-licensed_Text-Processing_Tools>),
>>> but the GPLinBase page says it's unowned and suggests replacement with
>>> OpenBSD diff (http://wiki.freebsd.org/**GPLinBase<http://wiki.freebsd.org/GPLinBase>;
>>> ).
>>>
>> Unless OpenBSD folks have changed or developed something, our incomplete
>> BSD diff is OpenBSD diff + improvements.
>>
>>>
>>> Wondering how much is outstanding on this, and where to start reading to
>>> catch up on what's been done?
>>>
>>
>> I worked a bit on that in 2008 along with grep and sort but these got
>> more priorities so lots of features are still missing. Then Ben Fiedler
>> also worked on it in 2010 but I don't exactly know what he accomplished and
>> whether he took my code or chose another way. So for someone who wants to
>> work on it, first it should be checked what's done, maybe merge my version
>> and Ben's version,
>
>
just to verify, these are the correct 2 branches to look at:

http://p4web.freebsd.org/@md=d&cd=//depot/projects/soc2008/&c=iZC@//depot/projects/soc2008/gabor_textproc/?ac=83
http://p4web.freebsd.org/@md=d&cd=//depot/projects/soc2010/&c=QTP@//depot/projects/soc2010/bsdtextproc/?ac=83

it looks like gabor_diff in soc2010 is based off the soc2008 work.

Is there anyway either of you could provide me with an archive of the
working tree for these 2 perforce repos?  or make it available in a branch
on svn.freebsd.org?  I'd like to look into this more, but after reading
through the P4Web docs, trying to gain anonymous read-only access through
p4 itself, and then reading:

http://lists.freebsd.org/pipermail/freebsd-questions/2007-August/156862.html

it seems there's no real way to accommodate this sort of thing at current.


> check whether OpenBSD added something new or fixed somethings and then
>> implement missing features and do lots of testing to ensure compatibility
>> with GNU diff. And performance tests and improvements if necessary.
>>
>
Since 2008/2010 the OpenBSD change logs referencing diff(1) sdiff(1) and
diff(3) are:

4.9
Use scandir(3) instead of getdirentries(2) in diff(1). Call to
getdirentries(2) should be avoided outside of libc
4.8
Many diff(1) improvements.
Make diff(1) return 2 on error.
4.6
Fix file descriptor leaks in sdiff(1) when diffing regular files.

I think the many diff(1) improvements is when ray started maintaining diff
(not millert), so perhaps I can ping him as well if I make any headway on
this.


>
>> I work on grep/regex related things and recently Oleg Moskalenko took
>> over my incomplete BSD sort code but noone is working on BSD diff so any
>> contribution is very welcome.
>
>
>>
>> Gabor
>>
>
>


-- 
regards,
matt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAB%2B9ogca7RXBMhecMBpPR0SbmhcAadr4=uLepML3UPmUZmieGw>