diff options
author | Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> | 2020-11-17 16:01:33 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-17 16:01:33 +0000 |
commit | c087f680531b2c40a4dc731da64b351a133c27fe (patch) | |
tree | d283e8ca8c3bfbbb8d5cb5cbe12730f2e8f4adf8 | |
parent | Fix changelog (diff) | |
download | synapse-c087f680531b2c40a4dc731da64b351a133c27fe.tar.xz |
Cap the version of prometheus_client to <v0.9.0 in the dockerfile (#8767)
Short-term fix for https://github.com/matrix-org/synapse/issues/8766.
-rw-r--r-- | changelog.d/8767.bugfix | 1 | ||||
-rw-r--r-- | docker/Dockerfile | 3 | ||||
-rw-r--r-- | synapse/python_dependencies.py | 4 |
3 files changed, 7 insertions, 1 deletions
diff --git a/changelog.d/8767.bugfix b/changelog.d/8767.bugfix new file mode 100644 index 0000000000..9fe5107a5e --- /dev/null +++ b/changelog.d/8767.bugfix @@ -0,0 +1 @@ +Fix a dependency versioning bug in the Dockerfile that prevented Synapse from starting. diff --git a/docker/Dockerfile b/docker/Dockerfile index 9791d3ddf0..791cd6936b 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -36,7 +36,8 @@ RUN pip install --prefix="/install" --no-warn-script-location \ frozendict \ jaeger-client \ opentracing \ - prometheus-client \ + # Match the version constraints of Synapse + "prometheus_client>=0.4.0,<0.9.0" \ psycopg2 \ pycparser \ pyrsistent \ diff --git a/synapse/python_dependencies.py b/synapse/python_dependencies.py index 0ddead8a0f..aab77fc453 100644 --- a/synapse/python_dependencies.py +++ b/synapse/python_dependencies.py @@ -72,6 +72,10 @@ REQUIREMENTS = [ # prom-client has a history of breaking backwards compatibility between # minor versions (https://github.com/prometheus/client_python/issues/317), # so we also pin the minor version. + # + # Note that we replicate these constraints in the Synapse Dockerfile while + # pre-installing dependencies. If these constraints are updated here, the + # same change should be made in the Dockerfile. "prometheus_client>=0.4.0,<0.9.0", # we use attr.validators.deep_iterable, which arrived in 19.1.0 (Note: # Fedora 31 only has 19.1, so if we want to upgrade we should wait until 33 |