bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: merging the three forks of dfa.c ?


From: Aharon Robbins
Subject: Re: merging the three forks of dfa.c ?
Date: Sat, 31 Jan 2009 23:02:14 +0200

Hi Bruno, Tony,

I didn't know that dfa was used in gettext. What version of the grep dfa did
you start with?

To answer your question, I am willing to pull from an upstream gnulib version,
but on two conditions:

1. The functionality must remain the same. In particular, at some point in 
between
   grep 2.4 and grep 2.5, someone removed the ability of the grep dfa to match
   embedded newlines. Gawk requires this.

   I managed, by V E R Y  C A R E F U L hand work to merge the functionality 
back
   into the gawk dfa from grep 2.4, but it wasn't fun.

   I can tolerate a _reasonable_ change to the calling interface if that will
   make life easier for grep and gettext, but I cannot lose the functionality.

   (FWIW, I think that except for this difference, and bug fixes, the gawk dfa 
is
   in sync with the grep one.)

2. The gnulib grep should remain a standalone feature; it cannot start depending
   upon other gnulib features, or I just won't bother.  Every time I've looked
   at pulling in a module from gnulib, I find that it ends up needing some
   rather large transitive closure of other modules, and I don't want to have
   to deal with that.

I'd be thrilled if this can be moved forward; thank you for taking the
initiative!

Arnold

> From: Bruno Haible <address@hidden>
> To: address@hidden, "Arnold D. Robbins" <address@hidden>,
>         "Tony Abou-Assaleh" <address@hidden>
> Subject: merging the three forks of dfa.c ?
> Date: Sat, 31 Jan 2009 17:02:46 +0100
>
> Hello Aharon, Tony,
>
> There are now three variants of dfa.h and dfa.c in use in various GNU 
> projects:
>   - in GNU grep,
>   - in GNU gawk,
>   - in GNU gettext.
> All of them have different bugs and different fixes applied.
>
> Last week, while testing the GNU grep prerelease, I had to report fixes for
> things that were already fixed in GNU gettext. Now I get a report about a
> crash caused by a buffer overrun [1] that appears to be present in GNU grep
> and GNU gettext, but fixed in GNU gawk. This is messy.
>
> What can we do to remedy this? I propose to merge the three forks - they are
> similar enough that a merge can be done in a couple of hours -, and then host
> the "upstream" dfa.c in gnulib.
>
> gnulib was created for the purpose of sharing common GNU source code. There
> are now files shared between coreutils, tar, gettext, m4, diffutils, and many
> other packages.
>
> gettext would then get the latest copy of dfa.c through gnulib-tool. gawk and
> grep, AFAICS, don't use gnulib-tool; for these packages the copy will have to
> be manual.
>
> So, what I offer and expect is:
>   - I offer to do the merge this time now,
>   - I (or the other gnulib maintainers) put in changes and fixes that you
>     report (until you get gnulib git write access by yourself),
>   - When you make changes to dfa.c in your projects, you notify gnulib about
>     it.
>
> How does that sound? Would you like to collaborate on this?
>
> Bruno




reply via email to

[Prev in Thread] Current Thread [Next in Thread]