[Development] Future of java-style iterators?

Marc Mutz marc.mutz at qt.io
Mon Dec 4 09:19:00 CET 2023


On 04.12.23 09:06, Jyrki Yli-Nokari wrote:
>
> While I do not use them, I feel that deprecating such core functionality of a framework without measurable gain would seriously harm anyone using them and, most importantly, fundamentally harm the promise and dependability of Qt as a framework of choice.

Only if you insist on compiling with deprecation warnings enabled.
No-one forces you to do that.

We need a way to inform (or even prevent) new users from using such APIs
while still allowing existing users to continue to use them. That's what
deprecations are for. If you know of a better mechanism, I'm all ears.

Until then, either you want to be notified of sub-optimal APIs asap,
then you enable deprecation warnings with the intent to fix them, or you
don't, then you don't, and fix once every decade when a new Qt major
release comes out.

Thanks,
Marc


>> Giuseppe D'Angelo via Development <development at qt-project.org> kirjoitti 3.12.2023 kello 23.35:
>>
>> Hello,
>>
>>> On 03/12/2023 21:56, Christian Ehrlicher wrote:
>>> Some days ago we got an error report in the forum about QHashIterator,
>>> turned out to be a missing documentation for a complete class which
>>> remained unnoticed since Qt 6.0
>>> (https://bugreports.qt.io/browse/QTBUG-119461).
>>> This leads to the question if we should deprecate all java-style
>>> iterators since they seem to be a) not widely used and b) it looks like
>>> we don't support them in a way we should.
>>> What do you think?
>>
>> While any "serious" code should build under QT_NO_JAVA_STYLE_ITERATORS¹, how much maintenance do they cost us? There's been virtually 0 changes on them since Qt 6.0.
>>
>> ¹ We should of course open the chapter of having something that defines all these QOL macros. No one should be using the Java iterators. Here's a draft:
>> https://codereview.qt-project.org/c/qt/qtbase/+/522833
>>
>> My 2 c,
>> --
>> Giuseppe D'Angelo | giuseppe.dangelo at kdab.com | Senior Software Engineer
>> KDAB (France) S.A.S., a KDAB Group company
>> Tel. France +33 (0)4 90 84 08 53, http://www.kdab.com/
>> KDAB - The Qt, C++ and OpenGL Experts
>>
>> --
>> Development mailing list
>> Development at qt-project.org
>> https://lists.qt-project.org/listinfo/development
--
Marc Mutz <marc.mutz at qt.io>
Principal Software Engineer

The Qt Company
Erich-Thilo-Str. 10 12489
Berlin, Germany
http://www.qt.io/

Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen
Sitz der Gesellschaft: Berlin,
Registergericht: Amtsgericht Charlottenburg,
HRB 144331 B



More information about the Development mailing list