From 5d6644efe070b908dd802c299c9e6a1427cb8adf Mon Sep 17 00:00:00 2001 From: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> Date: Fri, 21 Jun 2019 16:52:09 +0100 Subject: [PATCH] Only import jinja2 when needed (#5514) Fixes https://github.com/matrix-org/synapse/issues/5431 `jinja2` was being imported even when it wasn't strictly necessary. This made it required to run Synapse, even if the functionality that required it wasn't enabled. This was causing new Synapse installations to crash on startup. Email modules are now required. --- changelog.d/5514.bugfix | 1 + synapse/python_dependencies.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 changelog.d/5514.bugfix diff --git a/changelog.d/5514.bugfix b/changelog.d/5514.bugfix new file mode 100644 index 0000000000..c3a76a854a --- /dev/null +++ b/changelog.d/5514.bugfix @@ -0,0 +1 @@ +Fix bug with `jinja2` preventing Synapse from starting. Users who had this problem should now simply need to run `pip install matrix-synapse`. diff --git a/synapse/python_dependencies.py b/synapse/python_dependencies.py index 77e2d1a0e1..13698d9638 100644 --- a/synapse/python_dependencies.py +++ b/synapse/python_dependencies.py @@ -72,10 +72,11 @@ REQUIREMENTS = [ # Twisted 18.7.0 requires attrs>=17.4.0 "attrs>=17.4.0", "netaddr>=0.7.18", + "Jinja2>=2.9", + "bleach>=1.4.3", ] CONDITIONAL_REQUIREMENTS = { - "email": ["Jinja2>=2.9", "bleach>=1.4.3"], "matrix-synapse-ldap3": ["matrix-synapse-ldap3>=0.1"], # we use execute_batch, which arrived in psycopg 2.7. "postgres": ["psycopg2>=2.7"],