Fix: add aiohttp to minimal deps, lazy-load OnboardingManager

This commit is contained in:
ajaysi
2026-04-06 07:24:37 +05:30
parent 6cf5d0396d
commit 429689bdcb
2 changed files with 50 additions and 18 deletions

View File

@@ -3,6 +3,11 @@ ALwrity Utilities Package
Modular utilities for ALwrity backend startup and configuration.
"""
import os
# Check podcast mode early to skip heavy imports
_is_podcast = os.getenv("ALWRITY_ENABLED_FEATURES", "").strip().lower() == "podcast"
from .dependency_manager import DependencyManager
from .environment_setup import EnvironmentSetup
from .database_setup import DatabaseSetup
@@ -11,7 +16,6 @@ from .health_checker import HealthChecker
from .rate_limiter import RateLimiter
from .frontend_serving import FrontendServing
from .router_manager import RouterManager
from .onboarding_manager import OnboardingManager
from .feature_runtime import (
get_active_profiles,
get_enabled_groups,
@@ -21,20 +25,42 @@ from .feature_runtime import (
is_enabled,
)
__all__ = [
'DependencyManager',
'EnvironmentSetup',
'DatabaseSetup',
'ProductionOptimizer',
'HealthChecker',
'RateLimiter',
'FrontendServing',
'RouterManager',
'OnboardingManager',
'get_active_profiles',
'get_enabled_groups',
'get_enabled_optional_services',
'get_enabled_routers',
'get_enabled_startup_hooks',
'is_enabled'
]
# Lazy load OnboardingManager - it triggers heavy imports (aiohttp, etc.)
if not _is_podcast:
from .onboarding_manager import OnboardingManager
__all__ = [
'DependencyManager',
'EnvironmentSetup',
'DatabaseSetup',
'ProductionOptimizer',
'HealthChecker',
'RateLimiter',
'FrontendServing',
'RouterManager',
'OnboardingManager',
'get_active_profiles',
'get_enabled_groups',
'get_enabled_optional_services',
'get_enabled_routers',
'get_enabled_startup_hooks',
'is_enabled'
]
else:
OnboardingManager = None
__all__ = [
'DependencyManager',
'EnvironmentSetup',
'DatabaseSetup',
'ProductionOptimizer',
'HealthChecker',
'RateLimiter',
'FrontendServing',
'RouterManager',
'OnboardingManager',
'get_active_profiles',
'get_enabled_groups',
'get_enabled_optional_services',
'get_enabled_routers',
'get_enabled_startup_hooks',
'is_enabled'
]

View File

@@ -28,6 +28,7 @@ fastapi-clerk-auth>=0.0.7
sqlalchemy>=2.0.25
stripe>=8.0.0
httpx>=0.27.2,<0.28.0
aiohttp>=3.9.0
openai>=1.3.0
google-genai>=1.0.0
gtts>=2.4.0
@@ -45,6 +46,11 @@ pytest-asyncio>=0.21.0
apscheduler>=3.10.0
redis>=5.0.0
schedule>=1.2.0
aiofiles>=23.2.0
requests>=2.31.0
beautifulsoup4>=4.12.0
lxml>=4.9.0
psutil>=5.9.0
EOF
python -m pip install --retries 10 --timeout 120 -r requirements_min.txt
else