Hi, Jon Rosebaugh wrote:
I was trying to use lxml.html.clean to sanitize comments in my blog. Unfortunately, although I can import and use it in a standalone console session, it fails within the webapp. Sometimes it segfaults, and sometimes it's a bus error instead. After going through all the imports to see what _they_ imported, I finally tracked down a minimal example that can cause the problem:
import webbrowser import lxml.html.clean
If I reverse the order of imports, everything works fine, so for the moment I've worked around it by making sure that lxml.html.clean is imported the very first thing.
The problem has been investigated. Apparently, importing the webbrowser module can dynamically load the libxml2 library. As only lxml was built against the updated libraries, this first import will load the older system libraries, which then conflict with the libraries that lxml requires. https://bugs.launchpad.net/lxml/+bug/197243 This problem is due to a misconfigured system that uses conflicting library versions, so there is nothing lxml can do here. Stefan