Gentoo Archives: gentoo-dev

From: Taahir Ahmed <ahmedtd@××××.edu>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Imprecise dependency specification causing problems with cave
Date: Mon, 13 May 2013 01:29:21
Message-Id: 2786399.Y0lXJR3jcO@basis
1 I've recently switched to using cave (part of the paludis project) as the
2 package manager for my system.
3
4 It's more conservative than emerge in some instances, specifically when it
5 comes to bare dependencies (DEPENDS or RDEPENDS that are un-versioned). For
6 example:
7
8 * The ebuild for virtual/linux-sources has as part of its RDEPEND "sys-
9 kernel/gentoo-sources". I have several versions of "sys-kernel/gentoo-
10 sources" installed on my system, and cave will not let me uninstall the older
11 ones. Because the dependency is unversioned, cave's point of view is that it
12 can't be sure that it doesn't actually depend on some specific features of the
13 currently-installed atoms.
14
15 * The ebuild for "app-office/calligra" has "media-libs/openexr" as a
16 conditional RDEPEND. The latest version of "media-libs/openexr" is in a
17 subslot "0/20", so cave wants to keep the older version to satisfy calligra's
18 dependencies.
19
20 In both of these cases, after reading the ebuild to verify that nothing should
21 break beyond being fixed by "cave fix-linkage" (analogous to "revdep-
22 rebuild"), I can instruct cave to ignore the conflicts it perceives and
23 proceed.
24
25 When I come across such a situation, should I submit a patch for the ebuild in
26 question to specify the acceptable slots and versions for the DEPENDS and
27 RDEPENDS (both of my examples are EAPI=5, so the slot specifier := can be
28 used)? Or are these ebuilds correct and cave in the wrong?
29
30 It should be noted that the first position (that the dependencies specified in
31 the ebuilds are not sufficient) is the position of cave's developers. I tend
32 to agree -- How is cave to know that there hasn't been a brekaing change in a
33 library's API?
34
35 Thanks,
36
37 Taahir Ahmed

Replies