Skip to content

Commit e50dc08

Browse files
iodoneMeta42claude
authored
fix: enable colored loguru output for terminal display (#189)
* fix: enable loguru color output for terminal display loguru's default handler does not emit ANSI color codes in non-TTY or certain terminal environments. Explicitly configure a stderr sink with colorize=True so that log output is colored regardless of the runtime context. When logfire is available, the colorized stderr sink is added alongside the logfire handler so both destinations receive output. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor: move loguru handler setup before try block Per review feedback, logger.remove() and logger.add(sys.stderr, colorize=True) are always executed regardless of logfire availability, so move them before the try block for cleaner control flow. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Meta42 <mi@mideMacBook-Pro.local> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent eddc5eb commit e50dc08

1 file changed

Lines changed: 8 additions & 4 deletions

File tree

src/bub/__main__.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,26 @@
22

33
from __future__ import annotations
44

5+
import sys
6+
57
import typer
68

79
from bub.framework import BubFramework
810

911

1012
def _instrument_bub() -> None:
13+
from loguru import logger
14+
15+
logger.remove()
16+
logger.add(sys.stderr, colorize=True)
17+
1118
try:
1219
import logfire
1320

1421
logfire.configure()
22+
logger.add(logfire.loguru_handler())
1523
except ImportError:
1624
pass
17-
else:
18-
from loguru import logger
19-
20-
logger.configure(handlers=[logfire.loguru_handler()])
2125

2226

2327
def create_cli_app() -> typer.Typer:

0 commit comments

Comments
 (0)