From d79b2e494b7ea7c83cb062dd8e6816e7e628ad13 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Thu, 16 Apr 2009 06:36:43 +0200 Subject: [PATCH] entropy.client.interfaces.metadata: extract_pkg_metadata, fix changelog metadatum must be unicode() and not str(). Moreover, print warning on Unicode conversion errors. --- libraries/entropy/client/interfaces/metadata.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libraries/entropy/client/interfaces/metadata.py b/libraries/entropy/client/interfaces/metadata.py index 292b53c55..9735d02a8 100644 --- a/libraries/entropy/client/interfaces/metadata.py +++ b/libraries/entropy/client/interfaces/metadata.py @@ -424,7 +424,15 @@ class ExtractorsMixin: # Get Spm ChangeLog pkgatom = "%s/%s-%s" % (data['category'],data['name'],data['version'],) try: - data['changelog'] = Spm.get_package_changelog(pkgatom) + data['changelog'] = unicode(Spm.get_package_changelog(pkgatom), + 'raw_unicode_escape') + except (UnicodeEncodeError, UnicodeDecodeError,), e: + self.updateProgress( + red(info_package) + _("changelog string conversion error") + \ + " " + bold(str(e)), + importance = 0, type = "warning", header = bold(" !!! ") + ) + data['changelog'] = None except: data['changelog'] = None