1 |
Author: genone |
2 |
Date: 2008-09-28 19:15:43 +0000 (Sun, 28 Sep 2008) |
3 |
New Revision: 11593 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/portage/glsa.py |
7 |
Log: |
8 |
add support for slot dependencies (original patch by Robert Buchholz <rbu@g.o>) |
9 |
|
10 |
Modified: main/trunk/pym/portage/glsa.py |
11 |
=================================================================== |
12 |
--- main/trunk/pym/portage/glsa.py 2008-09-28 18:59:47 UTC (rev 11592) |
13 |
+++ main/trunk/pym/portage/glsa.py 2008-09-28 19:15:43 UTC (rev 11593) |
14 |
@@ -226,6 +226,8 @@ |
15 |
rValue = opMapping[versionNode.getAttribute("range")] \ |
16 |
+ pkgname \ |
17 |
+ "-" + getText(versionNode, format="strip") |
18 |
+ if "slot" in versionNode.attributes and versionNode.getAttribute("slot") != "*": |
19 |
+ rValue += ":"+versionNode.getAttribute("slot") |
20 |
return str(rValue) |
21 |
|
22 |
def makeVersion(versionNode): |
23 |
@@ -239,8 +241,11 @@ |
24 |
@rtype: String |
25 |
@return: the version string |
26 |
""" |
27 |
- return opMapping[versionNode.getAttribute("range")] \ |
28 |
+ rValue = opMapping[versionNode.getAttribute("range")] \ |
29 |
+ getText(versionNode, format="strip") |
30 |
+ if "slot" in versionNode.attributes and versionNode.getAttribute("slot") != "*": |
31 |
+ rValue += ":"+versionNode.getAttribute("slot") |
32 |
+ return rValue |
33 |
|
34 |
def match(atom, dbapi, match_type="default"): |
35 |
""" |
36 |
@@ -283,9 +288,9 @@ |
37 |
@return: a list with the matching versions |
38 |
""" |
39 |
if match_type == "default" or not hasattr(dbapi, "xmatch"): |
40 |
- mylist = dbapi.match(re.sub("-r[0-9]+$", "", revisionAtom[2:])) |
41 |
+ mylist = dbapi.match(re.sub(r'-r[0-9]+(:[^ ]+)?$', r'\1', revisionAtom[2:])) |
42 |
else: |
43 |
- mylist = dbapi.xmatch(match_type, re.sub("-r[0-9]+$", "", revisionAtom[2:])) |
44 |
+ mylist = dbapi.xmatch(match_type, re.sub(r'-r[0-9]+(:[^ ]+)?$', r'\1', revisionAtom[2:])) |
45 |
rValue = [] |
46 |
for v in mylist: |
47 |
r1 = pkgsplit(v)[-1][1:] |