On 2 Nov 2018, at 09:04, Philippe 
<philw...@gmail.com<mailto:philw...@gmail.com>> wrote:

I did some benchmarking (as we were worried about the different performance 
characteristics of QList and QVector) and with the exception of prepending in a 
loop pretty much all other operations gets faster with this change.

Another exception is certainly the sorting of large objects that are not 
implicit-shared classes.

True. But for 99% of the cases where QList is being used today performance 
would probably increase when using a vector instead. That’s especially true 
when you have objects that are larger than a pointer.

Ok anyway. But keeping the old QList under a new name, cannot harm.

Sure, we can have a Q5List around in Qt 6 times, or people could simply copy 
the code if they need it.

Much of Qt was built with QList, so QList can't be that bad ;)

That conclusion doesn’t have to be true. But yes, QList was ok, because most of 
what we put into it were implicitly shared classes. But a QList<QRect> is 
actually a very bad idea (just to give one example).

Cheers,
Lars


Philippe

On Fri, 2 Nov 2018 07:51:22 +0000
Lars Knoll <lars.kn...@qt.io<mailto:lars.kn...@qt.io>> wrote:

Renaming the subthread (it’s got nothing to do with build systems…)

I believe I have a solution to get rid of QList without breaking SC in any 
major way. See https://codereview.qt-project.org/#/c/242199/ and the following 
changes.

I did some benchmarking (as we were worried about the different performance 
characteristics of QList and QVector) and with the exception of prepending in a 
loop pretty much all other operations gets faster with this change.

So to re-iterate: We will not break SC in major ways. The goal is to make 
porting from Qt 5.x to 6 as easy as possible.

Cheers,
Lars

On 30 Oct 2018, at 20:21, NIkolai Marchenko 
<enmarantis...@gmail.com<mailto:enmarantis...@gmail.com>> wrote:

>  No, we will break source compatibility in a minor way.

I am not aware of what was the end result of QList discussion, but didn't you 
want to deprecate/majorly change that at some point?
That alone would be rather huge.

On Tue, Oct 30, 2018 at 10:19 PM Thiago Macieira 
<thiago.macie...@intel.com<mailto:thiago.macie...@intel.com>> wrote:
On Tuesday, 30 October 2018 12:11:38 PDT NIkolai Marchenko wrote:
>  >  That's not going to happen any more than our breaking source
>
> compatibility in
> a major way.
>
> You are breaking source compatibility in a major way with Qt6 ... ;)

No, we will break source compatibility in a minor way.

--
Thiago Macieira - thiago.macieira (AT) intel.com<http://intel.com/>
  Software Architect - Intel Open Source Technology Center



_______________________________________________
Development mailing list
Development@qt-project.org<mailto:Development@qt-project.org>
http://lists.qt-project.org/mailman/listinfo/development
_______________________________________________
Development mailing list
Development@qt-project.org<mailto:Development@qt-project.org>
http://lists.qt-project.org/mailman/listinfo/development


_______________________________________________
Development mailing list
Development@qt-project.org<mailto:Development@qt-project.org>
http://lists.qt-project.org/mailman/listinfo/development

_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to