From b299386d3e67f49c1948e6e98d82b6d54d639dba Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Thu, 20 Nov 2025 18:35:43 +0100 Subject: [PATCH] [fix] minor type hint issues (#5459) Signed-off-by: Markus Heiser --- searx/extended_types.py | 4 ++-- searx/search/processors/online.py | 6 +++--- searx/utils.py | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/searx/extended_types.py b/searx/extended_types.py index 059ad947e..1dbe4ea87 100644 --- a/searx/extended_types.py +++ b/searx/extended_types.py @@ -30,7 +30,7 @@ import httpx if typing.TYPE_CHECKING: import searx.preferences import searx.results - from searx.search.processors import ParamTypes + from searx.search.processors import OnlineParamTypes class SXNG_Request(flask.Request): @@ -83,4 +83,4 @@ class SXNG_Response(httpx.Response): """ ok: bool - search_params: "ParamTypes" + search_params: "OnlineParamTypes" diff --git a/searx/search/processors/online.py b/searx/search/processors/online.py index 23bb7fda0..8592457d3 100644 --- a/searx/search/processors/online.py +++ b/searx/search/processors/online.py @@ -35,7 +35,7 @@ class HTTPParams(t.TypedDict): headers: dict[str, str] """HTTP header information.""" - data: dict[str, str] + data: dict[str, str | int | dict[str, str | int]] """Sending `form encoded data`_. .. _form encoded data: @@ -56,7 +56,7 @@ class HTTPParams(t.TypedDict): https://www.python-httpx.org/quickstart/#sending-json-encoded-data """ - url: str + url: str | None """Requested url.""" cookies: dict[str, str] @@ -200,7 +200,7 @@ class OnlineProcessor(EngineProcessor): request_args["content"] = params["content"] # send the request - response = req(params["url"], **request_args) + response = req(params["url"], **request_args) # pyright: ignore[reportArgumentType] # check soft limit of the redirect count if len(response.history) > soft_max_redirects: diff --git a/searx/utils.py b/searx/utils.py index 7e2f4d78f..3d7d6e715 100644 --- a/searx/utils.py +++ b/searx/utils.py @@ -741,7 +741,7 @@ def detect_language(text: str, threshold: float = 0.3, only_search_languages: bo return None -def js_variable_to_python(js_variable: str) -> str: +def js_variable_to_python(js_variable: str) -> t.Any: """Convert a javascript variable into JSON and then load the value It does not deal with all cases, but it is good enough for now. @@ -808,7 +808,7 @@ def js_variable_to_python(js_variable: str) -> str: # replace the surogate character by colon s = s.replace(chr(1), ':') # load the JSON and return the result - return json.loads(s) # pyright: ignore[reportAny] + return json.loads(s) def parse_duration_string(duration_str: str) -> timedelta | None: