[Preview] QIIME 2 2021.2 development changelog

QIIME 2 2021.2 has been released!
Please see the official changelog for more details.

Original content of post

:exclamation: Important :exclamation:

The following is an early developer preview of the changes expected in 2021.2

This post is a live-document which will be updated throughout our development cycle. Any links will in this topic will be broken until the release is officially published. When we are ready for release, we’ll copy this changelog and create a new post in the Announcements category.

Important Developer Information

Dates (please keep an :eye: on this post, these :calendar: might change):

  • PRs must be submitted by: February 8, 2021
  • PRs must be merged by: February 17, 2021
  • Repo Freeze and Package Building: February 22, 2021
  • Release Day: February 23, 2021

Developer Project Board: 2021.2 · GitHub

:exclamation: BREAKING CHANGES

  • q2-feature-classifier
    • classify-sklearn: the default value for the reads_per_batch parameter was changed from 0 to "auto" and no longer allows 0. If you specified the reads_per_batch parameter explicitly as 0, you will need to change it to "auto" instead of 0. If you were not explicitly setting this parameter then you have nothing to worry about! :sweat_smile:

Please update scripts, workflows, etc. as appropriate. Stuck? Reach out here on the forum for help. Want to test this prior to the next release of QIIME 2? Check out the “development environment” instructions here:

Quickstart — QIIME 2 Developer Documentation 2020.2 documentation

Here’s the highlights of the release:

  • QIIME 2 Framework
    • @thermokarst made some changes related to the Usage API, which is still a work-in-progress, more on this soon! :banana:
      • refactored the DiagnosticUsage driver to take a more idiomatic approach -
      • added a missing API method (comment) to the base driver
      • injected the action helpers into the base driver
  • docs
  • q2cli
    • @thermokarst refactored this interface’s Usage API driver to take a more idiomatic approach - the Usage API is still a work-in-progress, more on this soon! :orangutan:
  • q2-types
    • @misialq refactored the DNAFASTAFormat into a more general FASTAFormat that should streamline addition of new sequence formats (think e.g. RNA) and derive their Aligned versions
    • @misialq added a new ProteinFASTAFormat and a corresponding ProteinSequence type to enable protein analysis - first plugin(s) using those are in the works :hammer_and_wrench:
  • q2-feature-table
    • @dwt & @thermokarst Added filter-opposite-axis as an option to filter-samples and filter-features. If filter-opposite-axis is False features/samples on the opposite axis which have zero frequency after the filtering will not be removed.
    • @BenKaehler, @thermokarst, and @andrewsanchez added an average overlap_method to merge and enabled merge to process RelativeFrequency FeatureTable s.
  • q2-quality-control
    • updated transformers to use view api to transform FeatureData[Sequence] to pandas.Series
  • q2-gneiss
    • @mortonjt added ilr_phylogenetic_ordination to enable unsupervised analysis on a phylogenetic tree using the ILR transform
    • @mortonjt added ilr_phylogenetic_differential to allow for Differentials produced from differential abundance tools such as Songbird and Aldex2 to converted to phylogenetic coordinates through the ILR transform.
    • @mortonjt added tutorials on how to use these commands can be found on the empress github repo
  • busywork
  • workshops
    • @thermokarst fixed a bug that prevented us from creating new workshop entries on the site. :bug:
    • @thermokarst changed the sorting logic on the homepage to allow long-running workshops to be listed as upcoming, rather than “past” :ghost:
  • q2-feature-classifier
    • @Oddant1 made an improvement to the classify-sklearn action so that it is more clear when "auto" reads_per_batch ing is engaged. :pencil2:
      • * See the breaking changes section for more details.
  • q2-diversity
    • @collin-le contributed a nice metadata validation enhancement so that a user-friendly error is presented when NaNs are present in the metadata. :symbols:

:+1: :building_construction: :cloud: