Move parse_updates from the core portage module to portage_update.
authorZac Medico <zmedico@gentoo.org>
Fri, 21 Jul 2006 05:59:27 +0000 (05:59 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 21 Jul 2006 05:59:27 +0000 (05:59 -0000)
svn path=/main/trunk/; revision=3977

pym/portage.py
pym/portage_update.py

index cb8e239a98a4adb520d7499c44bd5df9fdbabd23..83aa0c9930dac4371023304487e8e3c7ceadb2db 100644 (file)
@@ -91,7 +91,7 @@ try:
        from portage_checksum import perform_md5,perform_checksum,prelink_capable
        import eclass_cache
        from portage_localization import _
-       from portage_update import fixdbentries, update_dbentries, grab_updates
+       from portage_update import fixdbentries, grab_updates, parse_updates, update_dbentries
 
        # Need these functions directly in portage namespace to not break every external tool in existence
        from portage_versions import ververify,vercmp,catsplit,catpkgsplit,pkgsplit,pkgcmp
@@ -6703,40 +6703,6 @@ def getvirtuals(myroot):
        writemsg("--- DEPRECATED call to getvirtual\n")
        return settings.getvirtuals(myroot)
 
-def parse_updates(mycontent):
-       """Valid updates are returned as a list of split update commands."""
-       myupd = []
-       errors = []
-       mylines = mycontent.splitlines()
-       for myline in mylines:
-               mysplit = myline.split()
-               if len(mysplit) == 0:
-                       continue
-               if mysplit[0] not in ("move", "slotmove"):
-                       errors.append("ERROR: Update type not recognized '%s'" % myline)
-                       continue
-               if mysplit[0]=="move":
-                       if len(mysplit)!=3:
-                               errors.append("ERROR: Update command invalid '%s'" % myline)
-                               continue
-                       orig_value, new_value = mysplit[1], mysplit[2]
-                       for cp in (orig_value, new_value):
-                               if not (isvalidatom(cp) and isjustname(cp)):
-                                       errors.append("ERROR: Malformed update entry '%s'" % myline)
-                                       continue
-               if mysplit[0]=="slotmove":
-                       if len(mysplit)!=4:
-                               errors.append("ERROR: Update command invalid '%s'" % myline)
-                               continue
-                       pkg, origslot, newslot = mysplit[1], mysplit[2], mysplit[3]
-                       if not isvalidatom(pkg):
-                               errors.append("ERROR: Malformed update entry '%s'" % myline)
-                               continue
-               
-               # The list of valid updates is filtered by continue statements above.
-               myupd.append(mysplit)
-       return myupd, errors
-
 def commit_mtimedb(mydict=None, filename=None):
        if mydict is None:
                global mtimedb
index 510ef4ce37e83d8c0c3792f3d5bd762b33b9cd63..000514bf4fbc386ec523c2488f8fdfb43068b698 100644 (file)
@@ -6,6 +6,7 @@ import errno, os, re
 
 from portage_util import write_atomic
 from portage_exception import DirectoryNotFound
+from portage_dep import isvalidatom, isjustname
 
 ignored_dbentries = ("CONTENTS", "environment.bz2")
 
@@ -83,3 +84,38 @@ def grab_updates(updpath, prev_mtimes=None):
                        f.close()
                        update_data.append((file_path, mystat, content))
        return update_data
+
+def parse_updates(mycontent):
+       """Valid updates are returned as a list of split update commands."""
+       myupd = []
+       errors = []
+       mylines = mycontent.splitlines()
+       for myline in mylines:
+               mysplit = myline.split()
+               if len(mysplit) == 0:
+                       continue
+               if mysplit[0] not in ("move", "slotmove"):
+                       errors.append("ERROR: Update type not recognized '%s'" % myline)
+                       continue
+               if mysplit[0] == "move":
+                       if len(mysplit) != 3:
+                               errors.append("ERROR: Update command invalid '%s'" % myline)
+                               continue
+                       orig_value, new_value = mysplit[1], mysplit[2]
+                       for cp in (orig_value, new_value):
+                               if not (isvalidatom(cp) and isjustname(cp)):
+                                       errors.append(
+                                               "ERROR: Malformed update entry '%s'" % myline)
+                                       continue
+               if mysplit[0] == "slotmove":
+                       if len(mysplit)!=4:
+                               errors.append("ERROR: Update command invalid '%s'" % myline)
+                               continue
+                       pkg, origslot, newslot = mysplit[1], mysplit[2], mysplit[3]
+                       if not isvalidatom(pkg):
+                               errors.append("ERROR: Malformed update entry '%s'" % myline)
+                               continue
+               
+               # The list of valid updates is filtered by continue statements above.
+               myupd.append(mysplit)
+       return myupd, errors