Recent Releases of Dnaapler
Dnaapler - v1.3.0
Thanks to @mbhall88 the functionality of --ignore has been extended
If your input FASTA or GFA is mixed (e.g. has chromosome and plasmids), you can also use dnaapler all, with the option to ignore some contigs with the --ignore parameter. The --ignore parameter now accepts either:
- A file path containing contig names to ignore (one per line)
- A comma-separated list of contig names (e.g., chr1,chr2,chr3)
- to read contig names from stdin (one per line) using
-
e.g.
dnaapler all -i input.fasta -o output_directory_path -p my_genome_name --ignore list_of_contigs_to_ignore.txt
dnaapler all -i input.fasta -o output_directory_path -p my_genome_name --ignore chr1,chr2,chr3
echo -e "chr1\nchr2\nchr3" | dnaapler all -i input.fasta -o output_directory_path -p my_genome_name --ignore -
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 9 months ago
Dnaapler - v1.2.0
- Thanks to the one and only @rrwick, Dnaapler now supports the GFA format as input. This was done to ensure support for Ryan's new bacterial genome assembly tool Autocycler, the successor to Trycycler, but may also be useful if you have GFA files from e.g. Unicycler, Flye, Spades or other assemblers.
- If you run dnaapler with GFA input, you will get a GFA output as well.
- If you run dnaapler with GFA input, only circular contigs will be reoriented
- Relaxes the MMSeqs2 dependency to >=13.45111
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 about 1 year ago
Dnaapler - v1.1.0
- Adds support for reorienting contigs where the gene of interest spands the contig ends #90. Thanks @marade @oschwengers.
- Specifically, this is done by rotating each contig in the input by half the genome length, then running MMseqs2 for both the original and rotated contigs. The MMseqs2 hit with the highest bitscore across the original and rotated contigs will be chosen as the top hit to rotate by, therefore enabling detection of partial hits (on the original contig) that span the contig ends.
- This has only been implemented for
dnaapler all(this should be the command used by 99% of users).
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 1 year ago
Dnaapler - v1.0.1
- Thanks to the inimitable @rrwick , v1.0.1 is a patch fixing a string-parsing bug.
- If your contig headers were integers,
dnaaplerdid not rotate the foundBLAST/MMseqs2hits. This was a pre-existing issue (not introduced by v1.0.0).
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 1 year ago
Dnaapler - v 1.0.0
- BREAKING CHANGE -
dnaaplernow usesMMseqs2 v13.45111rather thanBLAST. You will need to install MMseqs2 if you upgrade (if you use conda, it should be handled for you). The CLI is identical. - There are 2 reasons for this:
- Users reported problems installing BLAST on MacOS with Apple Silicon (see e.g. here). MMseqs2 works on all platforms and is dilligently maintained.
- MMseqs2 is much much faster than BLAST (what took BLAST a few minutes takes MMseqs2 seconds). We probably should have written
dnaaplerwithMMseqs2to begin with.MMSeqs2 v13.45111was chosen specifically to ensure interoperability with pharokka
- The alignment results may not be identicial to
dnaapler v0.8.1(i.e. they might find different top hits), but the actual reorientation is likely to be identical (at least in my tests). Please reach out or make an issue if you notice any discrepancies
For example - on my machine (Ubuntu 20.04, Intel i9 13th gen 13900 CPU with 32 threads), for a Staphylococcus aureus genome with 1 small plasmid, dnaapler -i staph.fasta -o staph_dnaapler -t 8 took ~129 seconds wallclock with v0.8.1 using BLAST, while it took ~3 seconds wallclock with v1.0.0 using MMseqs2.
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 1 year ago
Dnaapler - v0.8.0
- Adds
dnaapler archaeaand adds archaeal reorientation functionality intodnaapler all- thanks @richardstoeckl - Specifically, this uses 403 COG1474 genes COG1474
- Relaxes (to warning) where no BLAST hits are found - pipeline will still complete (requested in a number of issues #74 #76 #77 )
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 almost 2 years ago
Dnaapler - v 0.6.0
- Fixes bug where if the starting gene (
dnaA/terL/repA) was on the reverse strand, and the top BLAST hit did not find the start codon, it would reorient the genome to begin at the end of the starting gene, not the start as desired i.e. the terL would be the last gene in the output, not the first. Thanks @susiegriggo
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 2 years ago
Dnaapler - v0.5.1
- With
dnaapler all, adds the reoriented gene to the header (thanks @ammaraziz #67 ) - Adds
--dbparameter todnaapler allallowing specifying a subset of genes to make up the database. In particular, if you have bacteria and plasmids,--db dnaa,repashould speed up Dnaapler's runtime quite a bit (thanks @oschwengers #63 )
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 2 years ago
Dnaapler - v0.5.0
v0.5.0 is the JOSS Release, as published in the Journal of Open-Source Software.
Add some changes with error and logging, and other minor improvements.
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 2 years ago
Dnaapler - 0.4.0
- Implements a modification to the logic for all cases where the top blastx hit alignment does not begin with a start codon. Instead of erroring (or skipping in
all) as of v0.4.0 dnaapler will now choose the CDS (predicted by pyrodigal) that has the most overlap with the top hit alignment. Thanks @simone-pignotti for this suggestion here #44 . - Changes
dnaapler alloutput FASTA name to_reoriented.fastainstead of_all_reoriented.fastafor consistency with all other commands (except dnaapler bulk). - Adds
-aor--autocompleteoption withdnaapler all. - Adds
dnaapler largestand-a largestas an option to orient your sequence beginning with the largest CDS.
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 over 2 years ago
Dnaapler - v0.3.0
What's Changed
dnaapler allsubcommand added thanks @alexweisbergdnaapler allimplements--ignoreto ignore some contigs
New Contributors
- @Vini2 made their first contribution in https://github.com/gbouras13/dnaapler/pull/30
Full Changelog: https://github.com/gbouras13/dnaapler/compare/v0.2.0...v0.3.0
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 almost 3 years ago
Dnaapler - v0.2.0
What's Changed
dnaapler nearestsubcommand addeddnaapler bulksubcommand added- dnaA database filtered to keep only bona-file dnaA genes (i.e. GN=dnaA)
- Adds
-eparameter to vary BLAST evalue if desired - Adds
-aautocomplete parameter if user wants to reorient sequences with mystery or nearest methods in case the BLAST based method fails
New Contributors
- @beardymcjohnface made their first contribution in https://github.com/gbouras13/dnaapler/pull/19
Full Changelog: https://github.com/gbouras13/dnaapler/compare/v0.1.0...v0.2.0
Scientific Software - Peer-reviewed
- Python
Published by gbouras13 almost 3 years ago