1 |
Author: zmedico |
2 |
Date: 2008-03-28 13:05:40 +0000 (Fri, 28 Mar 2008) |
3 |
New Revision: 9576 |
4 |
|
5 |
Modified: |
6 |
main/branches/2.1.2/bin/repoman |
7 |
main/branches/2.1.2/man/repoman.1 |
8 |
Log: |
9 |
Bug #213629 - Create an EAPI.incompatible category and use it in cases |
10 |
where EAPI=0 and a slot atom is encountered. (trunk r9524) |
11 |
|
12 |
|
13 |
Modified: main/branches/2.1.2/bin/repoman |
14 |
=================================================================== |
15 |
--- main/branches/2.1.2/bin/repoman 2008-03-28 13:02:47 UTC (rev 9575) |
16 |
+++ main/branches/2.1.2/bin/repoman 2008-03-28 13:05:40 UTC (rev 9576) |
17 |
@@ -173,6 +173,7 @@ |
18 |
"LICENSE.missing":"Ebuilds that have a missing or empty LICENSE variable", |
19 |
"DESCRIPTION.missing":"Ebuilds that have a missing or empty DESCRIPTION variable", |
20 |
"DESCRIPTION.toolong":"DESCRIPTION is over %d characters" % max_desc_len, |
21 |
+ "EAPI.incompatible":"Ebuilds that use features that are only available with a different EAPI", |
22 |
"EAPI.unsupported":"Ebuilds that have an unsupported EAPI version (you must upgrade portage)", |
23 |
"SLOT.missing":"Ebuilds that have a missing or empty SLOT variable", |
24 |
"HOMEPAGE.missing":"Ebuilds that have a missing or empty HOMEPAGE variable", |
25 |
@@ -1461,6 +1462,7 @@ |
26 |
continue |
27 |
|
28 |
myaux = ebuild_metadata[y] |
29 |
+ eapi = myaux["EAPI"] |
30 |
|
31 |
# Test for negative logic and bad words in the RESTRICT var. |
32 |
#for x in myaux[allvars.index("RESTRICT")].split(): |
33 |
@@ -1632,15 +1634,22 @@ |
34 |
if myteststr.find(token) != -1: |
35 |
badsyntax.append("'%s' not separated by space" % (token)) |
36 |
|
37 |
- |
38 |
if mytype in ("DEPEND", "RDEPEND", "PDEPEND"): |
39 |
for token in mydepstr.split(): |
40 |
if token in operator_tokens or \ |
41 |
token.endswith("?"): |
42 |
continue |
43 |
- if not portage.isvalidatom(token, allow_blockers=True) or \ |
44 |
- ":" in token and myaux["EAPI"] == "0": |
45 |
+ if not portage.isvalidatom(token, allow_blockers=True): |
46 |
badsyntax.append("'%s' not a valid atom" % token) |
47 |
+ else: |
48 |
+ atom = token.lstrip("!") |
49 |
+ if eapi == "0": |
50 |
+ if portage_dep.dep_getslot(atom): |
51 |
+ stats['EAPI.incompatible'] += 1 |
52 |
+ fails['EAPI.incompatible'].append( |
53 |
+ (relative_path + ": %s slot dependency" + \ |
54 |
+ " not supported with EAPI='%s':" + \ |
55 |
+ " '%s'") % (mytype, eapi, atom)) |
56 |
|
57 |
type_list.extend([mytype] * (len(badsyntax) - len(type_list))) |
58 |
|
59 |
|
60 |
Modified: main/branches/2.1.2/man/repoman.1 |
61 |
=================================================================== |
62 |
--- main/branches/2.1.2/man/repoman.1 2008-03-28 13:02:47 UTC (rev 9575) |
63 |
+++ main/branches/2.1.2/man/repoman.1 2008-03-28 13:05:40 UTC (rev 9576) |
64 |
@@ -102,6 +102,9 @@ |
65 |
.B DESCRIPTION.missing |
66 |
Ebuilds that have a missing or empty DESCRIPTION variable |
67 |
.TP |
68 |
+.B EAPI.incompatible |
69 |
+Ebuilds that use features that are only available with a different EAPI |
70 |
+.TP |
71 |
.B EAPI.unsupported |
72 |
Ebuilds that have an unsupported EAPI version (you must upgrade portage) |
73 |
.TP |
74 |
|
75 |
-- |
76 |
gentoo-commits@l.g.o mailing list |