QIIME 2 2017.5 release is now live!

The QIIME 2 2017.5 release is now live! There are lots of exciting new changes packed into this release, and we anticipate having monthly releases moving forward while we are in alpha development. Since this is alpha development software, we highly recommend staying up-to-date with the latest releases. We will only provide support for the latest monthly release of QIIME 2 while in alpha development.

Check out the QIIME 2 2017.5 docs for details on installing or upgrading/updating your QIIME 2 release, as well as tutorials and other resources. Get in touch on the QIIME 2 forum if you run into any issues!

Here’s the highlights of the release:

  • QIIME 2 framework
  • Metadata objects can now be created from Artifact objects using Metadata.from_artifact (as long as the artifact has a Metadata transformer defined). Metadata objects created in this manner will have their corresponding “source” artifact captured in provenance.
  • Some basic validation of Metadata is now performed. Both category IDs and index IDs are expected to be strings and no longer permit the following characters: /, \, *, <, >, ?, |, $, and NUL (ASCII character code). Additionally they must have unique values. All of these restrictions are subject to change in the future.
  • Temporary files that were previously left behind on failed and clean exits are now cleaned up properly.
  • Fix a bug where attempting to convert a single file directory format into another single file directory format would raise an error. This could happen, for example, when trying to import a directory containing a BIOM v1.0 file into a .qza file.
  • q2cli
  • When a command fails and is not in --verbose mode, the command’s output is saved to a temporary log file. This is useful when errors take a while to trigger; users no longer have to rerun the command with --verbose (and wait) to see the full error message.
  • The CLI has a new --quiet flag to silence output if method/visualizer execution is successful.
  • qiime tools import has a new --show-importable-types option that displays the semantic types that can be supplied to --type to import data into an artifact. Thanks for this new feature @andrewsanchez!
  • Artifacts that are viewable as metadata can now be supplied as input to any command accepting metadata or metadata and a category.
  • qiime info now displays the installed QIIME 2 release (e.g. 2017.4).
  • q2studio
  • A text field has been added to the import widget allowing users to supply the source format when importing.
  • A dialog now allows users on Linux to import file formats directly (without needing a specific filename in a directory).
  • q2-composition
  • A new FeatureTable variant Balance (FeatureTable[Balance]) was added for compositional data.
  • Fixed a bug related to integer sample IDs causing the ancom visualizer to error.
  • q2-dada2
  • Fixed a bug that prevented using sample IDs with an underscore (_) character.
  • Removed dada2 plot-qualities visualizer in favor of demux summarize visualizer in q2-demux.
  • q2-demux
  • Fixed a bug in summarize that caused the last position of the quality plot to be clipped from the initial view.
  • Fixed a bug in summarize that would allow non-uniform length sequences as input. This gave misleading results as the box-plots were not fair comparisons.
  • q2-feature-table
  • feature-table rarefy now raises an error if input table is rarefied to an empty table (e.g. if too high of a sampling depth is provided).
  • feature-table summarize includes a new column in the Feature detail table that describes how many samples each feature was observed in.
  • feature-table filter-samples had its sample-metadata parameter renamed to metadata, and feature-table filter-features had its feature-metadata parameter renamed to metadata.
  • q2-feature-classifier
  • classify-sklearn now returns Unassigned if confidence does not meet a user-defined threshold for a given feature.
  • extract-reads now supports 5’ trimming — the length parameter has been replaced by the trunc_len and trim_left parameters.
  • classifiy-sklearn confidence estimation and limiting the taxonomic assignment depth based on confidence is now enabled by default. The default confidence threshold (i.e., minimum confidence that a taxonomy assignment must have to be included in the results) is now 0.7. Users may notice that taxonomic assignments are not as deep as in prior versions of QIIME 2, but the assignments that are made are now more reliable.
  • classifiy-sklearn default taxon prior probabilities are now uniform, rather than being estimated from the reference database. This is in keeping with other standard approaches (including RDP Classifier). Users may notice small changes in classification confidence.
  • q2-diversity
  • alpha, alpha-phylogenetic, beta, and beta-phylogenetic now raise an informative error if input table is empty.
  • Fixed a bug related to integer sample IDs causing alpha diversity visualizations to error (alpha-group-significance, alpha-correlation).
  • Fixed a bug that would cause multiple scatterplots to be plotted in the same figure when beta_correlation was run more than once in a single Python session or Jupyer notebook.
  • filter-distance-matrix had its sample-metadata parameter renamed to metadata.
  • docs.qiime2.org
    • Removed search engine caching of previous versions of QIIME 2 documentation (e.g. QIIME 2 2017.2). Please note, these older docs are still accessible via the selector in the menu, but should not show up in search engine results (e.g. Google, Bing, Yahoo, DuckDuckGo, etc.).
    • Clarified ANCOM usage in Moving Pictures tutorial.
  • q2-types
  • Added two new file formats (and single-file directory formats)
    TSVTaxonomyFormat and HeaderlessTSVTaxonomyFormat. These formats are
    intended to replace TaxonomyFormat, which allows taxonomy files with or
    without headers (there is no standardized header for the format either). This legacy TaxonomyFormat had a bug fixed where a headerless file had its first data line interpreted as the header, hiding that data from anything processing the file. The new taxonomy formats exist to explicitly define whether a header is included or not. See this pull request and associated issue for details.
  • Added new semantic type Hierarchy to support generic hierarchical data.
  • Fixed a bug where reading alpha diversity results containing numeric sample IDs would cause some plugin methods/visualizers to error.
  • The FASTQManifest import formats will now convert .fastq files to .fastq.gz automatically.
  • Fixed a bug in the demultiplexed sequence formats which permited non-gzipped fastq files to be present. They will now error appropriately.
  • q2-phylogeny
  • FastTree is now obtained from the bioconda Anaconda channel instead of the biocore channel, improving compatibility on certain systems with older versions of glibc (e.g. RHEL6).
  • q2-emperor
  • Fixed the white “footer” that would appear when viewing emperor plots on view.qiime2.org.
  • Updated to use Emperor 1.0.0beta8. The most notables changes in this Emperor release include:
    • Axes are no longer labeled using numbers (0 (x %), 1 (y %), 2 (z %)).
    • Axes visibility is now changed using dropdown menus instead of the scree plot.
    • The context menu is now displayed when right clicking on the plot area, and no longer needs users to hold shift while right clicking.
    • Adds the ability to create high resolution PNGs using the context menu.
    • Add the ability to “recenter the camera” using the context menu.
    • Fixes a problem with axes labels disappearing or being blurred for certain metrics.
    • Fixes a bug where “certain floating” point numbers would fail to be mapped to a continuous colorscheme.
    • Metadata dropdowns no longer select an option by default, this is changed for all the tabs. As a consequence of this change, the color of samples is set to red by default.
    • Improve startup time (mostly noticeable in large datasets).
  • Virtual Machines
  • General
    • Plugin descriptions have been added for the core plugins distributed with QIIME 2.
    • Test coverage has been increased throughout the code-base based on user-reported errors and automated coverage metrics — a boring topic, but at the end of the day it means that we have better tests to help keep the bugs away!

Happy QIIME-ing!