After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 571761 - Remove deprecated GTK+ symbols (requires API Break)
Remove deprecated GTK+ symbols (requires API Break)
Status: RESOLVED FIXED
Product: evolution-data-server
Classification: Platform
Component: general
2.26.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: Evolution Shell Maintainers Team
Evolution QA team
evolution[cleanup]
Depends on:
Blocks: 585692
 
 
Reported: 2009-02-14 17:04 UTC by André Klapper
Modified: 2010-03-31 20:55 UTC
See Also:
GNOME target: 3.0
GNOME version: ---



Description André Klapper 2009-02-14 17:04:09 UTC
http://live.gnome.org/GnomeGoals/RemoveDeprecatedSymbols/GTK%2B

./src/server-interface-check.h:36:#define SERVER_INTERFACE_CHECK(obj)		(GTK_CHECK_CAST ((obj), SERVER_TYPE_INTERFACE_CHECK, ServerInterfaceCheck))
./src/server-interface-check.h:37:#define SERVER_INTERFACE_CHECK_CLASS(klass)	(GTK_CHECK_CLASS_CAST ((klass), SERVER_TYPE_INTERFACE_CHECK, ServerInterfaceCheckClass))
./src/server-interface-check.h:38:#define SERVER_IS_INTERFACE_CHECK(obj)		(GTK_CHECK_TYPE ((obj), SERVER_TYPE_INTERFACE_CHECK))
./src/server-interface-check.h:39:#define SERVER_IS_INTERFACE_CHECK_CLASS(klass)	(GTK_CHECK_CLASS_TYPE ((obj), SERVER_TYPE_INTERFACE_CHECK))
./libedataserverui/e-source-option-menu.c:67:		gtk_option_menu_set_history (GTK_OPTION_MENU (data->option_menu), data->i);
./libedataserverui/e-source-option-menu.c:178:	gtk_option_menu_set_menu (GTK_OPTION_MENU (option_menu), menu);
./libedataserverui/e-source-option-menu.c:181:		gtk_option_menu_set_history (GTK_OPTION_MENU (option_menu), selected_item);
./libedataserverui/e-source-option-menu.c:189:		gtk_option_menu_set_history (GTK_OPTION_MENU (option_menu), first_source_item);
./libedataserverui/e-source-option-menu.h:44:	GtkOptionMenu parent;
./libedataserverui/e-source-option-menu.h:50:	GtkOptionMenuClass parent_class;
./libedataserverui/e-name-selector-list.h:38:#define E_NAME_SELECTOR_LIST(obj)            (GTK_CHECK_CAST ((obj), e_name_selector_list_get_type (), ENameSelectorEntry))
./libedataserverui/e-name-selector-list.h:39:#define E_NAME_SELECTOR_LIST_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), e_name_selector_list_get_type (), ENameSelectorEntryClass))
./libedataserverui/e-name-selector-list.h:40:#define E_IS_NAME_SELECTOR_LIST(obj)         (GTK_CHECK_TYPE (obj, e_name_selector_list_get_type ()))
./libedataserverui/e-name-selector-list.h:41:#define E_IS_NAME_SELECTOR_LIST_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), e_name_selector_list_get_type ()))
Comment 1 Matthew Barnes 2009-02-14 18:04:59 UTC
We should clean up the GTK_CHECK macros, but ESourceOptionMenu is already deprecated -because- it's derived from GtkOptionBox.  ESourceComboBox, derived from GtkComboBox, replaces it.  Removing the widget now would break API, but I guess we'll have to for GNOME 3.0.

See also http://www.go-evolution.org/GTK3.
Comment 2 Matthew Barnes 2009-02-14 18:06:24 UTC
s/GtkOptionBox/GtkOptionMenu/
Comment 3 Matthew Barnes 2009-02-15 03:22:28 UTC
Deprecated GtkType macros fixed in revision 10055.

That leaves ESourceOptionMenu, which we'll have to break API to remove.
Comment 4 Milan Crha 2009-08-20 13:54:58 UTC
A good time to do that, as eds is branched now, isn't it?
Comment 5 André Klapper 2009-08-20 14:01:46 UTC
IIRC Matt wanted to do this once we really know if GNOME 3 will happen in March or September 2010. We should know by November 2009.
But of course I vote for getting this in as early as possible and I personally wouldn't mind breaking the API for a potential 2.30 that is not 3.0. :-)
Comment 6 Matthew Barnes 2009-08-20 15:22:05 UTC
The intent is to remove all deprecated API for 3.0.  That includes ESourceOptionMenu.  Grep the sources for EDS_DISABLE_DEPRECATED and CAMEL_DISABLE_DEPRECATED for the full scope.

Doing this will change a few sonames so I want to make sure 2.30 is really going to be 3.0.
Comment 7 Milan Crha 2009-08-20 16:18:05 UTC
I didn't think you want to do such a big change.

From my point of view some CAMEL_DISABLE_DEPRECATED should be reconsidered, as for example camel_folder_set_message_flags is marked as deprecated, but it's used on quite many places in evo itself. This function is, from my point of view, a utility function, not the deprecated one. But that's other question.
Comment 8 Matthew Barnes 2009-08-20 16:41:56 UTC
This is the right time to reevaluate what should or should not be deprecated.  File bugs about it.
Comment 9 Chenthill P 2009-08-21 03:00:44 UTC
With respect to camel apis, it would be better to have a read through,
http://www.go-evolution.org/On-disk_summaries and change them keeping mailer-to-eds in mind. Better to have separate bugs for it.
Comment 10 Matthew Barnes 2009-08-21 13:08:07 UTC
Perhaps the Camel API is best left alone for now and we'll just remove the deprecated EDS symbols for 3.0.  The Camel-to-GObject conversion I started is going to break ABI and API anyway, and I imagine the asynchronous work will destabilize things too.
Comment 11 Matthew Barnes 2010-03-31 20:55:38 UTC
ESourceOptionMenu removed at last in:
http://git.gnome.org/browse/evolution-data-server/commit/?id=2990f4833e2f32c10bbf42d24e76221139889067

Closing as FIXED.