Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 200110 Details for
Bug 278729
unsatisfied USE deps cause bad handling of || dependencies
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
prefer choices with satisfied USE deps, applies to 2.2_rc35
satisfied_use.patch (text/plain), 1.58 KB, created by
Zac Medico
on 2009-08-04 06:23:37 UTC
(
hide
)
Description:
prefer choices with satisfied USE deps, applies to 2.2_rc35
Filename:
MIME Type:
Creator:
Zac Medico
Created:
2009-08-04 06:23:37 UTC
Size:
1.58 KB
patch
obsolete
>Index: pym/portage/__init__.py >=================================================================== >--- pym/portage/__init__.py (revision 13887) >+++ pym/portage/__init__.py (revision 13888) >@@ -7138,6 +7138,7 @@ > continue > > all_available = True >+ all_use_satisfied = True > versions = {} > for atom in atoms: > if atom[:1] == "!": >@@ -7153,9 +7154,21 @@ > all_available = False > break > >+ if atom.use: >+ avail_pkg_use = mydbapi.match(atom) >+ if not avail_pkg_use: >+ all_use_satisfied = False >+ else: >+ # highest (ascending order) >+ avail_pkg_use = avail_pkg_use[-1] >+ if avail_pkg_use != avail_pkg: >+ avail_pkg = avail_pkg_use >+ avail_slot = "%s:%s" % (dep_getkey(atom), >+ mydbapi.aux_get(avail_pkg, ["SLOT"])[0]) >+ > versions[avail_slot] = avail_pkg > >- this_choice = (atoms, versions, all_available) >+ this_choice = (atoms, versions, all_available, all_use_satisfied) > if all_available: > # The "all installed" criterion is not version or slot specific. > # If any version of a package is already in the graph then we >@@ -7229,9 +7242,12 @@ > preferred_any_slot + preferred_non_installed + other > > for allow_masked in (False, True): >- for atoms, versions, all_available in preferred: >- if all_available or allow_masked: >- return atoms >+ for allow_unsatisfied_use in (False, True): >+ for atoms, versions, all_available, all_use_satisfied in preferred: >+ if all_use_satisfied or \ >+ (all_available and allow_unsatisfied_use) \ >+ or allow_masked: >+ return atoms > > assert(False) # This point should not be reachable >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 278729
:
200110
|
200119