From 95866823a6936c718a553a149a3aa0e0fca07b6c Mon Sep 17 00:00:00 2001 From: Evan Bolyen Date: Wed, 24 Jul 2024 13:08:23 -0700 Subject: [PATCH] REF: kaiju --- q2_types/__init__.py | 1 - q2_types/kaiju/__init__.py | 9 ++------- .../kaiju/{_type.py => _deferred_setup/__init__.py} | 7 +++---- q2_types/kaiju/{_format.py => _formats.py} | 6 +----- q2_types/kaiju/_types.py | 11 +++++++++++ .../kaiju/tests/{test_format.py => test_formats.py} | 2 +- q2_types/kaiju/tests/{test_type.py => test_types.py} | 0 q2_types/plugin_setup.py | 1 + q2_types/reference_db/__init__.py | 3 +++ 9 files changed, 22 insertions(+), 18 deletions(-) rename q2_types/kaiju/{_type.py => _deferred_setup/__init__.py} (74%) rename q2_types/kaiju/{_format.py => _formats.py} (87%) create mode 100644 q2_types/kaiju/_types.py rename q2_types/kaiju/tests/{test_format.py => test_formats.py} (92%) rename q2_types/kaiju/tests/{test_type.py => test_types.py} (100%) diff --git a/q2_types/__init__.py b/q2_types/__init__.py index 8344b3d2..0c769351 100644 --- a/q2_types/__init__.py +++ b/q2_types/__init__.py @@ -19,6 +19,5 @@ importlib.import_module('q2_types.metadata') importlib.import_module('q2_types.multiplexed_sequences') importlib.import_module('q2_types.kraken2') -importlib.import_module('q2_types.kaiju') importlib.import_module('q2_types.reference_db') importlib.import_module('q2_types.profile_hmms') diff --git a/q2_types/kaiju/__init__.py b/q2_types/kaiju/__init__.py index fecac26e..2e42e7ed 100644 --- a/q2_types/kaiju/__init__.py +++ b/q2_types/kaiju/__init__.py @@ -6,12 +6,7 @@ # The full license is in the file LICENSE, distributed with this software. # ---------------------------------------------------------------------------- -import importlib - -from ._format import KaijuIndexFormat, KaijuDBDirectoryFormat -from ._type import KaijuDB +from ._formats import KaijuIndexFormat, KaijuDBDirectoryFormat +from ._types import KaijuDB __all__ = ["KaijuIndexFormat", "KaijuDBDirectoryFormat", "KaijuDB"] - -importlib.import_module('q2_types.kaiju._format') -importlib.import_module('q2_types.kaiju._type') diff --git a/q2_types/kaiju/_type.py b/q2_types/kaiju/_deferred_setup/__init__.py similarity index 74% rename from q2_types/kaiju/_type.py rename to q2_types/kaiju/_deferred_setup/__init__.py index 169a0235..c24ddc03 100644 --- a/q2_types/kaiju/_type.py +++ b/q2_types/kaiju/_deferred_setup/__init__.py @@ -5,13 +5,12 @@ # # The full license is in the file LICENSE, distributed with this software. # ---------------------------------------------------------------------------- -from qiime2.plugin import SemanticType -from . import KaijuDBDirectoryFormat -from ..plugin_setup import plugin +from .. import KaijuIndexFormat, KaijuDBDirectoryFormat, KaijuDB +from ...plugin_setup import plugin -KaijuDB = SemanticType("KaijuDB") +plugin.register_formats(KaijuDBDirectoryFormat, KaijuIndexFormat) plugin.register_semantic_types(KaijuDB) diff --git a/q2_types/kaiju/_format.py b/q2_types/kaiju/_formats.py similarity index 87% rename from q2_types/kaiju/_format.py rename to q2_types/kaiju/_formats.py index 1a63ed01..faa5be70 100644 --- a/q2_types/kaiju/_format.py +++ b/q2_types/kaiju/_formats.py @@ -6,10 +6,9 @@ # The full license is in the file LICENSE, distributed with this software. # ---------------------------------------------------------------------------- from qiime2.plugin import model -from q2_types.reference_db._format import ( +from q2_types.reference_db import ( NCBITaxonomyNamesFormat, NCBITaxonomyNodesFormat ) -from ..plugin_setup import plugin class KaijuIndexFormat(model.BinaryFileFormat): @@ -24,6 +23,3 @@ class KaijuDBDirectoryFormat(model.DirectoryFormat): nodes = model.File(r"nodes.dmp", format=NCBITaxonomyNodesFormat) names = model.File(r"names.dmp", format=NCBITaxonomyNamesFormat) index = model.File(r"kaiju_db.+\.fmi", format=KaijuIndexFormat) - - -plugin.register_formats(KaijuDBDirectoryFormat) diff --git a/q2_types/kaiju/_types.py b/q2_types/kaiju/_types.py new file mode 100644 index 00000000..c7db2ce0 --- /dev/null +++ b/q2_types/kaiju/_types.py @@ -0,0 +1,11 @@ +# ---------------------------------------------------------------------------- +# Copyright (c) 2023, QIIME 2 development team. +# +# Distributed under the terms of the Modified BSD License. +# +# The full license is in the file LICENSE, distributed with this software. +# ---------------------------------------------------------------------------- +from qiime2.plugin import SemanticType + + +KaijuDB = SemanticType("KaijuDB") diff --git a/q2_types/kaiju/tests/test_format.py b/q2_types/kaiju/tests/test_formats.py similarity index 92% rename from q2_types/kaiju/tests/test_format.py rename to q2_types/kaiju/tests/test_formats.py index 7a3f4652..236ce430 100644 --- a/q2_types/kaiju/tests/test_format.py +++ b/q2_types/kaiju/tests/test_formats.py @@ -8,7 +8,7 @@ import unittest from qiime2.plugin.testing import TestPluginBase -from q2_types.kaiju._format import KaijuDBDirectoryFormat +from q2_types.kaiju import KaijuDBDirectoryFormat class TestFormats(TestPluginBase): diff --git a/q2_types/kaiju/tests/test_type.py b/q2_types/kaiju/tests/test_types.py similarity index 100% rename from q2_types/kaiju/tests/test_type.py rename to q2_types/kaiju/tests/test_types.py diff --git a/q2_types/plugin_setup.py b/q2_types/plugin_setup.py index 47c9e569..28def618 100644 --- a/q2_types/plugin_setup.py +++ b/q2_types/plugin_setup.py @@ -35,5 +35,6 @@ importlib.import_module('q2_types.feature_map._deferred_setup') importlib.import_module('q2_types.feature_table._deferred_setup') importlib.import_module('q2_types.genome_data._deferred_setup') +importlib.import_module('q2_types.kaiju._deferred_setup') importlib.import_module('q2_types.per_sample_sequences._deferred_setup') diff --git a/q2_types/reference_db/__init__.py b/q2_types/reference_db/__init__.py index 04b3bf6b..5a4506a8 100644 --- a/q2_types/reference_db/__init__.py +++ b/q2_types/reference_db/__init__.py @@ -20,12 +20,15 @@ DiamondDatabaseFileFmt, DiamondDatabaseDirFmt, NCBITaxonomyDirFmt, + NCBITaxonomyNamesFormat, + NCBITaxonomyNodesFormat, EggnogProteinSequencesDirFmt ) __all__ = ['ReferenceDB', 'Diamond', 'Eggnog', 'DiamondDatabaseFileFmt', 'DiamondDatabaseDirFmt', 'EggnogRefDirFmt', 'EggnogRefTextFileFmt', 'EggnogRefBinFileFmt', 'NCBITaxonomyDirFmt', 'NCBITaxonomy', + 'NCBITaxonomyNamesFormat', 'NCBITaxonomyNodesFormat', 'EggnogProteinSequencesDirFmt', 'EggnogProteinSequences'] importlib.import_module('q2_types.reference_db._format')