Installation
Firstly, you must know that WATSON is a package that lies on many different dependencies whose versions are fixed. Hence, we strongly encourage all the users to use a Python virtual environment to install WATSON to avoid versions collisions with your typical host installation.
Some of the WATSON dependencies need numpy
and Cython
before being installed and therefore you should install them before trying the SHERLOCK installation. Take also into account that the dependencies brought by SHERLOCK also need additional operating system tools that need to be installed separately (C++ compiler, Fortran compiler, etc). So, be aware of counting with the next OS packages installed in your environment (e.g. for Python3.8 in a Linux distribution):
build-essential
libssl-dev
python3.8
python3-pip
libbz2-dev
libssl-dev
libreadline-dev
libffi-dev
libsqlite3-dev
tk-dev
libpng-dev
libfreetype6-dev
llvm-9
llvm-9-dev
gfortran
gcc
locales
python3-tk
python3.8-dev
In case you are running a non-Linux distribution you will need to guess your OS packages matching the ones we mention for Linux.
Therefore, once you have got the OS tools, the WATSON package can be installed in several ways. The cleanest one is by running:
python3 -m pip install -r requirements.txt
Where the requirements.txt
file should contain the same than
requirements.txt.
An additional installation method is running the next commands:
python3 -m pip install numpy
python3 -m pip install Cython
python3 -m pip install dearwatson
You can also use our Docker image from DockerHub or build it from our Dockerfile. Therefore, you can also use as a Singularity container meanwhile they support Docker.
Dependencies
All the needed dependencies should be included by your pip installation of WATSON. If you are interested you can inspect the requirements list under setup.py.
Integration
WATSON integrates with several third party services. Some of them are listed below:
TESS, Kepler and K2 databases through Lightkurve, ELEANOR.
MAST and Vizier catalogs through Lightkurve, transitleastsquares and Triceratops
Testing
WATSON comes with a light automated tests suite that can be executed with:
tox
In case you want to test the entire WATSON functionality we encourage you to run some (or all) the manual examples. If so, please read the instructions provided there to execute them.