From c50d1344ca1f867a992dd1e90750ec18192668ea Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Tue, 17 Oct 2023 21:00:10 -0300 Subject: [PATCH] rename getters to deps --- src/backend/langflow/__main__.py | 2 +- src/backend/langflow/alembic/env.py | 2 +- src/backend/langflow/api/v1/api_key.py | 2 +- src/backend/langflow/api/v1/callback.py | 2 +- src/backend/langflow/api/v1/chat.py | 6 +++--- src/backend/langflow/api/v1/components.py | 2 +- src/backend/langflow/api/v1/endpoints.py | 6 +++--- src/backend/langflow/api/v1/flows.py | 4 ++-- src/backend/langflow/api/v1/login.py | 4 ++-- src/backend/langflow/api/v1/users.py | 2 +- src/backend/langflow/interface/agents/base.py | 2 +- src/backend/langflow/interface/base.py | 2 +- src/backend/langflow/interface/chains/base.py | 2 +- .../interface/custom/custom_component.py | 2 +- .../langflow/interface/document_loaders/base.py | 2 +- .../langflow/interface/embeddings/base.py | 2 +- src/backend/langflow/interface/listing.py | 2 +- src/backend/langflow/interface/llms/base.py | 2 +- src/backend/langflow/interface/memories/base.py | 2 +- .../langflow/interface/output_parsers/base.py | 2 +- src/backend/langflow/interface/prompts/base.py | 2 +- .../langflow/interface/retrievers/base.py | 2 +- .../langflow/interface/text_splitters/base.py | 2 +- src/backend/langflow/interface/toolkits/base.py | 2 +- src/backend/langflow/interface/tools/base.py | 2 +- .../langflow/interface/utilities/base.py | 2 +- src/backend/langflow/interface/utils.py | 2 +- .../langflow/interface/vector_store/base.py | 2 +- src/backend/langflow/processing/process.py | 2 +- src/backend/langflow/services/auth/service.py | 2 +- src/backend/langflow/services/auth/utils.py | 2 +- src/backend/langflow/services/cache/__init__.py | 6 +++--- src/backend/langflow/services/cache/factory.py | 4 ++-- src/backend/langflow/services/chat/factory.py | 2 +- .../langflow/services/database/factory.py | 4 ++-- .../services/database/models/user/crud.py | 2 +- .../langflow/services/database/service.py | 2 +- src/backend/langflow/services/database/utils.py | 2 +- .../langflow/services/{getters.py => deps.py} | 17 +++++++++++------ .../langflow/services/plugins/langfuse.py | 2 +- src/backend/langflow/services/schema.py | 1 + .../langflow/services/session/factory.py | 4 ++-- .../langflow/services/settings/__init__.py | 4 ++-- src/backend/langflow/services/settings/base.py | 2 ++ .../langflow/services/settings/factory.py | 2 +- src/backend/langflow/services/task/factory.py | 2 +- src/backend/langflow/services/utils.py | 2 +- src/backend/langflow/worker.py | 2 +- tests/conftest.py | 4 ++-- tests/test_cli.py | 4 ++-- tests/test_database.py | 2 +- tests/test_endpoints.py | 4 ++-- tests/test_login.py | 2 +- tests/test_process.py | 2 +- tests/test_prompts_template.py | 2 +- tests/test_setup_superuser.py | 12 ++++++------ tests/test_user.py | 2 +- tests/test_vectorstore_template.py | 2 +- 58 files changed, 89 insertions(+), 81 deletions(-) rename src/backend/langflow/services/{getters.py => deps.py} (68%) diff --git a/src/backend/langflow/__main__.py b/src/backend/langflow/__main__.py index dfc2e27a5..3ef677a17 100644 --- a/src/backend/langflow/__main__.py +++ b/src/backend/langflow/__main__.py @@ -11,7 +11,7 @@ import typer from dotenv import load_dotenv from langflow.main import setup_app from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service, get_settings_service +from langflow.services.deps import get_db_service, get_settings_service from langflow.services.utils import initialize_services, initialize_settings_service from langflow.utils.logger import configure, logger from multiprocess import Process, cpu_count # type: ignore diff --git a/src/backend/langflow/alembic/env.py b/src/backend/langflow/alembic/env.py index e606036f1..283b24a6f 100644 --- a/src/backend/langflow/alembic/env.py +++ b/src/backend/langflow/alembic/env.py @@ -5,7 +5,7 @@ from sqlalchemy import pool from alembic import context -from langflow.services.database.manager import SQLModel +from langflow.services.database.service import SQLModel # this is the Alembic Config object, which provides # access to the values within the .ini file in use. diff --git a/src/backend/langflow/api/v1/api_key.py b/src/backend/langflow/api/v1/api_key.py index 7f5916d06..7de77389e 100644 --- a/src/backend/langflow/api/v1/api_key.py +++ b/src/backend/langflow/api/v1/api_key.py @@ -14,7 +14,7 @@ from langflow.services.database.models.api_key.crud import ( delete_api_key, ) from langflow.services.database.models.user.user import User -from langflow.services.getters import get_session +from langflow.services.deps import get_session from sqlmodel import Session diff --git a/src/backend/langflow/api/v1/callback.py b/src/backend/langflow/api/v1/callback.py index 787ca9680..50a242d2d 100644 --- a/src/backend/langflow/api/v1/callback.py +++ b/src/backend/langflow/api/v1/callback.py @@ -7,7 +7,7 @@ from langflow.api.v1.schemas import ChatResponse, PromptResponse from typing import Any, Dict, List, Optional -from langflow.services.getters import get_chat_service +from langflow.services.deps import get_chat_service from langflow.utils.util import remove_ansi_escape_codes diff --git a/src/backend/langflow/api/v1/chat.py b/src/backend/langflow/api/v1/chat.py index 0f277fbb7..090457e36 100644 --- a/src/backend/langflow/api/v1/chat.py +++ b/src/backend/langflow/api/v1/chat.py @@ -15,10 +15,10 @@ from langflow.graph.graph.base import Graph from langflow.services.auth.utils import get_current_active_user, get_current_user from langflow.services.cache.utils import update_build_status from loguru import logger -from langflow.services.getters import get_chat_service, get_session, get_cache_service +from langflow.services.deps import get_chat_service, get_session, get_cache_service from sqlmodel import Session -from langflow.services.chat.manager import ChatService -from langflow.services.cache.manager import BaseCacheService +from langflow.services.chat.service import ChatService +from langflow.services.cache.service import BaseCacheService router = APIRouter(tags=["Chat"]) diff --git a/src/backend/langflow/api/v1/components.py b/src/backend/langflow/api/v1/components.py index d2b39dfd2..9ac5b9a7f 100644 --- a/src/backend/langflow/api/v1/components.py +++ b/src/backend/langflow/api/v1/components.py @@ -2,7 +2,7 @@ from datetime import timezone from typing import List from uuid import UUID from langflow.services.database.models.component import Component, ComponentModel -from langflow.services.getters import get_session +from langflow.services.deps import get_session from sqlmodel import Session, select from fastapi import APIRouter, Depends, HTTPException from sqlalchemy.exc import IntegrityError diff --git a/src/backend/langflow/api/v1/endpoints.py b/src/backend/langflow/api/v1/endpoints.py index 9b1213c2c..770172534 100644 --- a/src/backend/langflow/api/v1/endpoints.py +++ b/src/backend/langflow/api/v1/endpoints.py @@ -7,7 +7,7 @@ from langflow.services.cache.utils import save_uploaded_file from langflow.services.database.models.flow import Flow from langflow.processing.process import process_graph_cached, process_tweaks from langflow.services.database.models.user.user import User -from langflow.services.getters import ( +from langflow.services.deps import ( get_session_service, get_settings_service, get_task_service, @@ -27,7 +27,7 @@ from langflow.api.v1.schemas import ( ) -from langflow.services.getters import get_session +from langflow.services.deps import get_session try: from langflow.worker import process_graph_cached_task @@ -40,7 +40,7 @@ except ImportError: from sqlmodel import Session -from langflow.services.task.manager import TaskService +from langflow.services.task.service import TaskService # build router router = APIRouter(tags=["Base"]) diff --git a/src/backend/langflow/api/v1/flows.py b/src/backend/langflow/api/v1/flows.py index 9953db0db..da969e82e 100644 --- a/src/backend/langflow/api/v1/flows.py +++ b/src/backend/langflow/api/v1/flows.py @@ -12,8 +12,8 @@ from langflow.services.database.models.flow import ( FlowUpdate, ) from langflow.services.database.models.user.user import User -from langflow.services.getters import get_session -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_session +from langflow.services.deps import get_settings_service import orjson from sqlmodel import Session from fastapi import APIRouter, Depends, HTTPException diff --git a/src/backend/langflow/api/v1/login.py b/src/backend/langflow/api/v1/login.py index 4dfc723b5..ba4debdba 100644 --- a/src/backend/langflow/api/v1/login.py +++ b/src/backend/langflow/api/v1/login.py @@ -2,7 +2,7 @@ from sqlmodel import Session from fastapi import APIRouter, Depends, HTTPException, status from fastapi.security import OAuth2PasswordRequestForm -from langflow.services.getters import get_session +from langflow.services.deps import get_session from langflow.api.v1.schemas import Token from langflow.services.auth.utils import ( authenticate_user, @@ -12,7 +12,7 @@ from langflow.services.auth.utils import ( get_current_active_user, ) -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service router = APIRouter(tags=["Login"]) diff --git a/src/backend/langflow/api/v1/users.py b/src/backend/langflow/api/v1/users.py index 73c7346d9..4d74229ea 100644 --- a/src/backend/langflow/api/v1/users.py +++ b/src/backend/langflow/api/v1/users.py @@ -13,7 +13,7 @@ from sqlalchemy.exc import IntegrityError from sqlmodel import Session, select from fastapi import APIRouter, Depends, HTTPException -from langflow.services.getters import get_session, get_settings_service +from langflow.services.deps import get_session, get_settings_service from langflow.services.auth.utils import ( get_current_active_superuser, get_current_active_user, diff --git a/src/backend/langflow/interface/agents/base.py b/src/backend/langflow/interface/agents/base.py index 696f5afd0..8bc12a8df 100644 --- a/src/backend/langflow/interface/agents/base.py +++ b/src/backend/langflow/interface/agents/base.py @@ -5,7 +5,7 @@ from langchain.agents import types from langflow.custom.customs import get_custom_nodes from langflow.interface.agents.custom import CUSTOM_AGENTS from langflow.interface.base import LangChainTypeCreator -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.agents import AgentFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/base.py b/src/backend/langflow/interface/base.py index 13dd05619..87538b248 100644 --- a/src/backend/langflow/interface/base.py +++ b/src/backend/langflow/interface/base.py @@ -2,7 +2,7 @@ from abc import ABC, abstractmethod from typing import Any, Dict, List, Optional, Type, Union from langchain.chains.base import Chain from langchain.agents import AgentExecutor -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from pydantic import BaseModel from langflow.template.field.base import TemplateField diff --git a/src/backend/langflow/interface/chains/base.py b/src/backend/langflow/interface/chains/base.py index b2d07b7e4..9d84c707c 100644 --- a/src/backend/langflow/interface/chains/base.py +++ b/src/backend/langflow/interface/chains/base.py @@ -3,7 +3,7 @@ from typing import Any, Dict, List, Optional, Type from langflow.custom.customs import get_custom_nodes from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.chains import ChainFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/custom/custom_component.py b/src/backend/langflow/interface/custom/custom_component.py index 4b889e77b..3b4218f45 100644 --- a/src/backend/langflow/interface/custom/custom_component.py +++ b/src/backend/langflow/interface/custom/custom_component.py @@ -4,7 +4,7 @@ from fastapi import HTTPException from langflow.field_typing.constants import CUSTOM_COMPONENT_SUPPORTED_TYPES from langflow.interface.custom.component import Component from langflow.interface.custom.directory_reader import DirectoryReader -from langflow.services.getters import get_db_service +from langflow.services.deps import get_db_service from langflow.interface.custom.utils import extract_inner_type from langflow.utils import validate diff --git a/src/backend/langflow/interface/document_loaders/base.py b/src/backend/langflow/interface/document_loaders/base.py index e2c379b67..8099390a5 100644 --- a/src/backend/langflow/interface/document_loaders/base.py +++ b/src/backend/langflow/interface/document_loaders/base.py @@ -1,7 +1,7 @@ from typing import Dict, List, Optional, Type from langflow.interface.base import LangChainTypeCreator -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.documentloaders import DocumentLoaderFrontNode from langflow.interface.custom_lists import documentloaders_type_to_cls_dict diff --git a/src/backend/langflow/interface/embeddings/base.py b/src/backend/langflow/interface/embeddings/base.py index d280cf1c1..b253e4dfa 100644 --- a/src/backend/langflow/interface/embeddings/base.py +++ b/src/backend/langflow/interface/embeddings/base.py @@ -2,7 +2,7 @@ from typing import Dict, List, Optional, Type from langflow.interface.base import LangChainTypeCreator from langflow.interface.custom_lists import embedding_type_to_cls_dict -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.base import FrontendNode from langflow.template.frontend_node.embeddings import EmbeddingFrontendNode diff --git a/src/backend/langflow/interface/listing.py b/src/backend/langflow/interface/listing.py index aa72e568e..79a7335d4 100644 --- a/src/backend/langflow/interface/listing.py +++ b/src/backend/langflow/interface/listing.py @@ -1,4 +1,4 @@ -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.utils.lazy_load import LazyLoadDictBase diff --git a/src/backend/langflow/interface/llms/base.py b/src/backend/langflow/interface/llms/base.py index ffb7fa2f2..5076d459f 100644 --- a/src/backend/langflow/interface/llms/base.py +++ b/src/backend/langflow/interface/llms/base.py @@ -2,7 +2,7 @@ from typing import Dict, List, Optional, Type from langflow.interface.base import LangChainTypeCreator from langflow.interface.custom_lists import llm_type_to_cls_dict -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.llms import LLMFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/memories/base.py b/src/backend/langflow/interface/memories/base.py index 3f3658304..5f74e1450 100644 --- a/src/backend/langflow/interface/memories/base.py +++ b/src/backend/langflow/interface/memories/base.py @@ -2,7 +2,7 @@ from typing import Dict, List, Optional, Type from langflow.interface.base import LangChainTypeCreator from langflow.interface.custom_lists import memory_type_to_cls_dict -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.base import FrontendNode from langflow.template.frontend_node.memories import MemoryFrontendNode diff --git a/src/backend/langflow/interface/output_parsers/base.py b/src/backend/langflow/interface/output_parsers/base.py index 06dfdf4eb..8e7cbb05d 100644 --- a/src/backend/langflow/interface/output_parsers/base.py +++ b/src/backend/langflow/interface/output_parsers/base.py @@ -4,7 +4,7 @@ from langchain import output_parsers from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.output_parsers import OutputParserFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/prompts/base.py b/src/backend/langflow/interface/prompts/base.py index 29d3e8ba8..040c2a1a4 100644 --- a/src/backend/langflow/interface/prompts/base.py +++ b/src/backend/langflow/interface/prompts/base.py @@ -5,7 +5,7 @@ from langchain import prompts from langflow.custom.customs import get_custom_nodes from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.prompts import PromptFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/retrievers/base.py b/src/backend/langflow/interface/retrievers/base.py index 4ee40e659..2c789fea8 100644 --- a/src/backend/langflow/interface/retrievers/base.py +++ b/src/backend/langflow/interface/retrievers/base.py @@ -4,7 +4,7 @@ from langchain import retrievers from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.retrievers import RetrieverFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/text_splitters/base.py b/src/backend/langflow/interface/text_splitters/base.py index 4f337817f..3132fb315 100644 --- a/src/backend/langflow/interface/text_splitters/base.py +++ b/src/backend/langflow/interface/text_splitters/base.py @@ -1,7 +1,7 @@ from typing import Dict, List, Optional, Type from langflow.interface.base import LangChainTypeCreator -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.textsplitters import TextSplittersFrontendNode from langflow.interface.custom_lists import textsplitter_type_to_cls_dict diff --git a/src/backend/langflow/interface/toolkits/base.py b/src/backend/langflow/interface/toolkits/base.py index 73ca4852f..cbd681b79 100644 --- a/src/backend/langflow/interface/toolkits/base.py +++ b/src/backend/langflow/interface/toolkits/base.py @@ -4,7 +4,7 @@ from langchain.agents import agent_toolkits from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class, import_module -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from loguru import logger from langflow.utils.util import build_template_from_class diff --git a/src/backend/langflow/interface/tools/base.py b/src/backend/langflow/interface/tools/base.py index a99025ff7..2b0082fc5 100644 --- a/src/backend/langflow/interface/tools/base.py +++ b/src/backend/langflow/interface/tools/base.py @@ -15,7 +15,7 @@ from langflow.interface.tools.constants import ( OTHER_TOOLS, ) from langflow.interface.tools.util import get_tool_params -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.field.base import TemplateField from langflow.template.template.base import Template diff --git a/src/backend/langflow/interface/utilities/base.py b/src/backend/langflow/interface/utilities/base.py index bfc7cb11e..24c8faeab 100644 --- a/src/backend/langflow/interface/utilities/base.py +++ b/src/backend/langflow/interface/utilities/base.py @@ -5,7 +5,7 @@ from langchain import utilities from langflow.custom.customs import get_custom_nodes from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.utilities import UtilitiesFrontendNode from loguru import logger diff --git a/src/backend/langflow/interface/utils.py b/src/backend/langflow/interface/utils.py index b28a660bf..ca5083df7 100644 --- a/src/backend/langflow/interface/utils.py +++ b/src/backend/langflow/interface/utils.py @@ -10,7 +10,7 @@ from langchain.base_language import BaseLanguageModel from PIL.Image import Image from loguru import logger from langflow.services.chat.config import ChatConfig -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service def load_file_into_dict(file_path: str) -> dict: diff --git a/src/backend/langflow/interface/vector_store/base.py b/src/backend/langflow/interface/vector_store/base.py index 786031a6b..bf349ca2b 100644 --- a/src/backend/langflow/interface/vector_store/base.py +++ b/src/backend/langflow/interface/vector_store/base.py @@ -4,7 +4,7 @@ from langchain import vectorstores from langflow.interface.base import LangChainTypeCreator from langflow.interface.importing.utils import import_class -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.template.frontend_node.vectorstores import VectorStoreFrontendNode from loguru import logger diff --git a/src/backend/langflow/processing/process.py b/src/backend/langflow/processing/process.py index 4c96e2fde..8d04b4e24 100644 --- a/src/backend/langflow/processing/process.py +++ b/src/backend/langflow/processing/process.py @@ -6,7 +6,7 @@ from langflow.interface.run import ( get_memory_key, update_memory_keys, ) -from langflow.services.getters import get_session_service +from langflow.services.deps import get_session_service from loguru import logger from langflow.graph import Graph from langchain.chains.base import Chain diff --git a/src/backend/langflow/services/auth/service.py b/src/backend/langflow/services/auth/service.py index 5b0acf8c6..8beef8dcb 100644 --- a/src/backend/langflow/services/auth/service.py +++ b/src/backend/langflow/services/auth/service.py @@ -2,7 +2,7 @@ from langflow.services.base import Service from typing import TYPE_CHECKING if TYPE_CHECKING: - from langflow.services.settings.manager import SettingsService + from langflow.services.settings.service import SettingsService class AuthService(Service): diff --git a/src/backend/langflow/services/auth/utils.py b/src/backend/langflow/services/auth/utils.py index f88a1cd12..8b35870d0 100644 --- a/src/backend/langflow/services/auth/utils.py +++ b/src/backend/langflow/services/auth/utils.py @@ -12,7 +12,7 @@ from langflow.services.database.models.user.crud import ( get_user_by_username, update_user_last_login_at, ) -from langflow.services.getters import get_session, get_settings_service +from langflow.services.deps import get_session, get_settings_service from sqlmodel import Session oauth2_login = OAuth2PasswordBearer(tokenUrl="api/v1/login") diff --git a/src/backend/langflow/services/cache/__init__.py b/src/backend/langflow/services/cache/__init__.py index 3b122aa9e..bf3a7c5ee 100644 --- a/src/backend/langflow/services/cache/__init__.py +++ b/src/backend/langflow/services/cache/__init__.py @@ -1,9 +1,9 @@ -from . import factory, manager -from langflow.services.cache.manager import InMemoryCache +from . import factory, service +from langflow.services.cache.service import InMemoryCache __all__ = [ "factory", - "manager", + "service", "InMemoryCache", ] diff --git a/src/backend/langflow/services/cache/factory.py b/src/backend/langflow/services/cache/factory.py index f00ab239f..3288ca993 100644 --- a/src/backend/langflow/services/cache/factory.py +++ b/src/backend/langflow/services/cache/factory.py @@ -1,10 +1,10 @@ -from langflow.services.cache.manager import InMemoryCache, RedisCache, BaseCacheService +from langflow.services.cache.service import InMemoryCache, RedisCache, BaseCacheService from langflow.services.factory import ServiceFactory from langflow.utils.logger import logger from typing import TYPE_CHECKING if TYPE_CHECKING: - from langflow.services.settings.manager import SettingsService + from langflow.services.settings.service import SettingsService class CacheServiceFactory(ServiceFactory): diff --git a/src/backend/langflow/services/chat/factory.py b/src/backend/langflow/services/chat/factory.py index 54af7fcca..337488e0f 100644 --- a/src/backend/langflow/services/chat/factory.py +++ b/src/backend/langflow/services/chat/factory.py @@ -1,4 +1,4 @@ -from langflow.services.chat.manager import ChatService +from langflow.services.chat.service import ChatService from langflow.services.factory import ServiceFactory diff --git a/src/backend/langflow/services/database/factory.py b/src/backend/langflow/services/database/factory.py index 3726f520b..57bf1668d 100644 --- a/src/backend/langflow/services/database/factory.py +++ b/src/backend/langflow/services/database/factory.py @@ -1,9 +1,9 @@ from typing import TYPE_CHECKING -from langflow.services.database.manager import DatabaseService +from langflow.services.database.service import DatabaseService from langflow.services.factory import ServiceFactory if TYPE_CHECKING: - from langflow.services.settings.manager import SettingsService + from langflow.services.settings.service import SettingsService class DatabaseServiceFactory(ServiceFactory): diff --git a/src/backend/langflow/services/database/models/user/crud.py b/src/backend/langflow/services/database/models/user/crud.py index 36f03e684..32b94982c 100644 --- a/src/backend/langflow/services/database/models/user/crud.py +++ b/src/backend/langflow/services/database/models/user/crud.py @@ -3,7 +3,7 @@ from typing import Union from uuid import UUID from fastapi import Depends, HTTPException, status from langflow.services.database.models.user.user import User, UserUpdate -from langflow.services.getters import get_session +from langflow.services.deps import get_session from sqlalchemy.exc import IntegrityError from sqlmodel import Session from typing import Optional diff --git a/src/backend/langflow/services/database/service.py b/src/backend/langflow/services/database/service.py index c743387eb..7499f9204 100644 --- a/src/backend/langflow/services/database/service.py +++ b/src/backend/langflow/services/database/service.py @@ -3,7 +3,7 @@ from typing import TYPE_CHECKING from langflow.services.base import Service from langflow.services.database.models.user.crud import get_user_by_username from langflow.services.database.utils import Result, TableResults -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from sqlalchemy import inspect import sqlalchemy as sa from sqlalchemy.exc import OperationalError diff --git a/src/backend/langflow/services/database/utils.py b/src/backend/langflow/services/database/utils.py index b457b70e2..610196a51 100644 --- a/src/backend/langflow/services/database/utils.py +++ b/src/backend/langflow/services/database/utils.py @@ -6,7 +6,7 @@ from alembic.util.exc import CommandError from sqlmodel import Session if TYPE_CHECKING: - from langflow.services.database.manager import DatabaseService + from langflow.services.database.service import DatabaseService def initialize_database(): diff --git a/src/backend/langflow/services/getters.py b/src/backend/langflow/services/deps.py similarity index 68% rename from src/backend/langflow/services/getters.py rename to src/backend/langflow/services/deps.py index e88b998b5..a735ab155 100644 --- a/src/backend/langflow/services/getters.py +++ b/src/backend/langflow/services/deps.py @@ -3,12 +3,13 @@ from typing import TYPE_CHECKING, Generator if TYPE_CHECKING: - from langflow.services.database.manager import DatabaseService - from langflow.services.settings.manager import SettingsService - from langflow.services.cache.manager import BaseCacheService - from langflow.services.session.manager import SessionService - from langflow.services.task.manager import TaskService - from langflow.services.chat.manager import ChatService + from langflow.services.database.service import DatabaseService + from langflow.services.settings.service import SettingsService + from langflow.services.cache.service import BaseCacheService + from langflow.services.session.service import SessionService + from langflow.services.task.service import TaskService + from langflow.services.chat.service import ChatService + from langflow.services.marketplace.service import MarketplaceService from sqlmodel import Session @@ -46,3 +47,7 @@ def get_task_service() -> "TaskService": def get_chat_service() -> "ChatService": return service_manager.get(ServiceType.CHAT_SERVICE) + + +def get_marketplace_service() -> "MarketplaceService": + return service_manager.get(ServiceType.MARKETPLACE_SERVICE) diff --git a/src/backend/langflow/services/plugins/langfuse.py b/src/backend/langflow/services/plugins/langfuse.py index 7a1f60a48..d375caa9e 100644 --- a/src/backend/langflow/services/plugins/langfuse.py +++ b/src/backend/langflow/services/plugins/langfuse.py @@ -1,4 +1,4 @@ -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.utils.logger import logger ### Temporary implementation diff --git a/src/backend/langflow/services/schema.py b/src/backend/langflow/services/schema.py index 8b3b41fcb..1e1400e97 100644 --- a/src/backend/langflow/services/schema.py +++ b/src/backend/langflow/services/schema.py @@ -14,3 +14,4 @@ class ServiceType(str, Enum): CHAT_SERVICE = "chat_service" SESSION_SERVICE = "session_service" TASK_SERVICE = "task_service" + MARKETPLACE_SERVICE = "marketplace_service" diff --git a/src/backend/langflow/services/session/factory.py b/src/backend/langflow/services/session/factory.py index 9abe025a8..beb0bd6bd 100644 --- a/src/backend/langflow/services/session/factory.py +++ b/src/backend/langflow/services/session/factory.py @@ -1,9 +1,9 @@ from typing import TYPE_CHECKING -from langflow.services.session.manager import SessionService +from langflow.services.session.service import SessionService from langflow.services.factory import ServiceFactory if TYPE_CHECKING: - from langflow.services.cache.manager import BaseCacheService + from langflow.services.cache.service import BaseCacheService class SessionServiceFactory(ServiceFactory): diff --git a/src/backend/langflow/services/settings/__init__.py b/src/backend/langflow/services/settings/__init__.py index 2191bf2cc..3c76ca0de 100644 --- a/src/backend/langflow/services/settings/__init__.py +++ b/src/backend/langflow/services/settings/__init__.py @@ -1,3 +1,3 @@ -from . import factory, manager +from . import factory, service -__all__ = ["factory", "manager"] +__all__ = ["factory", "service"] diff --git a/src/backend/langflow/services/settings/base.py b/src/backend/langflow/services/settings/base.py index 14e3f9928..74e8656e6 100644 --- a/src/backend/langflow/services/settings/base.py +++ b/src/backend/langflow/services/settings/base.py @@ -52,6 +52,8 @@ class Settings(BaseSettings): LANGFUSE_PUBLIC_KEY: Optional[str] = None LANGFUSE_HOST: Optional[str] = None + MARKETPLACE_URL: Optional[str] = None + @validator("CONFIG_DIR", pre=True, allow_reuse=True) def set_langflow_dir(cls, value): if not value: diff --git a/src/backend/langflow/services/settings/factory.py b/src/backend/langflow/services/settings/factory.py index 9202ae8c3..4ba9f3f82 100644 --- a/src/backend/langflow/services/settings/factory.py +++ b/src/backend/langflow/services/settings/factory.py @@ -1,5 +1,5 @@ from pathlib import Path -from langflow.services.settings.manager import SettingsService +from langflow.services.settings.service import SettingsService from langflow.services.factory import ServiceFactory diff --git a/src/backend/langflow/services/task/factory.py b/src/backend/langflow/services/task/factory.py index efb6ac24d..e87eecc94 100644 --- a/src/backend/langflow/services/task/factory.py +++ b/src/backend/langflow/services/task/factory.py @@ -1,4 +1,4 @@ -from langflow.services.task.manager import TaskService +from langflow.services.task.service import TaskService from langflow.services.factory import ServiceFactory diff --git a/src/backend/langflow/services/utils.py b/src/backend/langflow/services/utils.py index adbf072fe..abf69f931 100644 --- a/src/backend/langflow/services/utils.py +++ b/src/backend/langflow/services/utils.py @@ -7,7 +7,7 @@ from langflow.services.settings.constants import ( DEFAULT_SUPERUSER_PASSWORD, ) from sqlmodel import Session -from .getters import get_db_service, get_session, get_settings_service +from .deps import get_db_service, get_session, get_settings_service from loguru import logger diff --git a/src/backend/langflow/worker.py b/src/backend/langflow/worker.py index 2eeba14a5..264e94c7f 100644 --- a/src/backend/langflow/worker.py +++ b/src/backend/langflow/worker.py @@ -9,7 +9,7 @@ from langflow.processing.process import ( process_inputs, ) from langflow.services.manager import initialize_session_service -from langflow.services.getters import get_session_service +from langflow.services.deps import get_session_service if TYPE_CHECKING: from langflow.graph.vertex.base import Vertex diff --git a/tests/conftest.py b/tests/conftest.py index 6f2dd6d42..f58c007f0 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,7 +10,7 @@ from langflow.services.database.models.flow.flow import Flow, FlowCreate from langflow.services.database.models.user.user import User, UserCreate import orjson from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service +from langflow.services.deps import get_db_service import pytest from fastapi.testclient import TestClient from httpx import AsyncClient @@ -22,7 +22,7 @@ from typer.testing import CliRunner import tempfile if TYPE_CHECKING: - from langflow.services.database.manager import DatabaseService + from langflow.services.database.service import DatabaseService def pytest_configure(): diff --git a/tests/test_cli.py b/tests/test_cli.py index ee938db12..63122d254 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -3,7 +3,7 @@ from tempfile import tempdir from langflow.__main__ import app import pytest -from langflow.services import getters +from langflow.services import deps @pytest.fixture(scope="module") @@ -26,7 +26,7 @@ def test_components_path(runner, client, default_settings): ["run", "--components-path", str(temp_dir), *default_settings], ) assert result.exit_code == 0, result.stdout - settings_service = getters.get_settings_service() + settings_service = deps.get_settings_service() assert str(temp_dir) in settings_service.settings.COMPONENTS_PATH diff --git a/tests/test_database.py b/tests/test_database.py index 21f0cec17..4b3465e97 100644 --- a/tests/test_database.py +++ b/tests/test_database.py @@ -1,6 +1,6 @@ from langflow.services.database.models.base import orjson_dumps from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service +from langflow.services.deps import get_db_service import orjson import pytest diff --git a/tests/test_endpoints.py b/tests/test_endpoints.py index 1de7c9deb..48650afdc 100644 --- a/tests/test_endpoints.py +++ b/tests/test_endpoints.py @@ -3,9 +3,9 @@ import uuid from langflow.processing.process import Result from langflow.services.auth.utils import get_password_hash from langflow.services.database.models.api_key.api_key import ApiKey -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service +from langflow.services.deps import get_db_service import pytest from fastapi.testclient import TestClient from langflow.interface.tools.constants import CUSTOM_TOOLS diff --git a/tests/test_login.py b/tests/test_login.py index f505f4100..252d27f33 100644 --- a/tests/test_login.py +++ b/tests/test_login.py @@ -1,5 +1,5 @@ from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service +from langflow.services.deps import get_db_service import pytest from langflow.services.database.models.user import User from langflow.services.auth.utils import get_password_hash diff --git a/tests/test_process.py b/tests/test_process.py index 0588800dc..29ec267a1 100644 --- a/tests/test_process.py +++ b/tests/test_process.py @@ -1,5 +1,5 @@ from langflow.processing.process import process_tweaks -from langflow.services.getters import get_session_service +from langflow.services.deps import get_session_service def test_no_tweaks(): diff --git a/tests/test_prompts_template.py b/tests/test_prompts_template.py index bc2e935e9..d03ad5cbd 100644 --- a/tests/test_prompts_template.py +++ b/tests/test_prompts_template.py @@ -1,5 +1,5 @@ from fastapi.testclient import TestClient -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service def test_prompts_settings(client: TestClient, logged_in_headers): diff --git a/tests/test_setup_superuser.py b/tests/test_setup_superuser.py index 8cdcfc0c8..c4b80167d 100644 --- a/tests/test_setup_superuser.py +++ b/tests/test_setup_superuser.py @@ -9,9 +9,9 @@ from langflow.services.utils import ( ) -# @patch("langflow.services.getters.get_session") +# @patch("langflow.services.deps.get_session") # @patch("langflow.services.utils.create_super_user") -# @patch("langflow.services.getters.get_settings_service") +# @patch("langflow.services.deps.get_settings_service") # # @patch("langflow.services.utils.verify_password") # def test_setup_superuser( # mock_get_session, mock_create_super_user, mock_get_settings_service @@ -92,8 +92,8 @@ from langflow.services.utils import ( # assert str(actual_expr) == str(expected_expr) -@patch("langflow.services.getters.get_settings_service") -@patch("langflow.services.getters.get_session") +@patch("langflow.services.deps.get_settings_service") +@patch("langflow.services.deps.get_session") def test_teardown_superuser_default_superuser( mock_get_session, mock_get_settings_service ): @@ -120,8 +120,8 @@ def test_teardown_superuser_default_superuser( mock_session.commit.assert_called_once() -@patch("langflow.services.getters.get_settings_service") -@patch("langflow.services.getters.get_session") +@patch("langflow.services.deps.get_settings_service") +@patch("langflow.services.deps.get_session") def test_teardown_superuser_no_default_superuser( mock_get_session, mock_get_settings_service ): diff --git a/tests/test_user.py b/tests/test_user.py index 49962c8d1..32e408cdf 100644 --- a/tests/test_user.py +++ b/tests/test_user.py @@ -3,7 +3,7 @@ from langflow.services.auth.utils import create_super_user, get_password_hash from langflow.services.database.models.user.user import User from langflow.services.database.utils import session_getter -from langflow.services.getters import get_db_service, get_settings_service +from langflow.services.deps import get_db_service, get_settings_service import pytest from langflow.services.database.models.user import UserUpdate diff --git a/tests/test_vectorstore_template.py b/tests/test_vectorstore_template.py index 9dd131dbc..3b5c7ed42 100644 --- a/tests/test_vectorstore_template.py +++ b/tests/test_vectorstore_template.py @@ -1,5 +1,5 @@ from fastapi.testclient import TestClient -from langflow.services.getters import get_settings_service +from langflow.services.deps import get_settings_service # check that all agents are in settings.agents