On Friday, September 12, 2014, Àlex Fiestas <<a href="mailto:afiestas@kde.org">afiestas@kde.org</a>> wrote:<br>><br>> Looking further in the problem I have been able to check that one of my<br>> containments is never ready. I tried to debug this myself but Containment<br>> seems a really complex piece of code, after 2h I have to give up :/<br><br>Thanks for looking in the problem, I noticed the same thing during akademy and had the same diagnosis, but didn't have time to look deeply into it.<br>I'll look into it/add test later today.<br><br>> Could somebody with knowledge please look why Containments are never ready?<br>> Also this code could  use some refactoring... It is really really really<br>> complex.<br><br>Not really, at least not more than it needs to be: is pretty simple: it keeps track of the applets that had the startupcompleted constraint called on them and on itself, emits the signal when everybody is.<br>Signaling that the qml is ready and keeping track centrally that all containments everywhere, and all their applets have indeed their qml ready as well, has to pass trough quite long hoops, not much to be done around that.<br><br>What it should be done instead, is adding tests: right now there is one that should catch it, coronatest. Apparently doesn't but maybe the code coverage thing will help.<br><br>When this hard to pinpoint bugs happen, before fiddling with the code to make them go away, we should try to introduce a new test that reproduces the problem exactly, at least should be possible on the library code, while not always easy on the more ui parts.<br><br>--<br>Marco Martin