diff options
author | Marius Mauch <genone@gentoo.org> | 2007-06-30 11:21:26 +0000 |
---|---|---|
committer | Marius Mauch <genone@gentoo.org> | 2007-06-30 11:21:26 +0000 |
commit | 6e969a709c40e8c78e4961e7ea7e9f045cfb6d92 (patch) | |
tree | 53d87ad4ab895cb8c195db58200b250fa4237371 /pym/portage/elog/__init__.py | |
parent | 6e4dbc5df61a885fde1912f3a25fe32c6da844d6 (diff) | |
download | portage-6e969a709c40e8c78e4961e7ea7e9f045cfb6d92.tar.gz portage-6e969a709c40e8c78e4961e7ea7e9f045cfb6d92.tar.bz2 portage-6e969a709c40e8c78e4961e7ea7e9f045cfb6d92.zip |
apply additional phase filters as otherwise some messages are logged in both unmerge and merge
svn path=/main/trunk/; revision=7098
Diffstat (limited to 'pym/portage/elog/__init__.py')
-rw-r--r-- | pym/portage/elog/__init__.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/pym/portage/elog/__init__.py b/pym/portage/elog/__init__.py index cbe9f47fa..ef040faa9 100644 --- a/pym/portage/elog/__init__.py +++ b/pym/portage/elog/__init__.py @@ -41,7 +41,8 @@ def _combine_logentries(logentries): return rValue _elog_atexit_handlers = [] -def elog_process(cpv, mysettings): +_preserve_logentries = {} +def elog_process(cpv, mysettings, phasefilter=None): ebuild_logentries = collect_ebuild_messages(os.path.join(mysettings["T"], "logging")) all_logentries = collect_messages() if all_logentries.has_key(cpv): @@ -49,8 +50,18 @@ def elog_process(cpv, mysettings): else: all_logentries[cpv] = ebuild_logentries - my_elog_classes = set(mysettings.get("PORTAGE_ELOG_CLASSES", "").split()) + for key in _preserve_logentries.keys(): + if all_logentries.has_key(key): + all_logentries[key] = _merge_logentries(_preserve_logentries[key], all_logentries[key]) + else: + all_logentries[key] = _preserve_logentries[key] + del _preserve_logentries[key] + + if phasefilter != None: + for key in all_logentries: + all_logentries[key], _preserve_logentries[key] = phasefilter(all_logentries[key]) + my_elog_classes = set(mysettings.get("PORTAGE_ELOG_CLASSES", "").split()) for key in all_logentries: default_logentries = filter_loglevels(all_logentries[key], my_elog_classes) |