searxng/searx/search
Martin Fischer 5dd28ff04b [enh] introduce Engine class
Previously engines were defined in modules, which where then
stapled with logger, supported_languages & language_aliases
via monkey patching in searx/engines/__init__.py.

Monkey patching is obviously a bad practice since it confuses
humans as well as static type checkers. But there were more problems:

* there were no type hints for the method input and output types

* the request method did not even make a clear distinction between input
  and output (abusing a single "params" dictionary for both)

This commit introduces a new class-based architecture for engines,
in a backwards-compatiable manner: allowing old-style module engines
to be used along witn new-style class-based engines.
2022-01-28 13:23:41 +01:00
..
checker [pyright:strict] searx.search.checker.background 2022-01-27 22:07:12 +01:00
processors [enh] introduce Engine class 2022-01-28 13:23:41 +01:00
__init__.py [enh] settings.yml: implement general.enable_metrics 2022-01-05 19:03:04 +01:00
models.py [format.python] initial formatting of the python code 2021-12-27 09:26:22 +01:00