Gentoo Archives: gentoo-dev

From: Rich Freeman <rich0@g.o>
To: gentoo-dev <gentoo-dev@l.g.o>
Subject: Re: [gentoo-dev] don't rely on dynamic deps
Date: Sun, 27 Jul 2014 14:42:26
Message-Id: CAGfcS_k7gYpC6DnF3TJLKXb9fa0f2ix4Eap5V2BADRZWUD=0uw@mail.gmail.com
In Reply to: Re: [gentoo-dev] don't rely on dynamic deps by "Paweł Hajdan
1 On Sun, Jul 27, 2014 at 10:05 AM, "Paweł Hajdan, Jr."
2 <phajdan.jr@g.o> wrote:
3 > On 7/21/14, 11:52 PM, Alexander Berntsen wrote:
4 >> Michał has documented the shortcomings of dynamic deps in our wiki[0].
5 >> (Thank you!) [...]
6 >> [0] <https://wiki.gentoo.org/wiki/Project:Portage/Dynamic_dependencies>
7 >
8 > There's one more thing I'd like to ask about:
9 >
10 > For "Minor linking change w/ dependency change (unnecessary linking
11 > removed)" the "dynamic deps" cell is red with "revbump + mostly
12 > unnecessary rebuild", and "static deps" says "applied after rebuild".
13 >
14 > Arguably with dynamic deps one could also skip the revbump, and the
15 > update would similarly be applied after rebuild.
16
17 With dynamic deps you'd need to revbump if there is a linking change.
18 Otherwise portage would just allow the dependency to be removed, and
19 then linking will break, since the executable is unnecessarily linked
20 to the dependency (in that scenario).
21
22 If you wanted to apply the change after rebuild then you'd need to
23 have a way to communicate to portage whether a dependency removal can
24 be applied immediately (extraneous unlinked dependency) or only after
25 rebuild (extraneous linked dependency). The table speaks mostly to
26 portage as-is without additions like those posted in this thread.
27
28 I think that USE changes basically involve potentially-unnecessary
29 rebuilds no mater what in most real-life cases. Most people use the
30 --newuse option when updating their system, so even if static
31 dependencies don't require rebuilds they're going to get them anyway.
32 Not using --newuse can cause different issues.
33
34 One thing I would question in that table is "applied immediately (but
35 can break hard when dynamic-deps stop working))." How can dynamically
36 removing an "unused dependency" cause something to break, setting
37 aside bugs in the package manager? If removing a dependency causes
38 something to break, how can it be "unused?"
39
40 Rich

Replies

Subject Author
Re: [gentoo-dev] don't rely on dynamic deps "Paweł Hajdan
Re: [gentoo-dev] don't rely on dynamic deps Kent Fredric <kentfredric@×××××.com>
Re: [gentoo-dev] don't rely on dynamic deps "Michał Górny" <mgorny@g.o>