monotone-devel
[Top][All Lists]
Advanced

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

[Monotone-devel] Re: nvm.experiment.pcre - boost::regex replacement


From: Zack Weinberg
Subject: [Monotone-devel] Re: nvm.experiment.pcre - boost::regex replacement
Date: Tue, 19 Dec 2006 10:03:12 -0800

On 12/18/06, Zack Weinberg <address@hidden> wrote:
On nvm.experiment.pcre is a version of monotone that uses Philip
Hazel's PCRE (Perl Compatible Regular Expressions) library instead of
boost::regex.

I forgot to mention what I think is the #1 reason we should do this,
and the biggest remaining hurdle to merging it to mainline.

I said that PCRE, unlike boost::regex, doesn't drag in libicu.  libicu
is not just huge, it has a spurious dependency on libpthread.  [It
uses pthread_mutex_* and the ICU developers are convinced it will
break things if they change it to refer to the stubs in glibc.
*headdesk*]  Because of this, libboost_regex drags in libpthread even
if you select the unthreaded version.  Getting rid of  boost::regex
thus means that autoconf goo to select unthreaded boost libraries will
actually do us some good (in particular, it will let us properly
resolve the Debian crasher bug that was reported just before 0.31).

The big remaining hurdle is that PCRE doesn't do translation of
diagnostics, and some of its diagnostics can be user visible (in
particular, garbled regexes in .mtn-ignore).  I currently have
*numeric* error codes being reported to the user under some (probably
can't-happen, but still) conditions.  I have an idea for solving both
of these, involving a giant table of strings in pcrewrap.cc, but
better suggestions would be appreciated.

zw




reply via email to

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