From owner-freebsd-current@FreeBSD.ORG Wed Sep 29 16:37:12 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 05B4C16A4CE; Wed, 29 Sep 2004 16:37:12 +0000 (GMT) Received: from obsecurity.dyndns.org (CPE0050040655c8-CM00111ae02aac.cpe.net.cable.rogers.com [69.194.102.143]) by mx1.FreeBSD.org (Postfix) with ESMTP id B987343D4C; Wed, 29 Sep 2004 16:37:11 +0000 (GMT) (envelope-from kris@obsecurity.org) Received: by obsecurity.dyndns.org (Postfix, from userid 1000) id 0E5EF51262; Wed, 29 Sep 2004 09:37:33 -0700 (PDT) Date: Wed, 29 Sep 2004 09:37:32 -0700 From: Kris Kennaway To: Tim Robbins Message-ID: <20040929163732.GA9182@xor.obsecurity.org> References: <20040929030546.GE16305@electra.cse.Buffalo.EDU> <20040929092710.GA59303@cat.robbins.dropbear.id.au> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="IJpNTDwzlM2Ie8A6" Content-Disposition: inline In-Reply-To: <20040929092710.GA59303@cat.robbins.dropbear.id.au> User-Agent: Mutt/1.4.2.1i cc: Ken Smith cc: freebsd-current@freebsd.org Subject: Re: HEADS-UP: Library version number bumps X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Sep 2004 16:37:12 -0000 --IJpNTDwzlM2Ie8A6 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Sep 29, 2004 at 07:27:10PM +1000, Tim Robbins wrote: > On Tue, Sep 28, 2004 at 11:05:46PM -0400, Ken Smith wrote: > >=20 > > >From the "Better late than never" Department... > >=20 > > It looks like we should probably bump the version of a couple of > > the system libraries. With LOTS of help from Kris it looks like > > this is the list we think needs a version bump, with the version > > from 4.X being placed in compat4x: > >=20 > > libgnuregex.so.2 > > libhistory.so.4 > > libm.so.2 > > libncurses.so.5 > > libopie.so.2 > > libpcap.so.2 > > libreadline.so.4 > > libwrap.so.3 > >=20 > > The bumps will be coming soon... >=20 > Why do they need to be bumped? Why use the version from 4.x? It sounds li= ke > this will break a lot of 5.x binaries. I compared the exported symbols in 4.x and 5.x, compiled the list of libraries with incompatible changes, and then searched the 4.x package collection for binaries that link to them. In most cases I was able to demonstrate the resulting breakage (i.e. by running a relevant 4.x binary), in other cases it was less clear (e.g. when a 5.x library stops exporting an extern variable which is used in the 4.x version to control some behaviour of the library; when run on 5.x the library will behave differently than on 4.x). Unfortunately, it will break compatibility with some older 5.x binaries in the process of fixing compatibility with 4.x binaries, which is the more important upgrade path (remember that 5.x->5.x binary compat has already been explicitly broken many times over the life of the branch). The lesson here is that we need to pay closer attention to when incompatible changes are made to libraries to avoid the problem in the future. Kris --IJpNTDwzlM2Ie8A6 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (FreeBSD) iD8DBQFBWuTMWry0BWjoQKURAletAJ4xOiGkI+3rO8EoTxwsFECz7GPJkQCguCRi 7qsRfiuaFQ27x+/W/RmCSRY= =2zWr -----END PGP SIGNATURE----- --IJpNTDwzlM2Ie8A6--