[Development] Qt 5 types under consideration for deprecation / removal in Qt 6

Mutz, Marc marc at kdab.com
Wed May 29 14:44:31 CEST 2019

On 2019-05-29 13:52, Konstantin Tokarev wrote:
> 29.05.2019, 13:56, "Mutz, Marc via Development" 
> <development at qt-project.org>:
>> Hi,
>> Here's a list of stuff I consider has served it's purpose and is no
>> longer needed, with respective replacements:
>> = Priority 1 =
>> == QSharedDataPointer / QExplicitlySharedDataPointer ==
> It seems like you've forgotten migration path here.
> Or are all those who use intrusive reference counting in their classes
> on their own since now?

Do you actually think it's Qt's job to define how _you_ implement your 
classes? In my projects, I've _always_ written my own pimpl_ptr, because 
I might want to use it in backend components that don't use Qt.

I'd suggest boost::intrusive_ptr. It has a whole ecossytem with 
intrusive containers attached to it, IIRC.

And to be clear: I'm not advocating removing any of these from Qt 6. 
Personally, I'd deprecate them in Qt 5.14, port Qt itself away from all 
of these, inline everything in 6.0, or else move it to libQt5Support, so 
that a QT_DISABLE_DEPERECATED_SINCE=5.last build of Qt is as compatible 
as humanly possibly for a user not setting that flag, and then remove 
that stuff come Qt 7, if ever.

But AFAIU, that's not the plan right now.


More information about the Development mailing list