Re: API "break" request



On Wed, 2005-02-09 at 21:38 +0100, Murray Cumming wrote:
> On Wed, 2005-02-09 at 00:47 +0000, Gustavo J. A. M. Carneiro wrote:
> >   I'm sorry to come this late ask for an API change,
> 
> gnome-python, right?
> 
> >  but I've just
> > discovered[1].  Apparently rescanning header files and merging .defs
> > again for libgnomeui caused an accidental rename of
> > gnome.ui.Client.connect_to_session_manager (gnome-python 2.6.x) to
> > gnome.ui.Client.connect (2.9.x).
> 
> Consider this a bug fix for an API break (during the unstable phase)
> that should not have happened. I don't think you need approval.

  Yeah, that makes sense! :-)

> 
> >   This is change was accidentally and may break existing gnome-python
> > applications.  Moreover, the overloading of connect() in gnome.ui.Client
> > and gobject.GObject causes major confusion for developers.
> > 
> >   The following patch fix it.  There's no danger to "rush" the API here,
> > I just want to use the old and tested API.
> > 
> >   Regards.
> > 
> > 
> > --- gnome/ui.defs       16 Jan 2005 01:05:17 -0000      1.15
> > +++ gnome/ui.defs       9 Feb 2005 00:42:58 -0000
> > @@ -1419,7 +1419,7 @@
> >    (return-type "GnomeClient*")
> > )
> > 
> > -(define-method connect
> > +(define-method connect_to_session_manager
> 
> This does not look like the best way to rename methods in gnome-python.
> The .defs should describe the API that you wrap, not the wrapper API.
> Maybe ui_overrides.defs would be useful. I'd bet that your system could
> handle reading a second file, replacing stuff that it finds.

  You have a point there..

  Hm.. we already have .override files, but it doesn't allow renaming
methods.  And adding second type of override file seems messy.

  I think I'll just rename the method manually now, and open a bug
report to add method renaming to the pygtk code generator in the future.

  Thanks.

-- 
Gustavo J. A. M. Carneiro
<gjc inescporto pt> <gustavo users sourceforge net>
The universe is always one step beyond logic

Attachment: smime.p7s
Description: S/MIME cryptographic signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]