When we proxy a media request to a remote server, add a query-param, which will
tell the remote server to 404 if it doesn't recognise the server_name.
This should fix a routing loop where the server keeps forwarding back to
itself.
Also improves the error handling on remote media fetches, so that we don't
always return a rather obscure 502.
===========================================
Features:
* Add some administration functionalities. Thanks to morteza-araby! (PR #1784)
Changes:
* Reduce database table sizes (PR #1873, #1916, #1923, #1963)
* Update contrib/ to not use syutil. Thanks to andrewshadura! (PR #1907)
* Don't fetch current state when sending an event in common case (PR #1955)
Bug fixes:
* Fix synapse_port_db failure. Thanks to Pneumaticat! (PR #1904)
* Fix caching to not cache error responses (PR #1913)
* Fix APIs to make kick & ban reasons work (PR #1917)
* Fix bugs in the /keys/changes api (PR #1921)
* Fix bug where users couldn't forget rooms they were banned from (PR #1922)
* Fix issue with long language values in pushers API (PR #1925)
* Fix a race in transaction queue (PR #1930)
* Fix dynamic thumbnailing to preserve aspect ratio. Thanks to jkolo! (PR
#1945)
* Fix device list update to not constantly resync (PR #1964)
* Fix potential for huge memory usage when getting device that have
changed (PR #1969)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJYwAAjAAoJEDraBu3HU9EegKcP+wdRrOGlMZwKFm+2Bm4+6VF1
g5EFYGQaZauef9ZmFNnc9n2obUJysXDTU5h80Hue7YFxi/kIEOS3DtMowNGovC8w
knFnWORkqZmz/ANJUjTbZ04AwA56FCXelymiOcPYI/HTcD5EPiWM/LvT5qhE688y
nG0SOYSWzZPiYhKhp9K1yBq0wVN0mWVMeBWdtmrvR/LYUlFYgwXgAhWNjupE1Im2
phHA63IP3aWxlbgR7fQKLb67O+2v3HpZdkk7fvXvlytRjicij5Ol2FX2Ya6MqybZ
7n9qkH2CCjidg5sUmKFMCBPsbF/xF/SKgcQfdwG+U7Pc+tHm/Fshf9xjx4Kiz0ti
5bSWRzPEbbSFenqWP5oQtnS53oVsGvyEte9F1qoah1tE+nhYzpsnQ7pFyZa9zF8+
k2ORvsyVFqdVkDHcQqtUEZlAbpDQtBMh1/mLKIIO097aDeKPsvIgRC+pomjX1o7A
IaPiQlv6SZ/9nMByl140zHBL2TCcgMOQClNBcw+IxqTe3+uKdHV0X4UeIE5b/qo7
ycVnyoth6xJCo5JBdKxpcaJLnMNT1axSaTyYXo1sj3Ae2opOqK4uxX4LOVHxB89H
T+y1/U99HFzdyiOcTOl9LYzETuZitS6kHu665YvWhh1MuLyytSWlcg7XzHfG9TzK
Gae2WnKgr4h6wubJtgDI
=ENe8
-----END PGP SIGNATURE-----
Merge tag 'v0.19.3-rc1' into release-v0.19.3
Changes in synapse v0.19.3-rc1 (2017-03-08)
===========================================
Features:
* Add some administration functionalities. Thanks to morteza-araby! (PR #1784)
Changes:
* Reduce database table sizes (PR #1873, #1916, #1923, #1963)
* Update contrib/ to not use syutil. Thanks to andrewshadura! (PR #1907)
* Don't fetch current state when sending an event in common case (PR #1955)
Bug fixes:
* Fix synapse_port_db failure. Thanks to Pneumaticat! (PR #1904)
* Fix caching to not cache error responses (PR #1913)
* Fix APIs to make kick & ban reasons work (PR #1917)
* Fix bugs in the /keys/changes api (PR #1921)
* Fix bug where users couldn't forget rooms they were banned from (PR #1922)
* Fix issue with long language values in pushers API (PR #1925)
* Fix a race in transaction queue (PR #1930)
* Fix dynamic thumbnailing to preserve aspect ratio. Thanks to jkolo! (PR
#1945)
* Fix device list update to not constantly resync (PR #1964)
* Fix potential for huge memory usage when getting device that have
changed (PR #1969)
Unfortunately this significantly increases the size of the already-rather-big
FederationHandler, but the code fits more naturally here, and it paves the way
for the tighter integration that I need between handling incoming PDUs and
doing the join dance.
Other than renaming the existing `FederationHandler.on_receive_pdu` to
`_process_received_pdu` to make way for it, this just consists of the move, and
replacing `self.handler` with `self` and `self` with `self.replication_layer`.