From e43761b3555039a284c36efcc671fe4e95fddb96 Mon Sep 17 00:00:00 2001 From: John Davis Date: Mon, 7 Aug 2023 19:03:41 -0400 Subject: [PATCH] Move dbkeys to managers --- lib/galaxy/app.py | 2 +- lib/galaxy/app_unittest_utils/galaxy_mock.py | 2 +- lib/galaxy/{util => managers}/dbkeys.py | 12 ++++++++---- lib/galaxy/structured_app.py | 2 +- lib/galaxy/tools/parameters/basic.py | 2 +- lib/galaxy/tools/remote_tool_eval.py | 2 +- lib/galaxy/tools/repositories.py | 2 +- lib/tool_shed/webapp/app.py | 2 +- 8 files changed, 15 insertions(+), 11 deletions(-) rename lib/galaxy/{util => managers}/dbkeys.py (97%) diff --git a/lib/galaxy/app.py b/lib/galaxy/app.py index 5af6173eb86a..c33207390d23 100644 --- a/lib/galaxy/app.py +++ b/lib/galaxy/app.py @@ -41,6 +41,7 @@ from galaxy.managers.api_keys import ApiKeyManager from galaxy.managers.citations import CitationsManager from galaxy.managers.collections import DatasetCollectionManager +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.managers.folders import FolderManager from galaxy.managers.hdas import HDAManager from galaxy.managers.histories import HistoryManager @@ -126,7 +127,6 @@ listify, StructuredExecutionTimer, ) -from galaxy.util.dbkeys import GenomeBuilds from galaxy.util.task import IntervalTask from galaxy.util.tool_shed import tool_shed_registry from galaxy.visualization.data_providers.registry import DataProviderRegistry diff --git a/lib/galaxy/app_unittest_utils/galaxy_mock.py b/lib/galaxy/app_unittest_utils/galaxy_mock.py index 049cad5908ca..fd01cebc8e73 100644 --- a/lib/galaxy/app_unittest_utils/galaxy_mock.py +++ b/lib/galaxy/app_unittest_utils/galaxy_mock.py @@ -22,6 +22,7 @@ from galaxy.job_metrics import JobMetrics from galaxy.jobs.manager import NoopManager from galaxy.managers.collections import DatasetCollectionManager +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.managers.hdas import HDAManager from galaxy.managers.histories import HistoryManager from galaxy.managers.jobs import JobSearch @@ -51,7 +52,6 @@ from galaxy.tools.data import ToolDataTableManager from galaxy.util import StructuredExecutionTimer from galaxy.util.bunch import Bunch -from galaxy.util.dbkeys import GenomeBuilds from galaxy.web.short_term_storage import ( ShortTermStorageAllocator, ShortTermStorageConfiguration, diff --git a/lib/galaxy/util/dbkeys.py b/lib/galaxy/managers/dbkeys.py similarity index 97% rename from lib/galaxy/util/dbkeys.py rename to lib/galaxy/managers/dbkeys.py index a9da14f4d4a3..736f9952d337 100644 --- a/lib/galaxy/util/dbkeys.py +++ b/lib/galaxy/managers/dbkeys.py @@ -5,6 +5,10 @@ import os.path import re from json import loads +from typing import ( + Dict, + List, +) from galaxy.util import ( galaxy_directory, @@ -17,9 +21,9 @@ def read_dbnames(filename): """Read build names from file""" - db_names = [] + db_names: List = [] try: - ucsc_builds = {} + ucsc_builds: Dict = {} man_builds = [] # assume these are integers name_to_db_base = {} if filename is None: @@ -43,9 +47,9 @@ def read_dbnames(filename): ucsc_builds[db_base] = [] name_to_db_base[fields[1]] = db_base # we want to sort within a species numerically by revision number - build_rev = re.compile(r"\d+$") + pattern = re.compile(r"\d+$") try: - build_rev = int(build_rev.findall(fields[0])[0]) + build_rev = int(pattern.findall(fields[0])[0]) except Exception: build_rev = 0 ucsc_builds[db_base].append((build_rev, fields[0], fields[1])) diff --git a/lib/galaxy/structured_app.py b/lib/galaxy/structured_app.py index 5878e0e0d147..f21de41d4aca 100644 --- a/lib/galaxy/structured_app.py +++ b/lib/galaxy/structured_app.py @@ -14,6 +14,7 @@ from galaxy.di import Container from galaxy.files import ConfiguredFileSources from galaxy.job_metrics import JobMetrics +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.model.base import ( ModelMapping, SharedModelMapping, @@ -32,7 +33,6 @@ from galaxy.tool_util.deps.containers import ContainerFinder from galaxy.tool_util.deps.views import DependencyResolversView from galaxy.tool_util.verify import test_data -from galaxy.util.dbkeys import GenomeBuilds from galaxy.util.tool_shed.tool_shed_registry import Registry as ToolShedRegistry from galaxy.web_stack import ApplicationStack from galaxy.webhooks import WebhooksRegistry diff --git a/lib/galaxy/tools/parameters/basic.py b/lib/galaxy/tools/parameters/basic.py index be1ed9002c0d..bde8e351959b 100644 --- a/lib/galaxy/tools/parameters/basic.py +++ b/lib/galaxy/tools/parameters/basic.py @@ -21,6 +21,7 @@ from galaxy import util from galaxy.files import ProvidesUserFileSourcesUserContext +from galaxy.managers import dbkeys from galaxy.model import ( cached_id, Dataset, @@ -33,7 +34,6 @@ from galaxy.schema.fetch_data import FilesPayload from galaxy.tool_util.parser import get_input_source as ensure_input_source from galaxy.util import ( - dbkeys, sanitize_param, string_as_bool, string_as_bool_or_none, diff --git a/lib/galaxy/tools/remote_tool_eval.py b/lib/galaxy/tools/remote_tool_eval.py index 8dd158f822d1..074a99f17e97 100644 --- a/lib/galaxy/tools/remote_tool_eval.py +++ b/lib/galaxy/tools/remote_tool_eval.py @@ -12,6 +12,7 @@ from galaxy.files import ConfiguredFileSources from galaxy.job_execution.compute_environment import SharedComputeEnvironment from galaxy.job_execution.setup import JobIO +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.metadata.set_metadata import ( get_metadata_params, get_object_store, @@ -30,7 +31,6 @@ ToolDataTableManager, ) from galaxy.util.bunch import Bunch -from galaxy.util.dbkeys import GenomeBuilds class ToolAppConfig(NamedTuple): diff --git a/lib/galaxy/tools/repositories.py b/lib/galaxy/tools/repositories.py index bb4a3f436352..f8cfc8f43532 100644 --- a/lib/galaxy/tools/repositories.py +++ b/lib/galaxy/tools/repositories.py @@ -4,9 +4,9 @@ import tempfile from contextlib import contextmanager +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.tools.data import ToolDataTableManager from galaxy.util.bunch import Bunch -from galaxy.util.dbkeys import GenomeBuilds class ValidationContext: diff --git a/lib/tool_shed/webapp/app.py b/lib/tool_shed/webapp/app.py index f9a9d5632df1..bdd32ef95d86 100644 --- a/lib/tool_shed/webapp/app.py +++ b/lib/tool_shed/webapp/app.py @@ -18,6 +18,7 @@ from galaxy.config import configure_logging from galaxy.managers.api_keys import ApiKeyManager from galaxy.managers.citations import CitationsManager +from galaxy.managers.dbkeys import GenomeBuilds from galaxy.managers.users import UserManager from galaxy.model.base import SharedModelMapping from galaxy.model.tags import CommunityTagHandler @@ -27,7 +28,6 @@ ) from galaxy.security import idencoding from galaxy.structured_app import BasicSharedApp -from galaxy.util.dbkeys import GenomeBuilds from galaxy.web_stack import application_stack_instance from tool_shed.grids.repository_grid_filter_manager import RepositoryGridFilterManager from tool_shed.structured_app import ToolShedApp