diff --git a/.conf/schema-microsysmics.json b/.conf/schema-microsysmics.json
index 67c33db2bd4ed9f1cdb609a95054dcb68f24bc7a..901ae330623236706852e27a2038a7b23ab30f68 100644
--- a/.conf/schema-microsysmics.json
+++ b/.conf/schema-microsysmics.json
@@ -43,6 +43,13 @@
       },
       "required": ["p-sampling-depth"]
     },
+   "beta_group_significance": {
+      "type": "object",
+      "properties": {
+        "m-metadata-column" : { "type": "string" }
+      },
+      "required": ["m-metadata-column"]
+    },
     "alpha-rarefaction": {
       "type": "object",
       "properties": {
diff --git a/Snakefile b/Snakefile
index 38041192029aab0f844e0b19f8900a13a59e7862..6d8860a55439b96665ded4fb6af89684d09bef2f 100644
--- a/Snakefile
+++ b/Snakefile
@@ -280,7 +280,7 @@ def check_system():
         OS = "linux"
 
     # Conda's environment files
-    qiime2_version = "2019.10-py36"
+    qiime2_version = "2020.6-py36"
     global qiime2_yml
     qiime2_yml = "conda/qiime2-" + qiime2_version + "-" + OS + "-conda.yml"
 
@@ -348,7 +348,7 @@ def set_multithreading():
         set_default_value("dada2", "p-n-threads", config["global"]["nbthreads"])
 
     if "diversity" in config:
-        set_default_value("diversity", "p-n-jobs", config["global"]["nbthreads"])
+        set_default_value("diversity", "p-n-jobs-or-threads", config["global"]["nbthreads"])
         set_default_value("phylogeny", "p-n-threads", config["global"]["nbthreads"])
 
     if "taxonomy" in config:
@@ -481,7 +481,7 @@ def getInput(tool, given_file=""):
         else:
             return getOutput("merge_denoiser_results", "table.qza") if config["global"]["parallel-samples"] else getOutput("denoiser", given_file)
 
-    if tool == "alpha_group_significance":
+    if tool == "alpha_group_significance" or tool == "beta_group_significance":
         return getOutput("diversity", given_file)
 
     if tool == "alpha_rarefaction":
@@ -499,7 +499,7 @@ def getInput(tool, given_file=""):
             return getOutput("merge_denoiser_results", "table.qza") if config["global"]["parallel-samples"] else getOutput("denoiser", given_file)
 
     if tool == "ancom":
-        return getOutput("merge_denoiser_results", "table.qza") if config["global"]["parallel-samples"] else getOutput("denoiser", given_file)
+        return getOutput("taxorank_tables", "{taxorank}_table.qza")
 
 
 def getOutput(tool, given_file=""):
@@ -559,16 +559,12 @@ def pairedOrSingle(tool):
     if config["global"]["library-type"] == "paired-end":
         if tool == "dada2":
             return "denoise-paired"
-        elif tool == "quality_filter":
-            return "q-score-joined"
         elif tool == "cutadapt":
             return "trim-paired"
 
     else:
         if tool == "dada2":
             return "denoise-single"
-        elif tool == "quality_filter":
-            return "q-score"
         elif tool == "cutadapt":
             return "trim-single"
 
@@ -610,12 +606,16 @@ def format_all_rule():
         all_input.append(getOutput("diversity", "pcoa/weighted_unifrac/emperor.html"))
         all_input.append(getOutput("alpha_group_significance", "shannon-group-significance.qzv"))
 
+    if "beta_group_significance" in config.keys():
+        all_input.append(getOutput("beta_group_significance", "bray_curtis_distance_matrix/index.html"))
+
     if "taxonomy" in config.keys():
         all_input.append(getOutput("taxonomy", "barplot/index.html"))
         all_input.append(getOutput("summarize_table", "plots"))
+        all_input += expand(getOutput("taxorank_tables", "{taxorank}_table.tsv"), taxorank=["phylum", "class", "order", "family", "genus", "species"])
 
     if "ancom" in config.keys():
-        all_input.append(getOutput("ancom", "volcano/index.html"))
+        all_input += expand(getOutput("ancom", "{taxorank}/volcano/index.html"), taxorank=["phylum", "class", "order", "family", "genus", "species", "asv"])
 
     return all_input
 
@@ -737,11 +737,10 @@ rule quality_filter:
         directory(getOutput("quality_filter", "html")),
         getOutput("quality_filter", "stats/stats.csv")
 
-    params: options = getOptions("quality-filter"),
-        lib_type = pairedOrSingle("quality_filter")
+    params: options = getOptions("quality-filter")
     conda: qiime2_yml
     shell: """
-    qiime quality-filter {params.lib_type} --i-demux {input} --o-filtered-sequences {output[0]}  --o-filter-stats {output[1]} {params.options}
+    qiime quality-filter q-score --i-demux {input} --o-filtered-sequences {output[0]}  --o-filter-stats {output[1]} {params.options}
     qiime metadata tabulate --m-input-file {output[1]} --o-visualization {output[2]}
     qiime tools export --input-path {output[2]} --output-path {output[3]}
     qiime tools export --input-path {output[1]} --output-path `dirname {output[4]}`
@@ -963,7 +962,7 @@ if "denoiser" in config["global"]:
                 logfile = config["global"]["outdir"] + "/" + LOGFILE
             conda: qiime2_yml
             shell: """
-            qiime diversity core-metrics-phylogenetic --i-phylogeny {input[0]} --i-table  {input[1]}  --m-metadata-file {input[2]} --o-rarefied-table {output[0]} --o-faith-pd-vector {output[1]} --o-observed-otus-vector {output[2]} --o-shannon-vector {output[3]} --o-evenness-vector {output[4]} --o-unweighted-unifrac-distance-matrix {output[5]} --o-weighted-unifrac-distance-matrix {output[6]} --o-jaccard-distance-matrix {output[7]} --o-bray-curtis-distance-matrix {output[8]} --o-unweighted-unifrac-pcoa-results {output[9]} --o-weighted-unifrac-pcoa-results {output[10]} --o-jaccard-pcoa-results {output[11]} --o-bray-curtis-pcoa-results {output[12]} --o-unweighted-unifrac-emperor {output[13]} --o-weighted-unifrac-emperor {output[14]} --o-jaccard-emperor {output[15]} --o-bray-curtis-emperor {output[16]} {params.options}
+            qiime diversity core-metrics-phylogenetic --i-phylogeny {input[0]} --i-table  {input[1]}  --m-metadata-file {input[2]} --o-rarefied-table {output[0]} --o-faith-pd-vector {output[1]} --o-observed-features-vector {output[2]} --o-shannon-vector {output[3]} --o-evenness-vector {output[4]} --o-unweighted-unifrac-distance-matrix {output[5]} --o-weighted-unifrac-distance-matrix {output[6]} --o-jaccard-distance-matrix {output[7]} --o-bray-curtis-distance-matrix {output[8]} --o-unweighted-unifrac-pcoa-results {output[9]} --o-weighted-unifrac-pcoa-results {output[10]} --o-jaccard-pcoa-results {output[11]} --o-bray-curtis-pcoa-results {output[12]} --o-unweighted-unifrac-emperor {output[13]} --o-weighted-unifrac-emperor {output[14]} --o-jaccard-emperor {output[15]} --o-bray-curtis-emperor {output[16]} {params.options}
             qiime tools export --input-path {output[16]} --output-path {output.braycurtis_pcoa}
             qiime tools export --input-path {output[15]} --output-path {output.jaccard_pcoa}
             qiime tools export --input-path {output[13]} --output-path {output.unweighted_unifrac_pcoa}
@@ -998,6 +997,33 @@ if "denoiser" in config["global"]:
             qiime tools export --input-path {output[3]} --output-path `dirname {output[7]}`
             """
 
+        rule beta_group_significance:
+            input: uw_unifrac = getInput("beta_group_significance", "unweighted_unifrac_distance_matrix.qza"),
+                w_unifrac = getInput("beta_group_significance", "weighted_unifrac_distance_matrix.qza"),
+                jaccard = getInput("beta_group_significance", "jaccard_distance_matrix.qza"),
+                bray_curtis = getInput("beta_group_significance", "bray_curtis_distance_matrix.qza"),
+                metadata = config["global"]["context"]
+            output: getOutput("beta_group_significance", "unweighted_unifrac_distance_matrix.qzv"),
+                getOutput("beta_group_significance", "weighted_unifrac_distance_matrix.qzv"),
+                getOutput("beta_group_significance", "jaccard_distance_matrix.qzv"),
+                getOutput("beta_group_significance", "bray_curtis_distance_matrix.qzv"),
+                getOutput("beta_group_significance", "unweighted_unifrac_distance_matrix/index.html"),
+                getOutput("beta_group_significance", "weighted_unifrac_distance_matrix/index.html"),
+                getOutput("beta_group_significance", "jaccard_distance_matrix/index.html"),
+                getOutput("beta_group_significance", "bray_curtis_distance_matrix/index.html")
+            params: options = getOptions("beta_group_significance"),
+            conda: qiime2_yml
+            shell: """
+            qiime diversity beta-group-significance  --i-distance-matrix {input.uw_unifrac} --m-metadata-file {input.metadata} {params.options} --o-visualization {output[0]}
+            qiime diversity beta-group-significance  --i-distance-matrix {input.w_unifrac} --m-metadata-file {input.metadata} {params.options} --o-visualization {output[1]}
+            qiime diversity beta-group-significance  --i-distance-matrix {input.jaccard} --m-metadata-file {input.metadata} {params.options} --o-visualization {output[2]}
+            qiime diversity beta-group-significance  --i-distance-matrix {input.bray_curtis} --m-metadata-file {input.metadata} {params.options} --o-visualization {output[3]}
+            qiime tools export --input-path {output[0]} --output-path `dirname {output[4]}`
+            qiime tools export --input-path {output[1]} --output-path `dirname {output[5]}`
+            qiime tools export --input-path {output[2]} --output-path `dirname {output[6]}`
+            qiime tools export --input-path {output[3]} --output-path `dirname {output[7]}`
+            """
+
     # Write the alpha rarefaction max depth parameter into a file
     rule prepare_alpha_rarefaction:
         input: getInput("alpha_rarefaction", "abundance_table.tsv")
@@ -1060,6 +1086,39 @@ if "denoiser" in config["global"]:
             echo "\nTaxonomy.....OK" >> {params.logfile}
           """
 
+        rule build_taxorank_tables_qza:
+            input: asv_table = getInput("summarize_table", "table.qza"),
+                taxo = getOutput("taxonomy", "taxonomy.qza")
+            output: phylum_qza = getOutput("taxorank_tables", "phylum_table.qza"),
+                class_qza = getOutput("taxorank_tables", "class_table.qza"),
+                order_qza = getOutput("taxorank_tables", "order_table.qza"),
+                family_qza = getOutput("taxorank_tables", "family_table.qza"),
+                genus_qza = getOutput("taxorank_tables", "genus_table.qza"),
+                species_qza = getOutput("taxorank_tables", "species_table.qza"),
+                asv_qza = getOutput("taxorank_tables", "asv_table.qza")
+            conda: qiime2_yml
+            shell: """
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 2 --o-collapsed-table {output.phylum_qza}
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 3 --o-collapsed-table {output.class_qza}
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 4 --o-collapsed-table {output.order_qza}
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 5 --o-collapsed-table {output.family_qza}
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 6 --o-collapsed-table {output.genus_qza}
+            qiime taxa collapse --i-table {input.asv_table} --i-taxonomy {input.taxo} --p-level 7 --o-collapsed-table {output.species_qza}
+
+            # Copy the ASV table in the same folder as other taxorank tables so that ANCOM will be run on each table
+            cp {input.asv_table} {output.asv_qza}  
+            """
+
+        rule build_taxo_rank_tables_tsv:
+            input: getOutput("taxorank_tables", "{taxorank}.qza")
+            output: getOutput("taxorank_tables", "{taxorank}.tsv")
+            conda: qiime2_yml
+            shell: """
+            qiime tools export --input-path {input} --output-path `dirname {output}`/{wildcards.taxorank}
+            biom convert -i `dirname {output}`/{wildcards.taxorank}/feature-table.biom -o `dirname {output}`/{wildcards.taxorank}.tsv --to-tsv
+            rm -r `dirname {output}`/{wildcards.taxorank}
+            """
+
     rule prevalence_abundance:
         input: getOutput("export_table_tsv", "abundance_table.tsv"),
             getOutput("taxonomy", "taxons/metadata.tsv")
@@ -1073,12 +1132,12 @@ if "denoiser" in config["global"]:
 
         rule ancom:
             input:
-                getInput("ancom", "table.qza"),
+                getInput("ancom", "{taxorank}.qza"),
                 config["global"]["context"]
             output:
-                getOutput("ancom", "table-pseudocount.qza"),
-                getOutput("ancom", "ancom.qzv"),
-                getOutput("ancom", "volcano/index.html")
+                getOutput("ancom", "{taxorank}/table-pseudocount.qza"),
+                getOutput("ancom", "{taxorank}/ancom.qzv"),
+                getOutput("ancom", "{taxorank}/volcano/index.html")
             conda: qiime2_yml
             params: options = getOptions("ancom")
             shell: """
diff --git a/conda/qiime2-2019.10-py36-linux-conda.yml b/conda/qiime2-2019.10-py36-linux-conda.yml
deleted file mode 100644
index 73bff82ebb4c18d56072df8873df404c87b279d6..0000000000000000000000000000000000000000
--- a/conda/qiime2-2019.10-py36-linux-conda.yml
+++ /dev/null
@@ -1,339 +0,0 @@
-channels:
-- qiime2/label/r2019.10
-- conda-forge
-- bioconda
-- defaults
-dependencies:
-- _libgcc_mutex=0.1
-- _r-mutex=1.0.1
-- alsa-lib=1.1.5
-- arb-bio-tools=6.0.6
-- asn1crypto=1.2.0
-- atomicwrites=1.3.0
-- attrs=19.3.0
-- backcall=0.1.0
-- bibtexparser=1.1.0
-- binutils_impl_linux-64=2.31.1
-- binutils_linux-64=2.31.1
-- bioconductor-biobase=2.42.0
-- bioconductor-biocgenerics=0.28.0
-- bioconductor-biocparallel=1.16.6
-- bioconductor-biostrings=2.50.2
-- bioconductor-dada2=1.10.0
-- bioconductor-delayedarray=0.8.0
-- bioconductor-genomeinfodb=1.18.1
-- bioconductor-genomeinfodbdata=1.2.1
-- bioconductor-genomicalignments=1.18.1
-- bioconductor-genomicranges=1.34.0
-- bioconductor-iranges=2.16.0
-- bioconductor-rsamtools=1.34.0
-- bioconductor-s4vectors=0.20.1
-- bioconductor-shortread=1.40.0
-- bioconductor-summarizedexperiment=1.12.0
-- bioconductor-xvector=0.22.0
-- bioconductor-zlibbioc=1.28.0
-- biom-format=2.1.7
-- blas=2.14
-- blast=2.9.0
-- bleach=3.1.0
-- bokeh=1.3.4
-- boost=1.68.0
-- boost-cpp=1.68.0
-- bwidget=1.9.13
-- bzip2=1.0.8
-- ca-certificates=2019.9.11
-- cachecontrol=0.12.5
-- cairo=1.16.0
-- certifi=2019.9.11
-- cffi=1.13.1
-- chardet=3.0.4
-- click=7.0
-- cryptography=2.7
-- curl=7.65.3
-- cutadapt=2.6
-- cycler=0.10.0
-- cython=0.29.13
-- dbus=1.13.6
-- deblur=1.1.0
-- decorator=4.4.1
-- defusedxml=0.6.0
-- dendropy=4.4.0
-- dnaio=0.4
-- emperor=1.0.0b20
-- entrypoints=0.3
-- expat=2.2.5
-- fastcluster=1.1.25
-- fasttree=2.1.10
-- fontconfig=2.13.1
-- freetype=2.10.0
-- future=0.18.2
-- gcc_impl_linux-64=7.3.0
-- gcc_linux-64=7.3.0
-- gettext=0.19.8.1
-- gfortran_impl_linux-64=7.3.0
-- gfortran_linux-64=7.3.0
-- giflib=5.1.7
-- glib=2.58.3
-- gmp=6.1.2
-- gneiss=0.4.6
-- gnutls=3.6.5
-- graphite2=1.3.13
-- gsl=2.5
-- gst-plugins-base=1.14.5
-- gstreamer=1.14.5
-- gxx_impl_linux-64=7.3.0
-- gxx_linux-64=7.3.0
-- h5py=2.10.0
-- harfbuzz=2.4.0
-- hdf5=1.10.5
-- hdmedians=0.13
-- hmmer=3.1b2
-- icu=58.2
-- idna=2.8
-- ijson=2.5
-- importlib_metadata=0.23
-- ipykernel=5.1.3
-- ipython=7.9.0
-- ipython_genutils=0.2.0
-- ipywidgets=7.5.1
-- iqtree=1.6.12
-- jedi=0.15.1
-- jinja2=2.10.3
-- joblib=0.14.0
-- jpeg=9c
-- jsonschema=3.1.1
-- jupyter_client=5.3.3
-- jupyter_core=4.5.0
-- kiwisolver=1.1.0
-- krb5=1.16.3
-- lcms2=2.9
-- libarbdb=6.0.6
-- libblas=3.8.0
-- libcblas=3.8.0
-- libcurl=7.65.3
-- libedit=3.1.20170329
-- libffi=3.2.1
-- libgcc=7.2.0
-- libgcc-ng=9.1.0
-- libgfortran-ng=7.3.0
-- libiconv=1.15
-- liblapack=3.8.0
-- liblapacke=3.8.0
-- libopenblas=0.3.7
-- libpng=1.6.37
-- libsodium=1.0.17
-- libssh2=1.8.2
-- libstdcxx-ng=9.1.0
-- libtiff=4.0.10
-- libuuid=2.32.1
-- libxcb=1.13
-- libxml2=2.9.9
-- lockfile=0.12.2
-- lz4-c=1.8.3
-- mafft=7.310
-- make=4.2.1
-- markupsafe=1.1.1
-- matplotlib=3.1.0
-- matplotlib-base=3.1.0
-- mistune=0.8.4
-- more-itertools=7.2.0
-- msgpack-python=0.6.2
-- natsort=6.0.0
-- nbconvert=5.6.1
-- nbformat=4.4.0
-- ncurses=6.1
-- nettle=3.4.1
-- networkx=2.4
-- nose=1.3.7
-- notebook=6.0.1
-- numpy=1.17.3
-- olefile=0.46
-- openjdk=11.0.1
-- openssl=1.1.1c
-- packaging=19.2
-- pandas=0.25.2
-- pandoc=2.7.3
-- pandocfilters=1.4.2
-- pango=1.40.14
-- parso=0.5.1
-- patsy=0.5.1
-- pcre=8.43
-- perl=5.26.2
-- perl-archive-tar=2.32
-- perl-carp=1.38
-- perl-common-sense=3.74
-- perl-compress-raw-bzip2=2.087
-- perl-compress-raw-zlib=2.087
-- perl-exporter=5.72
-- perl-exporter-tiny=1.002001
-- perl-extutils-makemaker=7.36
-- perl-io-compress=2.087
-- perl-io-zlib=1.10
-- perl-json=4.02
-- perl-json-xs=2.34
-- perl-list-moreutils=0.428
-- perl-list-moreutils-xs=0.428
-- perl-pathtools=3.75
-- perl-scalar-list-utils=1.52
-- perl-types-serialiser=1.0
-- perl-xsloader=0.24
-- pexpect=4.7.0
-- pickleshare=0.7.5
-- pigz=2.3.4
-- pillow=6.2.1
-- pip=19.3.1
-- pixman=0.38.0
-- pluggy=0.12.0
-- prometheus_client=0.7.1
-- prompt_toolkit=2.0.10
-- psutil=5.6.3
-- pthread-stubs=0.4
-- ptyprocess=0.6.0
-- py=1.8.0
-- pycparser=2.19
-- pygments=2.4.2
-- pyopenssl=19.0.0
-- pyparsing=2.4.2
-- pyqt=5.9.2
-- pyrsistent=0.15.5
-- pysocks=1.7.1
-- pytest=5.2.2
-- python=3.6.7
-- python-dateutil=2.8.0
-- pytz=2019.3
-- pyyaml=5.1.2
-- pyzmq=18.1.0
-- q2-alignment=2019.10.0
-- q2-composition=2019.10.0
-- q2-cutadapt=2019.10.0
-- q2-dada2=2019.10.0
-- q2-deblur=2019.10.0
-- q2-demux=2019.10.0
-- q2-diversity=2019.10.0
-- q2-emperor=2019.10.0
-- q2-feature-classifier=2019.10.0
-- q2-feature-table=2019.10.0
-- q2-fragment-insertion=2019.10.0
-- q2-gneiss=2019.10.0
-- q2-longitudinal=2019.10.0
-- q2-metadata=2019.10.0
-- q2-phylogeny=2019.10.0
-- q2-quality-control=2019.10.0
-- q2-quality-filter=2019.10.0
-- q2-sample-classifier=2019.10.0
-- q2-taxa=2019.10.0
-- q2-types=2019.10.0
-- q2-vsearch=2019.10.0
-- q2cli=2019.10.0
-- q2templates=2019.10.0
-- qiime2=2019.10.0
-- qt=5.9.7
-- r-assertthat=0.2.1
-- r-backports=1.1.5
-- r-base=3.5.1
-- r-bh=1.69.0_1
-- r-bitops=1.0_6
-- r-cli=1.1.0
-- r-cluster=2.1.0
-- r-colorspace=1.4_1
-- r-crayon=1.3.4
-- r-data.table=1.12.6
-- r-digest=0.6.22
-- r-ellipsis=0.3.0
-- r-fansi=0.4.0
-- r-formatr=1.7
-- r-futile.logger=1.4.3
-- r-futile.options=1.0.1
-- r-ggplot2=3.2.1
-- r-glue=1.3.1
-- r-gtable=0.3.0
-- r-hwriter=1.3.2
-- r-labeling=0.3
-- r-lambda.r=1.2.4
-- r-lattice=0.20_38
-- r-latticeextra=0.6_28
-- r-lazyeval=0.2.2
-- r-magrittr=1.5
-- r-mass=7.3_51.4
-- r-matrix=1.2_17
-- r-matrixstats=0.55.0
-- r-mgcv=1.8_29
-- r-munsell=0.5.0
-- r-nlme=3.1_141
-- r-permute=0.9_5
-- r-pillar=1.4.2
-- r-pkgconfig=2.0.3
-- r-plyr=1.8.4
-- r-r6=2.4.0
-- r-rcolorbrewer=1.1_2
-- r-rcpp=1.0.2
-- r-rcppparallel=4.4.4
-- r-rcurl=1.95_4.12
-- r-reshape2=1.4.3
-- r-rlang=0.4.1
-- r-scales=1.0.0
-- r-snow=0.4_3
-- r-stringi=1.4.3
-- r-stringr=1.4.0
-- r-tibble=2.1.3
-- r-utf8=1.1.4
-- r-vctrs=0.2.0
-- r-vegan=2.5_6
-- r-viridislite=0.3.0
-- r-withr=2.1.2
-- r-zeallot=0.1.0
-- raxml=8.2.12
-- readline=8.0
-- requests=2.22.0
-- scikit-bio=0.5.5
-- scikit-learn=0.21.2
-- scipy=1.3.1
-- seaborn=0.9.0
-- send2trash=1.5.0
-- sepp=4.3.10
-- setuptools=41.6.0
-- sina=1.6.0
-- sip=4.19.8
-- six=1.12.0
-- sortmerna=2.0
-- sqlite=3.30.1
-- statsmodels=0.10.1
-- tbb=2019.9
-- terminado=0.8.2
-- testpath=0.4.2
-- tk=8.6.9
-- tktable=2.10
-- tornado=6.0.3
-- traitlets=4.3.3
-- tzlocal=2.0.0
-- unifrac=0.10.0
-- urllib3=1.25.6
-- vsearch=2.7.0
-- wcwidth=0.1.7
-- webencodings=0.5.1
-- wheel=0.33.6
-- widgetsnbextension=3.5.1
-- xopen=0.8.4
-- xorg-fixesproto=5.0
-- xorg-inputproto=2.3.2
-- xorg-kbproto=1.0.7
-- xorg-libice=1.0.10
-- xorg-libsm=1.2.3
-- xorg-libx11=1.6.9
-- xorg-libxau=1.0.9
-- xorg-libxdmcp=1.1.3
-- xorg-libxext=1.3.4
-- xorg-libxfixes=5.0.3
-- xorg-libxi=1.7.10
-- xorg-libxrender=0.9.10
-- xorg-libxtst=1.2.3
-- xorg-recordproto=1.14.2
-- xorg-renderproto=0.11.1
-- xorg-xextproto=7.3.0
-- xorg-xproto=7.0.31
-- xz=5.2.4
-- yaml=0.1.7
-- zeromq=4.3.2
-- zipp=0.6.0
-- zlib=1.2.11
-- zstd=1.4.3
diff --git a/conda/qiime2-2019.10-py36-osx-conda.yml b/conda/qiime2-2019.10-py36-osx-conda.yml
deleted file mode 100644
index ab4970e7b680d13f04f01c754f222b2a7b0bdd3a..0000000000000000000000000000000000000000
--- a/conda/qiime2-2019.10-py36-osx-conda.yml
+++ /dev/null
@@ -1,289 +0,0 @@
-channels:
-- qiime2/label/r2019.10
-- conda-forge
-- bioconda
-- defaults
-dependencies:
-- _r-mutex=1.0.1
-- appnope=0.1.0
-- arb-bio-tools=6.0.6
-- asn1crypto=1.2.0
-- atomicwrites=1.3.0
-- attrs=19.3.0
-- backcall=0.1.0
-- bibtexparser=1.1.0
-- bioconductor-biobase=2.42.0
-- bioconductor-biocgenerics=0.28.0
-- bioconductor-biocparallel=1.16.6
-- bioconductor-biostrings=2.50.2
-- bioconductor-dada2=1.10.0
-- bioconductor-delayedarray=0.8.0
-- bioconductor-genomeinfodb=1.18.1
-- bioconductor-genomeinfodbdata=1.2.1
-- bioconductor-genomicalignments=1.18.1
-- bioconductor-genomicranges=1.34.0
-- bioconductor-iranges=2.16.0
-- bioconductor-rsamtools=1.34.0
-- bioconductor-s4vectors=0.20.1
-- bioconductor-shortread=1.40.0
-- bioconductor-summarizedexperiment=1.12.0
-- bioconductor-xvector=0.22.0
-- bioconductor-zlibbioc=1.28.0
-- biom-format=2.1.7
-- blas=2.12
-- blast=2.6.0
-- bleach=3.1.0
-- bokeh=1.3.4
-- boost=1.67.0
-- boost-cpp=1.67.0
-- bwidget=1.9.13
-- bzip2=1.0.8
-- ca-certificates=2019.9.11
-- cachecontrol=0.12.5
-- cairo=1.14.12
-- cctools=921
-- certifi=2019.6.16
-- cffi=1.13.1
-- chardet=3.0.4
-- clang=9.0.0
-- clang_osx-64=9.0.0
-- clangxx=9.0.0
-- clangxx_osx-64=9.0.0
-- click=7.0
-- compiler-rt=9.0.0
-- cryptography=2.7
-- curl=7.65.3
-- cutadapt=2.6
-- cycler=0.10.0
-- cython=0.29.13
-- deblur=1.1.0
-- decorator=4.4.1
-- defusedxml=0.6.0
-- dendropy=4.2.0
-- dnaio=0.4
-- emperor=1.0.0b20
-- entrypoints=0.3
-- fastcluster=1.1.25
-- fasttree=2.1.10
-- fontconfig=2.13.1
-- freetype=2.10.0
-- future=0.18.2
-- gettext=0.19.8.1
-- gfortran_osx-64=4.8.5
-- glib=2.56.2
-- gneiss=0.4.6
-- graphite2=1.3.13
-- h5py=2.10.0
-- harfbuzz=1.9.0
-- hdf5=1.10.5
-- hdmedians=0.13
-- hmmer=3.1b2
-- icu=58.2
-- idna=2.8
-- ijson=2.5
-- importlib_metadata=0.23
-- ipykernel=5.1.3
-- ipython=7.9.0
-- ipython_genutils=0.2.0
-- ipywidgets=7.5.1
-- iqtree=1.6.12
-- jedi=0.15.1
-- jinja2=2.10.3
-- joblib=0.14.0
-- jpeg=9c
-- jsonschema=3.1.1
-- jupyter_client=5.3.3
-- jupyter_core=4.5.0
-- kiwisolver=1.1.0
-- krb5=1.16.3
-- ld64=409.12
-- libarbdb=6.0.6
-- libblas=3.8.0
-- libcblas=3.8.0
-- libcurl=7.65.3
-- libcxx=9.0.0
-- libedit=3.1.20170329
-- libffi=3.2.1
-- libgcc=4.8.5
-- libgfortran=3.0.1
-- libiconv=1.15
-- liblapack=3.8.0
-- liblapacke=3.8.0
-- libllvm9=9.0.0
-- libopenblas=0.3.7
-- libpng=1.6.37
-- libsodium=1.0.17
-- libssh2=1.8.2
-- libtiff=4.0.10
-- libxml2=2.9.9
-- llvm-openmp=8.0.1
-- lockfile=0.12.2
-- lz4-c=1.8.3
-- mafft=7.310
-- make=4.2.1
-- markupsafe=1.1.1
-- matplotlib=3.1.0
-- matplotlib-base=3.1.0
-- mistune=0.8.4
-- more-itertools=7.2.0
-- msgpack-python=0.6.2
-- natsort=6.0.0
-- nbconvert=5.6.1
-- nbformat=4.4.0
-- ncurses=6.1
-- networkx=2.4
-- nose=1.3.7
-- notebook=6.0.1
-- numpy=1.17.3
-- olefile=0.46
-- openjdk=11.0.1
-- openmp=8.0.1
-- openssl=1.1.1c
-- packaging=19.2
-- pandas=0.25.2
-- pandoc=2.7.3
-- pandocfilters=1.4.2
-- pango=1.40.14
-- parso=0.5.1
-- patsy=0.5.1
-- pcre=8.43
-- pexpect=4.7.0
-- pickleshare=0.7.5
-- pigz=2.3.4
-- pillow=6.2.1
-- pip=19.3.1
-- pixman=0.34.0
-- pluggy=0.12.0
-- prometheus_client=0.7.1
-- prompt_toolkit=2.0.10
-- psutil=5.6.3
-- ptyprocess=0.6.0
-- py=1.8.0
-- pycparser=2.19
-- pygments=2.4.2
-- pyopenssl=19.0.0
-- pyparsing=2.4.2
-- pyrsistent=0.15.5
-- pysocks=1.7.1
-- pytest=5.2.2
-- python=3.6.7
-- python-dateutil=2.8.0
-- pytz=2019.3
-- pyyaml=5.1.2
-- pyzmq=18.1.0
-- q2-alignment=2019.10.0
-- q2-composition=2019.10.0
-- q2-cutadapt=2019.10.0
-- q2-dada2=2019.10.0
-- q2-deblur=2019.10.0
-- q2-demux=2019.10.0
-- q2-diversity=2019.10.0
-- q2-emperor=2019.10.0
-- q2-feature-classifier=2019.10.0
-- q2-feature-table=2019.10.0
-- q2-fragment-insertion=2019.10.0
-- q2-gneiss=2019.10.0
-- q2-longitudinal=2019.10.0
-- q2-metadata=2019.10.0
-- q2-phylogeny=2019.10.0
-- q2-quality-control=2019.10.0
-- q2-quality-filter=2019.10.0
-- q2-sample-classifier=2019.10.0
-- q2-taxa=2019.10.0
-- q2-types=2019.10.0
-- q2-vsearch=2019.10.0
-- q2cli=2019.10.0
-- q2templates=2019.10.0
-- qiime2=2019.10.0
-- r-assertthat=0.2.1
-- r-backports=1.1.5
-- r-base=3.5.1
-- r-bh=1.69.0_1
-- r-bitops=1.0_6
-- r-cli=1.1.0
-- r-cluster=2.1.0
-- r-colorspace=1.4_1
-- r-crayon=1.3.4
-- r-data.table=1.12.2
-- r-digest=0.6.22
-- r-ellipsis=0.3.0
-- r-fansi=0.4.0
-- r-formatr=1.7
-- r-futile.logger=1.4.3
-- r-futile.options=1.0.1
-- r-ggplot2=3.2.1
-- r-glue=1.3.1
-- r-gtable=0.3.0
-- r-hwriter=1.3.2
-- r-labeling=0.3
-- r-lambda.r=1.2.4
-- r-lattice=0.20_38
-- r-latticeextra=0.6_28
-- r-lazyeval=0.2.2
-- r-magrittr=1.5
-- r-mass=7.3_51.4
-- r-matrix=1.2_17
-- r-matrixstats=0.55.0
-- r-mgcv=1.8_28
-- r-munsell=0.5.0
-- r-nlme=3.1_141
-- r-permute=0.9_5
-- r-pillar=1.4.2
-- r-pkgconfig=2.0.3
-- r-plyr=1.8.4
-- r-r6=2.4.0
-- r-rcolorbrewer=1.1_2
-- r-rcpp=1.0.2
-- r-rcppparallel=4.4.4
-- r-rcurl=1.95_4.12
-- r-reshape2=1.4.3
-- r-rlang=0.4.1
-- r-scales=1.0.0
-- r-snow=0.4_3
-- r-stringi=1.4.3
-- r-stringr=1.4.0
-- r-tibble=2.1.3
-- r-utf8=1.1.4
-- r-vctrs=0.2.0
-- r-vegan=2.5_6
-- r-viridislite=0.3.0
-- r-withr=2.1.2
-- r-zeallot=0.1.0
-- raxml=8.2.12
-- readline=7.0
-- requests=2.22.0
-- scikit-bio=0.5.5
-- scikit-learn=0.21.2
-- scipy=1.3.1
-- seaborn=0.9.0
-- send2trash=1.5.0
-- sepp=4.3.10
-- setuptools=41.6.0
-- sina=1.4.0
-- six=1.12.0
-- sortmerna=2.0
-- sqlite=3.28.0
-- statsmodels=0.10.1
-- tapi=1000.10.8
-- tbb=2019.9
-- terminado=0.8.2
-- testpath=0.4.2
-- tk=8.6.9
-- tktable=2.10
-- tornado=6.0.3
-- traitlets=4.3.3
-- tzlocal=2.0.0
-- unifrac=0.10.0
-- urllib3=1.25.6
-- vsearch=2.7.0
-- wcwidth=0.1.7
-- webencodings=0.5.1
-- wheel=0.33.6
-- widgetsnbextension=3.5.1
-- xopen=0.8.4
-- xz=5.2.4
-- yaml=0.1.7
-- zeromq=4.3.2
-- zipp=0.6.0
-- zlib=1.2.11
-- zstd=1.4.3
diff --git a/conda/qiime2-2020.6-py36-linux-conda.yml b/conda/qiime2-2020.6-py36-linux-conda.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e96504a0a4b71e0ee8b04f36c0ab48d143340ef4
--- /dev/null
+++ b/conda/qiime2-2020.6-py36-linux-conda.yml
@@ -0,0 +1,416 @@
+channels:
+  - qiime2/label/r2020.6
+  - conda-forge
+  - bioconda
+  - defaults
+dependencies:
+  - _libgcc_mutex=0.1
+  - _openmp_mutex=4.5
+  - _r-mutex=1.0.1
+  - alsa-lib=1.1.5
+  - arb-bio-tools=6.0.6
+  - attrs=19.3.0
+  - backcall=0.2.0
+  - bibtexparser=1.1.0
+  - binutils_impl_linux-64=2.34
+  - binutils_linux-64=2.34
+  - bioconductor-biobase=2.42.0
+  - bioconductor-biocgenerics=0.28.0
+  - bioconductor-biocparallel=1.16.6
+  - bioconductor-biostrings=2.50.2
+  - bioconductor-dada2=1.10.0
+  - bioconductor-delayedarray=0.8.0
+  - bioconductor-genomeinfodb=1.18.1
+  - bioconductor-genomeinfodbdata=1.2.1
+  - bioconductor-genomicalignments=1.18.1
+  - bioconductor-genomicranges=1.34.0
+  - bioconductor-iranges=2.16.0
+  - bioconductor-rsamtools=1.34.0
+  - bioconductor-s4vectors=0.20.1
+  - bioconductor-shortread=1.40.0
+  - bioconductor-summarizedexperiment=1.12.0
+  - bioconductor-xvector=0.22.0
+  - bioconductor-zlibbioc=1.28.0
+  - biom-format=2.1.8
+  - blas=2.16
+  - blast=2.9.0
+  - bleach=3.1.5
+  - bokeh=2.1.1
+  - boost-cpp=1.70.0
+  - bowtie2=2.4.1
+  - brotlipy=0.7.0
+  - bwidget=1.9.14
+  - bzip2=1.0.8
+  - ca-certificates=2020.6.20
+  - cachecontrol=0.12.6
+  - cairo=1.16.0
+  - certifi=2020.6.20
+  - cffi=1.14.0
+  - chardet=3.0.4
+  - click=7.1.2
+  - cryptography=2.9.2
+  - curl=7.68.0
+  - cutadapt=2.10
+  - cycler=0.10.0
+  - cython=0.29.20
+  - dbus=1.13.6
+  - deblur=1.1.0
+  - decorator=4.4.2
+  - defusedxml=0.6.0
+  - dendropy=4.4.0
+  - dnaio=0.4.2
+  - emperor=1.0.1
+  - entrez-direct=13.3
+  - entrypoints=0.3
+  - expat=2.2.9
+  - fastcluster=1.1.26
+  - fasttree=2.1.10
+  - fontconfig=2.13.1
+  - freetype=2.10.2
+  - fribidi=1.0.9
+  - future=0.18.2
+  - gcc_impl_linux-64=7.5.0
+  - gcc_linux-64=7.5.0
+  - gettext=0.19.8.1
+  - gfortran_impl_linux-64=7.5.0
+  - gfortran_linux-64=7.5.0
+  - giflib=5.2.1
+  - glib=2.65.0
+  - gneiss=0.4.6
+  - graphite2=1.3.13
+  - gsl=2.5
+  - gst-plugins-base=1.14.5
+  - gstreamer=1.14.5
+  - gxx_impl_linux-64=7.5.0
+  - gxx_linux-64=7.5.0
+  - h5py=2.10.0
+  - harfbuzz=2.4.0
+  - hdf5=1.10.5
+  - hdmedians=0.13
+  - hmmer=3.1b2
+  - icu=64.2
+  - idna=2.9
+  - ijson=3.0.4
+  - importlib-metadata=1.6.1
+  - importlib_metadata=1.6.1
+  - ipykernel=5.3.0
+  - ipython=7.15.0
+  - ipython_genutils=0.2.0
+  - ipywidgets=7.5.1
+  - iqtree=2.0.3
+  - jedi=0.17.1
+  - jinja2=2.11.2
+  - joblib=0.15.1
+  - jpeg=9d
+  - jsonschema=3.2.0
+  - jupyter_client=6.1.3
+  - jupyter_core=4.6.3
+  - kiwisolver=1.2.0
+  - krb5=1.16.4
+  - lcms2=2.11
+  - ld_impl_linux-64=2.34
+  - libarbdb=6.0.6
+  - libblas=3.8.0
+  - libcblas=3.8.0
+  - libclang=9.0.1
+  - libcurl=7.68.0
+  - libedit=3.1.20191231
+  - libffi=3.2.1
+  - libgcc=7.2.0
+  - libgcc-ng=9.2.0
+  - libgfortran-ng=7.5.0
+  - libgomp=9.2.0
+  - libiconv=1.15
+  - liblapack=3.8.0
+  - liblapacke=3.8.0
+  - libllvm9=9.0.1
+  - libopenblas=0.3.9
+  - libpng=1.6.37
+  - libsodium=1.0.17
+  - libssh2=1.9.0
+  - libstdcxx-ng=9.2.0
+  - libtiff=4.1.0
+  - libuuid=2.32.1
+  - libwebp-base=1.1.0
+  - libxcb=1.13
+  - libxkbcommon=0.10.0
+  - libxml2=2.9.10
+  - llvm-openmp=10.0.0
+  - lockfile=0.12.2
+  - lz4-c=1.9.2
+  - mafft=7.470
+  - make=4.3
+  - markupsafe=1.1.1
+  - matplotlib=3.2.2
+  - matplotlib-base=3.2.2
+  - mistune=0.8.4
+  - more-itertools=8.4.0
+  - msgpack-python=1.0.0
+  - natsort=7.0.1
+  - nbconvert=5.6.1
+  - nbformat=5.0.6
+  - ncurses=6.1
+  - networkx=2.4
+  - nose=1.3.7
+  - notebook=6.0.3
+  - nspr=4.25
+  - nss=3.47
+  - numpy=1.18.5
+  - olefile=0.46
+  - openjdk=11.0.1
+  - openssl=1.1.1g
+  - packaging=20.4
+  - pandas=0.25.3
+  - pandoc=2.9.2.1
+  - pandocfilters=1.4.2
+  - pango=1.42.4
+  - parso=0.7.0
+  - patsy=0.5.1
+  - pcre=8.44
+  - perl=5.26.2
+  - perl-app-cpanminus=1.7044
+  - perl-archive-tar=2.32
+  - perl-base=2.23
+  - perl-business-isbn=3.004
+  - perl-business-isbn-data=20140910.003
+  - perl-carp=1.38
+  - perl-common-sense=3.74
+  - perl-compress-raw-bzip2=2.087
+  - perl-compress-raw-zlib=2.087
+  - perl-constant=1.33
+  - perl-data-dumper=2.173
+  - perl-digest-hmac=1.03
+  - perl-digest-md5=2.55
+  - perl-encode=2.88
+  - perl-encode-locale=1.05
+  - perl-exporter=5.72
+  - perl-exporter-tiny=1.002001
+  - perl-extutils-makemaker=7.36
+  - perl-file-listing=6.04
+  - perl-file-path=2.16
+  - perl-file-temp=0.2304
+  - perl-html-parser=3.72
+  - perl-html-tagset=3.20
+  - perl-html-tree=5.07
+  - perl-http-cookies=6.04
+  - perl-http-daemon=6.01
+  - perl-http-date=6.02
+  - perl-http-message=6.18
+  - perl-http-negotiate=6.01
+  - perl-io-compress=2.087
+  - perl-io-html=1.001
+  - perl-io-socket-ssl=2.066
+  - perl-io-zlib=1.10
+  - perl-json=4.02
+  - perl-json-xs=2.34
+  - perl-libwww-perl=6.39
+  - perl-list-moreutils=0.428
+  - perl-list-moreutils-xs=0.428
+  - perl-lwp-mediatypes=6.04
+  - perl-lwp-protocol-https=6.07
+  - perl-mime-base64=3.15
+  - perl-mozilla-ca=20180117
+  - perl-net-http=6.19
+  - perl-net-ssleay=1.88
+  - perl-ntlm=1.09
+  - perl-parent=0.236
+  - perl-pathtools=3.75
+  - perl-scalar-list-utils=1.52
+  - perl-socket=2.027
+  - perl-storable=3.15
+  - perl-test-requiresinternet=0.05
+  - perl-time-local=1.28
+  - perl-try-tiny=0.30
+  - perl-types-serialiser=1.0
+  - perl-uri=1.76
+  - perl-www-robotrules=6.02
+  - perl-xml-namespacesupport=1.12
+  - perl-xml-parser=2.44_01
+  - perl-xml-sax=1.02
+  - perl-xml-sax-base=1.09
+  - perl-xml-sax-expat=0.51
+  - perl-xml-simple=2.25
+  - perl-xsloader=0.24
+  - pexpect=4.8.0
+  - pickleshare=0.7.5
+  - pigz=2.3.4
+  - pillow=7.1.2
+  - pip=20.1.1
+  - pixman=0.38.0
+  - pluggy=0.13.1
+  - prometheus_client=0.8.0
+  - prompt-toolkit=3.0.5
+  - psutil=5.7.0
+  - pthread-stubs=0.4
+  - ptyprocess=0.6.0
+  - py=1.8.2
+  - pycparser=2.20
+  - pygments=2.6.1
+  - pyopenssl=19.1.0
+  - pyparsing=2.4.7
+  - pyqt=5.12.3
+  - pyrsistent=0.16.0
+  - pysocks=1.7.1
+  - pytest=5.4.3
+  - python=3.6.10
+  - python-dateutil=2.8.1
+  - python_abi=3.6
+  - pytz=2020.1
+  - pyyaml=5.3.1
+  - pyzmq=19.0.1
+  - q2-alignment=2020.6.0
+  - q2-composition=2020.6.0
+  - q2-cutadapt=2020.6.0
+  - q2-dada2=2020.6.0
+  - q2-deblur=2020.6.0
+  - q2-demux=2020.6.0
+  - q2-diversity=2020.6.0
+  - q2-diversity-lib=2020.6.0
+  - q2-emperor=2020.6.0
+  - q2-feature-classifier=2020.6.0
+  - q2-feature-table=2020.6.0
+  - q2-fragment-insertion=2020.6.0
+  - q2-gneiss=2020.6.0
+  - q2-longitudinal=2020.6.0
+  - q2-metadata=2020.6.0
+  - q2-phylogeny=2020.6.0
+  - q2-quality-control=2020.6.0
+  - q2-quality-filter=2020.6.0
+  - q2-sample-classifier=2020.6.0
+  - q2-taxa=2020.6.0
+  - q2-types=2020.6.0
+  - q2-vsearch=2020.6.0
+  - q2cli=2020.6.0
+  - q2templates=2020.6.0
+  - qiime2=2020.6.0
+  - qt=5.12.5
+  - r-assertthat=0.2.1
+  - r-backports=1.1.6
+  - r-base=3.5.1
+  - r-bh=1.72.0_3
+  - r-bitops=1.0_6
+  - r-callr=3.4.3
+  - r-cli=2.0.2
+  - r-cluster=2.1.0
+  - r-colorspace=1.4_1
+  - r-crayon=1.3.4
+  - r-data.table=1.12.8
+  - r-desc=1.2.0
+  - r-digest=0.6.25
+  - r-ellipsis=0.3.0
+  - r-evaluate=0.14
+  - r-fansi=0.4.1
+  - r-farver=2.0.3
+  - r-formatr=1.7
+  - r-futile.logger=1.4.3
+  - r-futile.options=1.0.1
+  - r-ggplot2=3.3.0
+  - r-glue=1.4.0
+  - r-gtable=0.3.0
+  - r-hwriter=1.3.2
+  - r-isoband=0.2.1
+  - r-labeling=0.3
+  - r-lambda.r=1.2.4
+  - r-lattice=0.20_41
+  - r-latticeextra=0.6_28
+  - r-lifecycle=0.2.0
+  - r-magrittr=1.5
+  - r-mass=7.3_51.6
+  - r-matrix=1.2_18
+  - r-matrixstats=0.56.0
+  - r-mgcv=1.8_31
+  - r-munsell=0.5.0
+  - r-nlme=3.1_147
+  - r-permute=0.9_5
+  - r-pillar=1.4.3
+  - r-pkgbuild=1.0.7
+  - r-pkgconfig=2.0.3
+  - r-pkgload=1.0.2
+  - r-plyr=1.8.6
+  - r-praise=1.0.0
+  - r-prettyunits=1.1.1
+  - r-processx=3.4.2
+  - r-ps=1.3.2
+  - r-r6=2.4.1
+  - r-rcolorbrewer=1.1_2
+  - r-rcpp=1.0.4.6
+  - r-rcppparallel=5.0.0
+  - r-rcurl=1.98_1.2
+  - r-reshape2=1.4.4
+  - r-rlang=0.4.5
+  - r-rprojroot=1.3_2
+  - r-rstudioapi=0.11
+  - r-scales=1.1.0
+  - r-snow=0.4_3
+  - r-stringi=1.4.6
+  - r-stringr=1.4.0
+  - r-testthat=2.3.2
+  - r-tibble=3.0.1
+  - r-utf8=1.1.4
+  - r-vctrs=0.2.4
+  - r-vegan=2.5_6
+  - r-viridislite=0.3.0
+  - r-withr=2.2.0
+  - r-zeallot=0.1.0
+  - raxml=8.2.12
+  - readline=8.0
+  - requests=2.24.0
+  - samtools=1.7
+  - scikit-bio=0.5.5
+  - scikit-learn=0.23.1
+  - scipy=1.4.1
+  - seaborn=0.10.1
+  - seaborn-base=0.10.1
+  - send2trash=1.5.0
+  - sepp=4.3.10
+  - setuptools=47.3.1
+  - sina=1.6.1
+  - six=1.15.0
+  - sortmerna=2.0
+  - sqlite=3.30.1
+  - statsmodels=0.11.1
+  - tbb=2020.1
+  - terminado=0.8.3
+  - testpath=0.4.4
+  - threadpoolctl=2.1.0
+  - tk=8.6.10
+  - tktable=2.10
+  - tornado=6.0.4
+  - traitlets=4.3.3
+  - typing_extensions=3.7.4.2
+  - tzlocal=2.1
+  - unifrac=0.10.0
+  - urllib3=1.25.9
+  - vsearch=2.7.0
+  - wcwidth=0.2.5
+  - webencodings=0.5.1
+  - wheel=0.34.2
+  - widgetsnbextension=3.5.1
+  - xopen=0.9.0
+  - xorg-fixesproto=5.0
+  - xorg-inputproto=2.3.2
+  - xorg-kbproto=1.0.7
+  - xorg-libice=1.0.10
+  - xorg-libsm=1.2.3
+  - xorg-libx11=1.6.9
+  - xorg-libxau=1.0.9
+  - xorg-libxdmcp=1.1.3
+  - xorg-libxext=1.3.4
+  - xorg-libxfixes=5.0.3
+  - xorg-libxi=1.7.10
+  - xorg-libxrender=0.9.10
+  - xorg-libxtst=1.2.3
+  - xorg-recordproto=1.14.2
+  - xorg-renderproto=0.11.1
+  - xorg-xextproto=7.3.0
+  - xorg-xproto=7.0.31
+  - xz=5.2.5
+  - yaml=0.2.5
+  - zeromq=4.3.2
+  - zipp=3.1.0
+  - zlib=1.2.11
+  - zstd=1.4.4
+  - pip:
+      - pyqt5-sip==4.19.18
+      - pyqtchart==5.12
+      - pyqtwebengine==5.12.1
diff --git a/conda/qiime2-2020.6-py36-osx-conda.yml b/conda/qiime2-2020.6-py36-osx-conda.yml
new file mode 100644
index 0000000000000000000000000000000000000000..ed3db59b630f57cd3eb3848e48759634f285b064
--- /dev/null
+++ b/conda/qiime2-2020.6-py36-osx-conda.yml
@@ -0,0 +1,321 @@
+channels:
+  - qiime2/label/r2020.6
+  - conda-forge
+  - bioconda
+  - defaults
+dependencies:
+  - _r-mutex=1.0.1
+  - appnope=0.1.0
+  - arb-bio-tools=6.0.6
+  - attrs=19.3.0
+  - backcall=0.2.0
+  - bibtexparser=1.1.0
+  - bioconductor-biobase=2.42.0
+  - bioconductor-biocgenerics=0.28.0
+  - bioconductor-biocparallel=1.16.2
+  - bioconductor-biostrings=2.50.2
+  - bioconductor-dada2=1.10.0
+  - bioconductor-delayedarray=0.8.0
+  - bioconductor-genomeinfodb=1.18.1
+  - bioconductor-genomeinfodbdata=1.2.1
+  - bioconductor-genomicalignments=1.18.1
+  - bioconductor-genomicranges=1.34.0
+  - bioconductor-iranges=2.16.0
+  - bioconductor-rsamtools=1.34.0
+  - bioconductor-s4vectors=0.20.1
+  - bioconductor-shortread=1.40.0
+  - bioconductor-summarizedexperiment=1.12.0
+  - bioconductor-xvector=0.22.0
+  - bioconductor-zlibbioc=1.28.0
+  - biom-format=2.1.8
+  - blas=2.16
+  - blast=2.6.0
+  - bleach=3.1.5
+  - bokeh=2.1.1
+  - boost-cpp=1.70.0
+  - bowtie2=2.4.1
+  - brotlipy=0.7.0
+  - bwidget=1.9.14
+  - bzip2=1.0.8
+  - ca-certificates=2020.6.20
+  - cachecontrol=0.12.6
+  - cairo=1.16.0
+  - cctools=927.0.2
+  - certifi=2020.6.20
+  - cffi=1.14.0
+  - chardet=3.0.4
+  - clang=9.0.1
+  - clang-tools=9.0.1
+  - clang_osx-64=9.0.1
+  - clangxx=9.0.1
+  - clangxx_osx-64=9.0.1
+  - click=7.1.2
+  - compiler-rt=9.0.1
+  - compiler-rt_osx-64=9.0.1
+  - cryptography=2.9.2
+  - curl=7.68.0
+  - cutadapt=2.10
+  - cycler=0.10.0
+  - cython=0.29.20
+  - deblur=1.1.0
+  - decorator=4.4.2
+  - defusedxml=0.6.0
+  - dendropy=4.2.0
+  - dnaio=0.4.2
+  - emperor=1.0.1
+  - entrypoints=0.3
+  - fastcluster=1.1.26
+  - fasttree=2.1.10
+  - fontconfig=2.13.1
+  - freetype=2.10.2
+  - fribidi=1.0.9
+  - future=0.18.2
+  - gettext=0.19.8.1
+  - gfortran_impl_osx-64=7.3.0
+  - gfortran_osx-64=7.3.0
+  - glib=2.65.0
+  - gmp=6.2.0
+  - gneiss=0.4.6
+  - graphite2=1.3.13
+  - gsl=2.5
+  - h5py=2.10.0
+  - harfbuzz=2.4.0
+  - hdf5=1.10.5
+  - hdmedians=0.13
+  - hmmer=3.1b2
+  - htslib=1.10.2
+  - icu=64.2
+  - idna=2.9
+  - ijson=3.0.4
+  - importlib-metadata=1.6.1
+  - importlib_metadata=1.6.1
+  - ipykernel=5.3.0
+  - ipython=7.15.0
+  - ipython_genutils=0.2.0
+  - ipywidgets=7.5.1
+  - iqtree=2.0.3
+  - isl=0.19
+  - jedi=0.17.1
+  - jinja2=2.11.2
+  - joblib=0.15.1
+  - jpeg=9d
+  - jsonschema=3.2.0
+  - jupyter_client=6.1.3
+  - jupyter_core=4.6.3
+  - kiwisolver=1.2.0
+  - krb5=1.16.4
+  - ld64=450.3
+  - libarbdb=6.0.6
+  - libblas=3.8.0
+  - libcblas=3.8.0
+  - libcurl=7.68.0
+  - libcxx=10.0.0
+  - libdeflate=1.3
+  - libedit=3.1.20191231
+  - libffi=3.2.1
+  - libgcc=4.8.5
+  - libgfortran=4.0.0
+  - libiconv=1.15
+  - liblapack=3.8.0
+  - liblapacke=3.8.0
+  - libllvm9=9.0.1
+  - libopenblas=0.3.9
+  - libpng=1.6.37
+  - libsodium=1.0.17
+  - libssh2=1.9.0
+  - libtiff=4.1.0
+  - libwebp-base=1.1.0
+  - libxml2=2.9.10
+  - llvm-openmp=10.0.0
+  - lockfile=0.12.2
+  - lz4-c=1.9.2
+  - mafft=7.470
+  - make=4.3
+  - markupsafe=1.1.1
+  - matplotlib=3.2.2
+  - matplotlib-base=3.2.2
+  - mistune=0.8.4
+  - more-itertools=8.4.0
+  - mpc=1.1.0
+  - mpfr=4.0.2
+  - msgpack-python=1.0.0
+  - natsort=7.0.1
+  - nbconvert=5.6.1
+  - nbformat=5.0.6
+  - ncurses=6.1
+  - networkx=2.4
+  - nose=1.3.7
+  - notebook=6.0.3
+  - numpy=1.18.5
+  - olefile=0.46
+  - openjdk=11.0.1
+  - openssl=1.1.1g
+  - packaging=20.4
+  - pandas=0.25.3
+  - pandoc=2.9.2.1
+  - pandocfilters=1.4.2
+  - pango=1.42.4
+  - parso=0.7.0
+  - patsy=0.5.1
+  - pcre=8.44
+  - perl=5.26.2
+  - pexpect=4.8.0
+  - pickleshare=0.7.5
+  - pigz=2.3.4
+  - pillow=7.1.2
+  - pip=20.1.1
+  - pixman=0.38.0
+  - pluggy=0.13.1
+  - prometheus_client=0.8.0
+  - prompt-toolkit=3.0.5
+  - psutil=5.7.0
+  - ptyprocess=0.6.0
+  - py=1.8.2
+  - pycparser=2.20
+  - pygments=2.6.1
+  - pyopenssl=19.1.0
+  - pyparsing=2.4.7
+  - pyrsistent=0.16.0
+  - pysocks=1.7.1
+  - pytest=5.4.3
+  - python=3.6.10
+  - python-dateutil=2.8.1
+  - python_abi=3.6
+  - pytz=2020.1
+  - pyyaml=5.3.1
+  - pyzmq=19.0.1
+  - q2-alignment=2020.6.0
+  - q2-composition=2020.6.0
+  - q2-cutadapt=2020.6.0
+  - q2-dada2=2020.6.0
+  - q2-deblur=2020.6.0
+  - q2-demux=2020.6.0
+  - q2-diversity=2020.6.0
+  - q2-diversity-lib=2020.6.0
+  - q2-emperor=2020.6.0
+  - q2-feature-classifier=2020.6.0
+  - q2-feature-table=2020.6.0
+  - q2-fragment-insertion=2020.6.0
+  - q2-gneiss=2020.6.0
+  - q2-longitudinal=2020.6.0
+  - q2-metadata=2020.6.0
+  - q2-phylogeny=2020.6.0
+  - q2-quality-control=2020.6.0
+  - q2-quality-filter=2020.6.0
+  - q2-sample-classifier=2020.6.0
+  - q2-taxa=2020.6.0
+  - q2-types=2020.6.0
+  - q2-vsearch=2020.6.0
+  - q2cli=2020.6.0
+  - q2templates=2020.6.0
+  - qiime2=2020.6.0
+  - r-assertthat=0.2.1
+  - r-backports=1.1.6
+  - r-base=3.5.1
+  - r-bh=1.72.0_3
+  - r-bitops=1.0_6
+  - r-callr=3.4.3
+  - r-cli=2.0.2
+  - r-cluster=2.1.0
+  - r-colorspace=1.4_1
+  - r-crayon=1.3.4
+  - r-data.table=1.12.8
+  - r-desc=1.2.0
+  - r-digest=0.6.25
+  - r-ellipsis=0.3.0
+  - r-evaluate=0.14
+  - r-fansi=0.4.1
+  - r-farver=2.0.3
+  - r-formatr=1.7
+  - r-futile.logger=1.4.3
+  - r-futile.options=1.0.1
+  - r-ggplot2=3.3.0
+  - r-glue=1.4.0
+  - r-gtable=0.3.0
+  - r-hwriter=1.3.2
+  - r-isoband=0.2.1
+  - r-labeling=0.3
+  - r-lambda.r=1.2.4
+  - r-lattice=0.20_41
+  - r-latticeextra=0.6_28
+  - r-lifecycle=0.2.0
+  - r-magrittr=1.5
+  - r-mass=7.3_51.6
+  - r-matrix=1.2_18
+  - r-matrixstats=0.56.0
+  - r-mgcv=1.8_31
+  - r-munsell=0.5.0
+  - r-nlme=3.1_147
+  - r-permute=0.9_5
+  - r-pillar=1.4.3
+  - r-pkgbuild=1.0.7
+  - r-pkgconfig=2.0.3
+  - r-pkgload=1.0.2
+  - r-plyr=1.8.6
+  - r-praise=1.0.0
+  - r-prettyunits=1.1.1
+  - r-processx=3.4.2
+  - r-ps=1.3.2
+  - r-r6=2.4.1
+  - r-rcolorbrewer=1.1_2
+  - r-rcpp=1.0.4.6
+  - r-rcppparallel=5.0.0
+  - r-rcurl=1.98_1.2
+  - r-reshape2=1.4.4
+  - r-rlang=0.4.5
+  - r-rprojroot=1.3_2
+  - r-rstudioapi=0.11
+  - r-scales=1.1.0
+  - r-snow=0.4_3
+  - r-stringi=1.4.6
+  - r-stringr=1.4.0
+  - r-testthat=2.3.2
+  - r-tibble=3.0.1
+  - r-utf8=1.1.4
+  - r-vctrs=0.2.4
+  - r-vegan=2.5_6
+  - r-viridislite=0.3.0
+  - r-withr=2.2.0
+  - r-zeallot=0.1.0
+  - raxml=8.2.12
+  - readline=8.0
+  - requests=2.24.0
+  - samtools=1.10
+  - scikit-bio=0.5.5
+  - scikit-learn=0.23.1
+  - scipy=1.4.1
+  - seaborn=0.10.1
+  - seaborn-base=0.10.1
+  - send2trash=1.5.0
+  - sepp=4.3.10
+  - setuptools=47.3.1
+  - sina=1.6.1
+  - six=1.15.0
+  - sortmerna=2.0
+  - sqlite=3.30.1
+  - statsmodels=0.11.1
+  - tapi=1000.10.8
+  - tbb=2019.9
+  - terminado=0.8.3
+  - testpath=0.4.4
+  - threadpoolctl=2.1.0
+  - tk=8.6.10
+  - tktable=2.10
+  - tornado=6.0.4
+  - traitlets=4.3.3
+  - typing_extensions=3.7.4.2
+  - tzlocal=2.1
+  - unifrac=0.10.0
+  - urllib3=1.25.9
+  - vsearch=2.7.0
+  - wcwidth=0.2.5
+  - webencodings=0.5.1
+  - wheel=0.34.2
+  - widgetsnbextension=3.5.1
+  - xopen=0.9.0
+  - xz=5.2.5
+  - yaml=0.2.5
+  - zeromq=4.3.2
+  - zipp=3.1.0
+  - zlib=1.2.11
+  - zstd=1.4.4
diff --git a/config.json b/config.json
index f68a8dc0877751efea3b88321c939bd7a0c5be50..b56ba6f7288269cf34fc20e4e72ce93cddafa85c 100644
--- a/config.json
+++ b/config.json
@@ -13,6 +13,9 @@
     "diversity" : {
         "p-sampling-depth" : 2338
 	},
+	"beta_group_significance" : {
+		"m-metadata-column" : "time"
+	},
 	"ancom" : {
 		"m-metadata-column" : "time"
 	}
diff --git a/scripts/build_report/build_report.py b/scripts/build_report/build_report.py
index 2b226e1a55939e4c177ce6d9d1788bed2b83082e..41dd38450ce0ad84afdbca08f540c357bb3d8836 100644
--- a/scripts/build_report/build_report.py
+++ b/scripts/build_report/build_report.py
@@ -66,6 +66,17 @@ def gather_outputs():
         template_data["alpha_faith"] = "diversity/alpha_group_significance/faith_pd-group-significance/index.html"
         template_data["alpha_observedotus"] = "diversity/alpha_group_significance/observed_otus-group-significance/index.html"
 
+    # Get beta group significance data
+    if os.path.isfile(INDIR + "/beta_group_significance/bray_curtis_distance_matrix/index.html"):
+        shutil.copytree(INDIR + "/beta_group_significance/bray_curtis_distance_matrix", REPORT_DIR + "/diversity/beta_group_significance/bray_curtis_distance_matrix")
+        shutil.copytree(INDIR + "/beta_group_significance/jaccard_distance_matrix", REPORT_DIR + "/diversity/beta_group_significance/jaccard_distance_matrix")
+        shutil.copytree(INDIR + "/beta_group_significance/unweighted_unifrac_distance_matrix", REPORT_DIR + "/diversity/beta_group_significance/unweighted_unifrac_distance_matrix")
+        shutil.copytree(INDIR + "/beta_group_significance/weighted_unifrac_distance_matrix", REPORT_DIR + "/diversity/beta_group_significance/weighted_unifrac_distance_matrix")
+        template_data["bray_curtis"] = "diversity/beta_group_significance/bray_curtis_distance_matrix/index.html"
+        template_data["jaccard"] = "diversity/beta_group_significance/jaccard_distance_matrix/index.html"
+        template_data["uw_unifrac"] = "diversity/beta_group_significance/unweighted_unifrac_distance_matrix/index.html"
+        template_data["w_unifrac"] = "diversity/beta_group_significance/weighted_unifrac_distance_matrix/index.html"
+
     # Get taxonomic composition
     if os.path.isfile(INDIR + "/taxonomy/barplot/index.html"):
         shutil.copytree(INDIR + "/taxonomy/barplot", REPORT_DIR + "/taxonomy/barplot")
diff --git a/scripts/build_report/templates/build_report.html b/scripts/build_report/templates/build_report.html
index eac5980335d239b5bc0eba264f7027ac58d01913..f24adb65c119824adbb6e3ed364707aad8008d68 100644
--- a/scripts/build_report/templates/build_report.html
+++ b/scripts/build_report/templates/build_report.html
@@ -55,6 +55,11 @@
                 <li>
                 <a href="#betadiversity">Beta diversity</a>
                 </li>
+                {% if bray_curtis %}
+                <li>
+                <a href="#beta_group_significance">Beta group significance</a>
+                </li>
+                {% endif %}
                 <li>
                 <a href="#taxocompo">Taxonomic composition</a>
                 </li>
@@ -147,6 +152,18 @@
                             <a class="btn btn-primary" href="diversity/pcoa/weighted_unifrac/index.html" target="_blank" role="button">View Weighted Unifrac</a>
                         </div>
 
+                        {% if bray_curtis %}
+
+                        <!-- Beta group significance -->
+                        <div class="bs-callout bs-callout-danger" >
+                            <h4 id="beta_group_significance">Beta group significance</h4>
+                            <p>Beta group significance allows to determine if differences among groups are significant. Default method is PERMANOVA</p>
+                            <a class="btn btn-primary" href="{{bray_curtis}}" target="_blank" role="button">View Bray-Curtis</a>
+                            <a class="btn btn-primary" href="{{jaccard}}" target="_blank" role="button">View Jaccard</a>
+                            <a class="btn btn-primary" href="{{uw_unifrac}}" target="_blank" role="button">View Unweighted Unifrac</a>
+                            <a class="btn btn-primary" href="{{w_unifrac}}" target="_blank" role="button">View Weighted Unifrac</a>
+                        </div>
+                        {% endif %}
                         <!-- Taxonomy -->
                         <div class="bs-callout bs-callout-warning" >
                             <h4 id="taxocompo">Taxonomic composition</h4>        
@@ -162,7 +179,7 @@
                         <a class="btn btn-primary" href="{{ancom_volcano}}" target="_blank" role="button">View ANCOM</a>
                         </div>
 
-                         <!-- Differential abundance -->
+                         <!-- Phylogeny -->
                         <div class="bs-callout bs-callout-danger" >
                             <h4 id="phylogeny">Phylogeny</h4>        
                         <p> A phylogenetic tree was built with FastTree. You can find it in newick format here <a href="{{phylogenetic_tree}}" target="_blank">here</a> and can visualize it with  <a href="https://itol.embl.de/upload.cgi" target="_blank">iTol</a>  </p>