Skip to content
Commits on Source (10)
......@@ -14,9 +14,6 @@ Sorted alphabetically by repo name.
- A Concourse resource for working with conda
https://github.com/qiime2/conda-channel-resource/issues
- Old conda recipes (repo is mostly unused now)
https://github.com/qiime2/conda-recipes/issues
- Web app for vanity URLs for QIIME 2 data assets
https://github.com/qiime2/data.qiime2.org/issues
......@@ -71,6 +68,9 @@ Sorted alphabetically by repo name.
- The q2-feature-table plugin
https://github.com/qiime2/q2-feature-table/issues
- The q2-fragment-insertion plugin
https://github.com/qiime2/q2-fragment-insertion/issues
- The q2-gneiss plugin
https://github.com/qiime2/q2-gneiss/issues
......@@ -92,6 +92,9 @@ Sorted alphabetically by repo name.
- The q2-sample-classifier plugin
https://github.com/qiime2/q2-sample-classifier/issues
- The q2-shogun plugin
https://github.com/qiime2/q2-shogun/issues
- The q2-taxa plugin
https://github.com/qiime2/q2-taxa/issues
......
......@@ -22,8 +22,6 @@ Sorted alphabetically by repo name.
| The CI automation engine that builds and distributes QIIME 2
- [conda-channel-resource](https://github.com/qiime2/conda-channel-resource/issues)
| A Concourse resource for working with conda
- [conda-recipes](https://github.com/qiime2/conda-recipes/issues)
| Old conda recipes (repo is mostly unused now)
- [data.qiime2.org](https://github.com/qiime2/data.qiime2.org/issues)
| Web app for vanity URLs for QIIME 2 data assets
- [dev-docs](https://github.com/qiime2/dev-docs/issues)
......@@ -60,6 +58,8 @@ Sorted alphabetically by repo name.
| The q2-feature-classifier plugin
- [q2-feature-table](https://github.com/qiime2/q2-feature-table/issues)
| The q2-feature-table plugin
- [q2-fragment-insertion](https://github.com/qiime2/q2-fragment-insertion/issues)
| The q2-fragment-insertion plugin
- [q2-gneiss](https://github.com/qiime2/q2-gneiss/issues)
| The q2-gneiss plugin
- [q2-longitudinal](https://github.com/qiime2/q2-longitudinal/issues)
......@@ -74,6 +74,8 @@ Sorted alphabetically by repo name.
| The q2-quality-filter plugin
- [q2-sample-classifier](https://github.com/qiime2/q2-sample-classifier/issues)
| The q2-sample-classifier plugin
- [q2-shogun](https://github.com/qiime2/q2-shogun/issues)
| The q2-shogun plugin
- [q2-taxa](https://github.com/qiime2/q2-taxa/issues)
| The q2-taxa plugin
- [q2-types](https://github.com/qiime2/q2-types/issues)
......
......@@ -11,8 +11,8 @@ before_install:
- conda update -q conda
- conda info -a
install:
- wget -q https://raw.githubusercontent.com/qiime2/environment-files/master/latest/staging/qiime2-latest-py35-linux-conda.yml
- conda env create -q -n test-env --file qiime2-latest-py35-linux-conda.yml
- wget -q https://raw.githubusercontent.com/qiime2/environment-files/master/latest/staging/qiime2-latest-py36-linux-conda.yml
- conda env create -q -n test-env --file qiime2-latest-py36-linux-conda.yml
- source activate test-env
- pip install -q flake8
- conda install nose
......
BSD 3-Clause License
Copyright (c) 2016-2018, QIIME 2 development team.
Copyright (c) 2016-2019, QIIME 2 development team.
All rights reserved.
Redistribution and use in source and binary forms, with or without
......
.PHONY: all lint test install dev clean distclean
PYTHON ?= python
PREFIX ?= $(CONDA_PREFIX)
all: ;
lint:
......@@ -10,11 +13,11 @@ test: all
QIIMETEST= nosetests
install: all
python setup.py install && \
mkdir -p $(CONDA_PREFIX)/etc/conda/activate.d && \
cp hooks/00_activate_qiime2_envs.sh $(CONDA_PREFIX)/etc/conda/activate.d/ && \
mkdir -p $(CONDA_PREFIX)/etc/conda/deactivate.d && \
cp hooks/00_deactivate_qiime2_envs.sh $(CONDA_PREFIX)/etc/conda/deactivate.d/
$(PYTHON) setup.py install && \
mkdir -p $(PREFIX)/etc/conda/activate.d && \
cp hooks/00_activate_qiime2_envs.sh $(PREFIX)/etc/conda/activate.d/ && \
mkdir -p $(PREFIX)/etc/conda/deactivate.d && \
cp hooks/00_deactivate_qiime2_envs.sh $(PREFIX)/etc/conda/deactivate.d/
dev: all
pip install -e .
......
......@@ -12,18 +12,18 @@ build:
script: make install
requirements:
build:
- python 3.5*
host:
- python {{ python }}
- setuptools
run:
- python 3.5*
- setuptools
- python {{ python }}
- pyyaml
- decorator
- pandas
- tzlocal
- python-dateutil
- pyparsing ==2.3.0
- bibtexparser
test:
......
qiime (2018.8.0-1) UNRELEASED; urgency=medium
qiime (2019.1.0-1) unstable; urgency=medium
[ Andreas Tille ]
* Switch to Qiime2
Closes: #820308
- Adapt watch file
- Point Homepage to Qiime2
* debhelper 12
* Architecture: all
[ Liubov Chuprikova ]
* Make .egg-info available for build time tests
* Adapt d/copyright to Qiime2
* Standards-Version: 4.2.1
* Standards-Version: 4.3.0
-- Andreas Tille <tille@debian.org> Fri, 19 Oct 2018 15:20:48 +0200
-- Andreas Tille <tille@debian.org> Mon, 04 Feb 2019 11:37:46 +0100
qiime (1.9.1+dfsg-3) unstable; urgency=medium
......
......@@ -5,9 +5,9 @@ Uploaders: Steffen Moeller <moeller@debian.org>,
Andreas Tille <tille@debian.org>
Section: science
Priority: optional
Build-Depends: debhelper (>= 11~),
Build-Depends: debhelper (>= 12~),
dh-python,
python3-dev,
python3,
python3-setuptools,
python3-nose,
python3-bibtexparser,
......@@ -15,13 +15,13 @@ Build-Depends: debhelper (>= 11~),
python3-pandas,
python3-tzlocal,
python3-yaml
Standards-Version: 4.2.1
Standards-Version: 4.3.0
Vcs-Browser: https://salsa.debian.org/med-team/qiime
Vcs-Git: https://salsa.debian.org/med-team/qiime.git
Homepage: https://qiime2.org
Package: qiime
Architecture: any
Architecture: all
Depends: ${shlibs:Depends},
${misc:Depends},
${python3:Depends},
......
--- a/qiime2/citations.bib
+++ b/qiime2/citations.bib
@@ -1,6 +1,6 @@
@article{caporaso2010qiime,
title={QIIME allows analysis of high-throughput community sequencing data},
- author={Caporaso, J Gregory and Kuczynski, Justin and Stombaugh, Jesse and Bittinger, Kyle and Bushman, Frederic D and Costello, Elizabeth K and Fierer, Noah and Peña, Antonio Gonzalez and Goodrich, Julia K and Gordon, Jeffrey I and Huttley, Gavin A and Kelley, Scott T and Knights, Dan and Koenig, Jeremy E and Ley, Ruth E and Lozupone, Catherine A and McDonald, Daniel and Muegge, Brian D and Pirrung, Meg and Reeder, Jens and Sevinsky, Joel R and Turnbaugh, Peter J and Walters, William A and Widmann, Jeremy and Yatsunenko, Tanya and Zaneveld, Jesse and Knight, Rob},
+ author={Caporaso, J Gregory and Kuczynski, Justin and Stombaugh, Jesse},
journal={Nature methods},
volume={7},
number={5},
0000_fixme_hack_around_UnicodeDecodeError_in_bibtex.patch
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......
......@@ -23,9 +23,9 @@ def get_keywords():
# setup.py/versioneer.py will grep for the variable names, so they must
# each be defined on a line of their own. _version.py will just call
# get_keywords().
git_refnames = " (tag: 2018.8.0)"
git_full = "d29dc72666a15730d5f73bfe15fe2093228ccd33"
git_date = "2018-08-31 15:55:45 +0000"
git_refnames = " (tag: 2019.1.0)"
git_full = "58cb1e54f57e10fdbf9b032d8192e6089123fed4"
git_date = "2019-01-29 14:00:34 +0000"
keywords = {"refnames": git_refnames, "full": git_full, "date": git_date}
return keywords
......
@article{caporaso2010qiime,
title={QIIME allows analysis of high-throughput community sequencing data},
author={Caporaso, J Gregory and Kuczynski, Justin and Stombaugh, Jesse and Bittinger, Kyle and Bushman, Frederic D and Costello, Elizabeth K and Fierer, Noah and Peña, Antonio Gonzalez and Goodrich, Julia K and Gordon, Jeffrey I and Huttley, Gavin A and Kelley, Scott T and Knights, Dan and Koenig, Jeremy E and Ley, Ruth E and Lozupone, Catherine A and McDonald, Daniel and Muegge, Brian D and Pirrung, Meg and Reeder, Jens and Sevinsky, Joel R and Turnbaugh, Peter J and Walters, William A and Widmann, Jeremy and Yatsunenko, Tanya and Zaneveld, Jesse and Knight, Rob},
journal={Nature methods},
volume={7},
number={5},
pages={335},
year={2010},
publisher={Nature Publishing Group},
doi={10.1038/nmeth.f.303}
@article{10.7287/peerj.preprints.27295v1,
title = {QIIME 2: Reproducible, interactive, scalable, and extensible microbiome data science},
author = {Bolyen, Evan and Rideout, Jai Ram and Dillon, Matthew R and Bokulich, Nicholas A and Abnet, Christian and Al-Ghalith, Gabriel A and Alexander, Harriet and Alm, Eric J and Arumugam, Manimozhiyan and Asnicar, Francesco and Bai, Yang and Bisanz, Jordan E and Bittinger, Kyle and Brejnrod, Asker and Brislawn, Colin J and Brown, C Titus and Callahan, Benjamin J and Caraballo-Rodríguez, Andrés Mauricio and Chase, John and Cope, Emily and Da Silva, Ricardo and Dorrestein, Pieter C and Douglas, Gavin M and Durall, Daniel M and Duvallet, Claire and Edwardson, Christian F and Ernst, Madeleine and Estaki, Mehrbod and Fouquier, Jennifer and Gauglitz, Julia M and Gibson, Deanna L and Gonzalez, Antonio and Gorlick, Kestrel and Guo, Jiarong and Hillmann, Benjamin and Holmes, Susan and Holste, Hannes and Huttenhower, Curtis and Huttley, Gavin and Janssen, Stefan and Jarmusch, Alan K and Jiang, Lingjing and Kaehler, Benjamin and Kang, Kyo Bin and Keefe, Christopher R and Keim, Paul and Kelley, Scott T and Knights, Dan and Koester, Irina and Kosciolek, Tomasz and Kreps, Jorden and Langille, Morgan GI and Lee, Joslynn and Ley, Ruth and Liu, Yong-Xin and Loftfield, Erikka and Lozupone, Catherine and Maher, Massoud and Marotz, Clarisse and Martin, Bryan and McDonald, Daniel and McIver, Lauren J and Melnik, Alexey V and Metcalf, Jessica L and Morgan, Sydney C and Morton, Jamie and Naimey, Ahmad Turan and Navas-Molina, Jose A and Nothias, Louis Felix and Orchanian, Stephanie B and Pearson, Talima and Peoples, Samuel L and Petras, Daniel and Preuss, Mary Lai and Pruesse, Elmar and Rasmussen, Lasse Buur and Rivers, Adam and Robeson, II, Michael S and Rosenthal, Patrick and Segata, Nicola and Shaffer, Michael and Shiffer, Arron and Sinha, Rashmi and Song, Se Jin and Spear, John R and Swafford, Austin D and Thompson, Luke R and Torres, Pedro J and Trinh, Pauline and Tripathi, Anupriya and Turnbaugh, Peter J and Ul-Hasan, Sabah and van der Hooft, Justin JJ and Vargas, Fernando and Vázquez-Baeza, Yoshiki and Vogtmann, Emily and von Hippel, Max and Walters, William and Wan, Yunhu and Wang, Mingxun and Warren, Jonathan and Weber, Kyle C and Williamson, Chase HD and Willis, Amy D and Xu, Zhenjiang Zech and Zaneveld, Jesse R and Zhang, Yilong and Knight, Rob and Caporaso, J Gregory},
year = 2018,
month = {oct},
volume = 6,
pages = {e27295v1},
journal = {PeerJ Preprints},
issn = {2167-9843},
url = {https://doi.org/10.7287/peerj.preprints.27295v1},
doi = {10.7287/peerj.preprints.27295v1}
}
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......@@ -17,6 +17,8 @@ import io
import qiime2
import qiime2.core.cite as cite
from qiime2.core.util import md5sum_directory, from_checksum_format
_VERSION_TEMPLATE = """\
QIIME 2
archive: %s
......@@ -27,6 +29,9 @@ ArchiveRecord = collections.namedtuple(
'ArchiveRecord', ['root', 'version_fp', 'uuid', 'version',
'framework_version'])
ChecksumDiff = collections.namedtuple(
'ChecksumDiff', ['added', 'removed', 'changed'])
class _Archive:
"""Abstraction layer over the archive filesystem.
......@@ -223,7 +228,7 @@ class _ZipArchive(_Archive):
class Archiver:
CURRENT_FORMAT_VERSION = '4'
CURRENT_FORMAT_VERSION = '5'
CURRENT_ARCHIVE = _ZipArchive
_FORMAT_REGISTRY = {
# NOTE: add more archive formats as things change
......@@ -232,6 +237,7 @@ class Archiver:
'2': 'qiime2.core.archive.format.v2:ArchiveFormat',
'3': 'qiime2.core.archive.format.v3:ArchiveFormat',
'4': 'qiime2.core.archive.format.v4:ArchiveFormat',
'5': 'qiime2.core.archive.format.v5:ArchiveFormat'
}
@classmethod
......@@ -346,6 +352,25 @@ class Archiver:
def save(self, filepath):
self.CURRENT_ARCHIVE.save(self.path, filepath)
def validate_checksums(self):
if not isinstance(self._fmt, self.get_format_class('5')):
return ChecksumDiff({}, {}, {})
obs = dict(x for x in md5sum_directory(str(self.root_dir)).items()
if x[0] != self._fmt.CHECKSUM_FILE)
exp = dict(from_checksum_format(line) for line in
(self.root_dir / self._fmt.CHECKSUM_FILE).open().readlines()
)
obs_keys = set(obs)
exp_keys = set(exp)
added = {x: obs[x] for x in obs_keys - exp_keys}
removed = {x: exp[x] for x in exp_keys - obs_keys}
changed = {x: (exp[x], obs[x]) for x in exp_keys & obs_keys
if exp[x] != obs[x]}
return ChecksumDiff(added=added, removed=removed, changed=changed)
@property
def _destructor(self):
return self.path._destructor
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......
# ----------------------------------------------------------------------------
# Copyright (c) 2016-2018, QIIME 2 development team.
# Copyright (c) 2016-2019, QIIME 2 development team.
#
# Distributed under the terms of the Modified BSD License.
#
......