Good news regarding Qt 5.5

Simon Hausmann simon.hausmann at theqtcompany.com
Fri May 8 10:49:45 UTC 2015


On Friday, May 08, 2015 12:51:19 AM Aleix Pol wrote:
> Hi guys,
> As you might know, I tried to get Plasma some time ago working on Qt
> 5.5 and failed miserably. [1]
> 
> As you'll have guessed by the subject, that's not the case anymore,
> since the last patch by Simon [2]. This means Qt 5.5 is a firm
> candidate for Plasma 5.4.
> 
> Also let me use this occasion to thank Simon, who took his time to
> make us a bit happier. *applause*
> 
> Cheers! \o/

Heh, thanks. Well, more like: Apologies we introduced these bugs in the first 
place ;-). So that's the good news. The bad news is that those fixes didn't 
make it into the 5.5 beta, but they will be in the 5.5.0 final release for 
sure.

During the investigation  - we also talked about this on IRC - I noticed that 
plasma creates a lot of QQmlEngine instances - it seems one per applet. In the 
light of each instance coming with its own garbage collection heap and its own 
QML type loader thread, this seems rather heavy. I think that if you can 
change Plasma to share one QQmlEngine for everything and isolate your objects
in different QQmlContext instances instead, then you should be able to save _a 
lot_ of memory and also get much better performance. I'm mentioning 
performance because this very bug was due to the same QObject(s) being exposed 
to multiple QQmlEngine instances, which requires a fair amount of extra book-
keeping in the engines, required to look up every time for example a property 
on the context object (your root item) is accessed. There's a lot more that 
could be done, but this would be pretty good start I think :)


Simon


More information about the Plasma-devel mailing list