commit: 0f075baba8e3accc124c9c599c90603e17cdf6a5
Author: Benjamin Gordon <bmgordon <AT> chromium <DOT> org>
AuthorDate: Tue Feb 4 18:40:13 2020 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Feb 18 00:00:12 2023 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=0f075bab
emerge: Factor out two functions
Will be used in the next commit.
Reviewed-by: Mike Frysinger <vapier <AT> chromium.org>
Reviewed-by: Chris McDonald <cjmcdonald <AT> chromium.org>
Signed-off-by: Benjamin Gordon <bmgordon <AT> chromium.org>
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>
lib/_emerge/PackageMerge.py | 42 +++++++++++++++++++++++++-----------------
1 file changed, 25 insertions(+), 17 deletions(-)
diff --git a/lib/_emerge/PackageMerge.py b/lib/_emerge/PackageMerge.py
index 8272511a1..f9e6bf8fe 100644
--- a/lib/_emerge/PackageMerge.py
+++ b/lib/_emerge/PackageMerge.py
@@ -9,13 +9,33 @@ from portage.output import colorize
class PackageMerge(CompositeTask):
__slots__ = ("merge", "postinst_failure")
+ def _should_show_status(self):
+ return (
+ not self.merge.build_opts.fetchonly
+ and not self.merge.build_opts.pretend
+ and not self.merge.build_opts.buildpkgonly
+ )
+
+ def _make_msg(self, pkg, action_desc, preposition, counter_str):
+ pkg_color = "PKG_MERGE"
+ if pkg.type_name == "binary":
+ pkg_color = "PKG_BINARY_MERGE"
+
+ msg = "{} {}{}".format(
+ action_desc,
+ counter_str,
+ colorize(pkg_color, pkg.cpv + _repo_separator + pkg.repo),
+ )
+
+ if pkg.root_config.settings["ROOT"] != "/":
+ msg += f" {preposition} {pkg.root}"
+
+ return msg
+
def _start(self):
self.scheduler = self.merge.scheduler
pkg = self.merge.pkg
pkg_count = self.merge.pkg_count
- pkg_color = "PKG_MERGE"
- if pkg.type_name == "binary":
- pkg_color = "PKG_BINARY_MERGE"
if pkg.installed:
action_desc = "Uninstalling"
@@ -29,20 +49,8 @@ class PackageMerge(CompositeTask):
colorize("MERGE_LIST_PROGRESS", str(pkg_count.maxval)),
)
- msg = "{} {}{}".format(
- action_desc,
- counter_str,
- colorize(pkg_color, pkg.cpv + _repo_separator + pkg.repo),
- )
-
- if pkg.root_config.settings["ROOT"] != "/":
- msg += f" {preposition} {pkg.root}"
-
- if (
- not self.merge.build_opts.fetchonly
- and not self.merge.build_opts.pretend
- and not self.merge.build_opts.buildpkgonly
- ):
+ if self._should_show_status():
+ msg = self._make_msg(pkg, action_desc, preposition, counter_str)
self.merge.statusMessage(msg)
task = self.merge.create_install_task()