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

Re: list of package for python_support -> dh_python2 ?



On Jun 11, 2011, at 11:11 AM, Vincent Bernat wrote:

>It would help some of us (at least me) if someone could explain what the
>story behind python-support and  dh-python2 is. It seems that everything
>was dealed  in private. From my  point of view, dh-python2  is here only
>because python-central could not be deprecated by its author in favor of
>python-support for political reasons. That does not help to adopt it.

The main reason why we're favoring dh_python2 is because, to the extent
possible with Python 2[*], everything is in the package.  Because pyc files
cannot be shared across Python versions, and yet in almost every case the
source code can, the Python 2 helpers create symlinks for the py files from a
shared directory into a version-specific directory, because Python will put
the pyc files next to the py files.

Unlike the other helpers, dh_python2 includes the symlinks in the package, so
in most cases, packages which use dh_python2 will come with everything they
need instead of being created at installation time, which is fragile.  (py
files are still and always byte-compiled upon installation, but that's fine).

With Python 3, the symlinks are no longer necessary because pyc and .so
files from different Python versions (well, >= 3.2) can coexist.

Cheers,
-Barry

[*] The only exception is namespace package __init__.py files, which
unfortunately still need to be created at package installation time, and which
dh_python2 does properly by reference counting them.  Hopefully PEP 382 will
land in Python 3.2 and be back-portable, which would eliminate the need to
create even these files at installation time.

Attachment: signature.asc
Description: PGP signature


Reply to: