[yum-cvs] yum/yum sqlitesack.py,1.4,1.5

Gijs Hollestelle gijs at login.linux.duke.edu
Wed Mar 2 12:03:15 UTC 2005


Update of /home/groups/yum/cvs/yum/yum
In directory login:/tmp/cvs-serv21632/yum

Modified Files:
	sqlitesack.py 
Log Message:
Fixes in Changelog handling code, mostly contributed by Panu Matilainen.



Index: sqlitesack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/sqlitesack.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- sqlitesack.py	2 Mar 2005 10:43:57 -0000	1.4
+++ sqlitesack.py	2 Mar 2005 12:03:13 -0000	1.5
@@ -37,6 +37,9 @@
         self.changelog = None
     
     def loadChangelog(self):
+        if hasattr(self, 'dbusedother'):
+            return
+        self.dbusedother = 1
         self.changelog = self.sack.getChangelog(self.pkgId)
 
     def returnSimple(self, varname):
@@ -51,7 +54,12 @@
     def loadFiles(self):
         if (hasattr(self,'dbusedfiles')):
             return
+        self.dbusedfiles = 1
         self.files = self.sack.getFiles(self.pkgId)
+
+    def returnChangelog(self):
+        self.loadChangelog()
+        return YumAvailablePackage.returnChangelog(self)
             
     def returnFileEntries(self, ftype='file'):
         self.loadFiles()
@@ -114,14 +122,14 @@
     
     def getChangelog(self,pkgId):
         result = []
-        for (rep,cache) in self.filelistsdb.items():
+        for (rep,cache) in self.otherdb.items():
             cur = cache.cursor()
             cur.execute("select * from packages,changelog where packages.pkgId = %s and packages.pkgKey = changelog.pkgKey",pkgId)
             for ob in cur.fetchall():
-                result.append({ 'author': ob['author'],
-                                'value': ob['changelog'],
-                                'data': ob['data']
-                              })
+                result.append(( ob['changelog.date'],
+                                ob['changelog.author'],
+                                ob['changelog.changelog']
+                              ))
         return result
 
     # Get all files for a certain pkgId from the filelists.xml metadata
@@ -134,8 +142,8 @@
             for ob in cur.fetchall():
                 found = True
                 dirname = ob['filelist.dirname']
-                filetypes = ob['filelist.filetypes'].split('|')[1:-2]
-                filenames = ob['filelist.filenames'].split('|')[1:-2]
+                filetypes = ob['filelist.filetypes'].split('|')[1:-1]
+                filenames = ob['filelist.filenames'].split('|')[1:-1]
                 while(filenames):
                     filename = dirname+'/'+filenames.pop()
                     filetype = filetypes.pop()




More information about the Yum-cvs-commits mailing list