Re: Proposed Modules, My Take



On Wed, 2005-01-19 at 15:57 +0100, Murray Cumming wrote:
> On Wed, 2005-01-19 at 09:42 -0500, Sean Middleditch wrote:
> > On Sun, 2005-01-16 at 11:57 +1100, Jeff Waugh wrote:
> > 
> > >  * pygtk
> > > 
> > > The consensus seemed to be that we clearly document that pygtk-based apps
> > > are appropriate for the Desktop release rather than adding pygtk itself to
> > > either Platform or Desktop. As yet, no pygtk-based apps have been proposed
> > > for inclusion anyway.
> > 
> > Can a version of Python be declared to go with this if its in the
> > Bindings?  Otherwise every distro could end up with a different version
> > of Python resulting in various incompatibilities - especially in the
> > case where multiple versions of Python are installed.
> 
> Distros probably do need to have multiple versions installed, in
> parallel, because they are API/ABI incompatible.
> 
> GNOME Desktop applications that use python should specify the python
> version in their #! line.

Right.  The problem is *which* version?  What happens with a GNOME app
that requires Python 2.3 that is installed on a distro with GNOME 2.10
but only Python 2.2?  That sort of thing shouldn't be allowed because
GNOME should declare that all apps using the official bindings must use
Python 2.X - then a distro that wants to include a complete GNOME 2.10
knows it must include Python 2.X and application authors know that they
must explicitly use Python 2.X, ensuring compatibility for all compliant
distros and apps.

Without GNOME specifying the entire situation becomes "undefined" and it
is completely hit-and-miss as to whether any particular app actually
works, which makes putting PyGTK in the Bindings release pretty much
ineffective and useless.  Bindings lets us say, "You can write your app
against these bindings and expect them to work on GNOME," not, "You can
write your app against these bindings and still have just as much chance
of your app working as when we left PyGTK inclusion up to the vendors
entirely."

> 
> > Does /usr/bin/python reference the vesion with pygtk?  If apps
> > hardcode /usr/bin/python-2.2 what happens on a distro that only has 2.3?
> 
> The distro should have 2.2 and/or patch it, I think. It's a distros job
> to worry about this kind of thing.

If GNOME is advertising a stable contract between its bindings and
application vendors then it is entirely GNOME's responsibility - up
until the point the distros voluntarily break that contract.  If GNOME
2.10 requires Python 2.2 and a distro still refuses to include it then
indeed it's the distro's problem.  We at least need to make it possible
for a distro to do the right thing.

> 
> > Both problems disappear if we mandate that, say, Python 2.3 be used and
> > that all apps using the "official GNOME Bindings" reference python-2.3
> > explicitly, or something like that.
> 
> That would be nice. It might be a problem if we all have to wait for the
> module that is last to port to a new version.

That shouldn't ever be a problem because the version should be fixed.
We don't break ABI in any other library exposed by GNOME and we don't
depend on any libraries with changing ABIs that are exposed to users of
the GNOME API - bindings should be no different.

> 




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