Bug #230249 - Disable the "ebuild.notadded" check when not in commit mode and
authorZac Medico <zmedico@gentoo.org>
Mon, 30 Jun 2008 22:18:46 +0000 (22:18 -0000)
committerZac Medico <zmedico@gentoo.org>
Mon, 30 Jun 2008 22:18:46 +0000 (22:18 -0000)
running `svn list` and `svn status` calls in every package dir will be too
expensive.

svn path=/main/trunk/; revision=10860

bin/repoman

index b0c44ddb1083e44ea441f69ab4c99e70b52d26f3..febe30a7339edd6f6083a7a84fee9c107ebe237f 100755 (executable)
@@ -771,6 +771,12 @@ arch_caches={}
 arch_xmatch_caches = {}
 shared_xmatch_caches = {"cp-list":{}}
 
+# Disable the "ebuild.notadded" check when not in commit mode and
+# running `svn list` and `svn status` calls in every package dir
+# will be too expensive.
+enable_ebuild_notadded = not \
+       (vcs == "svn" and repolevel < 3 and options.mode != "commit")
+
 for x in scanlist:
        #ebuilds and digests added to cvs respectively.
        logging.info("checking package %s" % x)
@@ -867,7 +873,7 @@ for x in scanlist:
        if not os.path.isdir(os.path.join(checkdir, "files")):
                has_filesdir = False
 
-       if vcs:
+       if vcs and check_ebuild_notadded:
                try:
                        if vcs == "cvs":
                                myf=open(checkdir+"/CVS/Entries","r")
@@ -1070,7 +1076,7 @@ for x in scanlist:
                if stat.S_IMODE(os.stat(full_path).st_mode) & 0111:
                        stats["file.executable"] += 1
                        fails["file.executable"].append(x+"/"+y+".ebuild")
-               if vcs and y not in eadded:
+               if vcs and check_ebuild_notadded and y not in eadded:
                        #ebuild not added to vcs
                        stats["ebuild.notadded"]=stats["ebuild.notadded"]+1
                        fails["ebuild.notadded"].append(x+"/"+y+".ebuild")