diff options
author | Alain Penders <alain@gentoo.org> | 2003-02-24 14:48:13 +0000 |
---|---|---|
committer | Alain Penders <alain@gentoo.org> | 2003-02-24 14:48:13 +0000 |
commit | b5afa28ac4ceeb369e442854995ea9e045d0c740 (patch) | |
tree | 0eec86fc790ed6d83093cd06e387157134f5ee61 | |
parent | fix for ccache (diff) | |
download | portage-cvs-b5afa28ac4ceeb369e442854995ea9e045d0c740.tar.gz portage-cvs-b5afa28ac4ceeb369e442854995ea9e045d0c740.tar.bz2 portage-cvs-b5afa28ac4ceeb369e442854995ea9e045d0c740.zip |
Added nested/sub-shell die testing.
-rw-r--r-- | ChangeLog | 5 | ||||
-rwxr-xr-x | bin/repoman | 10 |
2 files changed, 11 insertions, 4 deletions
@@ -1,6 +1,9 @@ # ChangeLog for Portage; the Gentoo Linux ports system # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/ChangeLog,v 1.424 2003/02/23 23:12:26 alain Exp $ +# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/ChangeLog,v 1.425 2003/02/24 14:48:13 alain Exp $ + + 24 Feb 2003; Alain Penders <alain@gentoo.org> repoman: Added nested/sub-shell + die testing. 23 Feb 2003; Alain Penders <alain@gentoo.org>: Added bin/portageq tool to provide access to portage internal information without using APIs that diff --git a/bin/repoman b/bin/repoman index fa2883c..3bb409e 100755 --- a/bin/repoman +++ b/bin/repoman @@ -2,7 +2,7 @@ # Copyright 1999-2003 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 # Author: Daniel Robbins <drobbins@gentoo.org> -# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/bin/repoman,v 1.9 2003/02/22 16:59:08 carpaski Exp $ +# $Header: /local/data/ulm/cvs/history/var/cvsroot/gentoo-src/portage/bin/repoman,v 1.10 2003/02/24 14:48:13 alain Exp $ # Next to do: dep syntax checking in ebuilds, mask files # Then, check to make sure deps are satisfiable (to avoid "can't find match for" problems) @@ -35,7 +35,7 @@ modeshelp={"scan":"Scan current directory tree for QA issues (default)", optionshelp={"--pretend":"Don't actually perform commit or fix steps; just show what would be done.", "--help":"Show this screen" } -qacats=["digest.stray","digest.missing","ebuild.invalidname","ebuild.namenomatch","changelog.missing","ebuild.notadded","digest.notadded","ebuild.disjointed","digest.disjointed", "DEPEND.bad","RDEPEND.bad","DEPEND.badmasked","RDEPEND.badmasked","ebuild.syntax","ebuild.output"] +qacats=["digest.stray","digest.missing","ebuild.invalidname","ebuild.namenomatch","changelog.missing","ebuild.notadded","digest.notadded","ebuild.disjointed","digest.disjointed", "DEPEND.bad","RDEPEND.bad","DEPEND.badmasked","RDEPEND.badmasked","ebuild.syntax","ebuild.output","ebuild.nesteddie"] qawarnings=["changelog.missing","ebuild.notadded","digest.notadded","DEPEND.badmasked","RDEPEND.badmasked"] missingvars=["KEYWORDS","LICENSE","DESCRIPTION","SLOT"] allvars=missingvars[:] @@ -62,7 +62,8 @@ qahelp={ "DEPEND.badmasked":"Masked ebuilds with bad DEPEND settings (matched against *all* ebuilds)", "RDEPEND.badmasked":"Masked ebuilds with RDEPEND settings (matched against *all* ebuilds)", "ebuild.syntax":"Error generating cache entry for ebuild; typically caused by ebuild syntax error", - "ebuild.output":"A simple sourcing of the ebuild produces output; this breaks ebuild policy." + "ebuild.output":"A simple sourcing of the ebuild produces output; this breaks ebuild policy.", + "ebuild.nesteddie":"Placing 'die' inside ( ) prints an error, but doesn't stop the ebuild." } def err(txt): @@ -312,6 +313,9 @@ for x in scanlist: else: stats[mykey]=stats[mykey]+1 fails[mykey].append(x+"/"+y+".ebuild: "+repr(mydep[1])) + if not os.system("egrep '\([^)]*\<die\>' "+checkdir+"/"+y+".ebuild >/dev/null 2>&1"): + stats["ebuild.nesteddie"]=stats["ebuild.nesteddie"]+1 + fails["ebuild.nesteddie"].append(x+"/"+y+".ebuild") print #dofail will be set to 1 if we have failed in at least one non-warning category |