3 ms·
> To me, it seems every other day QT and GTK makes a point of ignoring backwards compatibility with their releases, making Application Development hard. can't
by jcelerier 4y ago
> To me, it seems every other day QT and GTK makes a point of ignoring backwards compatibility with their releases, making Application Development hard.
can't talk about GTK but Qt broke C++ API compatibility once between 2012 and 2023 for Qt 5 -> Qt 6 (and really porting from 4 to 5 and 5 to 6 is not particularly complicated), I wouldn't say that it's fair to call this "makes a point of ignoring backwards compatibility with their releases"
- vetinari 4y agoThere are still some people salty, that Gtk3 was breaking themes (not API or ABI, but themes). It was communicated explicitly that themes are going to break, the theme engine implementation was not fully ready when Gtk3 was originally released and that themes are not considered part of the public API. Yet, some people didn't take that warning seriously, and eventually found out the hard way that it was meant seriously.
- TingPing 4y agoGTK broke C api in 2011 and 2020. Not bad IMO.
- llothar 3y ago10 years is the timespan for one technology transformation (yes, using Javascript Framework of the Day is not new technology). So it's not bad but also far from good or anything special to realize.
- Karellen 4y agoIs it really "breaking" the API when moving from v5 to v6 (or v2 to v3, or v3 to v4), when the old and new versions are co-installable, especially if they're all still at least receiving security support? GTK2 will continue to be included with Debian 12 ("Bookworm") when it's released later this year (knock on wood). Any apps written for GTK2 20 years ago will still work against it as the GTK2 API (and ABI) has remained backwards compatible all that time. (OK, GTK2 is EOL and not receiving any more updates since Dec 2020. So that's not great. But it does still work, and so will the apps that use it.)
- aninteger 4y agoA lot of distributions are trying to remove GTK2 though so it's only a matter of time until that breaks. Slackware will probably still have it though (and they still ship GTK1 which is fantastic!)
- badsectoracula 4y agoRecently i fixed the Gtk1 backed for Lazarus[0] which uses Gdk_pixbuf for pretty much all bitmap operations as it provides more advanced functionality than plain Gdk. Sadly while Slackware had Gtk1, it didn't have Gdk_pixbuf. I did hunt down some old version of Gdk_pixbuf and made it to build (at least on my system)[1] so it isn't that big of a deal. I attempted removing the dependency at some point (when i wrote the text at the second site i hadn't explored that part of the code much so i was under the impression that it made little use) and while possible, it needs a lot of functionality to be reimplemented in terms of fpimage (graphics functionality that i guess didn't exist when Gdk_pixbuf was originally used). I did stub out all the Gdb_pixbuf code though and while glitchy, it does work[2]. I might poke on it now and then but i'm not part of the Lazarus dev team and whenever i fix any bug on Linux it is for the Gtk2 backend since that is what i'm using (i have no plans nor interest for the later versions of Gtk). [0] https://www.lazarus-ide.org/ https://www.lazarus-ide.org/ [1] http://runtimeterror.com/pages/badsector/gtk12/ http://runtimeterror.com/pages/badsector/gtk12/ [2] https://i.imgur.com/su9JCUY.png https://i.imgur.com/su9JCUY.png
- llothar 3y agoNot a big deal when knowing that there was just one major version upgrade during this time. And Qt also did not improve any of their tradional GUI parts during Qt5 development, but just added stuff for their embedded customers.