Gentoo Archives: gentoo-dev

From: Michael Palimaka <kensington@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: On the good usage of subslots
Date: Sat, 09 Feb 2013 12:39:07
Message-Id: kf5g08$ns1$1@ger.gmane.org
In Reply to: [gentoo-dev] On the good usage of subslots by Alexis Ballier
1 Hi,
2
3 On 9/02/2013 23:15, Alexis Ballier wrote:
4 > Dear fellow developers,
5 >
6 > I hope this will be trivial to most of you but after seeing bug #455900
7 > and the vast majority of developers not even thinking twice before
8 > sedding their dep strings, I believe this needs some attention.
9
10 What is wrong with maintainers just updating their dependencies in this
11 fashion? Surely the onus in this case is on package maintainers setting
12 sensible subslots (which is indeed what you appear to be saying below)?
13
14 I even noticed some maintainers adding subslots dependencies on
15 libraries that do not yet define subslots. This too seems reasonable,
16 given that there would be no impact until the library defines a
17 (sensible) subslot in the future.
18
19 >
20 > What do subslots do: You set a subslot to a package and every time said
21 > package subslot changes (e.g. with an update), others packages
22 > depending on it with a := dep will be rebuilt. Nothing more, nothing
23 > less.
24 >
25 > Now, this solves a real problem: haskell, perl and ocaml packages need
26 > to be rebuilt after updating their respective compiler/interpreter and,
27 > in some cases, even after updating the libraries they use. Subslots
28 > would make haskell-updater, perl-cleaner and ocaml-rebuild not needed
29 > in the future.
30 >
31 > You can also use subslots to notify an ABI change in a shared library,
32 > in order to avoid having to use preserve-libs or run revdep-rebuild.
33 > However, this week I had to rebuild webkit-gtk three or four times and
34 > libreoffice twice...
35 > If you want to notify ABI changes, then you should set subslot to
36 > something representing the ABI, $PV as subslot is most certainly wrong
37 > in that case. Subslot is *not* a substitute to checking your library
38 > ABI, checking if its reverse dependencies work fine after the update,
39 > and notifying upstream if something went wrong so they can make a quick
40 > release fixing their mistake. Subslot is also *not* a substitute to
41 > soname and ensuring ABI compatibility (at least forward) between
42 > libraries with the same major. Using subslot only to be on the safe
43 > side and forcing a rebuild of all the dependent packages because it is
44 > too much work to check the ABI and work with upstream is, IMHO, a
45 > serious QA issue.
46 >
47 > Thank you for your attention,
48 >
49 > Alexis.
50 >
51 >
52
53 Best regards,
54 Michael

Replies

Subject Author
Re: [gentoo-dev] Re: On the good usage of subslots Alexis Ballier <aballier@g.o>
Re: [gentoo-dev] Re: On the good usage of subslots Alexis Ballier <aballier@g.o>