STScI-Citizen-Science/MTPipeline — pull request #108 by kevinfhale (2014-07-07 16:33:17+00:00)
Title: Travis fix

As of [Build#37](https://travis-ci.org/STScI-Citizen-Science/MTPipeline/builds/29332642), run on July 7th 2014, the pipeline installs, and its tests pass, on the Travis virtual environment. Three major things have been done to make this happen:

1. The `CPLUS_INCLUDE_PATH` and `LIBRARY_PATH` have been manually set in `.travis.yml` to '/sw/include' and `/sw/lib`, respectively, where we set the `cfitsio` library to build. This is terribly kludgy, as it overwrites anything that might have already been in these paths. At the moment, they are undefined prior to our setting them. Curiously, attempting to merely append the `/sw` directories doesn't work. This is something to come back to, and a potential source of C-related errors in the future.
2. In `setup.py`, we force using `Pillow` version 2.4.0. Installing the latest version appears to cause complications in the installation of `matplotlib`. In the new version of `Pillow`, `Pillow` successfully builds using multiple processes, doing some kind of multithreading. However, after `Pillow` is installed by this method, `matplotlib` tries to install in the same way, and this produces a fatal exception.
3. In `setup.py`, we force using `astropy` version 0.3.2. At the moment, `setup.py` automatically grabs version 0.4rc1, which is [apparently unreleased](https://github.com/astropy/astropy/blob/master/CHANGES.rst) as per their changelog. Using this version appears to result in complications with cython, and may be related to their [Ticket#1198](https://github.com/astropy/astropy/pull/1198), which was closed last year.

Additionally, the python test files have been rearranged. Four test files are listed in this request as deletions, however all four of them are already present (in both the `master` and `travis-fix` branches) inside `tests/legacy`. The merge should remove the unnecessary duplications.

It's a little concerning how easily updates to our dependencies can introduce errors in our travis build. However, neither the `Pillow` or `astropy` issues appear impact building the pipeline on my STScI laptop, probably because it's using the older versions of those packages by default.