[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gtk-devel
Subject:    Re: First deprecate APIs and then remove them in the next major version
From:       Matthias Clasen <matthias.clasen () gmail ! com>
Date:       2017-12-16 19:17:11
Message-ID: CAFwd_vDV_hdj2iKtgi-0zJT2VTeJ4iiVV-9FX9kPuH50NgXUgA () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


On Sat, Dec 16, 2017 at 9:12 AM, Christian Schoenebeck <
schoenebeck@linuxsampler.org> wrote:

>
> > With cooperation and compatibility layers in GTK, GTK would move forward
> > less quickly, but it would maybe yield a better outcome globally when
> > taking into account higher-level libraries and applications.
>
> This is always the common argument "retaining old APIs means more work".
> But
> if you look at what APIs had been removed in gtk (and glib and co) in the
> past, most of them could have been preserved with no or little effort on
> library level.
>
> I mean to me it looks like nobody even considered in the past to keep old
> APIs
> at all. Currently it is just a common rule "ok, we are now on the next
> major
> version branch, we are now safe to do whatever we want to do, so let's
> start
> removing everything we don't like anymore".
>

Maybe give a concrete example of an api that we could have 'preserved with
no effort"
and yet removed out of folly ? I would be interested.


> Addressing major library changes on application level often means *much*
> more
> effort, because as application you don't necessarily have access to library
> internal things nor can you make certain presumptions. Plus not only one
> gtk
> app project has to do that gtk version compatibility work, all gtk app
> projects need to do them.  If you calculate how many man hours are wasted
> on
> all these applications, just for retaining compatiblity with the latest
> major
> gtk version, then you probably might see that the trash can decisions are
> currently made far too easily on library level.
>

To me this reads like a misunderstanding.

Moving an application from GTK3 to GTK4 means porting work. But you do it
only once,
and you don't retain GTK3 compatibility. At least, that is not what the
GTK+ team
recommends you should do.

If you want to stick with GTK3, you are more than welcome to do so for
years to come.

[Attachment #5 (text/html)]

<div dir="ltr">On Sat, Dec 16, 2017 at 9:12 AM, Christian Schoenebeck <span \
dir="ltr">&lt;<a href="mailto:schoenebeck@linuxsampler.org" \
target="_blank">schoenebeck@linuxsampler.org</a>&gt;</span> wrote:<br><div \
class="gmail_extra"><div class="gmail_quote"><span class="gmail-"></span><br><span \
class="gmail-"></span><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-"> \
&gt;<br> &gt; With cooperation and compatibility layers in GTK, GTK would move \
forward<br> &gt; less quickly, but it would maybe yield a better outcome globally \
when<br> &gt; taking into account higher-level libraries and applications.<br>
<br>
</span>This is always the common argument &quot;retaining old APIs means more \
work&quot;. But<br> if you look at what APIs had been removed in gtk (and glib and \
co) in the<br> past, most of them could have been preserved with no or little effort \
on<br> library level.<br>
<br>
I mean to me it looks like nobody even considered in the past to keep old APIs<br>
at all. Currently it is just a common rule &quot;ok, we are now on the next major<br>
version branch, we are now safe to do whatever we want to do, so let&#39;s start<br>
removing everything we don&#39;t like \
anymore&quot;.<br></blockquote><div><br></div><div>Maybe give a concrete example of \
an api that we could have &#39;preserved with no effort&quot;</div><div>and yet \
removed out of folly ? I would be interested.<br></div><div>   <br></div><blockquote \
class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> Addressing major library changes on application \
level often means *much* more<br> effort, because as application you don&#39;t \
necessarily have access to library<br> internal things nor can you make certain \
presumptions. Plus not only one gtk<br> app project has to do that gtk version \
compatibility work, all gtk app<br> projects need to do them.   If you calculate how \
many man hours are wasted on<br> all these applications, just for retaining \
compatiblity with the latest major<br> gtk version, then you probably might see that \
the trash can decisions are<br> currently made far too easily on library \
level.<br></blockquote><div><br></div><div>To me this reads like a \
misunderstanding.</div><div><br></div><div>Moving an application from GTK3 to GTK4 \
means porting work. But you do it only once,</div><div>and you don&#39;t retain GTK3 \
compatibility. At least, that is not what the GTK+ team</div><div>recommends you \
should do.<br></div><div><br></div><div>If you want to stick with GTK3, you are more \
than welcome to do so for years to come.<br></div></div></div></div>



_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-devel-list


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic