[ ] Almost-100% test coverage (main thing needed is unit testing filters; integration tests would also be good)
[x] call
[x] p-mutation (incl. output div indices)
[x] r-mutation (incl. output div indices)
[x] Almost-100% test coverage
[ ] fdr
[x] estimate
[x] Full decoy contig
[x] CP2 decoy contig
[x] Nonsyn decoy contig
[x] Nonsense decoy contig
[x] Combinations of decoy contigs
[x] fix
[ ] Almost-100% test coverage (work needed on complex decoy contexts, and integration testing fix)
[x] spot
[x] hot-features
[x] cold-gaps
[x] Almost-100% test coverage
[ ] matrix
[x] count
[x] fill
[ ] Almost-100% test coverage
[x] dynam
[x] covskew
[x] Almost-100% test coverage
[x] link
[x] cooccurnt
[x] graph
[x] Almost-100% test coverage
[x] smooth
[x] applycreate
[x] assemble
[x] Almost-100% test coverage
utils
[x] gfa-to-fasta
[x] Almost-100% test coverage
Nice-to-have
[x] Transversion decoy contig
[ ] Version of fdr estimate that takes as input an arbitrary BCF, contigs, decoy contig + context(s), but just outputs individual "points" of FDR estimates (one per context)
Can be used to estimate the FDR for non-strainFlye SNV calls
[ ] Consider splitting up the "main" alignment and OSA / PM filter into sub-commands? e.g. strainFlye align full, which runs strainFlye align initial and then strainFlye align filter or something like that (hopefully with better names). The main advantage is that we can run the filtering stuff on arbitrary BAM files from other aligners. Maybe too much work, tho.
[ ] diversity (as standalone option for arbitrary VCF inputs; low-priority, since call's subcommands already compute this info)
[ ] spot hot-window (find hotspots without using predefined "features," instead using a sliding window approach like that described in the LoFreq paper; low priority since we didn't do this in the paper and presumably code to do this already exists somewhere)
[ ] matrix plotting command(s)
Maaaybe we'd also eventually want to make a "just run the full pipeline" command? Look into it when everything is done.
https://click.palletsprojects.com/en/8.0.x/commands/
Needed for initial release
align
call
p-mutation
(incl. output div indices)r-mutation
(incl. output div indices)fdr
estimate
Full
decoy contigCP2
decoy contigNonsyn
decoy contigNonsense
decoy contigfix
fix
)spot
hot-features
cold-gaps
matrix
count
fill
dynam
covskew
link
cooccur
nt
graph
smooth
apply
create
assemble
utils
gfa-to-fasta
Nice-to-have
fdr estimate
that takes as input an arbitrary BCF, contigs, decoy contig + context(s), but just outputs individual "points" of FDR estimates (one per context)strainFlye align full
, which runsstrainFlye align initial
and thenstrainFlye align filter
or something like that (hopefully with better names). The main advantage is that we can run the filtering stuff on arbitrary BAM files from other aligners. Maybe too much work, tho.diversity
(as standalone option for arbitrary VCF inputs; low-priority, sincecall
's subcommands already compute this info)spot hot-window
(find hotspots without using predefined "features," instead using a sliding window approach like that described in the LoFreq paper; low priority since we didn't do this in the paper and presumably code to do this already exists somewhere)matrix
plotting command(s)Maaaybe we'd also eventually want to make a "just run the full pipeline" command? Look into it when everything is done.