> 
> On Sun, 13 Feb 2005 13:49:42 -0500 (EST)
> [EMAIL PROTECTED] (Stuart Brorson) wrote:
> 
> > This raises a nasty issue:  We are dropping support for gtk-1.X and
> > transitioning  to gtk-2.X.  However, I think that we should maintain
> > compatability all the way back to gtk-2.0.  
> > 
> > I appreciate Patrick's code cleanup & rationalization.  In
> > particular, his porting our gEDA-specific funcitons to generic
> > gtk/glib ones is good.  However, what is the minimum level of gtk/glib
> > required to successfully compile these chages?  Should we do some kind
> > of audit to see if there are any function calls which rely upon a
> > version of gtk/glib whcih is too new?  What is the minimum gtk
> > required to build gEDA?
> 
> Gtk 2.4 is a year old (since March 2004).  Maybe at some point you
> have to accept the requirements that go with uprading to new
> versions of programs.  

I agree that one can require an upgrade every now and then.  However,
from the user's standpoint, a one year old version is still very new.
Remember that there are still lots of RH7.X installations out there
serving as desktop systems.  Also, it takes some time for versions of
GTK to percolate out to non-core-Linux unicies, like, say, BSD or
HPUX.  (I expect to get flamed now by a BSD partisan. . . .)
Therefore, I'd suggest that four or five years is more like the amount
of support gEDA should offer.  However, I am interested in other
opinions. 

[. . . . snip! . . .]

> The new functions are very very nice to use and make programs
> better it seems to me.  And from a programmer point of view,
> once you use them, you really don't want to go back... ever, really!

I'll belive you, but please don't forget about the user!  Users don't
like to be on the mandatory upgrade treadmill.  Recall that that's one
of the charges against Microsoft: they put you on a treadmill.  I
think we should offer a better experiece for the user.  Anyway,
open-source is supposed to be all about empowering the user, right?

> But when you break compatibility with a previous library version
> you should also bump the major or minor version of your program
> (not just the revision #) and to let the user know when he tries to
> compile, a header file should have something like:
> 
> #if !GTK_CHECK_VERSION(2,4,0)
> #error Gtk 2.4 is required to compile this package.
> #endif

How about if we use substitute code for older functions, like Ales did
with GTK-1.2 vs. GTK-2.0?

Stuart

Reply via email to