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

About byte compilation and cleanup when packages share a directory

Hello all,

A couple of days ago I upgraded some of my python packages to follow the new
policy and I've found that three of them are buggy, but I want some advice on
how to proceed.

The packages in question are ``childsplay``, ``childsplay-plugins`` and

The fist thing I've detected is that I'm installing everything on
``/usr/share/childsplay``, but probably the right place is

That is easy to fix, but before changing that I want to fix the other annoying
bug, only present on ``childsplay-plugins`` and ``childsplay-plugins-lfc``.

The problem comes from the use of dh_pysupport, on both packages I'm
including a call like:

  dh_pysupport /usr/share/childsplay

on debian/rules, this call can be replaced by one that only compiles the
files inside the ``lib`` subdirectory, as the plugins are installed there.
The dh_pysupport call will be now:

  dh_pysupport /usr/share/childsplay/lib


  dh_pysupport /usr/share/games/childsplay/lib

if I move the private modules directory.

The bug I've detected is related to the way the byte compiled files are
handled; when ``childsplay`` is installed all the ``.py`` files under the
``childsplay`` modules dir are generated (including the default plugins
included on ``lib``) and later, when ``childsplay-plugins`` or
``childsplay-plugins-lfc`` are installed, the same files plus the new ones are
recompiled again (at least the ones inside of ``lib``, if I fix the
``dh_pysupport`` call).

That is no real problem, as the double recompilation has no real effect on the
system and the result is the same, the problem comes when you remove one of
the plugin packages, for example the ``childsplay-plugins-lfc`` one, on that
case ``dh_pysupport`` removes all the ``.pyc`` files on the ``lib``
subdirectory, that is, it removes all the byte-compiled files from
``childsplay`` and ``childsplay-plugins`` that are there.

Now my questions:

- How should I handle that case?
- Is anybody else using a plugin system that leaves ``.py`` files inside a
  module directory already handled by python-support?
- Should I file a bug report against python-support to implement a way to
  handle individual python files instead of full directories?
- Does python-central solve this kind of problem?

Thanks in advance for your comments.



Sergio Talens-Oliag <sto@debian.org>   <http://people.debian.org/~sto/>
Key fingerprint = 29DF 544F  1BD9 548C  8F15 86EF  6770 052B  B8C1 FA69

Attachment: signature.asc
Description: Digital signature

Reply to: