Created attachment 837 [details] Screen shot of Unable to parse %s To reproduce: 1. Use Hob to load the meta-dlna layer.] 2. Select a machine like qemux86. 3. resulting error message is "Error Unable to parse %s" See screenshot attached. I realize that the README for this layer says it should be used with Denzil and I'm running on the v1.3 beta. But it doesn't matter... the error message should be better.
So the good news is I've already fixed the broken expansion of the error message resulting in "Unable to parse %s" and the fix is already in master; however, it's still not perfect - it only tells you which file failed to parse; what caused the parse failure is not reported - when running bitbake from the command line these are printed as NOTEs but these are explicitly not shown within hob: NOTE: Error expanding variable populate_packages NOTE: Error during finalise of /home/paul/poky/meta-dlna/meta-guacamayo/recipes-devtools/orc/orc_0.4.14.bb ERROR: Unable to parse /home/paul/poky/meta-dlna/meta-guacamayo/recipes-devtools/orc/orc_0.4.14.bb FYI this is caused by the tabs->spaces change between denzil and 1.3; when it says it's only compatible with denzil it really means it ;)
Thanks... Since we have recently tightened up the syntactic requirements for metadata, could we please check for that and report it out explicitly?
I've sent out a patch to improve the message so that it at least prints as much information as we have as far as the exception goes: ERROR: ExpansionError during parsing /path/to/recipename.bb: Failure expanding variable populate_packages: IndentationError: unindent does not match any outer indentation level (<string>, line 4) Obviously this is still not very informative for a random user using a random layer that happens not to be compatible with the current version of the build system. I've also sent a patch to add a layer version to OE-Core which will at least allow external layers to depend on the new version; we don't have a mechanism to help with the situation at hand for this bug report though (where older layers that have not been updated are used in conjunction with current OE-Core). We do report the use of tabs in python functions as a warning. I looked into displaying warnings in hob, which we probably ought to do anyway; however I think this is too much to squeeze into 1.3 as it has design implications - we don't really want to bring up a dialog box every time just for warnings and we have no other way of displaying such information to the user during parse time.
The aforementioned fixes have been merged for 1.3: http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=537dd88c1a86b6a1dd74c29aaa2ecab8213fb1b9 http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=65d2b3af3758c4b74d66abcfa1fb380c0ca17ea1 http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=81602499c911f5523ee304349b23608e1f8ffff6 I've filed bug #3215 to show warnings during parse within Hob for 1.4.
Verified using http://autobuilder.yoctoproject.org/pub/nightly/20121018-2/poky-contrib-a55617b716461fa9ae87919518b53ebbf6ac3760.tar.bz2.