[Lazarus] GTK 3.0

Joost van der Sluis joost at cnoc.nl
Sat Jul 16 11:20:30 CEST 2016


Op 12-07-16 om 09:18 schreef zeljko:
> On 07/12/2016 04:11 AM, Kostas Michalopoulos wrote:
>> Sadly the GTK+ devs do not seem to care much about backwards
>> compatibility and love to break stuff every other version.
>>
>> Check this blog post which summarizes the issues
>> https://davmac.wordpress.com/2016/07/05/why-do-we-keep-building-rotten-foundations/
>>
>>
>> IMO GTK+ 2 is the last good GTK+ version and hopefully someone (maybe
>> the MATE devs) will fork it and add support for the needed stuff. GTK+
>> 3.0+ is not reliable.
>
> I knew about it (not about exact blog, but about abi/api mess) and
> that's main reason why I do not have enough faith to work on gtk3
> bindings. Even gtk2 had ridiculous code in some cases (besides this
> ABI/API gtk3 changes). Just one simple example of gtk philosophy - look
> at GtkEntry class and ability to add icon into GtkEntry
> (gtk_entry_set_icon_xxxx since 2.16). eg. in Qt/WinAPI you can add any
> handle inside text editor (eg. QPushButton under Qt), but under gtk
> you're stucked to gdkpixbuf.
> I really don't know what kind of drugs gtk devels are using.

I think they are recovering from their drug-addiction right now.

Seems that some gtk-developers where on a hackathon where they discussed 
the instability-issues. And the fact that they don't like the situation 
that most gtk-applications still use gtk-2. (Gimp, Inkscape, Geany, etc, 
etc) So they came with a proposal and posted it online...

But - maybe - they had a little bit too much beer when they wrote it, 
with the result that no-one understood what they really meant. The blog 
above being one of the reactions.

But it is still a proposal, in the mean time discussed and improved a lot.

As it looks now, they will define 3.26 stable. Not 'just-a-little-bit' 
stable, but really stable. To be able to move forward, they will release 
4.0. This version won't be stable until it reaches (by approximation) 
version 4.6. Then this will be the stable version (alongside 3.26) and 
they will start working on version 5.0...

This way you can choose as a developer to use the stable versions (3.26 
-> 4.6 -> 5.X) or you can use the unstable versions, which could break 
compatibility every half year.

So for Lazarus it seems like we can finally do some serious work on the 
gtk3-port targeting 3.26 which will be stable for at least a few years.


More info, see among others: 
https://wiki.gnome.org/Projects/GTK%2B/Lifecycle

Regards,

Joost.


More information about the Lazarus mailing list