Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/
Date: Sat, 04 Jun 2011 02:13:11
Message-Id: b194947c9a379c8ab5a43ecd5fdef9478df0c197.zmedico@gentoo
1 commit: b194947c9a379c8ab5a43ecd5fdef9478df0c197
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jun 4 01:49:02 2011 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Sat Jun 4 01:49:02 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=b194947c
7
8 Revert "dblink.merge: remove autoclean emergelog calls"
9
10 This reverts commit 352280549c9b72e7b916803dc6b03b959d0817e3.
11 I'm planning to fix this so the emergelog calls are only enabled when
12 emerge is the caller.
13
14 ---
15 pym/portage/dbapi/vartree.py | 15 +++++++++++++++
16 1 files changed, 15 insertions(+), 0 deletions(-)
17
18 diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py
19 index 452a38f..16cf48b 100644
20 --- a/pym/portage/dbapi/vartree.py
21 +++ b/pym/portage/dbapi/vartree.py
22 @@ -57,6 +57,7 @@ from portage import _unicode_encode
23 from _emerge.AsynchronousLock import AsynchronousLock
24 from _emerge.EbuildBuildDir import EbuildBuildDir
25 from _emerge.EbuildPhase import EbuildPhase
26 +from _emerge.emergelog import emergelog
27 from _emerge.PollScheduler import PollScheduler
28 from _emerge.MiscFunctionsProcess import MiscFunctionsProcess
29
30 @@ -2957,6 +2958,9 @@ class dblink(object):
31 if str_buffer:
32 os.write(self._pipe, _unicode_encode(''.join(str_buffer)))
33
34 + def _emerge_log(self, msg):
35 + emergelog(False, msg)
36 +
37 def treewalk(self, srcroot, destroot, inforoot, myebuild, cleanup=0,
38 mydbapi=None, prev_mtimes=None, counter=None):
39 """
40 @@ -3457,6 +3461,8 @@ class dblink(object):
41 match_from_list(PORTAGE_PACKAGE_ATOM, [self.mycpv]):
42 reinstall_self = True
43
44 + emerge_log = self._emerge_log
45 +
46 # If we have any preserved libraries then autoclean
47 # is forced so that preserve-libs logic doesn't have
48 # to account for the additional complexity of the
49 @@ -3464,6 +3470,9 @@ class dblink(object):
50 autoclean = self.settings.get("AUTOCLEAN", "yes") == "yes" \
51 or preserve_paths
52
53 + if autoclean:
54 + emerge_log(_(" >>> AUTOCLEAN: %s") % (slot_atom,))
55 +
56 others_in_slot.append(self) # self has just been merged
57 for dblnk in list(others_in_slot):
58 if dblnk is self:
59 @@ -3471,6 +3480,7 @@ class dblink(object):
60 if not (autoclean or dblnk.mycpv == self.mycpv or reinstall_self):
61 continue
62 showMessage(_(">>> Safely unmerging already-installed instance...\n"))
63 + emerge_log(_(" === Unmerging... (%s)") % (dblnk.mycpv,))
64 others_in_slot.remove(dblnk) # dblnk will unmerge itself now
65 dblnk._linkmap_broken = self._linkmap_broken
66 dblnk.settings["REPLACED_BY_VERSION"] = portage.versions.cpv_getversion(self.mycpv)
67 @@ -3480,6 +3490,11 @@ class dblink(object):
68 preserve_paths=preserve_paths)
69 dblnk.settings.pop("REPLACED_BY_VERSION", None)
70
71 + if unmerge_rval == os.EX_OK:
72 + emerge_log(_(" >>> unmerge success: %s") % (dblnk.mycpv,))
73 + else:
74 + emerge_log(_(" !!! unmerge FAILURE: %s") % (dblnk.mycpv,))
75 +
76 self.lockdb()
77 try:
78 # TODO: Check status and abort if necessary.