[cctbxbb] cctbx.python unnecessarily unfriendly

Nathaniel Echols nechols at lbl.gov
Wed Jan 8 17:21:18 PST 2014


On Wed, Jan 8, 2014 at 5:05 PM, Luc Bourhis <luc_j_bourhis at mac.com> wrote:

> The dispatcher's main job is to set PYTHONPATH, DYLD_LIBRARY_PATH on MacOS
> X, LD_LIBRARY_PATH on Linux and PATH on Windows, as well as LIBTBX_BUILD.
> Thus it can be argued that it is a by-product of the way the cctbx installs
> itself on a system.
>

Actually, a major justification for the dispatchers was to avoid the
"pollution" of the environment in ways that might interfere with other
packages.  (This is why the default behavior is also to completely wipe any
existing values of LD_LIBRARY_PATH, etc.)  Again, this mainly makes
deployment of Phenix easier.

By that I mean that if we installed it with distutils like your typical
> Python package, then /usr/bin/python would be able to run any cctbx-based
> script because the cctbx shared libraries and Python modules would be where
> /usr/bin/python could find them, and we would just need to decide on where
> to put libtbx_env inside site_packages.
>

The reason why we don't do this is simply to speed development - there's no
distinction between the working code (i.e. SVN checkout) and runtime code.
 Otherwise we might have to run "python setup.py install" every time we
want to test even the most minor change.  There are almost certainly other
ways to avoid this requirement, but that was the logic at the time.

 For historical reasons, this is not the path that was taken. It can
> certainly be rectified but as Nat said, Phenix takes precedence here, since
> the cctbx effort ultimately relies on the funding of Phenix. As long as the
> Phenix people aren't comfortable with removing -Qnew or with making the
> installation rely on distutils, then so be it.
>

It's not a matter of comfort: the limitation is what we have time for (or
money, which is basically the same thing).  Removing -Qnew is probably easy
enough to be justified if it makes CCTBX as a whole more usable.  I don't
think anyone would argue against converting to use distutils on technical
grounds; we're simply too busy.  I can't speak for the other developers,
but if someone else outside our group were willing to do this we would
probably not complain and might even encourage it, as long as it didn't
interrupt our day jobs.

-Nat
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://phenix-online.org/pipermail/cctbxbb/attachments/20140108/00d8e747/attachment.htm>


More information about the cctbxbb mailing list