From owner-freebsd-hackers@FreeBSD.ORG Sun Apr 22 13:41:57 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4526B106566C; Sun, 22 Apr 2012 13:41:57 +0000 (UTC) (envelope-from matthewstory@gmail.com) Received: from mail-vx0-f182.google.com (mail-vx0-f182.google.com [209.85.220.182]) by mx1.freebsd.org (Postfix) with ESMTP id CECF98FC08; Sun, 22 Apr 2012 13:41:56 +0000 (UTC) Received: by vcmm1 with SMTP id m1so10223249vcm.13 for ; Sun, 22 Apr 2012 06:41:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=FovmoWrBEAYLOQjsw2j0LAwzCPRdwuk+QakMrcbbHW0=; b=A5BssT5Gqfj3OdhwpXlS4t8aSqmNlH2h6pIgWvfNRPZCHJxKSPo6stgl0on6XI6pfA mPryJuD5sve4Vm8kXYbBn1auM3dH9WMd6ra+JYpDQZPysciOl0yX2QKMkFd5FdmVoWhx BH9zBhBV2Hkr0e00hmxmSHfafCe+WOp8g7Xpd9X33X+aHz3uOVLkoXoV8FVn/ybbdc2K r/1qM1oJmHp3duJM11OsrWu/C2kQjOdpQbqMkaOfCO6fMk2dDSg6OU4/3Tb88out9iTM CFLFtFNt/cqOG9i1Up4vo9e44G17x3/ujHTm6WcQzgYwwUQAip/NV2iziUyCZi9XjLAN DXOw== MIME-Version: 1.0 Received: by 10.52.38.167 with SMTP id h7mr7632668vdk.109.1335102115358; Sun, 22 Apr 2012 06:41:55 -0700 (PDT) Received: by 10.52.185.167 with HTTP; Sun, 22 Apr 2012 06:41:55 -0700 (PDT) Received: by 10.52.185.167 with HTTP; Sun, 22 Apr 2012 06:41:55 -0700 (PDT) In-Reply-To: References: <4F8E0163.9030009@FreeBSD.org> Date: Sun, 22 Apr 2012 09:41:55 -0400 Message-ID: From: Matthew Story To: Ben Fiedler Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-hackers@freebsd.org, Gabor Kovesdan Subject: Re: Status of BSD Diff replacement? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Apr 2012 13:41:57 -0000 On Apr 21, 2012 4:15 PM, "Ben Fiedler" wrote: > > http://www.public.asu.edu/~bfiedler/bsdtextproc.tar.gz > > Here's a tar.gz of my project file: I did not include the diff/ directory, but instead gabor_diff/ , as that's where the latest changes are. iirc the original diff/ in my project was taken from the source for Gabor's 'bsdiff' under the ports tree, but then after a few weeks I discovered he had made newer changes to the code under perforce, so I based gabor_diff/ off of that. Sorry if this is all confusing :) > > -Ben Thanks a lot Ben. > > > > On Tue, Apr 17, 2012 at 8:30 PM, Matthew Story wrote: >> >> >> >> On Tue, Apr 17, 2012 at 10:01 PM, Ben Fiedler 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 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), but the GPLinBase page says it's unowned and suggests replacement with OpenBSD diff (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 > >