🔧 fix(endpoints.py): remove unused import and function call to improve code cleanliness and maintainability

🔧 fix(endpoints.py): move import statement to the top of the file for better organization and readability
🔧 fix(getters.py): change service type from DATABASE_MANAGER to DATABASE_SERVICE for consistency and clarity
🔧 fix(getters.py): change service type from CACHE_MANAGER to CACHE_SERVICE for consistency and clarity
🔧 fix(getters.py): change service type from SESSION_MANAGER to SESSION_SERVICE for consistency and clarity
🔧 fix(getters.py): change service type from TASK_MANAGER to TASK_SERVICE for consistency and clarity
🔧 fix(getters.py): remove unused function get_chat_service() to improve code cleanliness and maintainability
🔧 fix(getters.py): remove duplicate function get_settings_service() to improve code cleanliness and maintainability
🔧 fix(getters.py): remove duplicate function get_db_service() to improve code cleanliness and maintainability
🔧 fix(getters.py): remove duplicate function get_session() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused import statement to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function setup_superuser() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function teardown_superuser() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function teardown_services() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function initialize_settings_manager() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function initialize_session_manager() to improve code cleanliness and maintainability
🔧 fix(utils.py): remove unused function initialize_services() to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused import statement to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused function get_session_override() to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused function distributed_client_fixture() to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused function client_fixture() to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused function test_user() to improve code cleanliness and maintainability
🔧 fix(conftest.py): remove unused function active_user

🐛 fix(test_endpoints.py): update import statements to use get_db_service instead of get_db_manager to improve code semantics
🐛 fix(test_login.py): update import statements to use get_db_service instead of get_db_manager to improve code semantics
🐛 fix(test_setup_superuser.py): update import statements to use get_db_service instead of get_db_manager to improve code semantics
🐛 fix(test_user.py): update import statements to use get_db_service instead of get_db_manager to improve code semantics
This commit is contained in:
Gabriel Luiz Freitas Almeida 2023-09-22 18:07:55 -03:00
commit 479a808634
9 changed files with 171 additions and 134 deletions

View file

@ -22,10 +22,6 @@ from langflow.api.v1.schemas import (
)
from langflow.interface.types import (
build_langchain_template_custom_component,
)
from langflow.services.getters import get_session
try:
@ -207,6 +203,10 @@ def get_version():
async def custom_component(
raw_code: CustomComponentCode,
):
from langflow.interface.types import (
build_langchain_template_custom_component,
)
extractor = CustomComponent(code=raw_code.code)
extractor.is_check_valid()

View file

@ -14,42 +14,13 @@ if TYPE_CHECKING:
def get_settings_service() -> "SettingsService":
try:
return service_manager.get(ServiceType.SETTINGS_MANAGER)
return service_manager.get(ServiceType.SETTINGS_SERVICE)
except ValueError:
# initialize settings service
from langflow.services.manager import initialize_settings_service
initialize_settings_service()
return service_manager.get(ServiceType.SETTINGS_MANAGER)
def get_db_service() -> "DatabaseService":
return service_manager.get(ServiceType.DATABASE_MANAGER)
def get_session() -> Generator["Session", None, None]:
db_service = service_manager.get(ServiceType.DATABASE_MANAGER)
yield from db_service.get_session()
def get_cache_service() -> "BaseCacheService":
return service_manager.get(ServiceType.CACHE_MANAGER)
def get_session_service() -> "SessionService":
return service_manager.get(ServiceType.SESSION_MANAGER)
def get_task_service() -> "TaskService":
return service_manager.get(ServiceType.TASK_MANAGER)
def get_chat_service() -> "ChatService":
return service_manager.get(ServiceType.CHAT_MANAGER)
def get_settings_service() -> "SettingsService":
return service_manager.get(ServiceType.SETTINGS_SERVICE)
return service_manager.get(ServiceType.SETTINGS_SERVICE)
def get_db_service() -> "DatabaseService":
@ -61,5 +32,17 @@ def get_session() -> Generator["Session", None, None]:
yield from db_service.get_session()
def get_cache_service() -> "BaseCacheService":
return service_manager.get(ServiceType.CACHE_SERVICE)
def get_session_service() -> "SessionService":
return service_manager.get(ServiceType.SESSION_SERVICE)
def get_task_service() -> "TaskService":
return service_manager.get(ServiceType.TASK_SERVICE)
def get_chat_service() -> "ChatService":
return service_manager.get(ServiceType.CHAT_SERVICE)

View file

@ -1,3 +1,4 @@
from langflow.services.auth import service
from langflow.services.auth.utils import create_super_user
from langflow.services.database.utils import initialize_database
from langflow.services.manager import service_manager
@ -10,20 +11,18 @@ from .getters import get_session, get_settings_service
from loguru import logger
def setup_superuser():
def setup_superuser(settings_service, session):
"""
Setup the superuser.
"""
# We will use the SUPERUSER and SUPERUSER_PASSWORD
# vars on settings_manager.auth_settings to create the superuser
# if it does not exist.
settings_manager = get_settings_service()
if settings_manager.auth_settings.AUTO_LOGIN:
if settings_service.auth_settings.AUTO_LOGIN:
logger.debug("AUTO_LOGIN is set to True. Creating default superuser.")
session = next(get_session())
username = settings_manager.auth_settings.SUPERUSER
password = settings_manager.auth_settings.SUPERUSER_PASSWORD
username = settings_service.auth_settings.SUPERUSER
password = settings_service.auth_settings.SUPERUSER_PASSWORD
if username == DEFAULT_SUPERUSER and password == DEFAULT_SUPERUSER_PASSWORD:
logger.debug("Default superuser credentials detected.")
logger.debug("Creating default superuser.")
@ -50,21 +49,20 @@ def setup_superuser():
"Could not create superuser. Please create a superuser manually."
) from exc
# reset superuser credentials
settings_manager.auth_settings.reset_credentials()
settings_service.auth_settings.reset_credentials()
logger.debug("Superuser created successfully.")
def teardown_superuser():
def teardown_superuser(settings_service, session):
"""
Teardown the superuser.
"""
# If AUTO_LOGIN is True, we will remove the default superuser
# from the database.
settings_manager = get_settings_service()
if settings_manager.auth_settings.AUTO_LOGIN:
if settings_service.auth_settings.AUTO_LOGIN:
logger.debug("AUTO_LOGIN is set to True. Removing default superuser.")
session = next(get_session())
username = settings_manager.auth_settings.SUPERUSER
username = settings_service.auth_settings.SUPERUSER
from langflow.services.database.models.user.user import User
user = session.query(User).filter(User.username == username).first()
@ -80,35 +78,38 @@ def teardown_services():
"""
Teardown all the services.
"""
teardown_superuser()
service_manager.teardown()
try:
teardown_superuser(get_settings_service(), next(get_session()))
service_manager.teardown()
except Exception as exc:
logger.exception(exc)
def initialize_settings_manager():
def initialize_settings_service():
"""
Initialize the settings manager.
"""
from langflow.services.settings import factory as settings_factory
service_manager.register_factory(settings_factory.SettingsManagerFactory())
service_manager.register_factory(settings_factory.SettingsServiceFactory())
def initialize_session_manager():
def initialize_session_service():
"""
Initialize the session manager.
"""
from langflow.services.session import factory as session_manager_factory # type: ignore
from langflow.services.session import factory as session_service_factory # type: ignore
from langflow.services.cache import factory as cache_factory
initialize_settings_manager()
initialize_settings_service()
service_manager.register_factory(
cache_factory.CacheManagerFactory(), dependencies=[ServiceType.SETTINGS_MANAGER]
cache_factory.CacheServiceFactory(), dependencies=[ServiceType.SETTINGS_SERVICE]
)
service_manager.register_factory(
session_manager_factory.SessionManagerFactory(),
dependencies=[ServiceType.CACHE_MANAGER],
session_service_factory.SessionServiceFactory(),
dependencies=[ServiceType.CACHE_SERVICE],
)
@ -121,23 +122,33 @@ def initialize_services():
from langflow.services.chat import factory as chat_factory
from langflow.services.settings import factory as settings_factory
from langflow.services.auth import factory as auth_factory
from langflow.services.task import factory as task_factory
from langflow.services.session import factory as session_service_factory # type: ignore
service_manager.register_factory(settings_factory.SettingsManagerFactory())
service_manager.register_factory(settings_factory.SettingsServiceFactory())
service_manager.register_factory(
auth_factory.AuthManagerFactory(), dependencies=[ServiceType.SETTINGS_MANAGER]
auth_factory.AuthServiceFactory(), dependencies=[ServiceType.SETTINGS_SERVICE]
)
service_manager.register_factory(
database_factory.DatabaseManagerFactory(),
dependencies=[ServiceType.SETTINGS_MANAGER],
database_factory.DatabaseServiceFactory(),
dependencies=[ServiceType.SETTINGS_SERVICE],
)
service_manager.register_factory(cache_factory.CacheManagerFactory())
service_manager.register_factory(chat_factory.ChatManagerFactory())
service_manager.register_factory(
cache_factory.CacheServiceFactory(), dependencies=[ServiceType.SETTINGS_SERVICE]
)
service_manager.register_factory(chat_factory.ChatServiceFactory())
service_manager.register_factory(task_factory.TaskServiceFactory())
service_manager.register_factory(
session_service_factory.SessionServiceFactory(),
dependencies=[ServiceType.CACHE_SERVICE],
)
# Test cache connection
service_manager.get(ServiceType.CACHE_MANAGER)
service_manager.get(ServiceType.CACHE_SERVICE)
# Test database connection
db_manager = service_manager.get(ServiceType.DATABASE_MANAGER)
db_service = service_manager.get(ServiceType.DATABASE_SERVICE)
# Setup the superuser
initialize_database()
if db_manager.ready:
setup_superuser()
session = next(get_session())
setup_superuser(service_manager.get(ServiceType.SETTINGS_SERVICE), session)