From f9f0051023dceca660b4c5950c6c41eadb07c3bb Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Wed, 6 Jan 2010 19:25:39 +0100 Subject: [PATCH] [entropy] merge some changes around (blame git for the mess) --- docs/TODO | 1 + .../entropy/client/services/ugc/commands.py | 9 ++--- sulfur/src/sulfur/package.py | 35 +++++++++++++++---- sulfur/src/sulfur/views.py | 7 ++-- 4 files changed, 38 insertions(+), 14 deletions(-) diff --git a/docs/TODO b/docs/TODO index 04b9b2037..ac5c5b9cf 100644 --- a/docs/TODO +++ b/docs/TODO @@ -17,6 +17,7 @@ - remove "server_repos", use "matchRepo" - entropy.client, rename validRepositories into enabled_repositories - entropy.client, rename clientDbconn into installed_db + - entropy.db => retrieveVersionTag => retrieveTag - PackageKit integration - ability to also install build dependencies - Spm.extract_package_metadata, define metadata format (to make easier diff --git a/libraries/entropy/client/services/ugc/commands.py b/libraries/entropy/client/services/ugc/commands.py index 77c948691..123d65f81 100644 --- a/libraries/entropy/client/services/ugc/commands.py +++ b/libraries/entropy/client/services/ugc/commands.py @@ -12,7 +12,8 @@ import os from entropy.exceptions import * -from entropy.const import etpConst, const_get_stringtype, const_debug_write +from entropy.const import etpConst, const_get_stringtype, const_debug_write, \ + const_convert_to_rawstring from entropy.output import darkblue, bold, blue, darkgreen, darkred, brown from entropy.i18n import _ from entropy.core.settings.base import SystemSettings @@ -716,9 +717,9 @@ class Client(Base): xml_comp_string = zlib.compress(xml_string) cmd = "%s %s %s" % ( - session_id, - 'ugc:report_error', - xml_comp_string, + const_convert_to_rawstring(session_id), + const_convert_to_rawstring('ugc:report_error'), + const_convert_to_rawstring(xml_comp_string), ) return self.do_generic_handler(cmd, session_id) diff --git a/sulfur/src/sulfur/package.py b/sulfur/src/sulfur/package.py index 875036a3c..5a2f3e2d1 100644 --- a/sulfur/src/sulfur/package.py +++ b/sulfur/src/sulfur/package.py @@ -200,6 +200,17 @@ class EntropyPackage: return EquoIntf.is_match_unmasked_by_user((m_id, m_r,)) return EquoIntf.is_match_unmasked_by_user(self.matched_atom) + def _get_nameDesc_get_installed_ver(self): + ver_str = '' + if self.installed_match: + idpackage = self.installed_match[0] + from_ver = EquoIntf.clientDbconn.retrieveVersion(idpackage) + from_tag = EquoIntf.clientDbconn.retrieveVersionTag(idpackage) + if from_tag: + from_tag = '#%s' % (from_tag,) + ver_str = from_ver+from_tag + return ver_str + def get_nameDesc(self): if self.pkgset: @@ -209,16 +220,25 @@ class EntropyPackage: SulfurConf.color_pkgdesc, cleanMarkupString(desc),) return t - ugc_string = '' - atom = self.get_name() - repo = self.get_repository() - repo_clean = self.get_repository_clean() + if self.__namedesc_cache is not None: + atom, repo, repo_clean, key, desc, ver_str = self.__namedesc_cache + else: + atom = self.get_name() + repo = self.get_repository() + repo_clean = self.get_repository_clean() + key = self.entropyTools.dep_getkey(atom) + desc = self.get_description(markup = False) + ver_str = self._get_nameDesc_get_installed_ver() + self.__namedesc_cache = atom, repo, repo_clean, key, desc, ver_str key = self.entropyTools.dep_getkey(atom) downloads = EquoIntf.UGC.UGCCache.get_package_downloads(repo_clean, key) ugc_string = "[%s] " % (downloads,) + if ver_str: + ver_str = ' {%s: %s}' % ( + _("from"), SulfurConf.color_title2, ver_str,) - t = ugc_string+'/'.join(atom.split("/")[1:]) + t = '/'.join(atom.split("/")[1:]) + ver_str if self.masked: t += " [%s]" % ( SulfurConf.color_title2, @@ -227,8 +247,9 @@ class EntropyPackage: desc = self.get_description(markup = False) if len(desc) > 56: desc = desc[:56].rstrip()+"..." - t += '\n%s' % ( - SulfurConf.color_pkgdesc, cleanMarkupString(desc),) + t += '\n' + ugc_string + \ + '%s' % ( + SulfurConf.color_pkgdesc, cleanMarkupString(desc),) return t def get_only_name(self): diff --git a/sulfur/src/sulfur/views.py b/sulfur/src/sulfur/views.py index 07546e1b7..03c2310db 100644 --- a/sulfur/src/sulfur/views.py +++ b/sulfur/src/sulfur/views.py @@ -1569,9 +1569,10 @@ class EntropyPackageView: column2.connect("clicked", self.on_vote_column_clicked) self.view.append_column( column2 ) - self.create_text_column( _( "Repository" ), 'repoid', size = 130, - set_height = myheight, clickable = True, - click_cb = self.on_repository_column_clicked) + # This is against Sulfur Love (tm) + # self.create_text_column( _( "Repository" ), 'repoid', size = 130, + # set_height = myheight, clickable = True, + # click_cb = self.on_repository_column_clicked) return store