Looks like we are relying on a private identifier which has been removed in Twisted 18.4:
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/rav/work/synapse/synapse/app/homeserver.py", line 31, in <module>
from synapse.crypto import context_factory
File "synapse/crypto/context_factory.py", line 17, in <module>
from twisted.internet._sslverify import _OpenSSLECCurve, _defaultCurveName
ImportError: cannot import name _OpenSSLECCurve
This just bit me with doing the upgrade to 0.28.0. To fix it, I had to do the following in my virtual env:
pip install -U "Twisted<18.4"
Just in case anyone else running a HS gets stuck until the fix is released.
For clarification, this is unrelated to synapse 0.28. The problem has been there since the very first versions of synapse.
Happy to close now?