-
Notifications
You must be signed in to change notification settings - Fork 225
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support both import names of PyPI package python-multipart
.
#17932
Conversation
This allows synapse to run with python multipart >=0.0.13 without any tricky fallback. There is a conflict between 2 packages called multipart, so this should be modified.
Requires Kludex/python-multipart#166 (0.0.13) We support >=0.0.9: Lines 228 to 229 in e80dad5
We either need to bump this version up (if it's OK with distro packagers) or support both versions for a while. Given 0.0.13 was released on Oct 20, it seems a bit hard to ask distro packagers to update this dependency already, so I think supporting both import names would be prudent for now |
Yes, perhaps it's safer to make a conditional import for the time being. |
Also, please, be aware of this twisted/treq#399, which basically ignited the python-multipart import name change. We already have to patch it locally in gentoo https://github.com/gentoo/gentoo/blob/cf6eec4024656661b7bf28da9576a50b0b579ff6/net-im/synapse/synapse-1.117.0-r1.ebuild#L182-L184 to deal with import collision for direct and indirect dependencies. |
This is exactly because of that conflict that I pushed the change in the first place. I am not completely sure how to solve the issue the cleanest possible way, but this clearly needs to be done upstream and not in package/ports systems. |
python-multipart
.
I added some changes to support both import names, supporting both <0.0.13 using the old name (for distro packagers who are still stuck on the old version, if any), and >=0.0.13 with the new name (to help avoid the name conflict). |
This allows synapse to run with python multipart >=0.0.13 without any tricky fallback. There is a conflict between 2 packages called multipart, so this should be modified.
Pull Request Checklist
EventStore
toEventWorkerStore
.".code blocks
.(run the linters)