From 8c07a2c930538dc45f5be2db0b883673c85320e3 Mon Sep 17 00:00:00 2001 From: Fabian Dill Date: Fri, 1 Aug 2025 00:43:08 +0200 Subject: [PATCH] WebHost: turn module discovery dynamic (#5218) --- WebHostLib/__init__.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/WebHostLib/__init__.py b/WebHostLib/__init__.py index e928b8f3..74086cb8 100644 --- a/WebHostLib/__init__.py +++ b/WebHostLib/__init__.py @@ -87,12 +87,17 @@ app.jinja_env.filters["title_sorted"] = title_sorted def register(): """Import submodules, triggering their registering on flask routing. Note: initializes worlds subsystem.""" + import importlib + + from werkzeug.utils import find_modules # has automatic patch integration import worlds.Files app.jinja_env.filters['is_applayercontainer'] = worlds.Files.is_ap_player_container from WebHostLib.customserver import run_server_process - # to trigger app routing picking up on it - from . import tracker, upload, landing, check, generate, downloads, api, stats, misc, robots, options, session + for module in find_modules("WebHostLib", include_packages=True): + importlib.import_module(module) + + from . import api app.register_blueprint(api.api_endpoints)