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

Re: python 2.2 -> python 2.3 transition


It's late and I don't have much time... but thought I'd quickly respond
to this one;

On Sat, 2003-08-16 at 00:20, Matthias Klose wrote:
> Donovan Baarda writes:
> > But that was kinda the point... you should be able to install a
> > pythonX.Y package without python (X.Y). This way you get
> > /usr/bin/pythonX.Y, but not /usr/bin/python. I don't see any reason why
> > python2.3 needs to depend on python at all. You should only need python
> > (2.3) depending on python2.3.
> IMO we want to have a way to ensure a specific version of python. I
> don't know another way then having the dependency of python2.3 on
> python.

Check out the policy again... the entire point was if you want a
particular pythonX.Y, install the pythonX.Y package... if you want the
default python, install python.

The pythonX.Y[-foo] packages should be self-sufficient and not depend on
the default python. The python[-foo] package is a simple wrapper that
depends on the default pythonX.Y[-foo]. Changing the default python
should be a simple process of releasing new python[-foo] packages that
depend on the new default pythonX.Y[-foo]. We had python2.3[-foo]
packages before python (2.3)... there was no need to even release new
versions of these packages to migrate to python (2.3).

I fail to see what having python2.3 depend on python (2.3) gets you,
apart from tangled.

> > There might be occasions where you want to install something like zope
> > that needs python2.1, but don't particularly want to install python. If
> > python2.1 had "Depends: python (>=2.1)" then you couldn't do this.
> There is nothing that hinders you installing zope without python and
> python2.3.

Not right now, but thats because python2.1 never depended on python.
Hence python2.1 can be installed without any other versions of python.

by making python2.3 depends on python, you are committing your self to
releasing a new python2.3 just to fix this IMHO broken dependency when
we have python (2.4).

> > You can't just have python2.3 depend on python (>=2.3) so that it can
> > use #!/usr/bin/python for compiling because what happens when we have
> > python (2.4)? All the python2.3 modules get compiled with python (2.4)
> > and mass breakages.
> As long as there are unversioned modules they should break. The
> package maintainer should take care that they work (or we provide them
> with a pyc-recompiler for a major version change).

I'm talking about python2.3 breaking... not other unversioned packages.
If you install python2.3 and python(2.4) then all of python2.3's *.py's
will be compiled with python2.4.

You are going to have to fix the python2.3 package when we migrate to
python (2.4). If you didn't have this dependency then we could migrate
to python (2.4) without having to release a new python2.3 package at

It is also making migration from python (2.3) to python (2.4) bumpier
than it should be. In theory people wishing to roll-back from a busted
python (2.3) in "unstable" to python (2.2) in "testing" would only have
to get testings python[-foo] (2.2) packages to make python 2.2 the
default, and have it work with all the pythonX.Y[-foo] packages from
unstable. Because of the nasty dependency of python2.3 on python (2.3)
people are having to roll back every single python[-foo] and
pythonX.Y[-foo] package to "testing" to get it working.

> > IMHO the original bug poster and Derrick were correct; all
> > pythonX.Y[-foo] packages should be using /usr/bin/pythonX.Y explicitly
> > everywhere, and that includes pythonX.Y itself.
> I don't agree :-) We should not set our focus on having the
> possibility having more than one python version installed in parallel,
> but on having one preferred version installed. If the transition is
> done, you shouldn't care on the dependency anymore.

Didn't we discuss this to death during the development of the Python
Policy? Go back over the threads... the whole reason why it is what it
is was so that people could have more than one python version installed
in parallel.

And it was working well... Zope using python2.1 happily co-existed with
python (2.2), and the transition to python(2.3) was going equally
smoothly until suddenly python2.3 depended on python (2.3)

If everyone agrees that there is no need to support more than one
version installed in parallel, then we can toss the whole
pythonX.Y[-foo] packages and policy entirely. However, I suspect that
there will be an outcry if you start doing this.

> Remains your concern about the unnecessary installation of the default
> version. IMO it's not soo bad, if you have the space to install zope
> (and the data for the site) or jython (together with java).

This is minor, but it was something we get for free if you stick to the

Donovan Baarda <abo@minkirri.apana.org.au>

Reply to: