Gentoo Archives: gentoo-dev

From: hasufell <hasufell@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Portage dependency solving algorithm
Date: Sat, 08 Nov 2014 19:48:30
Message-Id: 545E7383.4030003@gentoo.org
In Reply to: Re: [gentoo-dev] Portage dependency solving algorithm by hasufell
1 On 11/08/2014 08:32 PM, hasufell wrote:
2 > On 11/08/2014 08:01 PM, Matthias Dahl wrote:
3 >> Hello Ciaran...
4 >>
5 >> On 08/11/14 19:26, Ciaran McCreesh wrote:
6 >>
7 >>> No. It would make sense to introduce a cultural change, where
8 >>> developers stop writing dependencies that seem to work with some
9 >>> particular version of Portage if you don't look very closely, and start
10 >>> writing good dependencies.
11 >>
12 >> Sorry to chime in like that but if you don't mind, I'd like to ask for a
13 >> real-life example for badly declared dependencies with a few words why
14 >> those are bad and how to make them actually better?
15 >>
16 >
17 > from dev-haskell/hashtables (note "hashtables" != "hashable"):
18 > || ( ( >=dev-haskell/hashable-1.1:=[profile?]
19 > <dev-haskell/hashable-1.2:=[profile?] )
20 > ( >=dev-haskell/hashable-1.2.1:=[profile?]
21 > <dev-haskell/hashable-1.3:=[profile?] )
22 > )
23 >
24 > Latest stable version of dev-haskell/hashable is 1.2.1.0.
25 > On a stable system (arch) the paludis dep-solver will try to match the
26 > first group first and realize that there is also a stable version
27 > 1.1.2.5 that matches that group. At that point there is a correct
28 > solution, but since that involves downgrading a package, it will require
29 > user-intervention, because it may not be what the user wants.
30 > (this is the easy scenario... if downgrading causes blockers, you get
31 > much more interesting output)
32 >
33
34 To be more specific... it is assumed that hashable-1.2.1.0 is already
35 installed. Every time the dep solver runs through those packages without
36 specifying what you want, you will hit the downgrade-problem.
37
38 If there was no version of hashable installed at all, then it will also
39 require user intervention to permit old versions of a package.

Replies

Subject Author
Re: [gentoo-dev] Portage dependency solving algorithm Rich Freeman <rich0@g.o>