From c869783b0bce6fc723e178c6fb2fd8587d3d0de5 Mon Sep 17 00:00:00 2001 From: Leo Vasanko Date: Fri, 18 Sep 2026 17:36:17 +0000 Subject: [PATCH] Build/dev emoji logging improved. Restored old plain lines, using intentionally different emoji than the main package. --- template/scripts/fastapi-vue/buildutil.py | 24 ++++++++++------------- template/scripts/fastapi-vue/devutil.py | 2 +- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/template/scripts/fastapi-vue/buildutil.py b/template/scripts/fastapi-vue/buildutil.py index 4ce5fa1..8ce931f 100644 --- a/template/scripts/fastapi-vue/buildutil.py +++ b/template/scripts/fastapi-vue/buildutil.py @@ -10,23 +10,19 @@ from pathlib import Path MIN_NODE_VERSION = 20 -# Duplicated from fastapi_vue.logging because build environment is isolated -_LEVEL_EMOJI = { - logging.DEBUG: "🐛", - logging.INFO: "🔷", - logging.WARNING: "❗", - logging.ERROR: "🛑", - logging.CRITICAL: "🚨", -} - - class _Formatter(logging.Formatter): - """Emoji level prefix formatter, mirroring fastapi_vue.logging.Formatter.""" + """Prefix formatter, intentionally different from fastapi_vue.logging. + + INFO and below pass through unprefixed so messages can use their own + markings (>>>, ###); WARNING and above get an emoji prefix. + """ def format(self, record: logging.LogRecord) -> str: - emoji = _LEVEL_EMOJI.get(record.levelno) - prefix = f"{emoji} " if emoji else f"{record.levelname}: " - return prefix + record.getMessage() + if record.levelno >= logging.ERROR: + return f"🛑 {record.getMessage()}" + if record.levelno >= logging.WARNING: + return f"💣 {record.getMessage()}" + return record.getMessage() _handler = logging.StreamHandler() diff --git a/template/scripts/fastapi-vue/devutil.py b/template/scripts/fastapi-vue/devutil.py index a01497f..653cdf1 100644 --- a/template/scripts/fastapi-vue/devutil.py +++ b/template/scripts/fastapi-vue/devutil.py @@ -133,7 +133,7 @@ async def ready(url: str, path: str = "", max_attempts: int = 50) -> None: for attempt in range(max_attempts): if await http_get_server(f"{url}{path}", timeout=1.0) is not None: - logger.info("✓ Backend ready!") + logger.info("🟢 Backend ready!") return if attempt == max_attempts - 1: logger.error("Backend at %s didn't start in time", url)