diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-09-13 18:37:19 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-09-13 18:37:19 -0700 |
commit | db2e6f614169307e1c9cca9f8bab63f724547db4 (patch) | |
tree | 7310b56800315acecc182298419ddd596cae0b8d /pym | |
parent | 156bf1b09a263217e9de5d0d14934cc295121f0a (diff) | |
download | portage-db2e6f614169307e1c9cca9f8bab63f724547db4.tar.gz portage-db2e6f614169307e1c9cca9f8bab63f724547db4.tar.bz2 portage-db2e6f614169307e1c9cca9f8bab63f724547db4.zip |
merge list: distinguish reinstall with red "r"
This is for reinstall due to slot or sub-slot change of a dependency
when the := slot operator is used.
Diffstat (limited to 'pym')
-rw-r--r-- | pym/_emerge/resolver/output.py | 7 | ||||
-rw-r--r-- | pym/_emerge/resolver/output_helpers.py | 8 |
2 files changed, 13 insertions, 2 deletions
diff --git a/pym/_emerge/resolver/output.py b/pym/_emerge/resolver/output.py index 11e668bc9..3325a4201 100644 --- a/pym/_emerge/resolver/output.py +++ b/pym/_emerge/resolver/output.py @@ -790,6 +790,13 @@ class Display(object): pkg_info = self.set_pkg_info(pkg, ordered) pkg_info.oldbest_list, myinslotlist = \ self._get_installed_best(pkg, pkg_info) + if ordered and pkg_info.merge and \ + not pkg_info.attr_display.new: + for arg, atom in depgraph._iter_atoms_for_pkg(pkg): + if arg.force_reinstall: + pkg_info.attr_display.force_reinstall = True + break + self.verboseadd = "" if self.quiet_repo_display: self.repoadd = None diff --git a/pym/_emerge/resolver/output_helpers.py b/pym/_emerge/resolver/output_helpers.py index 41dc324a1..be4ea4acb 100644 --- a/pym/_emerge/resolver/output_helpers.py +++ b/pym/_emerge/resolver/output_helpers.py @@ -641,6 +641,7 @@ class PkgInfo(object): class PkgAttrDisplay(SlotObject): __slots__ = ("downgrade", "fetch_restrict", "fetch_restrict_satisfied", + "force_reinstall", "interactive", "mask", "new", "new_slot", "new_version", "replace") def __str__(self): @@ -651,8 +652,11 @@ class PkgAttrDisplay(SlotObject): else: output.append(" ") - if self.new: - output.append(green("N")) + if self.new or self.force_reinstall: + if self.force_reinstall: + output.append(red("r")) + else: + output.append(green("N")) else: output.append(" ") |