aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2007-03-16 20:16:31 +0000
committerHolger Freyther <zecke@selfish.org>2007-03-16 20:16:31 +0000
commitbff6ed820186d8af5cbe59930f61013d489ad732 (patch)
tree91e237c78e92a1b9a69fbf44401a72b5724493d7
parent549cfb6466be2eda0aae8d21162ffc9fb0f79b2f (diff)
downloadopenembedded-bff6ed820186d8af5cbe59930f61013d489ad732.tar.gz
classes/seppuku.bbclass: Make parsing of OpenEmbedded's bugtracker work
OE's bugtracker has different classes for the buglist. I try hard to parse them all. All severities should be handled.
-rw-r--r--classes/seppuku.bbclass12
1 files changed, 10 insertions, 2 deletions
diff --git a/classes/seppuku.bbclass b/classes/seppuku.bbclass
index 8d5e234c49..7962cfbeb9 100644
--- a/classes/seppuku.bbclass
+++ b/classes/seppuku.bbclass
@@ -65,10 +65,13 @@ def seppuku_find_bug_report_old():
HTMLParser.__init__(self)
self.state = self.STATE_NONE
self.bugs = []
+ self.bug = None
def handle_starttag(self, tag, attr):
if self.state == self.STATE_NONE and tag.lower() == "tr":
- if len(attr) == 1 and attr[0] == ('class', 'bz_normal bz_P2 '):
+ if len(attr) == 1 and attr[0][0] == 'class' and \
+ ('bz_normal' in attr[0][1] or 'bz_blocker' in attr[0][1] or 'bz_enhancement' in attr[0][1] or 'bz_major' in attr[0][1] or 'bz_minor' in attr[0][1] or 'bz_trivial' in attr[0][1] or 'bz_critical' in attr[0][1] or 'bz_wishlist' in attr[0][1]) \
+ and 'bz_P' in attr[0][1]:
self.state = self.STATE_FOUND_TR
elif self.state == self.STATE_FOUND_TR and tag.lower() == "td":
self.state += 1
@@ -78,6 +81,7 @@ def seppuku_find_bug_report_old():
if self.state != self.STATE_NONE:
self.bugs.append( (self.bug,self.status) )
self.state = self.STATE_NONE
+ self.bug = None
if self.state > 1 and tag.lower() == "td":
self.state += 1
@@ -89,7 +93,11 @@ def seppuku_find_bug_report_old():
return
if self.state == self.STATE_FOUND_NUMBER:
- self.bug = data
+ """
+ #1995 in bugs.oe.org has [SEC] additionally to the number and we want to ignore it
+ """
+ if not self.bug:
+ self.bug = data
elif self.state == self.STATE_FOUND_STATUS:
self.status = data