summary refs log tree commit diff
path: root/synapse/config/jwt.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2016-04-25 14:30:15 +0100
committerErik Johnston <erik@matrix.org>2016-04-25 14:30:15 +0100
commit52ecbc2843de51b3685529e63cd3815e826b6d90 (patch)
tree1dd2750fe6ac6534dded42e8bc294c0a4363bd37 /synapse/config/jwt.py
parentMerge pull request #748 from matrix-org/markjh/split_out_site.py (diff)
downloadsynapse-52ecbc2843de51b3685529e63cd3815e826b6d90.tar.xz
Make pyjwt dependency optional
Diffstat (limited to 'synapse/config/jwt.py')
-rw-r--r--synapse/config/jwt.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/synapse/config/jwt.py b/synapse/config/jwt.py

index 5c8199612b..47f145c589 100644 --- a/synapse/config/jwt.py +++ b/synapse/config/jwt.py
@@ -13,7 +13,16 @@ # See the License for the specific language governing permissions and # limitations under the License. -from ._base import Config +from ._base import Config, ConfigError + + +MISSING_JWT = ( + """Missing jwt library. This is required for jwt login. + + Install by running: + pip install pyjwt + """ +) class JWTConfig(Config): @@ -23,6 +32,12 @@ class JWTConfig(Config): self.jwt_enabled = jwt_config.get("enabled", False) self.jwt_secret = jwt_config["secret"] self.jwt_algorithm = jwt_config["algorithm"] + + try: + import jwt + jwt # To stop unused lint. + except ImportError: + raise ConfigError(MISSING_JWT) else: self.jwt_enabled = False self.jwt_secret = None