buildbot and incompatible module versioning

Maciej (Matchek) Bliziński maciej at opencsw.org
Wed Nov 6 11:16:42 CET 2013


2013/11/6 Dagobert Michelsen <dam at opencsw.org>:
> The current package is called CSWpy-sqlalchemy with version 0.8.3, should I make a
> CSWpy-sqlalchemy-buildbot with the required 0.7.10 and make that incompatible with
> CSWpy-sqlalchemy? That would mean two packages with different version and different
> names and incompatible versions, but the same upstream contents in different versions.
> It would also mean you can't install all packages of the catalog. Right?

I don't like this approach. What if you need buildbot and
sqlalchemy-0.8.3 for another application, at the same time? I'm
thinking that virtualenv and installing a specific version of
sqlalchemy is the right way to go. These custom installation is
exactly what virtualenv has been created for, and we've spent so much
effort to get virtualenv to work. It would be silly to not use it now.

Here's how to install a specific version of a Python library:
http://stackoverflow.com/questions/5226311/installing-specific-package-versions-with-pip

If you insist on having a package, you could create an alternate
sqlalchemy package that would not install into /opt/csw/lib/pythonX.Y
but some custom place, specifically for buildbot. Then you could use
the PYTHONPATH env variable to access this library.

You could combine the two like so:

export VIRTUALENV_EXTRA_SEARCH_DIR="/path/to/dists /path/to/other/dists"

http://www.virtualenv.org/en/latest/#environment-variables-and-configuration-files

Maciej


More information about the maintainers mailing list