Skip to content

Releases: ablab/spades

SPAdes 4.0.0

04 Jun 04:16
Compare
Choose a tag to compare

Dear SPAdes community,

Since its birth in 2012 SPAdes has always been a free and open-source software, mainly supported by various academic and non-profit organization grants. However, since 2022 SPAdes is not developed within a certain academic institution anymore. SPAdes is currently maintained and supported by an international group of volunteering contributors, namely, a SPAdes team.

Our old website is not active anymore. We also do not have a dedicated support email. From now on we are relying only on our GitHub repo. Please, download releases and report issues there. SPAdes has revamped documentation available at ablab.github.io/spades/.

SPAdes 4.0 will most likely be the last major release introducing new features and significant changes. No further development is currently planned. Nonetheless, we strongly intend to continue making bug-fix releases and supporting our users. And as always — patches are welcome!

With love and happy assembling
SPAdes team

Full changelog for SPAdes 4.0.0:

  • SPAdes now supports NCBI SRA files as input;
  • Reworked and improved documentation: ablab.github.io;
  • PathRacer - a tool for mapping HMMs to assembly grpah - is now released as a part of SPAdes package;
  • BinSPreader (metagenomic binning refiner) is also released inside SPAdes package;
  • New gfa-split tool for splitting assembly graph into components;
  • New wasterwaterSPAdes mode for quantitative assessment of
    SARS-CoV-2 strains in waste water samples;
  • Python3.8 is now a minimal required version, python2 is deprecated;
  • Native support for running on Apple Silicon processors;
  • Native support for running on aarch64/linux;
  • Binaries are now built using ManyLinux 2.28.
    SPAdes binaries should be compatible with systems using glibc 2.28 and newer including
    ALT Linux 10+, RHEL 9+, Debian 11+, Fedora 34+, Mageia 8+, Photon OS 3.0 with updates, Ubuntu 21.04+.
    In case of any problems we recommend building from sources.
  • Allow external projects integration with SPAdes.
    Projects could be integrated directly with SPAdes codebase or use SPAdes libraries.
    Contact us for technical details.
  • SPAdes outputs assembly graph in GFA v1.2 format by default, older v1.1 format is also available;
  • SPAdes tags circular paths in assembly graph with TP:Z:circular flag;
  • SPAdes internally supports 0 bp overlap graph and graphs with variable overlaps in vertices
    (e.g. multiplex de Bruijn graphs). Some SPAdes standalone tools allow use of such graphs as input.
  • SPAdes now uses zlib-ng for faster gzip decompression of input files;
  • Fixed compilation with gcc 13;
  • Use SPOA for long reads consensus;
  • Parallel & improved GapCloser algorithm;
  • Faster graph simplification;
  • Removed deprecated truSPAdes functionality;
  • Lots of other fixes and improvements.

cloudSPAdes: early access version

16 Apr 17:41
Compare
Choose a tag to compare
Pre-release

Description

cloudSPAdes is a module of the SPAdes assembler aimed at genome assembly from the data generated using Synthetic Long Read (SLR) technologies, such as 10X Genomics Chromium or UST TELL-Seq.

Availability

cloudSPAdes will be available soon as a part of SPAdes package. For now one can download, build, and try pre-release version of SPAdes package included in this repository.

rnacloudSPAdes: paper version

22 Nov 12:24
Compare
Choose a tag to compare
Pre-release

cloudrnaSPAdes is a SPAdes-based tool for assembling full-length isoforms from barcoded RNA-seq linked-read data in a reference-free fashion. cloudrnaSPAdes accurately assembles isoforms, even for genes with high isoform diversity.

Usage example is available at

This is a version of cloudrnaSPAdes used during paper preparation.

SpLitteR: early access version

28 Jun 11:51
Compare
Choose a tag to compare
Pre-release

Description

SpLitteR is a tool that uses linked reads to improve the contiguity of HiFi assemblies. Given a linked-read library and a HiFi assembly graph in the GFA format, SpLitteR resolves repeats in the assembly graph using linked-reads and generates a simplified (more contiguous) assembly graph with corresponding scaffolds.

This is an early preview version of SpLitteR to supplement the publication.

Availability

SpLitteR is implemented on top of SPAdes and will be available as a part of SPAdes package. For now one can download, build, and try pre-release version of SpLitteR included in this package.

Contact

In case of any questions, suggestions, bug reports, please write to spades.support@cab.spbu.ru or directly to Ivan Tolstoganov.

Support

If you have a problem running SpLitteR you can look for a similar issue on our GitHub repository, create a new one or write us via e-mail: [spades.support@cab.spbu.ru].

SPAdes 3.15.5

16 Jul 10:03
Compare
Choose a tag to compare

NEW: Support DNA HMMs.
FIX: use-after-free in PB aligner.
FIX: duplicated sequences in metaplasmid / metaviral mode.

BinSPreader: early access version

13 Feb 10:46
Compare
Choose a tag to compare
Pre-release

Description

BinSPreader is a novel tool that attempts to refine metagenome-assembled genomes (MAGs) obtained from existing tools. BinSPreader exploits the assembly graph topology and other connectivity information, such as paired-end and Hi-C reads, to refine the existing binning, correct binning errors, propagate binning from longer contigs to shorter contigs and infer contigs belonging to multiple bins.

Availability

BinSPreader is implemented on top of SPAdes and will be available soon as a part of SPAdes package.
For more instructions on BinSPreader usage please go to README.md in the downloaded zip archive and consult the main SPAdes page for system requirements and build instructions.

Alternatively, one can install BinSPreader via bioconda.

Input

The tool requires initial binning to refine, as well as assembly graph as a source of information for refining. Optionally, BinSPreader can be provided with multiple Hi-C and/or paired-end libraries.

Required positional arguments:

  • Assembly graph file in GFA 1.0 format, with scaffolds included as path lines. Alternatively, scaffold paths can be provided separately using --path option in the .paths format accepted by Bandage (see Bandage wiki) for details).
  • Binning output from an existing tool (in .tsv format). Every line should contain <contig_id>\t<bin_id>, where <contig_id> corresponds to one of the scaffolds from the input assembly graph. The example is given below.

Synopsis: bin-refine <graph (in GFA)> <binning (in .tsv)> <output directory> [OPTION...]

Let GFA file with the input assembly graph consist of the following lines:

S  edge_1  <sequence_1>
S  edge_2  <sequence_2>
S  edge_3  <sequence_3>
S  edge_4  <sequence_4>
S  edge_5  <sequence_5>
L  edge_1  +  edge_5  +  55M
L  edge_3  +  edge_5  +  55M
L  edge_5  +  edge_2  +  55M
L  edge_5  +  edge_4  +  55M
P  contig_1  edge_1+,edge_5+,edge_2+  *
P  contig_2  edge_3+  *
P  contig_3  edge_4+  *

Then this would be an acceptable initial binning file:

> contig_1  bin_1
> contig_2  bin_2
> contig_3  bin_2

Paired-end\Hi-C libraries

BinSPreader currently supports multiple paired-end or Hi-C libraries described in a YAML file. YAML file can be provided using –dataset option. For example, if you have one paired-end library split into two sets of files

    lib_pe1_left_1.fastq
    lib_pe1_right_1.fastq
    lib_pe1_left_2.fastq
    lib_pe1_right_2.fastq

and one Hi-C library

    lib_hic1_left.fastq
    lib_hic1_right.fastq

YAML file should look like this:

[
    {
      orientation: "fr",
      type: "paired-end",
      right reads: [
        "/FULL_PATH_TO_DATASET/lib_pe1_right_1.fastq",
        "/FULL_PATH_TO_DATASET/lib_pe1_right_2.fastq" 
      ],
      left reads: [
        "/FULL_PATH_TO_DATASET/lib_pe1_left_1.fastq",
        "/FULL_PATH_TO_DATASET/lib_pe1_left_2.fastq" 
      ]
    },
    {
      orientation: "fr",
      type: "paired-end",
      right reads: [
        "/FULL_PATH_TO_DATASET/lib_hic1_right.fastq" 
      ],
      left reads: [
        "/FULL_PATH_TO_DATASET/lib_hic1_left.fastq"
      ]
    }
  ]

BinSPreader output

BinSPreader stores all output files in output directory <output_dir> , which is set by the user.

  • <output_dir>/binning.tsv contains refined binning in .tsv format
  • <output_dir>/bin_stats.tsv contains various per-bin statistics
  • <output_dir>/bin_weights.tsv contains soft bin weights per contig
  • <output_dir>/edge_weights.tsv contains soft bin weights per edge

In addition

  • <output_dir>/bin_dist.tsv contains refined bin distance matrix (if --bin-dist was used)
  • <output_dir>/bin_label_1.fastq, <output_dir>/bin_label_2.fastq read set for bin labeled by bin_label (if --reads was used)
  • <output_dir>/pe_links.tsv list of paired-end links between assembly graph edges with weights (if --debug was used)
  • <output_dir>/graph_links.tsv list of graph links between assembly graph edges with weights (if --debug was used)

BinSPreader modes

Correction/Propagation modes

BinSPreader can either propagate input binning to unbinned edges of the assembly graph, leaving the initially binned edges unchanged (propagation mode), or correct initial binning (aggressiveness of the correction depends on the -la option). Propagation and correction modes are toggled by mutual exclusive options -Rprop and -Rcorr, respectively.

Multiple binning mode

To output BinSPreader results in multiple assignment mode, where several bin labels may be assigned to a single contig, please use -m option.

Sparse mode

BinSPreader uses a special working mode of the binning refining algorithm for sparse binnings, where the
total length of initially binned contigs is significantly lower than the total assembly length. In this mode, binning propagation from initially binned edges is limited by constant graph distance threshold. Please use --sparse-propagation option to toggle sparse mode.

Contact

In case of any questions, suggestions, bug reports, please write to spades.support@cab.spbu.ru or directly to Anton Korobeynikov.

Support

If you have a problem running BinSPreader you can look for a similar issue on our GitHub repository, create a new one or write us via e-mail: spades.support@cab.spbu.ru.

SPAdes 3.15.4

09 Feb 09:55
Compare
Choose a tag to compare

FIX: MacOS Monterey memory limit failure.
FIX: upgrade pyyaml to run correctly with Python 3.10.
FIX: WSL for py2 check.
FIX: A few stability fixes.

SPAdes 3.15.3

23 Jul 16:17
Compare
Choose a tag to compare

FIX: trusted contigs failure.
FIX: clarification & refining the output of bgcSPAdes and coronaSPAdes.
FIX: usage of >9 libraries in a single SPAdes run.
FIX: improvements in spades-read-filter tool.

SPAdes 3.15.2

11 Mar 12:59
@asl asl
Compare
Choose a tag to compare

FIX: meta-viral pipeline bugs.
FIX: coronaspades.py wrapper, copy proper files to the output folder.
FIX: coronaSPAdes instability

SPAdes 3.15.1

19 Feb 13:00
@asl asl
Compare
Choose a tag to compare

FIX: Gap closer failure when using multiple libraries.
FIX: Gap closer excessive memory consumption.
IMPROVE: coronaSPAdes output.