On 26/04/2024 12:11, Florian Bruhin wrote: > Hey, > >> They take advantage of the binary compatibility "promises" of Qt so >> that you can use, for example, PyQt6 v6.x with Qt6 v6.x+1. However >> those "promises" cannot be relied on these days > > FWIW, while accidental ABI breaks definitely have happened in Qt > before, > I don't think the blame is on Qt for this one. > > QFont::tagToString() was marked preliminary in Qt 6.6: > https://doc.qt.io/archives/qt-6.6/qfont.html#tagToString > > While I'm struggling to find this written down anywhere, it seems > reasonable to assume ABI breaks can happen in API marked as > preliminary. > > I wonder if it'd make sense for PyQt to avoid exposing such API (or at > least hide it between some build flag which is disabled by default) > until Qt declares it stable. > > Florian I agree that was a bug - and had I imposed an upper limit to the version of the Qt6 dependency it wouldn't have mattered. There are similar new experimental methods in existing classes in Qt v6.7 which I have not implemented. Phil