I am working on a tool we call dino which uses sqlalchemy 0.5.3
Its an update of a previous version (called dino) which uses sqlalchemy 0.4.4.

For reasons I don't have to go into, I would like to have both tools installed on the same host, with almost no changes to the existing tool. Thus both versions of sqlalchemy installed

So my solution seemed to be use pkg_resources and egg's:

- leave sqlalchemy 0.4.4 in:
   /usr/lib64/python2.4/site-packages/sqlalchemy
- build sqlalchemy 0.5.3 as an Egg and install into:
   /usr/lib64/python2.4/site-packages/SQLAlchemy-0.5.3-py2.4.egg
- in the root package of the new code,  specify the correct version
   from pkg_resources import require; require("SQLAlchemy>=0.5.0")


This does not work.
It does not seem to find the egg, and only finds the old version, and then (correctly) fails.

Trying to read through the pkg_resource.py, I am trying to make sense why this is, and how to get around it. I am having trouble wrapping my head around some of the terms...


Am I doing something obviously wrong?
Is there a known bug?
I have installed setuptools-0.6_rc7

Here is the traceback
Traceback (most recent call last):
 File "/usr/bin/dinoadm", line 8, in ?
   import dino.cmd.cli
 File "/usr/lib64/python2.4/site-packages/dino/__init__.py", line 6, in ?
   require("SQLAlchemy>=0.5.0")
File "/usr/lib64/python2.4/site-packages/pkg_resources.py", line 626, in require
   needed = self.resolve(parse_requirements(requirements))
File "/usr/lib64/python2.4/site-packages/pkg_resources.py", line 528, in resolve
   raise VersionConflict(dist,req) # XXX put more info here
pkg_resources.VersionConflict: (SQLAlchemy 0.4.4 (/usr/lib64/python2.4/site-packages), Requirement.parse('SQLAlchemy>=0.5.0'))



Thanx
Nicholas


_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to