QIIME 2 2020.2 is now available!

The QIIME 2 2020.2 release is now available! Thanks to everyone involved for their hard work!

As a reminder, our next planned QIIME 2 release is scheduled for late May 2020 (QIIME 2 2020.5), but please stay tuned for updates.

Check out the QIIME 2 2020.2 docs for details on installing the latest QIIME 2 release, as well as tutorials and other resources. Get in touch on the QIIME 2 Forum if you run into any issues!

Virtual machine builds will be available sometime within the next week - watch this topic thread for an update!


:exclamation: BREAKING CHANGES :exclamation:

  • q2-alignment
    • mafft: 0 is no longer an acceptable value for n_threads. Please specify auto instead.
  • q2-phylogeny
    • fasttree: 0 is no longer an acceptable value for n_threads. Please specify auto instead.
    • iqtree: 0 is no longer an acceptable value for n_cores. Please specify auto instead.
    • iqtree_ultrafast_bootstrap: 0 is no longer an acceptable value for n_cores. Please specify auto instead.
    • align_to_tree_mafft_fasttree: 0 is no longer an acceptable value for n_threads. Please specify auto instead.
  • q2-gneiss
    • balance_taxonomy: this visualizer has been removed.
    • ols_regression: this visualizer has been removed.
    • lme_regression: this visualizer has been removed.

Highlights

  • QIIME 2 Framework
    • @David-Rod added a new check to better handle misconfigured timezones in a QIIME 2 environment. If QIIME 2 and tzlocal are unable to determine the machine’s current timezone (or, if it determines that there are multiple conflicting definitions), QIIME 2 will fall back to using UTC as the timezone when stamping out provenance. :timer_clock:
    • @thermokarst added a new type-checking utility is_metadata_column_type. :skull_and_crossbones:
    • @ebolyen & @thermokarst revised the way that plugins are registered on an instance of PluginManager - it is now possible to register plugins on-demand, which can be particularly helpful for testing and development. :corn:
    • @thermokarst & @ebolyen added a new Usage API, allowing plugin developers to register interface-agnostic usage examples as part of their plugins. We are still working on interface support for this, so while the API exists, it is of limited utility at the moment - keep your eyes peeled for a full launch later this year! :moon_cake:
    • @ebolyen fixed a minor issue with parse_primitive which caused incorrect coercion on some TypeMaps. :bug:
  • docs
    • @fedarko fixed a typo in the Overview Tutorial! :bug:
    • The gneiss tutorial has been updated to reflect the breaking changes noted above.
    • @thermokarst added a tutorial demonstrating common utility functions in QIIME 2. :wrench:
  • q2view
    • @ebolyen remove some logic that was limiting certain requests from happening, these checks were intended as part of a broader plan of work that has yet to be tackled :football:
  • q2cwl
    • @David-Rod corrected a bug that prevented q2cwl from handling primitive union types. q2cwl can once again render all QIIME 2 actions as CWL tools. :hammer_and_wrench: (Note: this QIIME 2 interface is not part of the standard distribution, and must be installed separately at this time.)
  • q2-emperor
    • @mortonjt added a --p-invert flag to the biplot visualizer which allows you to swap arrows and points (useful for exploring microbe-metabolite data).
    • Updated the dependencies to the latest release of Emperor (1.0.0 :penguin: :partying_face: ) .
    • Fixed a bug that would fail to produce the SVG legend for a plot.
    • Fixed a bug that caused the table of categories to only update when the window was resized.
    • Fixed a bug that would create duplicated axes when changing visible dimensions.
  • q2-sample-classifier
    • @jwchen fixed a graphical glitch which would cause the legend of the confusion matrices to be repeatedly plotted when executed multiple times in the Artifact API.
    • @ChrisKeefe cleaned up the heatmap visualizer to better handle a variety of matrix sizes! :matĂ©:
    • @Oddant1 optimized and modularized unit tests.
    • @Oddant1 added a type check to change the data type of the confusion_matrix prediction values to match the data type of the truth values.
  • q2-demux
    • @EmFord (GH) added an additional suggestion (modifying the new golay correction parameter) to the error that occurs if emp-single/emp-paired are unable to map any reads.
  • q2-feature-classifier
    • @David-Rod created a much nicer error message for when classify-sklearn runs out of memory (a common occurrence).
    • @Oddant1 added a new extract_reads parameter: read_orientation! This allows the user to specify the orientation of the primers relative to the sequences. :arrow_backward: :arrow_forward:
    • @Nicholas_Bokulich added maxhits, maxrejects, output_no_hits, and weak_id parameters to classify-consensus-vsearch and classify_hybrid_vsearch_sklearn :magnet:
  • q2-phylogeny
    • @SoilRotifer added the pipelines align-to-tree-mafft-iqtree and align-to-tree-mafft-raxml . These are similar to align-to-tree-mafft-fasttree, but uses IQ-TREE / RAxML for phylogenetic inference.:roller_coaster: :evergreen_tree:
      • The --parttree option was only added align-to-tree-mafft-fasttree and the align-to-tree-mafft-raxml pipelines. This option addresses the case for which alignments of over 1 million reads are requested. :woman_climbing:
    • :exclamation: BREAKING :exclamation: @thermokarst changed the allowed values for the several method method’s n_threads and n_cores parameters from Int % Range(0, None) to Int % Range(1, None) | Str % Choices(['auto']). This disallows the use of the value 0 for specifying automatic number of threads/cores, instead, users should use the value auto instead. :handbag:
  • q2-alignment
    • :exclamation: BREAKING :exclamation: @thermokarst changed the allowed values for the mafft method’s n_threads parameter from Int % Range(0, None) to Int % Range(1, None) | Str % Choices(['auto']). This disallows the use of the value 0 for specifying automatic number of threads, instead, users should use the value auto instead. :stuffed_flatbread:
  • q2-dada2
    • @Oddant1 fixed up the description text in the denoise_paired method to reflect the new minimum overlap of 12 nts, verus the older 20 nt requirement. This change isn’t new, we just forgot to update the help text! :brain:
  • q2-deblur
    • @thermokarst fixed a regression :eye: that caused q2-deblur to explode on certain sample ID schemas. :exploding_head:
  • q2-types
    • @David-Rod fixed a bug that prevented the CasavaOneEightLanelessPerSampleDirFmt format from being used. :fortune_cookie:
    • @Oddant1 Improved error message when invalid characters are found in DNAFASTAFormat
  • q2-longitudinal
    • @Nicholas_Bokulich fixed a bug in the pairwise-differences action that prevented the user from successfully generating a t-value when there is no between-group variance. :handshake:
  • q2-composition
    • @thermokarst fixed a minor bug that caused the ancom visualization’s mouseover to break. :mouse:
  • q2-gneiss
    • :exclamation: BREAKING :exclamation: @thermokarst removed three deprecated visualizers: balance_taxonomy, ols_regression, and lme_regression.
  • q2-quality-control
    • @gwarmstrong GH added a new exclude_seqs parameter for use with vsearch: left_justify! This allows the user to reject matches if the pairwise alignment starts with gaps.
  • qiime2.org
    • @David-Rod added a link to our Community Code of Conduct! :squid:
  • Misc.

Happy QIIME-ing! :sun_with_face:

16 Likes

Dear qiime supporters
Thanks for highlighting the changes very clearly. Concerning q2-gneiss, the regressions were such a nice way to get numbers on which variables affect community composition most. as ols_regression has been removed, is there any alternative?
Best, Maria

4 Likes

A post was split to a new topic: which table stats describe otu table?

Wow! We have a special treat for you - VMs are fresh out of the oven :bread: :woman_cook: :fire:! Head on over to the docs for more details!

2 Likes

Hi @gkma, we have asked @mortonjt to comment on this - hopefully he will get a chance to reply soon.

2 Likes

Hi @gkma, we now recommend to use songbird/aldex2 instead of gneiss for regression analysis.

Further developments on gneiss are currently pending incorporating phylogenetic visualizations in qiime2.

2 Likes