2009/4/27 Chris McDonough <chr...@plope.com>:
> chameleon.genshi still depends on lxml. Currently BFG has c.genshi support,
> when we move to the new chameleon version, we'll need to package
> chameleon.genshi support outside bfg itself in an add-on package (which will
> still depend on lxml). Or we make chameleon.genshi not depend on lxml.
The reason why ``chameleon.genshi`` depends on lxml is
"match-templates", which do require a post-render step where the
document must be parsed with XPath-selector methods (bound to
particular elements in fact) passed on to callbacks. It's a bit
While I do think the concept of match templates is cool, perhaps it
should be let gently out of the package again, because as it happens,
the support isn't very solid. Genshi is a great language in itself; I
don't think it needs match templates to qualify.
> The non-lxml versions of chameleon.core rely on the "etree" module, which is
> only present in Python 2.5+. We'll either need to make 2.5 the lowest
> BFG version or we'll need to change chameleon.core to fall back to an add-on
> elementtree module for the same functionality.
Let me note two things:
1) ElementTree is only used to validate inserted content in debug-mode.
2) On Python 2.4, the ``ElementTree`` package is added as an
Repoze-dev mailing list