[Yum-devel] [PATCH 1/3] Don't print files section of updateinfo notices, by default.

seth vidal skvidal at fedoraproject.org
Tue Aug 17 14:12:01 UTC 2010


On Mon, 2010-08-16 at 17:44 -0400, James Antill wrote:

ACK
-sv


> ---
>  yum/update_md.py |   20 +++++++++++++-------
>  1 files changed, 13 insertions(+), 7 deletions(-)
> 
> diff --git a/yum/update_md.py b/yum/update_md.py
> index 9f6ff99..3d05d19 100644
> --- a/yum/update_md.py
> +++ b/yum/update_md.py
> @@ -74,7 +74,7 @@ class UpdateNotice(object):
>      def __setitem__(self, item, val):
>          self._md[item] = val
>  
> -    def __str__(self):
> +    def text(self, skip_data=('files',)):
>          head = """
>  ===============================================================================
>    %(title)s
> @@ -91,7 +91,7 @@ class UpdateNotice(object):
>  
>          # Add our bugzilla references
>          bzs = filter(lambda r: r['type'] == 'bugzilla', self._md['references'])
> -        if len(bzs):
> +        if len(bzs) and 'bugs' not in skip_data:
>              buglist = "       Bugs :"
>              for bz in bzs:
>                  buglist += " %s%s\n\t    :" % (bz['id'], 'title' in bz
> @@ -100,32 +100,35 @@ class UpdateNotice(object):
>  
>          # Add our CVE references
>          cves = filter(lambda r: r['type'] == 'cve', self._md['references'])
> -        if len(cves):
> +        if len(cves) and 'cves' not in skip_data:
>              cvelist = "       CVEs :"
>              for cve in cves:
>                  cvelist += " %s\n\t    :" % cve['id']
>              head += cvelist[: - 1].rstrip() + '\n'
>  
> -        if self._md['summary']:
> +        if self._md['summary'] and 'summary' not in skip_data:
>              data = utf8_text_wrap(self._md['summary'], width=64,
>                                    subsequent_indent=' ' * 12 + ': ')
>              head += "    Summary : %s\n" % '\n'.join(data)
>  
> -        if self._md['description']:
> +        if self._md['description'] and 'description' not in skip_data:
>              desc = utf8_text_wrap(self._md['description'], width=64,
>                                    subsequent_indent=' ' * 12 + ': ')
>              head += "Description : %s\n" % '\n'.join(desc)
>  
> -        if self._md['solution']:
> +        if self._md['solution'] and 'solution' not in skip_data:
>              data = utf8_text_wrap(self._md['solution'], width=64,
>                                    subsequent_indent=' ' * 12 + ': ')
>              head += "   Solution : %s\n" % '\n'.join(data)
>  
> -        if self._md['rights']:
> +        if self._md['rights'] and 'rights' not in skip_data:
>              data = utf8_text_wrap(self._md['rights'], width=64,
>                                    subsequent_indent=' ' * 12 + ': ')
>              head += "     Rights : %s\n" % '\n'.join(data)
>  
> +        if 'files' in skip_data:
> +            return head[:-1] # chop the last '\n'
> +
>          #  Get a list of arches we care about:
>          #XXX ARCH CHANGE - what happens here if we set the arch - we need to
>          # pass this in, perhaps
> @@ -141,6 +144,9 @@ class UpdateNotice(object):
>  
>          return head
>  
> +    def __str__(self):
> +        return to_utf8(self.text())
> +
>      def get_metadata(self):
>          """ Return the metadata dict. """
>          return self._md




More information about the Yum-devel mailing list