Gentoo Archives: gentoo-dev

From: Rich Freeman <rich0@g.o>
To: "Michał Górny" <mgorny@g.o>
Cc: gentoo-dev <gentoo-dev@l.g.o>
Subject: Re: [gentoo-dev] don't rely on dynamic deps
Date: Sun, 27 Jul 2014 21:26:35
Message-Id: CAGfcS_mP2B=+qasNOfP_v=QtL_8A6R0H4Jyr0OToEOXt6_ufBA@mail.gmail.com
In Reply to: Re: [gentoo-dev] don't rely on dynamic deps by "Michał Górny"
1 On Sun, Jul 27, 2014 at 5:17 PM, Michał Górny <mgorny@g.o> wrote:
2 > Dnia 2014-07-27, o godz. 17:08:27
3 > Rich Freeman <rich0@g.o> napisał(a):
4 >>
5 >> I'd think that portage should update vdb as soon as it detects the
6 >> dependency change. Then B would no longer depend on A in vdb. It
7 >> shouldn't hold onto outdated information.
8 >
9 > You just introduced the opposite breakage -- when a dependency on C was
10 > added, it ends up in vdb before C is installed. Now if C and current
11 > version of A are removed before C gets installed, you end up having
12 > broken dependency in vdb.
13 >
14
15 There is a possibility that you had the broken dependency before you
16 even synced - you just didn't realize it yet. After all, if the dep
17 was added only as the result of an actual on-disk change, there should
18 have been a revbump. So, having a missing dep in vdb just makes vdb
19 reflect reality. You can get a missing dep in vdb by unmerging a
20 package without using depclean.
21
22 An unmet dependency is still a dependency.
23
24 > Plus, 'as soon' means you're making --pretend actually write something.
25 > That's bad.
26
27 This isn't all that different from package moves. I believe that
28 modifies vdb as soon as it detects updates.
29
30 There is the issue of syncing and then not updating and then having
31 all the packages removed from the tree - you're then missing a
32 package and have no easy way to install it. But, in that case you can
33 put the necessary ebuilds into your overlay and then portage can make
34 everything right.
35
36 Rich

Replies

Subject Author
Re: [gentoo-dev] don't rely on dynamic deps Ciaran McCreesh <ciaran.mccreesh@××××××××××.com>