searxng/searx/search/processors
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
..
__init__.py [typing] add type hints for dictionaries 2022-01-17 11:42:48 +01:00
abstract.py [typing] add type hints for dictionaries 2022-01-17 11:42:48 +01:00
offline.py [format.python] initial formatting of the python code 2021-12-27 09:26:22 +01:00
online.py [enh] introduce Engine class 2022-01-28 13:23:41 +01:00
online_currency.py [format.python] initial formatting of the python code 2021-12-27 09:26:22 +01:00
online_dictionary.py [format.python] initial formatting of the python code 2021-12-27 09:26:22 +01:00