Re: Proposed Modules, My Take



On Wed, 2005-01-19 at 10:09 -0500, Sean Middleditch wrote:
> 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?

I agree that it's a good idea to choose a single python version for each
GNOME release. If everyone agrees, then we can add that to our "rules".

However, if we don't, it's up to the distro to install stuff that GNOME
needs. How is this different to saying "what happens if a distro has
GNOME 2.10 but doesn't have GTK+ 2.6"?

[snip]
> We at least need to make it possible
> for a distro to do the right thing.

The last time we discussed this, there was clear consensus that each
Desktop module that uses python should use the #! to specify the python
version that it uses. That makes it easy for distros to know what python
version is needed. If we don't choose one version for each GNOME release
then that might mean that we need multiple versions, but that's not so
strange for distros.

And the pygtk folks even produced a standalone example so that we had a
good example of this kind of 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.

That's a good point, though I think it's about the Bindings, and nothing
to do with whether we use them in the Desktop.

However, the current Bindings rules would allow pygtk to require a new
version of Python, as long as the old version of pygtk could be
parallel-installed and continue to work with the old version of python.
I think a verion of pygtk can already be installed for each version of
python on a distro, so I don't think that's a problem.
  
The rules for the Platform are more strict. If pygtk was in the Platform
then no new version of pygtk could require a newer version of Python
until GNOME 3.0.

Getting back to the Desktop, there are no rules that say that the
libraries or platform used by Desktop modules must be ABI stable.

-- 
Murray Cumming
murrayc murrayc com
www.murrayc.com
www.openismus.com




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