brinkmanlab / islandpath

IslandPath standalone software
GNU General Public License v3.0
31 stars 4 forks source link

Error with conda package #14

Closed snayfach closed 3 years ago

snayfach commented 3 years ago

I've installed islandpath using conda, but when I run it, the output file is empty. Below is the program output. Any help would be appreciated. Thanks!

$ islandpath PROKKA_05272021/PROKKA_05272021.gbk test/out
Smartmatch is experimental at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/GenomeUtils.pm line 668.
Smartmatch is experimental at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/GenomeUtils.pm line 671.
Smartmatch is experimental at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/GenomeUtils.pm line 846.
/global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/logger.conf2021/05/27 10:21:33 [main] Logging initialized
2021/05/27 10:21:33 [main] Creating temp directory with needed files
2021/05/27 10:21:33 [main] This is the /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021
2021/05/27 10:21:33 [GenomeUtils] From filename /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021.gbk got /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021, gbk
2021/05/27 10:21:33 [GenomeUtils] Reading genbank format file
2021/05/27 10:21:33 [GenomeUtils] The genome sequence in /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021.gbk has been read.
2021/05/27 10:21:33 [GenomeUtils] Checking contig unknown
2021/05/27 10:21:33 [GenomeUtils] Found sequence in the genbank/embl file
2021/05/27 10:21:33 [GenomeUtils] We have 1 contigs
2021/05/27 10:21:33 [GenomeUtils] From filename /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021.gbk got /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021, gbk
2021/05/27 10:21:33 [GenomeUtils] No base filename given in args, trying to use object default: /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021
2021/05/27 10:21:33 [GenomeUtils] Found formats:
2021/05/27 10:21:33 [GenomeUtils] The genome sequence in /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021.gbk has been read.
2021/05/27 10:21:33 [GenomeUtils] Now generating required file formats (faa, ffn and ptt)
2021/05/27 10:21:34 [GenomeUtils] No base filename given in args, trying to use object default: /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021
2021/05/27 10:21:34 [main] Running IslandPath-DIMOB
2021/05/27 10:21:34 [Dimob] Genome /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021, found formats: .faa .ffn .ptt
2021/05/27 10:21:34 [Dimob] Looking for mobility genes using hmmer
2021/05/27 10:21:34 [Dimob] Running hmmer command hmmscan /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/hmmpfam/Pfam-A_mobgenes_201512_prok /global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/PROKKA_05272021.faa >/global/projectb/scratch/snayfach/projects/checkv/1_prophage/0_gtdb/PROKKA_05272021/dimob_tmp48iY2Igph5/blasttmpn9iuSdO_BY
2021/05/27 10:21:38 [Dimob] Parsing hmmer results with Mobgene
2021/05/27 10:21:38 [Dimob::Mobgene] Using extended ids
2021/05/27 10:21:39 [Dimob] Retrieving mobility genes from ptt file
Use of uninitialized value in numeric eq (==) at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/Dimob/tabdelimitedfiles.pm line 67.
2021/05/27 10:21:39 [Dimob] Calculating dinucleotide bias
Use of uninitialized value in concatenation (.) or string at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/Dimob/genomicislands.pm line 372, <GEN7> line 1804.
Use of uninitialized value in numeric eq (==) at /global/u1/s/snayfach/.conda/envs/islandpath/opt/islandpath/lib/Dimob/tabdelimitedfiles.pm line 67.
2021/05/27 10:21:45 [Dimob] Looking for regions with dinuc bias and mobility genes
2021/05/27 10:21:45 [Dimob] Cleaning temporary files
2021/05/27 10:21:45 [Dimob] Cleaning up temp files for Dimob
2021/05/27 10:21:45 [main] Printing results
2021/05/27 10:21:45 [main] Removing tmp files
innovate-invent commented 3 years ago

Hi @snayfach, sorry for the trouble. Can you try isolating the issue by running islandpath in a docker container? The command should be

docker run -v "$PWD":/mnt quay.io/biocontainers/islandpath islandpath /mnt/PROKKA_05272021/PROKKA_05272021.gbk /mnt/test/out

If that doesn't resolve the issue, can you try running islandpath on a reference sequence with known islands? It is possible that islandpath will generate no output if there are no detected islands.

snayfach commented 3 years ago

Thanks, I think I've got it working. I noticed there is no contig identifier in the output for the example:

GI_1 351459 374596 GI_2 496381 520791 GI_3 1131558 116167

Does this mean I need to run islandviewer for each individual contig in my draft genome?

innovate-invent commented 3 years ago

islandpath only works with single contig inputs, islandviewer will stitch a draft genome either in document order or attempt to align and reorder the draft relative to a reference if provided.

If you would like to replicate the stitching of islandviewer, install the mauve 2.4.0.snapshot_2015_02_13 package and run:

MauveCM -output output -ref <path to reference.gbk> -draft <path to draft gbk>

Download https://github.com/brinkmanlab/galaxy-tools/blob/master/mauve_contig_mover/stitch.py and run:

stitch.py [-v] [-s 'final sequence id'] <padding length> <draft file path> genbank [MauveCM contigs.tab path]

If you have access to a Galaxy instance, these tools are readily available in the main tool shed.

Would you mind sharing the solution to your issue for future users?