Add a new "portage.internal" warning for prepalldocs usage since the council
authorZac Medico <zmedico@gentoo.org>
Thu, 12 Feb 2009 23:12:41 +0000 (23:12 -0000)
committerZac Medico <zmedico@gentoo.org>
Thu, 12 Feb 2009 23:12:41 +0000 (23:12 -0000)
ruled that it shouldn't be used in ebuilds. Thanks to Petteri Räty
<betelgeuse@g.o> for the initial patch.

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

bin/repoman
man/repoman.1
pym/repoman/checks.py
pym/repoman/errors.py

index 3c062d7fd19efb47cc6a14321a627297db062ddf..7bbb1525e976d8f704f9d775b56b213e7ba23e9f 100755 (executable)
@@ -317,6 +317,7 @@ qahelp={
        "metadata.missing":"Missing metadata.xml files",
        "metadata.bad":"Bad metadata.xml files",
        "metadata.warning":"Warnings in metadata.xml files",
+       "portage.internal":"The ebuild uses an internal Portage function",
        "virtual.versioned":"PROVIDE contains virtuals with versions",
        "virtual.exists":"PROVIDE contains existing package names",
        "virtual.unavailable":"PROVIDE contains a virtual which contains no profile default",
index 5b5aec6ff8a7fc6f43ef8fde2a55d4dc27295249..aca5587c06f6a0f8ebf51c980df9f7a51237ff98 100644 (file)
@@ -270,6 +270,9 @@ Missing metadata.xml files
 .B metadata.warning
 Warnings in metadata.xml files
 .TP
+.B portage.internal
+The ebuild uses an internal Portage function
+.TP
 .B upstream.workaround
 The ebuild works around an upstream bug, an upstream bug should be filed and
 tracked in bugs.gentoo.org
index e89020980a6d85a262bb59c1b7a38ab18a76b17e..aee6d7c97e05be4bd7079d7b542ed1e756ae396d 100644 (file)
@@ -339,6 +339,15 @@ class WantAutoDefaultValue(LineCheck):
                        return 'WANT_AUTO' + m.group(1) + \
                                ' redundantly set to default value "latest" on line: %d'
 
+class PortageInternal(LineCheck):
+       """
+       In February 2009 the Gentoo council ruled that
+       prepalldocs is a Portage internal.
+       """
+       repoman_check_name = 'portage.internal'
+       re = re.compile(r'[^#]*\bprepalldocs\b')
+       error = errors.PREPALLDOCS_ERROR
+
 _constant_checks = tuple((c() for c in (
        EbuildHeader, EbuildWhitespace, EbuildQuote,
        EbuildAssignment, EbuildUselessDodoc,
@@ -346,7 +355,7 @@ _constant_checks = tuple((c() for c in (
        EbuildPatches, EbuildQuotedA,
        IUseUndefined, ImplicitRuntimeDeps, InheritAutotools,
        EMakeParallelDisabled, DeprecatedBindnowFlags,
-       WantAutoDefaultValue)))
+       WantAutoDefaultValue, PortageInternal)))
 
 def run_checks(contents, pkg):
        checks = _constant_checks
index 7f45bea21b949596d57045fa4cf1a44fb874f589..205913951214ba50e7b0c4f86cb71d46c2f291d4 100644 (file)
@@ -15,3 +15,4 @@ PATCHES_ERROR = 'PATCHES is not a bash array on line: %d'
 REDUNDANT_CD_S_ERROR = 'Ebuild has redundant cd ${S} statement on line: %d'
 EMAKE_PARALLEL_DISABLED = 'Upstream parallel compilation bug (ebuild calls emake -j1 on line: %d)'
 DEPRECATED_BINDNOW_FLAGS = 'Deprecated bindnow-flags call on line: %d'
+PREPALLDOCS_ERROR = 'prepalldocs called on line: %d'