On Fri, 2007-06-22 at 15:36 +0200, Murray Cumming wrote: > On Fri, 2007-06-22 at 13:58 +0100, Gustavo J. A. M. Carneiro wrote: > > On Qui, 2007-06-21 at 23:39 -0300, Johan Dahlin wrote: > > > Joseph Sacco wrote: > > > > The currently available version of pygtk is the stable branch. I would > > > > expect the development branchof pygtk to adapt. > > > > > > > I'm ready to adapt but only if the general consent is that API changes > > > are okay. > > > > > > My personal opinion is that the API shouldn't be allowed to change, once > > > an API is added it should stay stable until the major version is bumped > > > (3.0 in the case of gtk+). > > > > I'm 100% with Johan on this one. Gtk+ 2.11.x broke API and ABI. > > Before 2.11.x, the structure is: > > > > struct _GtkTooltips > > { > > GtkObject parent_instance; > > > > GtkWidget *tip_window; > > GtkWidget *tip_label; > > GtkTooltipsData *active_tips_data; > > GList *tips_data_list; > > > > guint delay : 30; > > guint enabled : 1; > > guint have_grab : 1; > > guint use_sticky_delay : 1; > > gint timer_tag; > > GTimeVal last_popdown; > > }; > > > > None of these fields is marked private, therefore they are public. > > Actually, that's not the convention in GTK+, though I doubt that it's > written down anywhere official. struct fields are private unless marked > as public. It's obviously difficult to know, and easy to make the > mistake.
Actually, it's more complex than that: Object structures are private unless marked public Non-object structures are public unles marked private gtk-doc respects this, so you can tell what is public by looking at the docs... > But even if an app did something wrong, we should still avoid breaking > that app unnecessarily. Yeah. I don't see the big deal here. The change broke compilation of a commonly used package. It needs to be reverted, unless the reverting it would change the compilation failure into a segfault. The fact that the access was "illegal" doesn't matter. - Owen _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list