[yum-cvs] yum cli.py,1.144.2.4,1.144.2.5 output.py,1.45,1.45.2.1

Seth Vidal skvidal at login.linux.duke.edu
Tue Mar 15 06:56:34 UTC 2005


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

Modified Files:
      Tag: yum-2_2_X
	cli.py output.py 
Log Message:

backport bugfixes/features:
 - make lockfile local to installroot
 - install by dep (yum install "foo > 1.1")
 - gpgkey has variableReplace() run on it now
 - updated urlgrabber to current
 - repo globbing patch included
 - display obsoletes in transaction list
 - make sure removal deps are listed as deps.



Index: cli.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/cli.py,v
retrieving revision 1.144.2.4
retrieving revision 1.144.2.5
diff -u -r1.144.2.4 -r1.144.2.5
--- cli.py	26 Feb 2005 09:14:00 -0000	1.144.2.4
+++ cli.py	15 Mar 2005 06:56:32 -0000	1.144.2.5
@@ -57,6 +57,11 @@
     def doRepoSetup(self, nosack=None):
         """grabs the repomd.xml for each enabled repository and sets up the basics
            of the repository"""
+
+        if hasattr(self, 'pkgSack'):
+            self.log(7, 'skipping reposetup, pkgsack exists')
+            return
+           
         self.log(2, 'Setting up Repos')
         if len(self.repos.listEnabled()) < 1:
             self.errorlog(0, 'No Repositories Available to Set Up')
@@ -812,6 +817,7 @@
         toBeInstalled = {} # keyed on name
         passToUpdate = [] # list of pkgtups to pass along to updatecheck
 
+        self.log(2, _('Parsing package install arguments'))
         for arg in userlist:
             if os.path.exists(arg) and arg.endswith('.rpm'): # this is hurky, deal w/it
                 val, msglist = self.localInstall(filelist=[arg])
@@ -819,19 +825,23 @@
                          # no matter what we don't go looking at repos
 
             if arg[0] == '/':
+            arglist = [arg]
+            exactmatch, matched, unmatched = parsePackages(avail, arglist)
+            if len(unmatched) > 0: # if we get back anything in unmatched, check it for a virtual-provide
+                arg = unmatched[0] #only one in there
+                self.log(3, 'Checking for virtual provide or file-provide for %s' % arg)
+            
                 try:
                     mypkg = self.returnPackageByDep(arg)
                 except yum.Errors.YumBaseError, e:
-                    pass
+                    self.errorlog(0, _('No Match for argument: %s') % arg)
                 else:
-                    arg = '%s:%s-%s-%s.%s' % (mypkg.epoch, mypkg.name, mypkg.version,
-                                              mypkg.release, mypkg.arch)
-
-            arglist = [arg]
-            exactmatch, matched, unmatched = parsePackages(avail, arglist)
-            if len(unmatched) > 0: # if we get back anything in unmatched, it fails
-                self.errorlog(0, _('No Match for argument: %s') % arg)
-                continue
+                    arg = '%s:%s-%s-%s.%s' % (mypkg.epoch, mypkg.name,
+                                              mypkg.version, mypkg.release,
+                                              mypkg.arch)
+                    emtch, mtch, unmtch = parsePackages(avail, [arg])
+                    exactmatch.extend(emtch)
+                    matched.extend(mtch)
             
             installable = yum.misc.unique(exactmatch + matched)
             exactarch = self.conf.getConfigOption('exactarch')

Index: output.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/output.py,v
retrieving revision 1.45
retrieving revision 1.45.2.1
diff -u -r1.45 -r1.45.2.1
--- output.py	24 Jan 2005 05:18:11 -0000	1.45
+++ output.py	15 Mar 2005 06:56:32 -0000	1.45.2.1
@@ -383,13 +383,13 @@
             for txmbr in pkglist:
                 (n,a,e,v,r) = txmbr.pkgtup
                 msg = "  %s: %s.%s %s:%s-%s\n" % (action, n,a,e,v,r)
-                userout = userout + msg
+                depout = depout + msg
 
         for txmbr in obsoleted:
             (n,a,e,v,r) = txmbr.pkgtup
             obspkg = None
             for (pkg, relationship) in txmbr.relatedto:
-                if relationship == 'osboletedby':
+                if relationship == 'obsoletedby':
                     obspkg = '%s.%s %s:%s-%s' % pkg
             if obspkg is not None:
                 otherout = otherout + "  Obsoleting: %s.%s %s:%s-%s with %s\n" % (n, a, e, v, r, obspkg)




More information about the Yum-cvs-commits mailing list