1 |
Author: zmedico |
2 |
Date: 2009-08-04 09:14:46 +0000 (Tue, 04 Aug 2009) |
3 |
New Revision: 13894 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/portage/__init__.py |
7 |
Log: |
8 |
Revert the code from bug #278729 for now since it need to be redone in order |
9 |
to account for the issue described in comment #3. |
10 |
|
11 |
|
12 |
Modified: main/trunk/pym/portage/__init__.py |
13 |
=================================================================== |
14 |
--- main/trunk/pym/portage/__init__.py 2009-08-04 08:44:28 UTC (rev 13893) |
15 |
+++ main/trunk/pym/portage/__init__.py 2009-08-04 09:14:46 UTC (rev 13894) |
16 |
@@ -6918,9 +6918,6 @@ |
17 |
if portage.dep._dep_check_strict: |
18 |
raise portage.exception.ParseError( |
19 |
"invalid atom: '%s'" % x) |
20 |
- else: |
21 |
- # Only real Atom instances are allowed past this point. |
22 |
- continue |
23 |
else: |
24 |
if x.blocker and x.blocker.overlap.forbid and \ |
25 |
eapi in ("0", "1") and portage.dep._dep_check_strict: |
26 |
@@ -7134,42 +7131,26 @@ |
27 |
atoms = [dep] |
28 |
if not vardb: |
29 |
# called by repoman |
30 |
- other.append((atoms, None, True, True)) |
31 |
+ other.append((atoms, None, False)) |
32 |
continue |
33 |
|
34 |
all_available = True |
35 |
- all_use_satisfied = True |
36 |
versions = {} |
37 |
for atom in atoms: |
38 |
if atom[:1] == "!": |
39 |
continue |
40 |
- # Ignore USE dependencies here since we don't want USE |
41 |
- # settings to adversely affect || preference evaluation. |
42 |
- avail_pkg = mydbapi.match(atom.without_use) |
43 |
+ avail_pkg = mydbapi.match(atom) |
44 |
if avail_pkg: |
45 |
avail_pkg = avail_pkg[-1] # highest (ascending order) |
46 |
avail_slot = "%s:%s" % (dep_getkey(atom), |
47 |
mydbapi.aux_get(avail_pkg, ["SLOT"])[0]) |
48 |
if not avail_pkg: |
49 |
all_available = False |
50 |
- all_use_satisfied = False |
51 |
break |
52 |
|
53 |
- if atom.use: |
54 |
- avail_pkg_use = mydbapi.match(atom) |
55 |
- if not avail_pkg_use: |
56 |
- all_use_satisfied = False |
57 |
- else: |
58 |
- # highest (ascending order) |
59 |
- avail_pkg_use = avail_pkg_use[-1] |
60 |
- if avail_pkg_use != avail_pkg: |
61 |
- avail_pkg = avail_pkg_use |
62 |
- avail_slot = "%s:%s" % (dep_getkey(atom), |
63 |
- mydbapi.aux_get(avail_pkg, ["SLOT"])[0]) |
64 |
- |
65 |
versions[avail_slot] = avail_pkg |
66 |
|
67 |
- this_choice = (atoms, versions, all_available, all_use_satisfied) |
68 |
+ this_choice = (atoms, versions, all_available) |
69 |
if all_available: |
70 |
# The "all installed" criterion is not version or slot specific. |
71 |
# If any version of a package is already in the graph then we |
72 |
@@ -7243,12 +7224,9 @@ |
73 |
preferred_any_slot + preferred_non_installed + other |
74 |
|
75 |
for allow_masked in (False, True): |
76 |
- for allow_unsatisfied_use in (False, True): |
77 |
- for atoms, versions, all_available, all_use_satisfied in preferred: |
78 |
- if all_use_satisfied or \ |
79 |
- (all_available and allow_unsatisfied_use) \ |
80 |
- or allow_masked: |
81 |
- return atoms |
82 |
+ for atoms, versions, all_available in preferred: |
83 |
+ if all_available or allow_masked: |
84 |
+ return atoms |
85 |
|
86 |
assert(False) # This point should not be reachable |