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

Re: Bug#669373: RFS: flactag/2.0.1-1 ITP #507876



Daniel Pocock <daniel@pocock.com.au> writes:

> Why the confusion?  The old package is named after the ABI number in
> SONAME, the new one is named after the code version.
>
> Both Debian packages are called libmusicbrainz4, yet
> OLD: code v2.1.x, SONAME = libmusicbrainz.so.4, ABI = 4
> NEW: code v4.0.x, SONAME = libmusicbrainz4.so.3, ABI = 3

Shouldn't the new one be named libmusicbranz4-3 then? Because if the ABI
gets bumped to 4, then we'll have libmusicbrainz4.so.4, but it's a
different library than 4.so.3, thus, will need a different name anyway.

As far as I can see, these kind stuff is named fooN-M (see glib:
libglib-2.0-0, with the so being libglib-2.0.so.0).

That would also resolve the package name clash, I believe.

> Action items:
>
> - all those packages need a bug report filed against them to say that
> they depend on the obsolete SONAME.  All such packages must release a
> fix into sid

Correction, these would need a bugreport filed to rebuild against with
updated build-deps, for the new library. Not just for the soname, that
is.

> - the old libmb4 package should be removed from the archive of Debian by
> making a bug report as described here:
> http://wiki.debian.org/ftpmaster_Removals
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=671088

Once everything is rebuilt against the new one, the old one can be
removed, indeed.

> - as it is `API breakage' and not `ABI breakage', we should really try
> to have a distinct package name for the -dev package, although this is
> not necessary if the old package is removed from the Debian archive
> completely
> http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#sonameapiabi

If you want a smooth transition, then you need a differently named -dev
package anyway, as until the reverse deps are not rebuilt, we will need
both in the archive.

> - according to the packaging guide and library best practices, we could
> potentially use the following convention:
>
> ABI number = 5
> SONAME = libmusicbrainz.so.5
> Package version = 4.0.x
> => Package name = libmusicbrainz5 and libmusicbrainz5-dev
>
> and filenames:
>  libmusicbrainz5_4.0.0-1_amd64.deb
>  libmusicbrainz5-dev_4.0.0-1_amd64.deb

That would work too, so would the lmb4-0 naming.

I kinda lost track, though (sorry, busy week): what's upstream's take on
this? What soname do they use?

-- 
|8]


Reply to: