Skip to content

Commit fdc496c

Browse files
fmuenkelchopan050
andauthored
Complete typing for logger_utils.py (#4134)
* Complete typing for logger_utils.py * Stop ignoring manim._config erros in mypy.ini * Ignore manim._config errors in mypy.ini --------- Co-authored-by: Francisco Manríquez Novoa <[email protected]>
1 parent f6cdb54 commit fdc496c

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

manim/_config/logger_utils.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
import copy
1717
import json
1818
import logging
19-
from typing import TYPE_CHECKING
19+
from typing import TYPE_CHECKING, Any
2020

2121
from rich import color, errors
2222
from rich import print as printf
@@ -91,7 +91,7 @@ def make_logger(
9191
# set the rich handler
9292
rich_handler = RichHandler(
9393
console=console,
94-
show_time=parser.getboolean("log_timestamps"),
94+
show_time=parser.getboolean("log_timestamps", fallback=False),
9595
keywords=HIGHLIGHTED_KEYWORDS,
9696
)
9797

@@ -108,7 +108,7 @@ def make_logger(
108108
return logger, console, error_console
109109

110110

111-
def parse_theme(parser: configparser.SectionProxy) -> Theme:
111+
def parse_theme(parser: configparser.SectionProxy) -> Theme | None:
112112
"""Configure the rich style of logger and console output.
113113
114114
Parameters
@@ -126,7 +126,7 @@ def parse_theme(parser: configparser.SectionProxy) -> Theme:
126126
:func:`make_logger`.
127127
128128
"""
129-
theme = {key.replace("_", "."): parser[key] for key in parser}
129+
theme: dict[str, Any] = {key.replace("_", "."): parser[key] for key in parser}
130130

131131
theme["log.width"] = None if theme["log.width"] == "-1" else int(theme["log.width"])
132132
theme["log.height"] = (
@@ -188,8 +188,11 @@ def format(self, record: logging.LogRecord) -> str:
188188
"""Format the record in a custom JSON format."""
189189
record_c = copy.deepcopy(record)
190190
if record_c.args:
191-
for arg in record_c.args:
192-
record_c.args[arg] = "<>"
191+
if isinstance(record_c.args, dict):
192+
for arg in record_c.args:
193+
record_c.args[arg] = "<>"
194+
else:
195+
record_c.args = ("<>",) * len(record_c.args)
193196
return json.dumps(
194197
{
195198
"levelname": record_c.levelname,

mypy.ini

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ warn_return_any = True
5252
ignore_errors = True
5353
disable_error_code = return-value
5454

55+
[mypy-manim._config.logger_utils]
56+
ignore_errors = False
57+
5558
[mypy-manim.animation.*]
5659
ignore_errors = True
5760

0 commit comments

Comments
 (0)