delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/07/21/13:29:40

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Message-ID: <4884C877.8040506@x-ray.at>
Date: Mon, 21 Jul 2008 19:33:43 +0200
From: Reini Urban <rurban AT x-ray DOT at>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.8.1.13) Gecko/20080313 SeaMonkey/1.1.9
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: postgresql: libpq4 and libpq5 collide
References: <48843ED4 DOT 7000506 AT users DOT sourceforge DOT net> <6910a60807210515o11b91eacwa45558fd8f4f20c6 AT mail DOT gmail DOT com> <20080721134757 DOT GB5251 AT calimero DOT vinschen DOT de>
In-Reply-To: <20080721134757.GB5251@calimero.vinschen.de>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Corinna Vinschen schrieb:
> On Jul 21 14:15, Reini Urban wrote:
>> 2008/7/21 Yaakov (Cygwin Ports):
>>> Both libpq4 and libpq5 contain the same /usr/bin/cygpq.dll file.
>>> setup.exe cannot handle a file coming from more than one package; this
>>> is bound to cause problems.
>> Yes, I did this on purpose, resp. all the libpq packagers don't
>> version their so's.
>> The postgresql team does not like versioned so's.
>> Version 5 contains all the backwards compatible functions from version 4.
>>
>> I see no technical problems with setup.
>> First uninstall (remove it), the install (installs the new, which is the same).
>>
>> Oops. You mean when you want to install both and then uninstall libpq4?
>> Hmm, maybe a preremove script for libpq4 is needed therefore.
>> But this does not help.
>> Or just a re-install of libpq5.
>>
>> Probably best is to remove libpq4 when installing libpq5.
>> Can setup handle this? No. Hmm...
> 
> I think the basic problem is that two versioned libs exist (4, 5),
> even though no versioning is provided, nor necessary.  The versioning
> is only required as soon as backward compatibility is broken by the
> new lib version.  This isn't the case, so libpq4 should never have been
> created in the first place, rather just a libpq.  Since libpq4 exists
> now, I think the right thing to do would be to use this name until
> a new lib version breaks backward compatibility.  Then it's time for
> a libpq>4 and the DLL in it should start to use versioning, too.

As far as I understand the postgresql team promised to always keep 
backwards compatibility in its client library. New features and 
enhancements always use new functions and don't change old ones. So I'd 
rather want to rename the library to libpq and obsolete the versioned 
libpq4 and libpq5.

This would just require a small change in some setup.hints which I can 
easily do.
-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019