From: Holger Freyther Date: Fri, 16 Mar 2007 20:16:31 +0000 (+0000) Subject: classes/seppuku.bbclass: Make parsing of OpenEmbedded's bugtracker work X-Git-Tag: Release-2010-05/1~8868^2~1086^2~6^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bff6ed820186d8af5cbe59930f61013d489ad732;p=openembedded.git 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. --- 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