Treat dict log_config without a version key as an overlay on uvicorn defaults.
A partial log_config (no "version" key) is deep-merged over uvicorn's
default config before our patching, so users pass only their
customizations, e.g. log_config={"loggers": {"myapp": {"level":
"DEBUG"}}}. Previously such dicts crashed at startup: dictConfig
requires a version, and our root entry referenced a "default" handler
that might not exist; that reference is now only added when the handler
exists. The stock default formatter is replaced only when untouched,
so an overlaid fmt survives. Dicts with version and non-dict configs
behave as before. Documented in the README logging section, with tests
under fastapi-vue/tests (each patched config validated through
dictConfig).
This commit is contained in:
@@ -49,3 +49,4 @@ ignore = ["CPY", "D203", "D213", "COM812", "PLR2004"]
|
||||
"template/**" = ["F821"] # Undefined names are template placeholders
|
||||
"template/scripts/devserver.py" = ["N806"] # MODULE_NAME is a template variable
|
||||
"fastapi_vue_setup.py" = ["PLR", "C901", "T201", "RUF001"]
|
||||
"**/tests/**" = ["S101"] # Asserts are the point of tests
|
||||
|
||||
Reference in New Issue
Block a user