Andreas Jung wrote at 2008-1-16 08:21 +0100:
I have running Zope 2 application using SQLAlchemy 0.3.11/z3c.sqlalchemy 1.0.11 and needs to be migrated to SA 0.4/z3c.sqlalchemy 1.1. For the migration period I installed all four versions as multi-version eggs.
For debugging purposes, my lib/python/Zope2/Startup/zopectl.py contains: .... This works nicely. The correct modules are imported properly.
Later during the startup phase while initializing a product called "MedienDB" the related code is doing the following import:
from z3c.sqlalchemy.interfaces import ISQLAlchemyWrapper
This import fails with
portError: 'No module named sqlalchemy.interfaces'
/local/HRS2/Devel/ajung/HaufeCMS/lib/python/mediendb/mediendb.py(19)?() -> from z3c.sqlalchemy.interfaces import ISQLAlchemyWrapper
although the same import worked much earlier?
Any ideas? As said: this issue only occurs with multi-version eggs.
Zope is *not* running in the context of "zopectl". Instead, it is running in its own process -- imports done in "zopectl" do not affect this process (Zope). You need your "pkg_require" in Zope proper (not in "zopectl"). -- Dieter