[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