rrwick/Deepbinner

Additional dependencies should be listed

LarsDu opened this issue · 2 comments

I'll eventually make a bioconda package for this, but until then, perhaps it would be prudent to list the following addtional dependencies:
h5py
keras
noise
numpy
argparse

Thanks! I've now listed all these (except for argparse, which is in the Python standard library) in the requirements.txt file. Also a couple more that I use in the new deepbinner prep command.

I have, however, deliberately left some out of the setup.py file's install_requires list. My reasoning is this: the majority of Deepbinner users are probably just using it to classify reads, not train their own neural network model. So to make installation easier for these users, setup.py doesn't worry about the training-only packages (noise, mappy and edlib). Any users that want to train can install those themselves with pip.

But I'm happy to reconsider that decision if you strongly disagree 😄

I've just added these optional dependencies as extras_require in the setup.py file (f0d00e5). I think this is the correct way to go about things.

I've also made tensorflow and tensorflow-gpu as optional dependencies, even though TensorFlow is in fact required. This is because if a user has tensorflow-gpu installed (which is nice and fast) but tensorflow is in the requirements, then it will complain. Seems like a tricky issue, more about it here:
tensorflow/tensorflow#7166