On Fri, 2003-08-08 at 14:44, Matthias Urlichs wrote: > Hi, Donovan Baarda wrote: [...] > > Try the following set of dependencies; > > > OK, for one, docutils isn't supported for python <2.2, so all those long > lines get a bit shorter.
First I'd better qualify what I posted. The dependencies I posted assumed the suggested modification to the Python Policy was in place, allowing version idependant pure python modules in /usr/lib/python, and were to satisfy the scenario described by Alexandre Fayolle as follows; > available on all python versions. For instance python-docutils needs > python-xmlbase and python-difflib. python-xmlbase exists for python2.1 > and 2.2 but not 2.3, and difflib exists for 2.1, but not 2.2 or 2.3. How > should the dependencies be written ? It seems Alexandre's impression of the docutils dependencies was a little out. What you describe below is quite different. > I think the 'dependency package' approach works best. > > Package: python-docutils > Architecture: all > Depends: python2.3-docutils | python2.2-docutils > Description: Utilities for the documentation of Python modules > The purpose of the Docutils project is to create a set of tools for > processing plaintext documentation into useful formats, such as HTML, > XML, and TeX. > . > The package includes the reStructuredText parser and the Python > Docstring Processing System project. > > Package: python2.3-docutils > Architecture: all > Depends: python2.3, python-docutils, python-roman > Description: Dependency package for python-docutils with Python 2.3 > This package is a dependency package. It represents the requirements of > the python-docutils package when used with Python 2.3. > > Package: python2.2-docutils > Architecture: all > Depends: python2.2, python-docutils, python2.2-xmlbase, python-roman, > python-textwrap > Description: Dependency package for python-docutils with Python 2.2 > This package is a dependency package. It represents the requirements of > the python-docutils package when used with Python 2.2. > > > If there's no objection, the next version will look like this. > (Due out shortly, as I need to package upstream's 0.3 as well as fix a > packaging bug.) Um... I have a few problems with this. It doesn't really follow the current Python Policy. After looking at it, I can't figure out what you are attempting to achieve. Is the python-docutils package just a wrapper, or does it include the bulk of the python modules? If it includes the python modules, where do they go; /usr/lib/python2.3, /usr/lib/python2.2, or somewhere else? Do the pythonX.Y-docutils packages contain anything, or are they just a way of "delegating dependencies". After writing this I had a look at the current docutils package and think I know what you are getting at. python-docutils puts all the modules in /usr/lib/site-python and the other guys just make sure the dependencies are met. For some reason I feel a bit uncomfortable with it. The python-docutils package doesn't "support the default python". Installing python-docutils, python2.3-docutils, and python (2.2) will meet all dependencies but result in a docutils that doesnt work for /usr/bin/python. I'm not sure what the best solution is. My gut instinct is to have python-docutils just depend on python-xmlbase and python-textwrap, and have python (2.3) "Provides" them. That way you could have; Package: python-docutils Depends: python (>=2.2), python (<<2.4), python-xmlbase, python-textwrap, python-roman Package python (2.3) Provides: python-xmlbase, python-textwrap Package python2.3 Provides: python2.3-xmlbase, python2.3-textwrap Under the current Python Policy, there is not nice support for pure python modules that support multiple versions of python. You have been putting them in /usr/lib/site-python but there is nothing under the Python Policy yet that talks about this. It would be nice if you could specify dependencies as follows; Depends: (python2.2, python2.2-xmlbase, python-textwrap) | (python2.3), python-roman I was going to suggest a solution, but I'm tired and I can't think of one. docutils is a tough one :-( > > Package: python-xmlbase > > Depends: python (<<2.3) | python2.2 | python2.1 | python2.0 | python1.6 > > | python1.5 > > Provides: python2.2-xmlbase, python2.1-xmlbase, python2.0-xmlbase, > > python1.6-xmlbase, python1.5-xmlbase > > > Duh? xmlbase doesn't seem to be supported for Python < 2.1. This was a hypothetical solution for a suggested modification to the Python Policy based on an incomplete and inaccurate description of the docutils dependencies. Not to be taken seriously :-) -- Donovan Baarda <[EMAIL PROTECTED]>