I am not really sure why this script overrides the variable PYTHONPATH. I would suggest be nicer and add the line
PYTHONPATH=$PYTHONPATH'/imp/blah/blah/'
Is not a big deal, but a bit annoying when using other libraries.
It overrides everything. The reason for it is that - the decision was made that the build process should not depend on environment variables, only values that were explicitly passed to SCons - imppy.sh is launched from scons in order to run tests, when launched from scons it doesn't get the values of external environment variables (such as PYTHONPATH, LDLIBRARYPATH, PATH etc) - confusing things happen if tests are run as part of "scons test" with different values for PATH, PYTHONPATH, LDLIBRARYPATH etc than when they are run directly using imppy.sh. For example, a different version of python could be silently used, different python libraries could be loaded, or a different version of IMP loaded. - the purpose of imppy.sh is to aid in testing of code being developed for IMP, so differences in test environments are important. - you can easily add things to the python path using the pythonpath argument to scons.
I don't agree with the reasons behind the first statement, but given that, it is definitely better to have imppy.sh use the pythonpath from scons.
Make sense?
On Jan 25, 2010, at 8:52 PM, Javier Ángel Velázquez Muriel wrote:
> > I am not really sure why this script overrides the variable PYTHONPATH. I would suggest be nicer and add the line > > PYTHONPATH=$PYTHONPATH'/imp/blah/blah/' > > Is not a big deal, but a bit annoying when using other libraries. > > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev
On 1/25/10 8:52 PM, Javier Ángel Velázquez Muriel wrote: > I am not really sure why this script overrides the variable PYTHONPATH.
imppy.sh is provided to test the build, and so ensures a stable environment (it's too easy to mess it up otherwise by pulling in wonky Python libraries).
> Is not a big deal, but a bit annoying when using other libraries.
If you're using IMP in production, you'd be better off doing an 'scons install' to install it with your other custom libraries, rather than using imppy.sh.
Ben
participants (3)
-
Ben Webb
-
Daniel Russel
-
Javier Ángel Velázquez Muriel