[Development] QButtonGroup: When the "right thing to do" is absolutely the wrong thing to do
Olivier Goffart
olivier at woboq.com
Mon Oct 15 09:46:14 CEST 2018
On 10/13/18 9:03 AM, Boudewijn Rempt wrote:
> On vrijdag 12 oktober 2018 14:31:33 CEST Konstantin Ritt wrote:
>> It didn't.
>
> Then what else made it necessary to suddenly add lots of #include
> <QButtonGroup> lines?
Maybe that was commit 000c76ada5cc21479fc479be16a7507fed6490f8 ?
The commit you mentioned does not touch any public headers and was already in
Qt 5.6. So unless you include private headers, in which case you are on your
own, there was no way it causes a source incompatible change. No wonder why the
replies you got were skeptical.
You could have stated directly what source incompatibilities you have seen.
Coming back to the actual problem of missing includes, this is indeed not the
first time that Qt broke source compatibility in that regards. (last time i
remember, it was requiring to include QDataStream, in Qt 5.5)
According to QUIP-6, 'Removing an include from a public header file' is an
acceptable source incompatible change. The rationale is that you should not
rely on indirect includes.
IMHO, this is a bit unfortunate, as this causes indeed source incompatible
change that makes it harder to upgrade Qt.
--
Olivier
Woboq - Qt services and support - https://woboq.com - https://code.woboq.org
More information about the Development
mailing list