All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] Config re-parse improvements
@ 2016-09-15 11:20 Markus Lehtonen
  2016-09-15 11:20 ` [PATCH 1/2] cookerdata: fire ConfigParsed event after re-parse Markus Lehtonen
  2016-09-15 11:20 ` [PATCH 2/2] cookerdata: allow multiple passes of config re-parsing Markus Lehtonen
  0 siblings, 2 replies; 3+ messages in thread
From: Markus Lehtonen @ 2016-09-15 11:20 UTC (permalink / raw)
  To: bitbake-devel

These two patches improve config (re-)parsing by allowing multiple passes of
re-parse.


The following changes since commit 57912de63fa83550c0ae658eb99b76e9cc91a8d1:

  cooker: record events on cooker exit (2016-09-06 10:36:34 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib marquiz/bitbake/fixes-10188
  http://git.openembedded.org/openembedded-core-contrib/log/?h=marquiz/bitbake/fixes-10188

Markus Lehtonen (2):
  cookerdata: fire ConfigParsed event after re-parse
  cookerdata: allow multiple passes of config re-parsing

 lib/bb/cookerdata.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

-- 
2.6.6



^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/2] cookerdata: fire ConfigParsed event after re-parse
  2016-09-15 11:20 [PATCH 0/2] Config re-parse improvements Markus Lehtonen
@ 2016-09-15 11:20 ` Markus Lehtonen
  2016-09-15 11:20 ` [PATCH 2/2] cookerdata: allow multiple passes of config re-parsing Markus Lehtonen
  1 sibling, 0 replies; 3+ messages in thread
From: Markus Lehtonen @ 2016-09-15 11:20 UTC (permalink / raw)
  To: bitbake-devel

[YOCTO #10188]

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
---
 lib/bb/cookerdata.py | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index bf9bfbf..07425ce 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -273,6 +273,7 @@ class CookerDataBuilder(object):
             if self.data.getVar("BB_INVALIDCONF", False) is True:
                 self.data.setVar("BB_INVALIDCONF", False)
                 self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
+                bb.event.fire(bb.event.ConfigParsed(), self.data)
 
             bb.parse.init_parser(self.data)
             self.data_hash = self.data.get_hash()
-- 
2.6.6



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] cookerdata: allow multiple passes of config re-parsing
  2016-09-15 11:20 [PATCH 0/2] Config re-parse improvements Markus Lehtonen
  2016-09-15 11:20 ` [PATCH 1/2] cookerdata: fire ConfigParsed event after re-parse Markus Lehtonen
@ 2016-09-15 11:20 ` Markus Lehtonen
  1 sibling, 0 replies; 3+ messages in thread
From: Markus Lehtonen @ 2016-09-15 11:20 UTC (permalink / raw)
  To: bitbake-devel

[YOCTO #10188]

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
---
 lib/bb/cookerdata.py | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index 07425ce..9e88f95 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -270,9 +270,16 @@ class CookerDataBuilder(object):
 
             bb.event.fire(bb.event.ConfigParsed(), self.data)
 
-            if self.data.getVar("BB_INVALIDCONF", False) is True:
+            reparse_cnt = 0
+            while self.data.getVar("BB_INVALIDCONF", False) is True:
+                if reparse_cnt > 20:
+                    logger.error("Configuration has been re-parsed over 20 times, "
+                                 "breaking out of the loop...")
+                    raise Exception("Too deep config re-parse loop. Check locations where "
+                                    "BB_INVALIDCONF is being set (ConfigParsed event handlers)")
                 self.data.setVar("BB_INVALIDCONF", False)
                 self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
+                reparse_cnt += 1
                 bb.event.fire(bb.event.ConfigParsed(), self.data)
 
             bb.parse.init_parser(self.data)
-- 
2.6.6



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-09-15 11:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-15 11:20 [PATCH 0/2] Config re-parse improvements Markus Lehtonen
2016-09-15 11:20 ` [PATCH 1/2] cookerdata: fire ConfigParsed event after re-parse Markus Lehtonen
2016-09-15 11:20 ` [PATCH 2/2] cookerdata: allow multiple passes of config re-parsing Markus Lehtonen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.