mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
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. |
||
|---|---|---|
| .. | ||
| command-line-engines.rst | ||
| configured_engines.rst | ||
| index.rst | ||
| nosql-engines.rst | ||
| private-engines.rst | ||
| recoll.rst | ||
| search-indexer-engines.rst | ||
| searx.engines.xpath.rst | ||
| settings.rst | ||
| sql-engines.rst | ||