From patchwork Mon Feb 25 15:13:45 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [bitbake-devel] trouble during parsing Date: Mon, 25 Feb 2013 15:13:45 -0000 From: Jason Wessel X-Patchwork-Id: 45039 Message-Id: <512B7FA9.6030508@windriver.com> To: Chris Larson Cc: "bitbake-devel@lists.openembedded.org" On 02/24/2013 08:28 PM, Flanagan, Elizabeth wrote: > On Sun, Feb 24, 2013 at 6:12 PM, Flanagan, Elizabeth > wrote: >> On Wed, Feb 20, 2013 at 6:31 AM, Chris Larson wrote: >>> >>> On Wed, Feb 20, 2013 at 5:54 AM, Andreas Müller >>> wrote: >>>> >>>> with current bitbake master I get >>>> >>>> ERROR: Command execution failed: Traceback (most recent call >>>> last):######################################################### >>>> | ETA: 00:00:17 >>>> File "/home/andreas/oe-core/sources/bitbake/lib/bb/command.py", line >>>> 92, in runAsyncCommand >>>> self.cooker.updateCache() >>>> File "/home/andreas/oe-core/sources/bitbake/lib/bb/cooker.py", line >>>> 1330, in updateCache >>>> if not self.parser.parse_next(): >>>> File "/home/andreas/oe-core/sources/bitbake/lib/bb/cooker.py", line >>>> 1703, in parse_next >>>> self.virtuals += len(result) >>>> TypeError: object of type 'ExpansionError' has no len() >>> >>> >>> Hmm, looks like it's returning the exceptions rather than raising them, for >>> some reason, but that doesn't make much sense — the pool code always raises >>> any exceptions from its imap iterator's next() method. >> > > Ach, should have updated my email. Seems reverting > 0a99563a4ea270594fd9a61da46f9387fb79dc66 cleared up the issue. The real question is what are the expansion errors about here. This is probably not the right way to fix it, but it at least allows you to see what is behind the expansion error: diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py index 448f899..b166425 100644 --- a/lib/bb/cooker.py +++ b/lib/bb/cooker.py @@ -1661,6 +1661,8 @@ class CookerParser(object): parsed = None try: parsed, result = self.results.next() + if isinstance(result, BaseException): + raise result except StopIteration: self.shutdown() return False