summary refs log tree commit diff
path: root/synapse/config/oidc.py
diff options
context:
space:
mode:
authorDavid Robertson <davidr@element.io>2022-03-01 17:44:41 +0000
committerGitHub <noreply@github.com>2022-03-01 17:44:41 +0000
commit313581e4e9bc2ec3d59ccff86e3a0c02661f71c4 (patch)
treee7cca1740f8fb1011201a3e05a973e6c9f513654 /synapse/config/oidc.py
parentFix rare error in `ReadWriteLock` when writers complete immediately (#12105) (diff)
downloadsynapse-313581e4e9bc2ec3d59ccff86e3a0c02661f71c4.tar.xz
Use importlib.metadata to read requirements (#12088)
* Pull runtime dep checks into their own module
* Reimplement `check_requirements` using `importlib`

I've tried to make this clearer. We start by working out which of
Synapse's requirements we need to be installed here and now. I was
surprised that there wasn't an easier way to see which packages were
installed by a given extra.

I've pulled out the error messages into functions that deal with "is
this for an extra or not". And I've rearranged the loop over two
different sets of requirements into one loop with a "must be instaled"
flag.

I hope you agree that this is clearer.

* Test cases
Diffstat (limited to 'synapse/config/oidc.py')
-rw-r--r--synapse/config/oidc.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/synapse/config/oidc.py b/synapse/config/oidc.py
index e783b11315..f7e4f9ef22 100644
--- a/synapse/config/oidc.py
+++ b/synapse/config/oidc.py
@@ -20,11 +20,11 @@ import attr
 
 from synapse.config._util import validate_config
 from synapse.config.sso import SsoAttributeRequirement
-from synapse.python_dependencies import DependencyException, check_requirements
 from synapse.types import JsonDict
 from synapse.util.module_loader import load_module
 from synapse.util.stringutils import parse_and_validate_mxc_uri
 
+from ..util.check_dependencies import DependencyException, check_requirements
 from ._base import Config, ConfigError, read_file
 
 DEFAULT_USER_MAPPING_PROVIDER = "synapse.handlers.oidc.JinjaOidcMappingProvider"