I have finally realized that the way tests are run in 2.7 is different from earlier version of Zope, and I'm trying to get them to run. It's Zope 2.7.2 on Debian. Python 2.3.4 and 2.3.2, so I guess 2.3.3 would give the same error. Could it be a side effect of the compiling or something? Here is the traceback: Running unit tests from /home/regebro/Zopes/Zope-2.7.2-0 /home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/cDocumentTemplate.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1 ['/home/regebro/Zopes/Zope-2.7.2-0/lib/python', '/home/regebro/Zopes/Zope-2.7.2-0', '/usr/local/lib/python23.zip', '/usr/local/lib/python2.3', '/usr/local/lib/python2.3/plat-linux2', '/usr/local/lib/python2.3/lib-tk', '/usr/local/lib/python2.3/lib-dynload', '/usr/local/lib/python2.3/site-packages'] Traceback (most recent call last): File "test.py", line 841, in ? process_args() File "test.py", line 831, in process_args bad = main(module_filter, test_filter, libdir) File "test.py", line 629, in main files = find_tests(module_filter) File "test.py", line 460, in find_tests os.path.walk(walkdir, finder.visit, rx) File "/usr/local/lib/python2.3/posixpath.py", line 290, in walk walk(name, func, arg) File "/usr/local/lib/python2.3/posixpath.py", line 290, in walk walk(name, func, arg) File "/usr/local/lib/python2.3/posixpath.py", line 282, in walk func(arg, top, names) File "test.py", line 439, in visit __import__(pkg) File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/AccessControl/__init__.py", line 16, in ? import DTML File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/AccessControl/DTML.py", line 18, in ? from DocumentTemplate import DT_Util File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/__init__.py", line 22, in ? from DocumentTemplate import String, File, HTML, HTMLDefault, HTMLFile File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/DocumentTemplate.py", line 112, in ? from DT_String import String, File File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/DT_String.py", line 17, in ? from DT_Util import ParseError, InstanceDict, TemplateDict, render_blocks, str File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/DT_Util.py", line 42, in ? from cDocumentTemplate import InstanceDict, TemplateDict, \ ImportError: /home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/cDocumentTemplate.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1 Any ideas why this is? The Zope in itself seems to work fine. I have a 2.7.0 instance to, it also fails, but with a completely different error. //Lennart
IIRC this is caused by having a Python compiled without UCS4 support. Some pre-built pythons that come with certain Linux distros (RedHat is one I think) are built with different unicode support then the default. I would suggest building your own python from source and trying it with that instead. -Casey On Fri, 20 Aug 2004 12:12:31 +0200 Lennart Regebro <regebro@nuxeo.com> wrote:
I have finally realized that the way tests are run in 2.7 is different
from earlier version of Zope, and I'm trying to get them to run.
It's Zope 2.7.2 on Debian. Python 2.3.4 and 2.3.2, so I guess 2.3.3 would give the same error. Could it be a side effect of the compiling or something?
Here is the traceback:
Running unit tests from /home/regebro/Zopes/Zope-2.7.2-0 /home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/cDocumen tTemplate.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1 ['/home/regebro/Zopes/Zope-2.7.2-0/lib/python', '/home/regebro/Zopes/Zope-2.7.2-0', '/usr/local/lib/python23.zip', '/usr/local/lib/python2.3', '/usr/local/lib/python2.3/plat-linux2', '/usr/local/lib/python2.3/lib-tk', '/usr/local/lib/python2.3/lib-dynload', '/usr/local/lib/python2.3/site-packages'] Traceback (most recent call last): File "test.py", line 841, in ? process_args() File "test.py", line 831, in process_args bad = main(module_filter, test_filter, libdir) File "test.py", line 629, in main files = find_tests(module_filter) File "test.py", line 460, in find_tests os.path.walk(walkdir, finder.visit, rx) File "/usr/local/lib/python2.3/posixpath.py", line 290, in walk walk(name, func, arg) File "/usr/local/lib/python2.3/posixpath.py", line 290, in walk walk(name, func, arg) File "/usr/local/lib/python2.3/posixpath.py", line 282, in walk func(arg, top, names) File "test.py", line 439, in visit __import__(pkg) File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/AccessControl/__init__.p y", line 16, in ? import DTML File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/AccessControl/DTML.py", line 18, in ? from DocumentTemplate import DT_Util File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/__init_ _.py", line 22, in ? from DocumentTemplate import String, File, HTML, HTMLDefault, HTMLFile File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/Documen tTemplate.py", line 112, in ? from DT_String import String, File File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/DT_Stri ng.py", line 17, in ? from DT_Util import ParseError, InstanceDict, TemplateDict, render_blocks, str File "/home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/DT_Util .py", line 42, in ? from cDocumentTemplate import InstanceDict, TemplateDict, \ ImportError: /home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/cDocumen tTemplate.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1
Any ideas why this is? The Zope in itself seems to work fine. I have a
2.7.0 instance to, it also fails, but with a completely different error.
//Lennart
_______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Lennart Regebro wrote:
I have finally realized that the way tests are run in 2.7 is different from earlier version of Zope, and I'm trying to get them to run.
It's Zope 2.7.2 on Debian. Python 2.3.4 and 2.3.2, so I guess 2.3.3 would give the same error. Could it be a side effect of the compiling or something?
Ah. OK. if you run "python test.py", it fails. If you run "bin/python test.py" it works. Not exactly obvious... And why is there a test.py in the root of the install, and one in the bin folder? Is there a difference? //Still trying to get a hang on Zope 2.7 testing.
Lennart Regebro wrote at 2004-8-20 12:12 +0200:
... line 42, in ? from cDocumentTemplate import InstanceDict, TemplateDict, \ ImportError: /home/regebro/Zopes/Zope-2.7.2-0/lib/python/DocumentTemplate/cDocumentTemplate.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1
This means: "cDocumentTemplate.so" was build with a different Python interpreter (one that uses UCS4 unicode) than you are using now for your tests (one that uses UCS2 unicode). Use the same Python interpreter both for generation as well as testing. -- Dieter
participants (3)
-
Casey Duncan -
Dieter Maurer -
Lennart Regebro