Re: Move to python 2.4 / Changing the packaging style for python packages
On Wed, 14 Jun 2006, Pierre Habouzit wrote:
> Le Mar 13 Juin 2006 07:12, Anthony Towns a écrit :
> > Apps can do either:
> > Package: foo
> > Depends: python (>= 2.4), python-bar
> > /usr/bin/foo: #!/usr/bin/env python
> doesn't it breaks if python-bar only provides 2.3 modules ? because in
> an apt PoV the dependencies will be fullfiled, but the application
> won't work for obvious reasons.
"python-bar" must provide support of the current version. Given the
Depends above, we suppose that python 2.4 is the default. So python-bar
can't provide support for 2.3 only. :-)
> the XS-Python-Version for that application would be >= 2.4 e.g., and
It would be "current, >= 2.4" as an application can only use one python
version at a time. If it is started with "#!/usr/bin/python2.4", then it
would be plain "2.4".
> that would mean that at package build time, one should ensure all the
> dependency chain *has* to provide at least one fully available chain
> (not necessarily 2.4, maybe 2.5 or higher ...).
The dependency chain must be respected for the python version that the
> and if it breaks because at some point a secondary dependency does not
> provides one of the modules it was supposed to, apt won't see it's
> uninstallable, because real dependencies schemes do not match how they
> are projected into the apt ones, they are more subtle.
This concerns only the few applications that are using a non-current
python version (i.e. != /usr/bin/python).
Premier livre français sur Debian GNU/Linux :