daler / pybedtools

Python wrapper -- and more -- for BEDTools (bioinformatics tools for "genome arithmetic")
http://daler.github.io/pybedtools
Other
297 stars 103 forks source link

Add support for csi index #407

Open liyao001 opened 2 months ago

liyao001 commented 2 months ago

Hi there,

I've made an enhancement to pybedtools that adds support for the CSI index. The default TBI index fails for chromosomes larger than 512 Mbp, such as barley's chromosome 2H, which spans more than 665 Mbp. This update ensures that users can handle larger genomic regions without encountering indexing failures.

Thanks for considering this enhancement.

Best, Li

daler commented 2 months ago

Thanks! Can you please add a test to this PR?

liyao001 commented 2 months ago

Certainly! I've extended one of the existing tests (test_tabix) to cover both the default TBI and the new CSI indexes. Additionally, considering the impact on the tabix_contigs function from the previous commit, I've introduced a new test case (test_tabix_contigs_csi) inspired by test_issues::test_issue_180 to ensure comprehensive coverage of the changes. Let me know if there are any further adjustments needed or if you have any other suggestions.