From 4fb3ed2c6335b68f6b28ebc68d5d22f2fd621648 Mon Sep 17 00:00:00 2001 From: Dalf Date: Fri, 28 Aug 2020 12:12:32 +0200 Subject: [enh] test: load each engine to check for syntax errors --- searx/engines/__init__.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'searx/engines/__init__.py') diff --git a/searx/engines/__init__.py b/searx/engines/__init__.py index 48c02e2e7..70b5ba166 100644 --- a/searx/engines/__init__.py +++ b/searx/engines/__init__.py @@ -72,11 +72,8 @@ def load_engine(engine_data): engine_module = engine_data['engine'] - try: - engine = load_module(engine_module + '.py', engine_dir) - except: - logger.exception('Cannot load engine "{}"'.format(engine_module)) - return None + # can raise an exception + engine = load_module(engine_module + '.py', engine_dir) for param_name in engine_data: if param_name == 'engine': @@ -254,9 +251,11 @@ def load_engines(engine_list): global engines engines.clear() for engine_data in engine_list: - engine = load_engine(engine_data) - if engine is not None: + try: + engine = load_engine(engine_data) engines[engine.name] = engine + except: + logger.exception('Cannot load engine "{}"'.format(engine_data['engine'])) return engines -- cgit v1.2.3