Re: Stock Items Deprecation
- From: Emmanuele Bassi <ebassi gmail com>
- To: Murray Cumming <murrayc murrayc com>
- Cc: GTK Devel List <gtk-devel-list gnome org>
- Subject: Re: Stock Items Deprecation
- Date: Wed, 11 Sep 2013 12:10:32 +0100
hi;
On 11 September 2013 11:39, Murray Cumming <murrayc murrayc com> wrote:
This deprecated several classes (GtkIconFactory, GtkIconSet,
GtkIconSource, GtkImageMenuItem, GtkAction, GtkUIManager).
It also deprecated GtkRecentAction, because it deprecated the base
GtkAction.
as the author of GtkRecentAction, I'm honestly not concerned.
GtkRecentAction was a stop-gap that covered users of the old
EggRecent* API, and was never really useful; in a sense, it was a
class used to paper over a deprecation. shoving a bunch of recently
used files with only the name and a 16 px MIME type icon as a
differentiating feature in a menu (or in a toolbar menu button) always
seemed to me like a very bad UI. the file selection widget has a
better list of recently used files, these days.
Deprecation without replacement makes the deprecation less useful to
application code because it makes it impossible for me to achieve zero
use of deprecated API.
I'm not entirely sure that "zero use of deprecated API" is a worthy
goal to achieve immediately after a single release cycle - especially
when it comes to timed releases like the 3.x series has been for the
past 3 years. yes, in the end we obviously want the deprecated API
usage in applications to tend to zero, but "being able to port an
application in the month and a half between API freeze and GTK
release" has never been a requirement for deprecating API. also, the
fact that GTK never really adhered to the API freeze in the first
place, and that depending on the latest stable GTK release puts you at
the whims of the distribution channel, kinda makes this target highly
problematic.
covering all major use cases of a deprecated API before actually
deprecating it is a good guideline, but it should not be an absolute
requirement. the deprecated API is still there, and porting can happen
at different stages. as a relevant example: GtkRecentAction was
introduced in a later cycle than the rest of the GtkRecent* API, and
yet the EggRecent* API was deprecated long before that happened.
please, note that I'm neither advocating to keep the deprecation of
GtkUIManager/GtkAction, nor to revert it — I don't have any horse in
this race.
ciao,
Emmanuele.
--
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]