Re: Using python + pygtk in Desktop modules (was Re:RevisitingtheGnome Bindings)
- From: "Murray Cumming" <murrayc murrayc com>
- To: "Mike Hearn" <mike navi cx>
- Cc: desktop-devel-list gnome org
- Subject: Re: Using python + pygtk in Desktop modules (was Re:RevisitingtheGnome Bindings)
- Date: Thu, 30 Sep 2004 17:24:36 +0200 (CEST)
> It would work if you kept Python 2.2 around.
> If Python
> became a part of the developer platform within a few years we could find
> that GNOME, in order to avoid breaking backcompat, requires 3 different
> versions of the CPython runtime to be installed. Add on a few more years
> and now maybe it's 4 or 5 versions.
I, maybe optimistically, assume that Python will settle down, as they
eventually reach their idea of perfection, so I hope that there will not
be ABI-incompatible versions every year.
However, you mentioned Visual Basic as a comparison. New visual basic
versions come out every 2 or 3 years and are very significantly binary and
API incompatible yet somewhat parallel-installable. Developers more or
less got used to (complaining about) this, though they haven't had much
choice about it. Just to point out that the competition aren't perfect,
not to say that we shouldn't be perfect.
> Possible solutions:
> - Evangelise stability to the Python team, try and get them onto a more
> standard versioning scheme whereby in release X.Y the major version is X
Definitely a good idea, I think.
By the way, I think we _are_ discussing Python and PyGtk as a "platform",
not just a dependency for the Desktop, because
1. The Bindings are meant to be a platform, and they wouldn't be much of a
platform if they didn't provide ABI stability.
In practice, however, ABI stability requires distros to still ship older
ABIs such as GTK+ 1.2 and gtkmm 2.0, even if they don't use them, just
as Windows ships MFC 4 DLLs even though they don't use it themselves.
Non-community distros do this badly.
2. We can't keep GNOME stable and on schedule if it's built on an unstable
platform. Situations such as the gstreamer API/ABI stability should be an
murrayc murrayc com
] [Thread Prev