summary refs log tree commit diff
diff options
context:
space:
mode:
authorBrendan Abolivier <babolivier@matrix.org>2021-10-25 18:45:19 +0200
committerGitHub <noreply@github.com>2021-10-25 16:45:19 +0000
commitc1510c97b56060b7ab470b11264ed10dad445e14 (patch)
treed550274e226d774f8368e438513d20e4870af96d
parentDon't set new room alias before potential 403 (#10930) (diff)
downloadsynapse-c1510c97b56060b7ab470b11264ed10dad445e14.tar.xz
Fix cyclic import in the module API (#11180)
Introduced in #10548

See https://github.com/matrix-org/synapse-email-account-validity/runs/3979337154?check_suite_focus=true for an example of a module's CI choking over this issue.
Diffstat (limited to '')
-rw-r--r--changelog.d/11180.feature1
-rw-r--r--synapse/handlers/auth.py6
2 files changed, 5 insertions, 2 deletions
diff --git a/changelog.d/11180.feature b/changelog.d/11180.feature
new file mode 100644
index 0000000000..82c40bf1b2
--- /dev/null
+++ b/changelog.d/11180.feature
@@ -0,0 +1 @@
+Port the Password Auth Providers module interface to the new generic interface.
diff --git a/synapse/handlers/auth.py b/synapse/handlers/auth.py
index ebe75a9e9b..d508d7d32a 100644
--- a/synapse/handlers/auth.py
+++ b/synapse/handlers/auth.py
@@ -62,7 +62,6 @@ from synapse.http.server import finish_request, respond_with_html
 from synapse.http.site import SynapseRequest
 from synapse.logging.context import defer_to_thread
 from synapse.metrics.background_process_metrics import run_as_background_process
-from synapse.module_api import ModuleApi
 from synapse.storage.roommember import ProfileInfo
 from synapse.types import JsonDict, Requester, UserID
 from synapse.util import stringutils as stringutils
@@ -73,6 +72,7 @@ from synapse.util.stringutils import base62_encode
 from synapse.util.threepids import canonicalise_email
 
 if TYPE_CHECKING:
+    from synapse.module_api import ModuleApi
     from synapse.rest.client.login import LoginResponse
     from synapse.server import HomeServer
 
@@ -1818,7 +1818,9 @@ def load_legacy_password_auth_providers(hs: "HomeServer") -> None:
 
 
 def load_single_legacy_password_auth_provider(
-    module: Type, config: JsonDict, api: ModuleApi
+    module: Type,
+    config: JsonDict,
+    api: "ModuleApi",
 ) -> None:
     try:
         provider = module(config=config, account_handler=api)