katholt / srst2

Short Read Sequence Typing for Bacterial Pathogens
Other
125 stars 65 forks source link

Fails on bowtie 2.2.x series, needs 2.1.0 only? #22

Closed tseemann closed 9 years ago

tseemann commented 9 years ago

Seems to require bowtie 2.1.0 specifically? (which is nearly 2 years old now). We have the 2.2.2 version as default, but it fails:

11/28/2014 12:02:04 program started 11/28/2014 12:02:04 command line: /bio/sw/srst2/bin/srst2 --input_pe ../dropbox/E.faecium/ALL/Ef_aus2223/aus2223_S141_L002_R1_001.fastq.gz ../dropbox/E.faecium/ALL/Ef_aus2223/aus2223_S141_L002_R2_001.fastq.gz --output Aus2223_mlst --log --mlst_db Enterococcus_faecium.fasta --mlst_definitions efaecium.txt 11/28/2014 12:02:04 Total paired readsets found:1 11/28/2014 12:02:04 Incorrect version of bowtie installed. 11/28/2014 12:02:04 bowtie version 2.1.0 is required by SRST2.

katholt commented 9 years ago

Currently we specify the dependency as 2.1.0 and check that that is the one that is installed. 2.2.0 was released in Feb 2014, in the final moments of validating SRST2 for publication, so we did not invest time at that point in testing updates. 4 further tweaks of bowtie2 (2.2.1-4) have been released since then, the latest in October.

In fact srst2 seems to work OK with versions 2.1.0 up to 2.2.3 (I have tested on a few data sets only), however bowtie2 2.2.4 has changed the program names in the command line so will not work with srst2 currently.

At this stage, I intend to wait until the bowtie2 code stabilises again before investing time in changing our code to accommodate their new releases.

I suggest the easiest (and most reliable & tested) solution is to use 2.1.0 with srst2 as recommended.

If you really want to use srst2 with some version of bowtie2 between 2.1.0 and 2.2.3, for the time being you will need to change the version number in lines 529 & 531 of the srst2.py script. However I can't guarantee that there won't be other little changes to the bowtie2 command structures in later versions that might affect the compatibility/accuracy of srst2. If you do try it, please let us know if you run into any such problems so they can be addressed in future updates.

katholt commented 9 years ago

SRST2 has been tested with bowtie2 v2.2.3 and v2.2.4.

Support for this is available in the current version in master branch (as of Dec 2014) and will be in the next release.