Index: repoman =================================================================== --- repoman (revision 9349) +++ repoman (working copy) @@ -261,6 +261,7 @@ "DESCRIPTION.missing":"Ebuilds that have a missing or empty DESCRIPTION variable", "DESCRIPTION.toolong":"DESCRIPTION is over %d characters" % max_desc_len, "EAPI.unsupported":"Ebuilds that have an unsupported EAPI version (you must upgrade portage)", + "EAPI1_IN_EAPI0":"Ebuild uses EAPI1 features but does not declare an EAPI", "SLOT.missing":"Ebuilds that have a missing or empty SLOT variable", "HOMEPAGE.missing":"Ebuilds that have a missing or empty HOMEPAGE variable", "DEPEND.bad":"User-visible ebuilds with bad DEPEND settings (matched against *visible* ebuilds)", @@ -1166,9 +1167,12 @@ if token in operator_tokens or \ token.endswith("?"): continue - if not portage.isvalidatom(token, allow_blockers=True) or \ - ":" in token and myaux["EAPI"] == "0": + if not portage.isvalidatom(token, allow_blockers=True): badsyntax.append("'%s' not a valid atom" % token) + if portage.dep.dep_getslot(token) and myaux['EAPI'] == '0': + stats['EAPI1_IN_EAPI0'] += 1 + fails['EAPI1_IN_EAPI0'].append('%s is EAPI1 atom in EAPI0 ebuild %s' \ + % (token, catpkt + '.ebuild')) type_list.extend([mytype] * (len(badsyntax) - len(type_list)))