anvio
anvio copied to clipboard
[BUG] anvi-report-inversions error message fix
Short description of the problem
When the user provides wrong bam files, the error message is not very clear. Issue spotted by @hdore.
anvi'o version
anvio dev version
Detailed description of the issue
Here is the error message:
✖ anvi-report-inversions encountered an error after 0:00:57.123876
Traceback (most recent call last):
File "/home/hdore/github/anvio/bin/anvi-report-inversions", line 147, in <module>
main(args)
File "/home/hdore/github/anvio/anvio/terminal.py", line 879, in wrapper
program_method(*args, **kwargs)
File "/home/hdore/github/anvio/bin/anvi-report-inversions", line 26, in main
I.process()
File "/home/hdore/github/anvio/anvio/inversions.py", line 1238, in process
self.process_db(entry_name, profile_db_path, bam_file_path)
File "/home/hdore/github/anvio/anvio/inversions.py", line 409, in process_db
true_inversions = self.get_true_inversions_in_stretch(inversion_candidates, bam_file, contig_name, start, stop)
File "/home/hdore/github/anvio/anvio/inversions.py", line 673, in get_true_inversions_in_stretch
reads = [r.query_sequence for r in bam_file.fetch_only(contig_name, start=start, end=stop)]
File "/home/hdore/github/anvio/anvio/inversions.py", line 673, in <listcomp>
reads = [r.query_sequence for r in bam_file.fetch_only(contig_name, start=start, end=stop)]
File "/home/hdore/github/anvio/anvio/bamops.py", line 237, in fetch_only
for read in self.fetch(contig_name, start, end):
File "pysam/libcalignmentfile.pyx", line 1091, in pysam.libcalignmentfile.AlignmentFile.fetch
File "pysam/libchtslib.pyx", line 685, in pysam.libchtslib.HTSFile.parse_region
ValueError: invalid contig `psb-scaff03`