Gentoo Archives: gentoo-dev

From: Ian Stakenvicius <axs@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: Remember to specify SLOT when adding subslot operator to dependencies
Date: Tue, 06 Aug 2013 14:18:03
Message-Id: 5201059C.3040109@gentoo.org
In Reply to: Re: [gentoo-dev] Re: Remember to specify SLOT when adding subslot operator to dependencies by Rich Freeman
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA256
3
4 On 05/08/13 01:07 PM, Rich Freeman wrote:
5 > On Mon, Aug 5, 2013 at 12:15 PM, Alexis Ballier
6 > <aballier@g.o> wrote:
7 >> On Mon, 5 Aug 2013 18:10:46 +0200 Michał Górny
8 >> <mgorny@g.o> wrote:
9 >>> We can simply have multiple virtual versions, each depending on
10 >>> the proper jpeg & jpeg-turbo versions.
11 >>
12 >> you can do it that way, yes.
13 >>
14 >> what will you do when jpeg 10 is out or when libjpeg-turbo
15 >> changes its abi ? wait for each provider to have a release that
16 >> changes the abi ? this doesnt sound sane
17 >
18 > I think a thorough solution needs to handle the passthrough
19 > situation, and ideally the multiple libs per package situation.
20 >
21 > Our whole versioning system wasn't really set up with this stuff
22 > in mind either. We're dealing with ABI/SONAME versions here - not
23 > functionality versions. A package with jpeg-turbo SONAME 0.6 might
24 > be a superset of all the functionality in SONAME 0.9 - the larger
25 > number doesn't mean better, just different.
26 >
27 > It might still be possible to handle this with subslots as they
28 > are currently implemented, but I'd have to really mess around with
29 > it to be sure. The logic of higher-number = more-desirable is
30 > likely to cause problems - you don't want your system to force you
31 > to move from jpeg-turbo to jpeg because only the latter is a dep of
32 > a newer virtual.
33
34 This is the primary reason as to why sub-slots were designed as they
35 were, to be an independently set value -- it allows the maintainer of
36 say, jpeg-turbo to bump the subslot value only when necessary (for
37 instance, in the case of SONAME 0.6 being a complete superset of 0.9,
38 there is no need to bump sub-slot as long as it is known that all
39 consumers are only consuming the subset of functions available in 0.9
40 (and if they aren't, I expect there's going to be compile-time
41 breakage anyhow).
42
43 This is starting to go off-topic, but it's one of the reasons I don't
44 like seeing packages with SLOT="0/${PV}" or similar -- to me, a
45 sub-slot bump should really be evaluated on its own merits and not
46 just for any version bump.
47
48 -----BEGIN PGP SIGNATURE-----
49 Version: GnuPG v2.0.20 (GNU/Linux)
50
51 iF4EAREIAAYFAlIBBZwACgkQ2ugaI38ACPCuuAD9HhPrGA5A7BN4FM8X58la/r0+
52 wpzueqNlPFAk9WCZkScA/0gfqkYP9GuAFBtQPq8zbEiEqX8DDRZ03FQYISSlrv8B
53 =bSZH
54 -----END PGP SIGNATURE-----