After reading Philipp's excellent post about mkzopeapp[1] I decided to give it a try.
[1] http://www.z3lab.org/sections/blogs/philipp-weitershausen/2007_07_07_death-to-instances Here's what I did on a fresh Ubuntu Feisty machine: apt-get install python-setuptools easy_install --prefix /usr/local workingenv.py mkdir ~/src cd ~/src/ workingenv playing-with-mkzopeapp cd playing-with-mkzopeapp/ source bin/activate easy_install mkzopeapp cd src/ mkzopeapp sampleproject cd sampleproject/ python setup.py develop -f http://download.zope.org/distribution startsampleproject I didn't expect it to work (workingenv and easy_install both use /usr/bin/python, which is 2.5, and I don't think Zope 3 works on 2.5 yet), but it failed with an error I didn't expect: Traceback (most recent call last): File "/home/mg/src/playing-with-mkzopeapp/bin/startsampleproject", line 14, in <module> load_entry_point('sampleproject==0.1', 'console_scripts', 'startsampleproject')() File "/home/mg/src/playing-with-mkzopeapp/src/sampleproject/sampleproject/main.py", line 8, in main paste.script.command.run(['serve', conf_file]) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteScript-1.3.5-py2.5.egg/paste/script/command.py", line 76, in run invoke(command, command_name, options, args[1:]) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteScript-1.3.5-py2.5.egg/paste/script/command.py", line 115, in invoke exit_code = runner.run(args) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteScript-1.3.5-py2.5.egg/paste/script/command.py", line 210, in run result = self.command() File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteScript-1.3.5-py2.5.egg/paste/script/serve.py", line 231, in command relative_to=base, global_conf=vars) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteScript-1.3.5-py2.5.egg/paste/script/serve.py", line 254, in loadapp **kw) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 193, in loadapp return loadobj(APP, uri, name=name, **kw) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 213, in loadobj global_conf=global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 237, in loadcontext global_conf=global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 267, in _loadconfig return loader.get_context(object_type, name, global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 393, in get_context section) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 415, in _context_from_use object_type, name=use, global_conf=global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 345, in get_context global_conf=global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 237, in loadcontext global_conf=global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 274, in _loadegg return loader.get_context(object_type, name, global_conf) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 542, in get_context object_type, name=name) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/PasteDeploy-1.3.1-py2.5.egg/paste/deploy/loadwsgi.py", line 568, in find_egg_entry_point possible.append((entry.load(), protocol, entry.name)) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/setuptools-0.6c6-py2.5.egg/pkg_resources.py", line 1912, in load entry = __import__(self.module_name, globals(),globals(), ['__name__']) File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.paste-0.3-py2.5.egg/zope/paste/factory.py", line 22, in <module> from zope.app.wsgi import WSGIPublisherApplication File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.app.wsgi-3.4.0a1_2-py2.5.egg/zope/app/wsgi/__init__.py", line 28, in <module> from zope.app.publication.httpfactory import HTTPPublicationRequestFactory File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.app.publication-3.4.0a1_2-py2.5.egg/zope/app/publication/httpfactory.py", line 23, in <module> from zope.publisher.browser import setDefaultSkin File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.publisher-3.4.0b2-py2.5.egg/zope/publisher/browser.py", line 47, in <module> from zope.publisher.http import HTTPRequest, HTTPResponse File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.publisher-3.4.0b2-py2.5.egg/zope/publisher/http.py", line 48, in <module> from zope.publisher.base import BaseRequest, BaseResponse File "/home/mg/src/playing-with-mkzopeapp/lib/python2.5/zope.publisher-3.4.0b2-py2.5.egg/zope/publisher/base.py", line 27, in <module> from zope.exceptions.exceptionformatter import print_exception ImportError: cannot import name print_exception (Isn't the size of the traceback scary? Reminds me of Java-land somewhat.) zope.exceptions 3.2.0.2-py2.5 doesn't define a print_exception function which zope-publisher 3.4.0b2-py2.5 expects. Could this be fixed with a versioned dependency in zope-publisher's setup.py? Is it normal to see a zope.foo package versioned 3.2.something, or did setuptools download an obsolete version from somewhere? I also see zope.thread version in the 3.3 range, while most of the other zope eggs are in the 3.4 range. A few are in the 3.5 version range. Marius Gedminas -- Always forgive your enemies. Nothing annoys them more. -- Oscar Wilde
signature.asc
Description: Digital signature
_______________________________________________ Zope3-users mailing list Zope3-users@zope.org http://mail.zope.org/mailman/listinfo/zope3-users