Heyho! On Friday 04 March 2011 14.16:34 Lucas Nussbaum wrote:
> Sorry, could you explain how it works in python, when a given binary > package contains stuff for both python 2.6 and 2.7, for example? I'm not involved with Python packages, so somebody correct me please. The way it's done is that the packages declare what versions of python they support: python-pygments, for example: Depends: python2.6 | python2.7 | python2.5, python (>= 2.6.6-7~) Breaks: python (>= 2.8), python (<< 2.5) (these are generated by helpers - I'm not 100% why the Breaks is necessary, but I think it's to ensure that any given python library is available in all supported python versions that are installed. A way without that would be nice though, even if that would mean python2.8 wouldn't see all modules that are installed. OTOH this would certainly generate lots of mails to the bts by users...) Then, via triggers, the module is compiled to bytecode for all supported python versions, added to the version's module path etc. (not sure how exactly this is done, and I guess this would be different for ruby in any case.) Modules with binary parts usually just deliver the shared libraries in the main python-foo package (see python-yenc), but I guess it is possible to create python2.5-foo and python2.6-foo and have both provide the virtual python-foo. Don't know if it exists. cheers -- vbi -- Whenever people agree with me, I always think I must be wrong. -- Oscar Wilde
signature.asc
Description: This is a digitally signed message part.