[ZCM] [ZC] 678/ 5 Resubmit "pyexpat.so missing in binary installation"
Collector: Zope Bugs, Features, and Patches ...
zope-coders-admin@zope.org
Mon, 17 Feb 2003 12:05:34 -0500
Issue #678 Update (Resubmit) "pyexpat.so missing in binary installation"
Status Pending, Zope/bug medium
To followup, visit:
http://collector.zope.org/Zope/678
==============================================================
= Resubmit - Entry #5 by efge on Feb 17, 2003 12:05 pm
Status: Rejected => Pending
> ZC does not bundle expat with its binary builds of python.
That's not an acceptable answer... Core Zope needs expat, as the
original poster of this bug remarked. Does this mean that any
user needing page templates in a non-HTML format will have to
build his own Zope?
- create a Page Template
- go edit it
- use <?xml version="1.0"?><foo /> as content
- use text/xml as content-type
- try to save the resulting page template
You get the traceback:
* Module ZPublisher.Publish, line 98, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 39, in call_object
* Module Products.PageTemplates.ZopePageTemplate, line 116, in pt_editAction
* Module Products.PageTemplates.PageTemplate, line 60, in pt_edit
* Module Products.PageTemplates.ZopePageTemplate, line 196, in write
* Module Products.PageTemplates.PageTemplate, line 139, in write
* Module Products.PageTemplates.PageTemplate, line 169, in _cook
* Module TAL.TALParser, line 27, in __init__
* Module TAL.XMLParser, line 48, in __init__
* Module TAL.XMLParser, line 72, in createParser
ImportError: cannot import name expat
________________________________________
= Reject - Entry #4 by matt on Feb 3, 2003 9:32 am
Status: Pending => Rejected
ZC does not bundle expat with its binary builds of python.
The windows binaries are distributed unaltered -- the PythonLabs build of python for windows does include the expat library, but ZC has never included this as part of python for a linux binary release.
At one point in time, Zope did include an older version of expat, but this has since been removed.
Linux users needing expat should use a source release of Zope compiled against a local python.
________________________________________
= Comment - Entry #3 by efge on Jan 31, 2003 5:55 pm
This still happens with 2.6.1b2 binary release for Linux.
Another symptom is:
# ./bin/python
Python 2.1.3 (#1, Sep 19 2002, 13:15:46)
[GCC egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> from xml.parsers import expat
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/home/zope/testzope261b2/lib/python2.1/xml/parsers/expat.py", line 4, in ?
from pyexpat import *
ImportError: No module named pyexpat
________________________________________
= Comment - Entry #2 by efge on Dec 17, 2002 5:19 pm
Yes, this happened to me too.
Basically it means that you cannot use XML zpts using
a binary install.
I'm surprised the unit tests don't detect this.
Actually I'm not sure I ever ran the unit tests using a binary
install...
________________________________________
= Request - Entry #1 by j_lubcke on Nov 18, 2002 3:30 pm
Binary installation missing pyexpat.so
PageTemplates with non-standard content type ("text/vnd.wap.wml" for example) gives a Site Error with the traceback:
-- 8< --
Traceback (innermost last):
Module ZPublisher.Publish, line 98, in publish
Module ZPublisher.mapply, line 88, in mapply
Module ZPublisher.Publish, line 39, in call_object
Module Shared.DC.Scripts.Bindings, line 252, in __call__
Module Shared.DC.Scripts.Bindings, line 283, in _bindAndExec
Module App.special_dtml, line 174, in _exec
Module DocumentTemplate.DT_In, line 705, in renderwob
Module Products.PageTemplates.ZopePageTemplate, line 279, in om_icons
Module Products.PageTemplates.PageTemplate, line 169, in _cook
Module TAL.TALParser, line 27, in __init__
Module TAL.XMLParser, line 48, in __init__
Module TAL.XMLParser, line 72, in createParser
ImportError: cannot import name expat
-- 8< --
If pyexpat.so is copied from some other Python 2.1 installation the problem goes away.
==============================================================