[Yum-devel] [PATCH] Stops "Finished dependency resolution" from being printed multiple times when --skip-broken is used. BZ 626569
seth vidal
skvidal at fedoraproject.org
Mon Jun 13 20:54:05 UTC 2011
On Mon, 2011-06-13 at 16:16 -0400, Nick Jacek wrote:
> ---
> yum/__init__.py | 2 +-
> yum/depsolve.py | 8 ++++++--
> 2 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/yum/__init__.py b/yum/__init__.py
> index ab2bb9d..d05de2e 100644
> --- a/yum/__init__.py
> +++ b/yum/__init__.py
> @@ -1184,7 +1184,7 @@ class YumBase(depsolve.Depsolve):
> else:
> self.verbose_logger.debug('SKIPBROKEN: resetting already resolved packages (no packages to skip)' )
> self.tsInfo.resetResolved(hard=True)
> - rescode, restring = self.resolveDeps(True)
> + rescode, restring = self.resolveDeps(True, skipping_broken=True)
> endTs = set(self.tsInfo)
> # Check if tsInfo has changes since we started to skip packages
> # if there is no changes then we got a loop.
> diff --git a/yum/depsolve.py b/yum/depsolve.py
> index 44ccfd7..6d744c0 100644
> --- a/yum/depsolve.py
> +++ b/yum/depsolve.py
> @@ -721,7 +721,7 @@ class Depsolve(object):
> p.print_stats(20)
> return rc
>
> - def resolveDeps(self, full_check=True):
> + def resolveDeps(self, full_check=True, skipping_broken=False):
>
> if not len(self.tsInfo):
> return (0, [_('Success - empty transaction')])
> @@ -795,7 +795,11 @@ class Depsolve(object):
> txmbr.ts_state = 'i'
> txmbr.output_state = TS_INSTALL
>
> - if self.dsCallback: self.dsCallback.end()
> + if self.dsCallback:
> + if not self.conf.skip_broken:
> + self.dsCallback.end()
> + elif not skipping_broken and not errors:
> + self.dsCallback.end()
> self.verbose_logger.log(logginglevels.DEBUG_1, _('Dependency Process ending'))
>
> self.tsInfo.changed = False
ACK
-sv
More information about the Yum-devel
mailing list