1010from contextlib import suppress
1111from ipaddress import ip_address
1212from pathlib import Path
13+ from jose import JWTError
1314
1415import click
1516import httpx
2930from langflow .initial_setup .setup import get_or_create_default_folder
3031from langflow .logging .logger import configure , logger
3132from langflow .main import setup_app
32- from langflow .services .database .utils import session_getter
3333from langflow .services .deps import get_db_service , get_settings_service , session_scope
34- from langflow .services .settings .constants import DEFAULT_SUPERUSER
34+ from langflow .services .settings .constants import DEFAULT_SUPERUSER , DEFAULT_SUPERUSER_PASSWORD
3535from langflow .services .utils import initialize_services
36+ from langflow .services .auth .utils import get_current_user_by_jwt , check_key
3637from langflow .utils .version import fetch_latest_version , get_version_info
3738from langflow .utils .version import is_pre_release as langflow_is_pre_release
3839
@@ -650,7 +651,6 @@ async def _create_superuser():
650651 typer .echo ("Set LANGFLOW_ENABLE_SUPERUSER_CLI=true to enable this feature." )
651652 raise typer .Exit (1 )
652653
653- from langflow .services .settings .constants import DEFAULT_SUPERUSER , DEFAULT_SUPERUSER_PASSWORD
654654 nonlocal username , password
655655 if settings_service .auth_settings .AUTO_LOGIN :
656656 # Force default credentials for AUTO_LOGIN mode
@@ -665,7 +665,7 @@ async def _create_superuser():
665665
666666 from langflow .services .database .models .user .crud import get_all_superusers
667667 existing_superusers = []
668- async with session_getter ( db_service ) as session :
668+ async with session_scope ( ) as session :
669669 # Note that the default superuser is created by the initialize_services() function,
670670 # but leaving this check here in case we change that behavior
671671 existing_superusers = await get_all_superusers (session )
@@ -697,13 +697,12 @@ async def _create_superuser():
697697
698698 # Validate the auth token
699699 try :
700- from langflow .services .auth .utils import get_current_user_by_jwt , check_key
701- async with session_getter (db_service ) as session :
700+ async with session_scope () as session :
702701 # Try JWT first
703702 user = None
704703 try :
705704 user = await get_current_user_by_jwt (auth_token , session )
706- except Exception :
705+ except JWTError :
707706 # Try API key
708707 api_key_result = await check_key (session , auth_token )
709708 if api_key_result and hasattr (api_key_result , 'is_superuser' ):
@@ -717,7 +716,7 @@ async def _create_superuser():
717716 raise typer .Exit (1 )
718717
719718 # Auth complete, create the superuser
720- async with session_getter ( db_service ) as session :
719+ async with session_scope ( ) as session :
721720 from langflow .services .auth .utils import create_super_user
722721
723722 if await create_super_user (db = session , username = username , password = password ):
0 commit comments