Re: [HACKERS] Should libedit be preferred to libreadline?

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Chris Browne <cbbrowne(at)acm(dot)org>, pgsql-patches(at)postgresql(dot)org
Subject: Re: [HACKERS] Should libedit be preferred to libreadline?
Date: 2005-12-02 18:23:35
Message-ID: 200512021823.jB2INZX26304@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches pgsql-ports

Tom Lane wrote:
> Chris Browne <cbbrowne(at)acm(dot)org> writes:
> > To my mind, giving BIG weight to the opinions of the relatively small
> > set of individuals that manage PostgreSQL packages for the popular
> > distributions of Linux and *BSD seems fairly appropriate.
>
> The packagers are bright enough to adapt to whatever we do --- it's
> the people who build their own from source that I'm worried about.
> --with-readline has worked fine for libedit users for a long time,
> and suddenly changing its semantics strikes me as a bad idea.
>
> The other problem with the "let's be deterministic" argument is that
> it rests on a fallacy, which is that configure can reliably tell the
> difference between libreadline and libedit. Darwin, for example, goes
> to some lengths to confuse matters.
>
> (I think I'd actually be for the determinism point of view if it could
> provide an #ifdef flag saying which library is in use --- then we could
> fix the write_history return value problem we're seeing on Darwin ---
> but I don't think we can do it short of a behavioral probe during
> configure.)

Let me add one more thing into the mix. Right now, you have to say
--without-readline if you don't want any command-line editing.
(Remember, configure will currently fail if it doesn't find readline or
libedit.) How will we do that if we have separate flags for readline
and libedit?

Right now, --with-readline is on by default, and fails if readline or
libedit can not be found. If we change to two flags, then we will have
to say --without-readline --with-libedit to get libedit to work, and
--without-readline and --without-libedit to configure for no line
editing capability. Does anyone want to try to explain that in an email
over and over again for 8.2? :-)

The basic problem is that with two deterministic flags the default
values for those flags are unclear. We really want to default to
looking for either of them, but want to the ability to give preference
to one over the other. Deterministic is great, but how do we do that
with reasonable defaults?

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2005-12-02 18:32:42 Re: [HACKERS] Should libedit be preferred to libreadline?
Previous Message Tom Lane 2005-12-02 18:21:05 Re: Numeric 508 datatype

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2005-12-02 18:32:42 Re: [HACKERS] Should libedit be preferred to libreadline?
Previous Message Tom Lane 2005-12-02 18:21:05 Re: Numeric 508 datatype

Browse pgsql-ports by date

  From Date Subject
Next Message Seneca Cunningham 2005-12-02 18:29:38 Re: AIX Permission weirdness
Previous Message Tom Lane 2005-12-02 17:28:38 Re: [HACKERS] Should libedit be preferred to libreadline?