From e08ff05fffe0bdae67af5fd48ed35716fb8cb853 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Tue, 15 Oct 2024 17:26:59 +0200 Subject: [PATCH] [fix] add missing tomli to the requirements.txt Package ``tomli`` is needed for py < 3.11, BTW remove the no longer needed pytomlpp package. Signed-off-by: Markus Heiser --- requirements.txt | 2 +- searx/botdetection/config.py | 27 ++++----------------------- 2 files changed, 5 insertions(+), 24 deletions(-) diff --git a/requirements.txt b/requirements.txt index c5cc3fcc9..7b90ffe3f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -15,7 +15,7 @@ setproctitle==1.3.3 redis==5.0.8 markdown-it-py==3.0.0 fasttext-predict==0.9.2.2 -pytomlpp==1.0.13; python_version < '3.11' +tomli==2.0.2; python_version < '3.11' pydantic==2.9.2 eval_type_backport; python_version < '3.9' typer-slim==0.12.5 diff --git a/searx/botdetection/config.py b/searx/botdetection/config.py index 147104205..2a982ba64 100644 --- a/searx/botdetection/config.py +++ b/searx/botdetection/config.py @@ -14,17 +14,7 @@ import typing import logging import pathlib -try: - import tomllib - - pytomlpp = None - USE_TOMLLIB = True -except ImportError: - import pytomlpp - - tomllib = None - USE_TOMLLIB = False - +from ..compat import tomllib __all__ = ['Config', 'UNSET', 'SchemaIssue'] @@ -183,19 +173,10 @@ class Config: def toml_load(file_name): - if USE_TOMLLIB: - # Python >= 3.11 - try: - with open(file_name, "rb") as f: - return tomllib.load(f) - except tomllib.TOMLDecodeError as exc: - msg = str(exc).replace('\t', '').replace('\n', ' ') - log.error("%s: %s", file_name, msg) - raise - # fallback to pytomlpp for Python < 3.11 try: - return pytomlpp.load(file_name) - except pytomlpp.DecodeError as exc: + with open(file_name, "rb") as f: + return tomllib.load(f) + except tomllib.TOMLDecodeError as exc: msg = str(exc).replace('\t', '').replace('\n', ' ') log.error("%s: %s", file_name, msg) raise