On 04:49 pm, [EMAIL PROTECTED] wrote:
Josselin, Sam, Christopher and glyph, I put you on copy of this
mail
since I don't know if you are subscribed to this bug. Sorry for
any
inconvenience.
I apologize again for the inconvenience, but in fact I was not
subscribed to the bug, so I have to assume (some of) the other folks
were not either.
OoO La nuit ayant déjà recouvert d'encre ce jour du vendredi 25
avril
2008, vers 23:41, [EMAIL PROTECTED] disait:
To summarize:
- we can fix the problem in python-nevow by using python-central
instead of python-support. I am OK with this but this won't fix other
potential packages that use python-support and want to ship twisted
plugins.
I think this is really the correct solution; if Twisted is packaged one
way, then everything that provides plugins for it should be packaged the
same way. We assume that this is the case (with distutils) in Twisted
itself. In Debian, randomly using different paths is a problem.
- we can fix the problem in python-twisted-core by adding a hack to add
/var/lib/python2.X/twisted/plugins to __path__. I attach a naive
patch for this (I am not sure this is the best way to achieve this,
feel free to propose another patch)
I do not think that this is a particularly good way to fix the issue.
Do the unit tests pass when you do it? :) (run "trial twisted".)
However, it's at least a reasonable fix that does not seem like it will
not introduce many new problems. One drawback is that this will need to
be done for every other packages that uses the Twisted plugin system on
its own package hierarchy, such as Nevow, Axiom, and Mantissa. Simply
packaging these libraries the same way would not require any special
fixes or patches.
- python-support could be modified to not use __init__.py for
twisted/plugins. I don't know what are the consequences of such a
modification
This suggestion would cause Debian to rely on a hack designed primarily
to allow developers to keep their own non-packaged versions of Twisted
plugins. It would probably work, and it would not change the code, but
I also think this would probably affect a lot of other packages for no
good reason. Also, we wrote the Twisted plugin system with the
assumption that system installations would only have one plugin
directory to check for new plugins; this would double the amount of work
Twisted has to do to look for each plugin on Debian.
However, this other suggestion, from Josselin Mouette, is definitely
wrong, and, as I have already attempted to explain, would introduce a
regression:
I think the real solution is to fix python-twisted to use python
modules
directories as God intended them to be. Removing the __init__.py check
is a really simple change and will fix the issue as well.
Please see this Twisted ticket -
http://twistedmatrix.com/trac/ticket/2339 - which is a bug report that
explains the broken behavior which happens with this exact change.
There were tests, added in the fix for this bug, which will fail on
Debian if Debian adds a patch to re-introduce the bug.
I don't know why you think "God intended" python packages to be
considered in this manner. Without the Twisted plugin system and a
specific __path__ hack included in Twisted, if Nevow wished to install a
package under the twisted/ hierarchy, "God" (by which I guess you mean
the default __import__) would not consider the module to be available.
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]