# ============================================================================ # main.py — ASGI import shim pro uvicorn # Verze: 1.0 # Datum: 2026-06-08 # Popis: Uvicorn neumí naimportovat modul s tečkou v názvu # (log_gateway_v1.0 -> čte .0 jako submodul). Tento shim načte # verzovaný soubor přes importlib a vystaví `app` pro uvicorn. # Spouštění: uvicorn main:app # Při upgrade přepni VERSION_FILE. # ============================================================================ import sys import importlib.util from pathlib import Path VERSION_FILE = "log_gateway_v1.0.py" _path = Path(__file__).resolve().parent / VERSION_FILE _spec = importlib.util.spec_from_file_location("log_gateway_impl", _path) _mod = importlib.util.module_from_spec(_spec) # Registrace do sys.modules je nutná, aby pydantic uměl dohledat forward-ref # typy (Optional, ...) při `from __future__ import annotations`. sys.modules[_spec.name] = _mod _spec.loader.exec_module(_mod) app = _mod.app