From 619e18d6cb13ef9c68ea8bc7069d8648851e5769 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Mazzucotelli?= Date: Fri, 14 Jan 2022 20:48:46 +0100 Subject: [PATCH] refactor: Support Jinja2 3.1 Issue #360: https://github.com/mkdocstrings/mkdocstrings/issues/360 --- src/mkdocstrings/loggers.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/mkdocstrings/loggers.py b/src/mkdocstrings/loggers.py index 1b1a5dff..6be121ed 100644 --- a/src/mkdocstrings/loggers.py +++ b/src/mkdocstrings/loggers.py @@ -4,10 +4,14 @@ from pathlib import Path from typing import Any, Callable, Optional, Tuple -from jinja2 import contextfunction from jinja2.runtime import Context from mkdocs.utils import warning_filter +try: + from jinja2 import pass_context +except ImportError: # TODO: remove once Jinja2 < 3.1 is dropped + from jinja2 import contextfunction as pass_context # noqa: WPS440 + TEMPLATES_DIR = Path(__file__).parent / "templates" @@ -71,7 +75,7 @@ def get_template_logger_function(logger_func: Callable) -> Callable: A function. """ - @contextfunction + @pass_context def wrapper(context: Context, msg: Optional[str] = None) -> str: """Log a message.