Dear SeqAn users, supporters, and subscribers,
today we present a new update of the SeqAn library. Hooray!!!
The following highlights are present in the current release.
General C++-20 support
The C++-20 support for concepts and type-traits has been fully integrated into SeqAn.
This means that even in C++-17 mode you can use the concept names and type traits as defined by the C++20-specification
and switch to C++-20 without breaking your code.
We present the new Cookbook, where you can find useful
code examples for typical tasks with SeqAn, e.g. reading a sequence file, or searching for a pattern in a string.
In order to get started with new SeqAn3 applications easily, we introduce the new
Application Template, where you can check out a template application with
build system, tests and all necessary requirements set up.
User callback in alignment and search
The pairwise alignment can now be configured with a user-defined callback, which is called for every computed alignment
result instead of returning a lazy range over the alignment results:
This feature was also added to the `seqan3::search` algorithm, i.e. both algorithms can be customised using a user callback.
Lazy search result range
The return type of the search algorithm was adapted to use a lazy result range over the found hits during the
search. This allows you to use the same code to step through the hits independently of having an index over a single
text or a text collection:
Dynamic hit configuration
The hit configuration can now be set dynamically:
Other important changes and additions
We put much effort into harmonising the algorithm configuration interface for the pairwise alignment and
search algorithm. This involves some structural changes, which break the current code, but make the interfaces much more
stable and easier to use.
SeqAn now offers a data structure called interleaved Bloom filter, which can answer set-membership queries efficiently.
The argument parser supports now advanced options, which are solely displayed on an extended help page of an application.
A special minimiser-hash view was added to transform a sequence into a minimiser sequence of the hashes.
For more details and changes please review our changelog document.
Thank you very much for subscribing and enjoy the new version SeqAn 3.0.2!
Your SeqAn Team