Qt5 was released in 2012. All of my LCL/Lazarus projects from that time open in modern straight-out-of-git Lazarus just fine. I'm pretty sure 99.9% of my LCL/Lazarus projects from 2005 (when Qt4 was released) also work out of the box, with the exception of those that tried to use strings as byte buffers (fixing this is a quick search and replace) since the datatype changed (this was a compiler/language change though, not a framework one). Retaining backwards compatibility is very important for LCL/Lazarus.
That said Qt has been better than other frameworks when it comes to backwards compatibility, after all you can use the Qt5 docs for Qt6 code and vice versa and things work 95% of the time. Actually i was working on some Krita plugin recently and i only had the Qt6 docs around but i never encountered any issue with what i was using.
AFAICT Krita's issue is mainly on the lower end of things and how they integrate with their custom OpenGL code.
Qt5 was released in 2012. All of my LCL/Lazarus projects from that time open in modern straight-out-of-git Lazarus just fine. I'm pretty sure 99.9% of my LCL/Lazarus projects from 2005 (when Qt4 was released) also work out of the box, with the exception of those that tried to use strings as byte buffers (fixing this is a quick search and replace) since the datatype changed (this was a compiler/language change though, not a framework one). Retaining backwards compatibility is very important for LCL/Lazarus.
That said Qt has been better than other frameworks when it comes to backwards compatibility, after all you can use the Qt5 docs for Qt6 code and vice versa and things work 95% of the time. Actually i was working on some Krita plugin recently and i only had the Qt6 docs around but i never encountered any issue with what i was using.
AFAICT Krita's issue is mainly on the lower end of things and how they integrate with their custom OpenGL code.