diff --git a/libraries/entropy/client/interfaces/package.py b/libraries/entropy/client/interfaces/package.py index 541e3549d..98b3dddd4 100644 --- a/libraries/entropy/client/interfaces/package.py +++ b/libraries/entropy/client/interfaces/package.py @@ -1447,7 +1447,8 @@ class Package: # it is safe to consider that package dbs coming from repos # contain only one entry - pkg_idpackage = sorted(pkg_dbconn.listAllPackageIds())[0] + pkg_idpackage = sorted(pkg_dbconn.listAllPackageIds(), + reverse = True)[0] content = pkg_dbconn.retrieveContent( pkg_idpackage, extended = True, formatted = True, insert_formatted = True @@ -1456,6 +1457,10 @@ class Package: content = [(real_idpk, x, y,) for orig_idpk, x, y in content] data['content'] = content + # setup content safety metadata, get from package + data['content_safety'] = pkg_dbconn.retrieveContentSafety( + pkg_idpackage) + if self.pkgmeta['removeidpackage'] != -1: self.pkgmeta['removecontent'].update( self._entropy.installed_repository().contentDiff( diff --git a/libraries/entropy/db/__init__.py b/libraries/entropy/db/__init__.py index 7112d0574..d15ccb9de 100644 --- a/libraries/entropy/db/__init__.py +++ b/libraries/entropy/db/__init__.py @@ -4812,6 +4812,8 @@ class EntropyRepository(EntropyRepositoryBase): Reimplemented from EntropyRepositoryBase. """ self._cursor().execute('DELETE FROM content') + if self._doesTableExist("contentsafety"): + self._cursor().execute('DELETE FROM contentsafety') def dropChangelog(self): """ diff --git a/libraries/entropy/server/interfaces/main.py b/libraries/entropy/server/interfaces/main.py index 6d8020ded..b975e657d 100644 --- a/libraries/entropy/server/interfaces/main.py +++ b/libraries/entropy/server/interfaces/main.py @@ -901,6 +901,12 @@ class ServerQAInterfacePlugin(QAInterfacePlugin): return False dbc = self._server._open_temp_repository("test", temp_file = tmp_f) for package_id in dbc.listAllPackageIds(): + # test content + dbc.retrieveContent(package_id, extended = True, + formatted = True, insert_formatted = True) + # test content safety + dbc.retrieveContentSafety(package_id) + # test keywords keywords = dbc.retrieveKeywords(package_id) if not keywords: atom = dbc.retrieveAtom(package_id)