[Development] Qt 5 types under consideration for deprecation / removal in Qt 6
Mutz, Marc
marc at kdab.com
Wed May 29 23:34:02 CEST 2019
On 2019-05-29 20:21, Vitaly Fanaskov wrote:
> After all, STL updates approximately once in three years. So, we can
> easily follow all changes and update Qt API accordingly. It’s
> probably worth reusing something (e.g. time suffixes from chrono), but
> carefully.
Well, yes. If Qt _had_ a track-record of following up on STL API
changes, fine. I'd actually welcome a QHash that had a node_handle
interface I could use already without having to wait for C++17.
But as it stands, Qt has a track-record of a) _partially_ reimplementing
std functionality, b) adding _one_ killer feature (QVector: realloc,
QMutex: futex, ...) and then c) _not_ continue maintenance. The result
just sits there, bitrots, while the std classes get more and more
features. The Qt containers don't even, as of now, have all the C++98
API (range ctor, map doesn't even have range-erase(!)). And you can't
hold move-only types in them. Surely, you're as addicted to unique_ptr
as everyone else (if not, you haven't used it, yet). But to hold a
collection of them, you must turn to the STL.
So, yes, this is borne out of frustration with the lack of maintenance
of QtCore plumbing. I don't see that changing, and I acknowledge and
understand that the focus of development has shifted towards QML.
And this is precisely why Qt should be rebased on later C++ standards:
To increase interop with the ever-growing std library and "proper" C++
libraries using it, and to avoid having to maintain a copy of libstdc++
going forward. Because I have provided, from 2012-2017, about 1/4 of
that maintenance work, and I can attest with confidence that this is a
job for at least an FTE, probably more. And I don't see where this
manpower should come from.
Thanks,
Marc
More information about the Development
mailing list