MMseqs2 Release 14-7e284
martin-steinegger
released this
13 Oct 12:31
·
199 commits
to master
since this release
This is a major release containing features implemented for ColabFold, Foldseek, MMseqs2 profile-profile (not published yet, and still in preview) and many bugfixes. Thanks a lot to the contributors who submitted bug fixes.
If you are using the Docker Hub based MMseqs2 containers, please switch to the new Github Container Registry based ones. The Docker Hub containers will not be maintained in the future.
Breaking
- Profile databases created by previous MMseqs2 releases won't work anymore with this release. Please recreate them from previous search results or MSAs with
result2profile
or `msa2profile. - Profile k-mer threshold parameter were fitted to new pseudo-counter parameter (
--pca
,--pcb
). Previous--k-score
parameters will have differing sensitivity. However, most users will have set-s
instead, which was fitted to match as closely as possible.
Features
gff2db
now should actually work correctly after refactoring (488df86, thanks @RuoshiZhang)result2msa
now supports reading from precomputed index- Add
db2tar
: Create a tar file from a database - Add parsable columnar tsv output to
databases
with--tsv
- Add taxonomic filtering during
prefilter
with--taxon-list
- Add
--comp-bias-corr-scale
to adjust the weight of the compositional bias correction - Add
--mask-prob
parameter to adjust tantan's masking threshold - Add context specific pseudo-counts to
result2profile
- Add iterative profile-profile search workflow (thanks @haydenji0731)
- Add support for profile-profile scoring in striped Smith-Waterman algorithm (thanks @haydenji0731)
- Add support for gap-open/gap-close costs to striped Smith-Waterman algorithm (thanks @hgsommer)
- Add environment variable
MMSEQS_IGNORE_INDEX
to ignore an existing precomputed index createsubdb
and view can now return results from identifiers in.lookup
with--id-mode 1
- Change
compressdb
loop toomp static
to keep order - Improvements to nucleotide alignments and scoring (thanks @AnnSeidel)
Features built for ColabFold now available in MMseqs2
- Add
pairaln
: taxonomic pairing on sequences for MSA building (9a0df0d, 5e245d1, 3f8695e, 3e92abf, edb8223, e19df7c) - Add A3M support to
result2msa
(--msa-format-mode 5
) - Add A3M support with alignment information to
result2msa
(--msa-format-mode 6
) result2profile
allows--diff 0
- Make taxonomy mapping mmap'able for (near) instant read-in
- Add workflow to create expandable profile (profile-profile) db from TSVs
tsv2exprofiledb
- Enable
result2profile
/filterresult
to read new expand alignment index - Add support to filter MSAs in buckets
filterresult
,result2profile
- Add
--filter-min-enable
to enable filtering only above a minimum threshold of hits (c6d8ae0) - Expand can filter in each target cluster before expanding (75af0c8, 85ce847)
Bugfixes
summarizeresult
was rejecting hits that match the coverage threshold exactly (#586, 67949d7)- Don’t use reserved filename characters in unpackdb (#467, c663497 thanks @cutecutecat)
- Fix typo (violoations -> violations) (#526, 74c3aa6, thanks @Benjamin-Lee)
- Fix potential endless loop in
rescorediagonal
- Fix prefilter/alignment with 0-size query input #433
- Fix
unpackdb
parameter parsing issue - Make sure
FILTER_RESULT
variable is always correctly set for exhaustive search (d4a3354) tar2db
breaking with--tar-include/exclude
(#561)- Wrong database name printed for variadic input when creating a tmp directory
extractorfs
sometimes loading invalid start/stop codons on non-avx2 platforms- Don't mask consensus sequences in profiles
result2msa
correctly prints X residues- Allocate
CSProfile
only if it's going to be used (d873697) - Taxonomy db paths are now correctly found if given a precomputed index (8ff26f2)
- Encode more strings internally as base64 if special characters are used (16b5774, d155586)
- Disable broken iterative profile searches in taxonomy (#432)
- Fixed a possible segmentation fault in
align
(thanks @rchikhi)
MMseqs2 databases
- Added VOGDB
- Updated dbCAN2 to V9 and removed
.aln
suffix from profile names - Fix issues with ResFinder (#494, 56816b3), GTDB (#561, 678c82a), Kalamari (#531, ce7bf53), Uniref (#496, e85ceb9, thanks to @fanhuan)
Speedup
- Rework of
result2msa
to avoid allocating a lot of memory - Improvement of speed for ungapped alignment in
prefilter
TaxonomyExpression
is faster with a single tax identifier (8ff7279)
MMseqs2 subprojects
- MMseqs2-based subprojects can use
databases
too (5afd33c) - Add
appenddbtoindex
: augment a precomputed index with other databases in sub-projects - Allow subprojects to build their own precomputed indices (a506d67)
- Add support for external k-mer thresholds for the prefilter (fea8d20)
- Subprojects can define their own DbType validators
Developers
- Added CirrusCI to test FreeBSD and old compilers (a2e2129, 904d0c6, a09a704, 4f1996a, 482dedc, 16830a5)
- MMseqs2 Docker containers are now published in the Github Container Registry (eb203d3, 5185d3c, ba4e11f)
- Our microtar fork can write tar files again (dcd180b)
- Add URIs as allowed parameter inputs (3b9cf88)
- Additional s390x fixes (linclust might work now)
- Add support for new MultiParameter type
- Bundled SIMDe was updated (thanks @mr-c)