Recent Releases of resistify
resistify - Resistify v1.3.0
New features
- Newer releases of
pytorchwere incompatible with the method used when model data was downloaded manually.download_modelshas been revised to exclusively use$HF_HOMEand$TORCH_HOME, or the default model storage locations if these variables are not set. The--modelsargument has been removed - instead, users should use$HF_HOMEand$TORCH_HOMEif they wish to specify an alternative cache location. - Some quality of life improvements.
Bug fixes
- Turns out
download_modelswas accidentally downloading a set of model data that was never used! Total download size is now 10G smaller...
- Python
Published by SwiftSeal 9 months ago
resistify - Resistify v1.2.1
Bug fixes
- A new build of HMMER causes jackhmmer to fail when installed alongside resistify, which would silently fail (https://github.com/SwiftSeal/resistify/issues/67). Now tested explicity and exits if jackhmmer is non-functional.
- Python
Published by SwiftSeal 9 months ago
resistify - Resistify v1.2.0
New feature
- Plots can now be produced from the results directory! Simply run
resistify draw --query $sequence $results_directoryto generate a plot of domains. This feature is available for both NLRs and PRRs.
Bux fixes
- Fixed a mistake in the
prrmodule where the score thresholds for certain domains (e.g., LysM) were too high. I recommend rerunning any previous results. - Similar and adjacent domains now correctly merge in
prr, and reported correctly indomains.tsv- previously, the majority of annotations were only present inannotations.tsv.
Also made various changes which should improve performance slightly.
- Python
Published by SwiftSeal 10 months ago
resistify - Resistify v1.1.5
- Switch nlrexpress multiprocessing to use spawn by default to prevent freezes in the prr pipeline
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.1.4
Resistify is now published!
- Updated citation details
- No other changes
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.1.3
- Improved progress logger
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.1.2
- Fixed a bug where
--coconatand--retainwould cause a crash - Changed how NLRexpress multiprocessing is handled to prevent rare crash/log issues
- Switched build system to pixi
- Added test suite
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.1.1
- Fixes a critical error introduced to prr pipeline in v1.1.0
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.1.0
- Switch logging system to
logurufor improved logging performance in certain subprocesses - Fixed a bug that rarely led to valid CNLs being discarded, introduced in v0.6
- CoCoNat process restructured for legibility
- Improvements to classification system
- Support for
richremoved (no more progress bars 😢) due to switch tologuru
:shipit:
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.0.1
- Numpy multithreading is now limited to 2 threads per subprocess with threadpoolctl
- Number of threads can be limited with
--threads,-t
- Python
Published by SwiftSeal about 1 year ago
resistify - Resistify v1.0.0
No changes! Accidentally released a v0.70.0 on conda instead of v0.7.0, so releasing v1 to fix. :shipit:
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.7.0
- HMMER searches now use recommended per-profile thresholds rather than a generic cutoff. Expect minor changes in NLR classification for partial or highly degraded NLRs, and the PRR classification will be much more stringent! As a result of this change, the E-value argument has been dropped.
- Long processes now have dynamic progress bars, and output static % progress logs.
- More verbose warning if running PRR pipeline CPU-only mode.
- Will now dynamically assign chunksize if not set manually for improved performance.
- Extracellular length of PRRs is now reported.
- Can now take gzipped fasta files as input
- If no NLRs/PRRs are detected, Resistify will no longer produce an error code 1. It will instead exit without error and produce empty output files.
- Removed bioconda as a dependency - should reduce dependency resolving time slightly and improve image size
- Fixed a significant bug where nlrexpress multiprocessing could silently freeze for "reasons". As a result of this change, debug logging for all nlrexpress subprocesses is disabled.
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.6.3
- Fixed a bug where '.' characters would result in a crash. '.' is now treated the same as '*' - removed if at end of sequence and sequence skipped if internal
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.6.2
- FASTA parser now warns and continues if internal stop codons detected
- Sequences <28aa now rejected as they could sometimes cause errors
- TMbed now runs prior to NLRexpress, filtering out non-PRR sequences prior
- Signal peptide status reported in results.tsv for PRRs
- Length of total LRR domain now reported under LRR_Length in results.tsv
- Improved logging
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.6.1
Reduced dependency restrictions, particularly the restriction on scikit-learn which allows python<3.13 to be used.
Added warning suppression for scikit-learn
Full Changelog: https://github.com/SwiftSeal/resistify/compare/v0.6.0...v0.6.1
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.6.0
What's new in v0.6.0?
The release of v0.6.0 has brought a number of changes to Resistify.
First, you'll note that there are now two modes available - NLR and PRR - which identify NLRs and PRRs respectively.
The NLR pipeline is largely the same, but has received multiple performance improvements which should allow it to utilise more threads simultaneously and significantly reduce memory usage.
As a result of these changes, the --threads mode has now been removed which was a bit of a lie anyway, as numpy would use them all regardless.
The --ultra setting has been renamed as --retain.
The PRR pipeline is new to Resistify and is currently in development.
It uses a re-implementation of TMbed to predict transmembrane domains, from which it will identify and classify RLP/RLKs according to a recently described classification system.
Feel free to give it a try and offer suggestions!
Due to other commitments I can't currently benchmark this properly and make no guarantees to its accuracy yet.
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.5.2
- Resistify now uses all available threads by default
- Dependencies have been reduced due to switch away from PyPi
- Improved argument descriptions
- Performance improvements
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.5.1
Fixed bug where --ultra could pass empty N-terminals to --coconat resulting in error.
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.5.0
- Resistify can now use
CoCoNatto improve coiled-coil domain annotations. Currently, this mode is experimental and optional. - Classification system revised to be more consistent and to prevent certain edge cases.
domains.tsvhas now been split intodomains.tsvandannotations.tsv, which represent the merged and raw annotations respectively.--batchmode has been provided to allow users to run Resistify in smaller batches which should help limit memory usage on larger inputs.- A bunch of refactoring and improved internal file handling.
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.4.0
Fixed a regression where TIR HMM profiles were incorrectly handled.
Fixed a regression where input fasta files larger than 100k sequences were rejected - should have been sequences more than 100k in length!
Adjacent domains are now collapsed prior to classification (e.g., TNNL would now be TNL rather than TN).
Sequences classified as NLRs are now reported in nlrs.fasta for ease-of-use.
Improved README.md.
- Python
Published by SwiftSeal over 1 year ago
resistify - 0.3.0
What's Changed
- 0.3.0 by @SwiftSeal in https://github.com/SwiftSeal/resistify/pull/13
- Motif sequences are now included in output
motifs.tsv: new col Downstreamsequence, Motifsequence, Upstream_sequence
- Better input fasta handling
- >100k inputs restricted
- Internal stop codons now cause error
- Refactoring
domains.tsv: col E-value now E_value- domain indexes are now zero-indexed
- Debugging now available with
--debug
Full Changelog: https://github.com/SwiftSeal/resistify/compare/v0.2.2...v0.3.0
- Python
Published by SwiftSeal over 1 year ago
resistify - Resistify v0.2.2
What's Changed
- 0.2.2 by @SwiftSeal in https://github.com/SwiftSeal/resistify/pull/9
Full Changelog: https://github.com/SwiftSeal/resistify/compare/v0.2.1...v0.2.2
- Python
Published by SwiftSeal almost 2 years ago
resistify - Resistify v0.2.1
What's Changed
--ultra- a new mode has been added which retains non-NLRs for motif searching.- Better logging (Apparently emojis are "unprofessional" 🤔)
- Bug fixes
Conda distribution might be delayed slightly due to some problems on their end!
- Python
Published by SwiftSeal almost 2 years ago
resistify - Resistify v0.1.1
What's changed?
- Multithreading - there is now the option of running the jackhmmer process on multiple threads, providing a large performance increase
- Sensitivity - domain annotation thresholds were adjusted as a result of internal testing
- Reporting - The results table will now report the string of motifs identified per-sequence, aiding in spot checking problematic sequences. MADA and C-JID domains are now only reported in their respective TRUE/FALSE columns
- Python
Published by SwiftSeal almost 2 years ago