Rust version of bustools command line interface. At this point, it's far from complete and correct, but rather a project to learn rust.
This is heavly built on rustbustools, which handles all the basic interactions with busfiles.
# sorting
rustbustools --output /tmp/sorted.bus sort --ifile /tmp/unsorted.bus
# correcting CBs
rustbustools --output /tmp/corrected.bus sort --ifile /tmp/sorted.bus --whitelist /tmp/10x_whitelist.txt
# inspecting
rustbustools --output /dev/null --ifile /tmp/sorted.bus
# count
rustbustools --output /tmp/count_folder --ifile /tmp/sorted.bus --t2g /tmp/transcripts_to_gene.txt
# compression
# -N is the chunksize of a busz block
rustbustools --output /tmp/compressed.busz -i /tmp/sorted.bus -N 10000
# decompression
rustbustools --output /tmp/plain.bus -i /tmp/compressed.busz
- performance checks
- sort: seems to be slow
- correct: some performance issues due to BKTree
- count: slightly slower than original bustools, but its in the ballpark
- inspect: pretty quick already
- butterfly amplfication: pretty quick already
- handle compressed busfiles
- make CLI args compatible/consistent with original bustools