Browse Source

[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 <markus.heiser@darmarit.de>
Markus Heiser 6 months ago
parent
commit
e08ff05fff
2 changed files with 5 additions and 24 deletions
  1. 1 1
      requirements.txt
  2. 4 23
      searx/botdetection/config.py

+ 1 - 1
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

+ 4 - 23
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