diff options
| author | Markus Heiser <markus.heiser@darmarit.de> | 2025-08-22 17:17:51 +0200 |
|---|---|---|
| committer | Markus Heiser <markus.heiser@darmarIT.de> | 2025-09-03 13:37:36 +0200 |
| commit | 57b9673efb1b4fd18a3ac15e26da642201e2cd33 (patch) | |
| tree | 79d3ecd365a1669a1109aa7e5dd3636bc1041d96 /searx/metrics/__init__.py | |
| parent | 09500459feffa414dc7a0601bdb164464a8b0454 (diff) | |
[mod] addition of various type hints / tbc
- pyright configuration [1]_
- stub files: types-lxml [2]_
- addition of various type hints
- enable use of new type system features on older Python versions [3]_
- ``.tool-versions`` - set python to lowest version we support (3.10.18) [4]_:
Older versions typically lack some typing features found in newer Python
versions. Therefore, for local type checking (before commit), it is necessary
to use the older Python interpreter.
.. [1] https://docs.basedpyright.com/v1.20.0/configuration/config-files/
.. [2] https://pypi.org/project/types-lxml/
.. [3] https://typing-extensions.readthedocs.io/en/latest/#
.. [4] https://mise.jdx.dev/configuration.html#tool-versions
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Format: reST
Diffstat (limited to 'searx/metrics/__init__.py')
| -rw-r--r-- | searx/metrics/__init__.py | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/searx/metrics/__init__.py b/searx/metrics/__init__.py index 00a811635..da833a8c9 100644 --- a/searx/metrics/__init__.py +++ b/searx/metrics/__init__.py @@ -1,11 +1,9 @@ # SPDX-License-Identifier: AGPL-3.0-or-later # pylint: disable=missing-module-docstring -import typing import math import contextlib from timeit import default_timer -from operator import itemgetter from searx.engines import engines from searx.openmetrics import OpenMetricsFamily @@ -30,8 +28,8 @@ __all__ = [ ENDPOINTS = {'search'} -histogram_storage: typing.Optional[HistogramStorage] = None -counter_storage: typing.Optional[CounterStorage] = None +histogram_storage: HistogramStorage = None # type: ignore +counter_storage: CounterStorage = None # type: ignore @contextlib.contextmanager @@ -57,11 +55,11 @@ def histogram(*args, raise_on_not_found=True): return h -def counter_inc(*args): +def counter_inc(*args: str): counter_storage.add(1, *args) -def counter_add(value, *args): +def counter_add(value: int, *args: str): counter_storage.add(value, *args) @@ -69,7 +67,7 @@ def counter(*args): return counter_storage.get(*args) -def initialize(engine_names=None, enabled=True): +def initialize(engine_names: list[str] | None = None, enabled: bool = True) -> None: """ Initialize metrics """ @@ -174,7 +172,7 @@ def get_reliabilities(engline_name_list, checker_results): return reliabilities -def get_engines_stats(engine_name_list): +def get_engines_stats(engine_name_list: list[str]): assert counter_storage is not None assert histogram_storage is not None |