rrwick / Deepbinner

a signal-level demultiplexer for Oxford Nanopore reads
GNU General Public License v3.0
124 stars 23 forks source link

Additional dependencies should be listed #3

Closed LarsDu closed 5 years ago

LarsDu commented 6 years ago

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

rrwick commented 5 years ago

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 😄

rrwick commented 5 years ago

I've just added these optional dependencies as extras_require in the setup.py file (f0d00e56fe789156fdcfb21541c9f37698a58b2b). 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: https://github.com/tensorflow/tensorflow/issues/7166