Release 0.5.8 (#1154)

This commit is contained in:
Gabriel Luiz Freitas Almeida 2023-11-23 16:10:50 -03:00 • committed by GitHub
commit c8a27b0ab2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 25 deletions

View file

@ -1,17 +1,19 @@
from pathlib import Path from pathlib import Path
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
import sqlalchemy as sa
from alembic import command
from alembic.config import Config
from langflow.services.base import Service from langflow.services.base import Service
from langflow.services.database import models # noqa
from langflow.services.database.models.user.crud import get_user_by_username from langflow.services.database.models.user.crud import get_user_by_username
from langflow.services.database.utils import Result, TableResults from langflow.services.database.utils import Result, TableResults
from langflow.services.getters import get_settings_service from langflow.services.getters import get_settings_service
from sqlalchemy import inspect from langflow.services.utils import teardown_superuser
import sqlalchemy as sa
from sqlalchemy.exc import OperationalError
from sqlmodel import SQLModel, Session, create_engine
from loguru import logger from loguru import logger
from alembic.config import Config from sqlalchemy import inspect
from alembic import command from sqlalchemy.exc import OperationalError
from langflow.services.database import models # noqa from sqlmodel import Session, SQLModel, create_engine
if TYPE_CHECKING: if TYPE_CHECKING:
from sqlalchemy.engine import Engine from sqlalchemy.engine import Engine
@ -225,14 +227,8 @@ class DatabaseService(Service):
settings_service = get_settings_service() settings_service = get_settings_service()
# remove the default superuser if auto_login is enabled # remove the default superuser if auto_login is enabled
# using the SUPERUSER to get the user # using the SUPERUSER to get the user
if settings_service.auth_settings.AUTO_LOGIN: with Session(self.engine) as session:
logger.debug("Removing default superuser") teardown_superuser(settings_service, session)
username = settings_service.auth_settings.SUPERUSER
with Session(self.engine) as session:
user = get_user_by_username(session, username)
session.delete(user)
session.commit()
logger.debug("Default superuser removed")
except Exception as exc: except Exception as exc:
logger.error(f"Error tearing down database: {exc}") logger.error(f"Error tearing down database: {exc}")

View file

@ -1,3 +1,6 @@
from loguru import logger
from sqlmodel import Session
from langflow.services.auth.utils import create_super_user, verify_password from langflow.services.auth.utils import create_super_user, verify_password
from langflow.services.database.utils import initialize_database from langflow.services.database.utils import initialize_database
from langflow.services.manager import service_manager from langflow.services.manager import service_manager
@ -6,19 +9,18 @@ from langflow.services.settings.constants import (
DEFAULT_SUPERUSER, DEFAULT_SUPERUSER,
DEFAULT_SUPERUSER_PASSWORD, DEFAULT_SUPERUSER_PASSWORD,
) )
from sqlmodel import Session
from .getters import get_db_service, get_session, get_settings_service from .getters import get_db_service, get_session, get_settings_service
from loguru import logger
def get_factories_and_deps(): def get_factories_and_deps():
from langflow.services.database import factory as database_factory from langflow.services.auth import factory as auth_factory
from langflow.services.cache import factory as cache_factory from langflow.services.cache import factory as cache_factory
from langflow.services.chat import factory as chat_factory from langflow.services.chat import factory as chat_factory
from langflow.services.settings import factory as settings_factory from langflow.services.database import factory as database_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 from langflow.services.session import factory as session_service_factory # type: ignore
from langflow.services.settings import factory as settings_factory
from langflow.services.task import factory as task_factory
return [ return [
(settings_factory.SettingsServiceFactory(), []), (settings_factory.SettingsServiceFactory(), []),
@ -130,10 +132,10 @@ def teardown_superuser(settings_service, session):
# If AUTO_LOGIN is True, we will remove the default superuser # If AUTO_LOGIN is True, we will remove the default superuser
# from the database. # from the database.
if settings_service.auth_settings.AUTO_LOGIN: if not settings_service.auth_settings.AUTO_LOGIN:
try: try:
logger.debug("AUTO_LOGIN is set to True. Removing default superuser.") logger.debug("AUTO_LOGIN is set to False. Removing default superuser if exists.")
username = settings_service.auth_settings.SUPERUSER username = DEFAULT_SUPERUSER
from langflow.services.database.models.user.user import User from langflow.services.database.models.user.user import User
user = session.query(User).filter(User.username == username).first() user = session.query(User).filter(User.username == username).first()
@ -175,8 +177,8 @@ def initialize_session_service():
""" """
Initialize the session manager. Initialize the session manager.
""" """
from langflow.services.session import factory as session_service_factory # type: ignore
from langflow.services.cache import factory as cache_factory from langflow.services.cache import factory as cache_factory
from langflow.services.session import factory as session_service_factory # type: ignore
initialize_settings_service() initialize_settings_service()