Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: qa@g.o
Subject: [gentoo-dev] RFC: making repoman complain about USE dependencies that lock packages at old version
Date: Sun, 05 Apr 2015 16:50:52
Message-Id: 20150405185010.45fb5ab9@pomiot.lan
1 Hi,
3 This is quite a Portage patch topic but since devs are known to be
4 unhappy about any change, I would like to start a bikeshed first.
6 The idea is to make repoman/pcheck complain if the newest ebuild
7 matched by version+slot restriction of dependency atom can't satisfy
8 the USE dependency, or in other words, whenever the USE restriction
9 forces lower version of package being installed.
11 For example, let's assume the following:
13 a. foo-1 has USE=bar,
15 b. bar-1 depends on foo[bar],
17 c. foo-2 no longer has USE=bar.
19 In the usual scenario this means that bar-1 will silently lock foo
20 at version 1. Since this is quite implicit, users don't notice
21 the problem and left unnoticed for a long time, it starts to hurt bad
22 at some point.
24 With the added check, after step (c) above repoman/pcheck would warn on
25 bar-1 that 'foo[bar]' dependency forces lower version than plain 'foo'.
26 Since version and slot restrictions will be taken into consideration,
27 it will possible to silence the warning by using:
29 <foo-2[bar]
31 explicitly, if the dependency can't be fixed for foo-2 properly. While
32 not improving the final result a lot, it will at least give an explicit
33 '<' or '=' atom that can be easily found with grep when considering old
34 version removal.
36 What are your thoughts?
38 --
39 Best regards,
40 Michał Górny