Releases: dib-lab/dammit
Fixes are Upon Ye
This release fixes #49 and #51, while also fixing the --verbosity
argument and adding some better tests. Upgrade in-place
with:
pip install --upgrade dammit --no-deps
WARNING: This may trigger reruns if you try to resume old runs with it, as the output of transcriptome_stats
is changed, and all other tasks rely on it. It also changes some fundamental behavior, in that dammit will now exit immediately on task failure.
The For-Real-Now fix of the HMMER UnmetDependency error
This release of dammit revamps and refactors internal coordinate handling to all be 1-based and thus fixes a bunch of off-by-1 errors. dammit will no longer annoyingly crash from them! All outputs are of course still in their expected coordinate space (looking at you GFF3, 1-based-fully-closed monster).
Remove unused transeq task
Remove the transeq
task which was run but not used; this can sometimes cause a crash when the user doesn't have emboss installed. BUSCO relies on emboss, but there are some situations where only a subset of the library might be installed but transeq
isn't available.
Upgrade in-place with:
pip install dammit -U --no-deps
Update DependencyHandler and fix HMMER coordinate error
This release does a major refactor of the DependencyHandler
class to allow easily adding new dependencies, and introduces a temporary fix to the HMMER coordinate translation to prevent crashing the program. Users are advised that some HMMER results may have an off-by-one error on the last coordinate of the envelope, and that a complete audit of dammit's coordinate translation is incoming.
Fix the PyPI distribution and reintroduce --full option
This release fixes the PyPI distribution, which was not installing correctly due to an improperly formatted MANIFEST.in. It also reintroduces the --full
option to both the annotate
and databases
subcommands for using uniref90, silences output and adds a --verbosity
flag, and condenses some log formatting.
Upgrades can be one with:
pip install dammit -U --no-deps
Fix incorrect HMMER coordinate translation.
This release fixes a bug with the reporting of hmmscan
alignment coordinates. Previously, they were incorrectly reported with respect to the ORFs; now, they are reported with respect to the original transcript. Users are strongly advised to upgrade and rerun past analyses. This can be accomplished by deleting <dammit_dir>/<transcriptome_name>.dammit.gff3
and <dammit_dir>/<transcriptome_name>.pfam-A.tbl.gff3
, and rerunning the annotate command. This will only rerun the annotation reporting, and should be fast.
As per usual, upgrades to dammit can be done with:
pip install dammit -U
or:
pip install dammit -U --no-deps
to avoid upgrading all the dependencies.
Update requirements and align output naming.
This minor release adds the numexpr
requirement and changes the formatting of the name-mapping CSV to be in line with other output files: <transcriptome_name>.dammit.names.csv.
Annotated FASTA, effective transcript renaming, and e-value cutoffs
This version includes several new command line options, a new FASTA output, and a major refactor of the under the hood. For end users, the relevant changes are:
- An annotated FASTA file, named like
<transcriptome_filename>.dammit.fasta
, which has a summary of the annotations in the headers and renamed transcript IDs. - A
--name
option specifying how to rename the transcript IDs in the FASTA header. - A CSV file mapping the new names back to the original names, stored as
<transcriptome_filename>.names.csv
- A
--evalue
option specifying the evalue cutoff to pass to HMMER, Infernal, crb-blast, and LAST.
For developers, the most significant changes can be found in the AnnotetateHandler
class in annotate.py
. Each set of tasks has been put into a separate method, and the get_tasks()
method is now an iterator over all those tasks. Furthermore, the output filenames are now all stored as attributes on the AnnotateHandler
instead of in a results dictionary. The result is that it is now easier to remix this class, which is a necessary step toward a future API for accessing dammit results in Python with the pydata stack.
As usual, dammit can be upgraded with:
pip install dammit --upgrade
Users having problems with database dependencies should try removing their databases.doit.db
file in their databases directory; additionally, resume functionality will fail for runs done with older versions of dammit, as the renamed transcriptome file is a dependency for almost all the tasks (so, take caution with older runs). Conveniently, execution of HMMER in particular is much faster now that their is a sane e-value cutoff, so rerunning older analyses is less prohibitive.
For any other problems, please file an issue on the tracker!
v0.1.1
Lots of updates to the installation instructions, supporting several different system configurations.
v0.1.0
Fixes several issues with the installation instructions and corrects the dependencies in both setup.py and requirements.txt.
pip install dammit