Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 230245

Summary: repoman does 'svn list' in the wrong directory.
Product: Portage Development Reporter: Santiago M. Mola (RETIRED) <coldwind>
Component: RepomanAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal Keywords: InVCS
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 210077    

Description Santiago M. Mola (RETIRED) gentoo-dev 2008-06-30 20:24:46 UTC
As you can see in the patch, "svn list" doesn't specify the package direcory. That makes that repoman doesn't get the correct file listings when running it outside the package dir. Giving a ebuild.notadded error for every ebuild in the repo.

I haven't tested the 'svn status' part, although I guess it should be run with checkdir too.

diff --git a/bin/repoman b/bin/repoman
index 51c2ae2..ec1b05d 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -872,7 +872,7 @@ for x in scanlist:
 			if vcs == "cvs":
 				myf=open(checkdir+"/CVS/Entries","r")
 			if vcs == "svn":
-				myf=os.popen("svn list")
+				myf=os.popen("svn list " + checkdir)
 			myl=myf.readlines()	
 			myf.close()
 			for l in myl:
@@ -891,7 +891,7 @@ for x in scanlist:
 					if l[-7:] == ".ebuild":
 						eadded.append(l[:-7])
 			if vcs == "svn":
-				myf=os.popen("svn status")
+				myf=os.popen("svn status " + checkdir)
 				myl=myf.readlines()
 				myf.close()
 				for l in myl:
Comment 1 Zac Medico gentoo-dev 2008-06-30 21:56:27 UTC
Thanks, this is in svn. I added an os.path.basename() call since `svn status` seems to output absolute paths when called with a directory name like that.
Comment 2 Zac Medico gentoo-dev 2008-07-23 07:58:15 UTC
This is fixed in 2.2_rc2.