a50cf929c1 
								
							
								 
							
						 
						
							
							
								
								Require event format version to parse or create events  
							
							
							
						 
						
							2019-01-25 10:32:19 +00:00  
				
					
						
							
							
								 
						
							
							
								62514bb81b 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813  
							
							
							
						 
						
							2019-01-25 10:07:08 +00:00  
				
					
						
							
							
								 
						
							
							
								6a41d2a187 
								
							
								 
							
						 
						
							
							
								
								Add room_version param to get_pdu  
							
							... 
							
							
							
							When we add new event format we'll need to know the event format or room
version when parsing events. 
							
						 
						
							2019-01-23 17:19:58 +00:00  
				
					
						
							
							
								 
						
							
							
								67cd4dad81 
								
							
								 
							
						 
						
							
							
								
								Implement MSC 1813 - Add room version to make APIs  
							
							... 
							
							
							
							We also implement `make_membership_event` converting the returned
room version to an event format version. 
							
						 
						
							2019-01-23 16:51:46 +00:00  
				
					
						
							
							
								 
						
							
							
								4a4d2e17bc 
								
							
								 
							
						 
						
							
							
								
								Add /v2/invite federation API  
							
							
							
						 
						
							2019-01-15 13:22:44 +00:00  
				
					
						
							
							
								 
						
							
							
								3cecf5340d 
								
									
								
							
								 
							
						 
						
							
							
								
								Update synapse/federation/federation_server.py  
							
							... 
							
							
							
							Co-Authored-By: erikjohnston <erikj@jki.re> 
							
						 
						
							2018-11-09 11:28:25 +00:00  
				
					
						
							
							
								 
						
							
							
								9bce065a53 
								
									
								
							
								 
							
						 
						
							
							
								
								Update synapse/federation/federation_server.py  
							
							... 
							
							
							
							Co-Authored-By: erikjohnston <erikj@jki.re> 
							
						 
						
							2018-11-09 11:28:22 +00:00  
				
					
						
							
							
								 
						
							
							
								9417986f77 
								
							
								 
							
						 
						
							
							
								
								Drop PDUs of unknown rooms  
							
							... 
							
							
							
							When we receive events over federation we will need to know the room
version to be able to correctly handle them, e.g. once we start changing
event formats. Currently, we attempt to handle events in unknown rooms. 
							
						 
						
							2018-11-08 12:11:20 +00:00  
				
					
						
							
							
								 
						
							
							
								2e223a8c22 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove the unused /pull federation API ( #4118 )  
							
							
							
						 
						
							2018-10-31 04:24:59 +11:00  
				
					
						
							
							
								 
						
							
							
								b94a43d5b5 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/alias_disallow_list  
							
							
							
						 
						
							2018-10-25 15:25:31 +01:00  
				
					
						
							
							
								 
						
							
							
								ef771cc4c2 
								
							
								 
							
						 
						
							
							
								
								Fix a number of flake8 errors  
							
							... 
							
							
							
							Broadly three things here:
* disable W504 which seems a bit whacko
* remove a bunch of `as e` expressions from exception handlers that don't use
  them
* use `r""` for strings which include backslashes
Also, we don't use pep8 any more, so we can get rid of the duplicate config
there. 
							
						 
						
							2018-10-24 10:39:03 +01:00  
				
					
						
							
							
								 
						
							
							
								084046456e 
								
							
								 
							
						 
						
							
							
								
								Add config option to control alias creation  
							
							
							
						 
						
							2018-10-19 10:22:45 +01:00  
				
					
						
							
							
								 
						
							
							
								fc0f13dd03 
								
							
								 
							
						 
						
							
							
								
								Fix incorrect truncation in get_missing_events  
							
							... 
							
							
							
							It's quite important that get_missing_events returns the *latest* events in the
room; however we were pulling event ids out of the database until we got *at
least* 10, and then taking the *earliest* of the results.
We also shouldn't really be relying on depth, and should be checking the
room_id. 
							
						 
						
							2018-10-16 21:10:04 +01:00  
				
					
						
							
							
								 
						
							
							
								4a15a3e4d5 
								
									
								
							
								 
							
						 
						
							
							
								
								Include eventid in log lines when processing incoming federation transactions ( #3959 )  
							
							... 
							
							
							
							when processing incoming transactions, it can be hard to see what's going on,
because we process a bunch of stuff in parallel, and because we may end up
recursively working our way through a chain of three or four events.
This commit creates a way to use logcontexts to add the relevant event ids to
the log lines. 
							
						 
						
							2018-09-27 11:25:34 +01:00  
				
					
						
							
							
								 
						
							
							
								703de4ec13 
								
							
								 
							
						 
						
							
							
								
								Comments and interface cleanup for on_receive_pdu  
							
							... 
							
							
							
							Add some informative comments about what's going on here.
Also, `sent_to_us_directly` and `get_missing` were doing the same thing (apart
from in `_handle_queued_pdus`, which looks like a bug), so let's get rid of
`get_missing` and use `sent_to_us_directly` consistently. 
							
						 
						
							2018-09-20 13:06:55 +01:00  
				
					
						
							
							
								 
						
							
							
								4f8baab0c4 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into develop  
							
							
							
						 
						
							2018-09-06 13:05:22 +01:00  
				
					
						
							
							
								 
						
							
							
								2d2828dcbc 
								
									
								
							
								 
							
						 
						
							
							
								
								Port http/ to Python 3 ( #3771 )  
							
							
							
						 
						
							2018-09-06 00:10:47 +10:00  
				
					
						
							
							
								 
						
							
							
								c127c8d042 
								
							
								 
							
						 
						
							
							
								
								Fix origin handling for pushed transactions  
							
							... 
							
							
							
							Use the actual origin for push transactions, rather than whatever the remote
server claimed. 
							
						 
						
							2018-09-05 13:08:07 +01:00  
				
					
						
							
							
								 
						
							
							
								ef184caf30 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/split_federation  
							
							
							
						 
						
							2018-08-15 14:25:46 +01:00  
				
					
						
							
							
								 
						
							
							
								b37c472419 
								
									
								
							
								 
							
						 
						
							
							
								
								Rename async to async_helpers because `async` is a keyword on Python 3.7 ( #3678 )  
							
							
							
						 
						
							2018-08-10 23:50:21 +10:00  
				
					
						
							
							
								 
						
							
							
								72d1902bbe 
								
							
								 
							
						 
						
							
							
								
								Fixup doc comments  
							
							
							
						 
						
							2018-08-09 10:23:49 +01:00  
				
					
						
							
							
								 
						
							
							
								5785b93711 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' of github.com:matrix-org/synapse into erikj/split_federation  
							
							
							
						 
						
							2018-08-09 10:16:16 +01:00  
				
					
						
							
							
								 
						
							
							
								a3f5bf79a0 
								
							
								 
							
						 
						
							
							
								
								Add EDU/query handling over replication  
							
							
							
						 
						
							2018-08-06 15:23:31 +01:00  
				
					
						
							
							
								 
						
							
							
								0d63d93ca8 
								
							
								 
							
						 
						
							
							
								
								Enforce compatibility when processing make_join requests  
							
							... 
							
							
							
							Reject make_join requests from servers which do not support the room version.
Also include the room version in the response. 
							
						 
						
							2018-08-03 16:08:32 +01:00  
				
					
						
							
							
								 
						
							
							
								704c3e6239 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into develop  
							
							
							
						 
						
							2018-08-02 15:43:30 +01:00  
				
					
						
							
							
								 
						
							
							
								0a65450d04 
								
							
								 
							
						 
						
							
							
								
								Validation for events/rooms in fed requests  
							
							... 
							
							
							
							When we get a federation request which refers to an event id, make sure that
said event is in the room the caller claims it is in.
(patch supplied by @turt2live) 
							
						 
						
							2018-08-02 13:48:40 +01:00  
				
					
						
							
							
								 
						
							
							
								e908b86832 
								
							
								 
							
						 
						
							
							
								
								Remove pdu_failures from transactions  
							
							... 
							
							
							
							The field is never read from, and all the opportunities given to populate it are not utilized. It should be very safe to remove this. 
							
						 
						
							2018-07-30 16:28:47 -06:00  
				
					
						
							
							
								 
						
							
							
								ce0c18dec5 
								
							
								 
							
						 
						
							
							
								
								Improve logging for exceptions handling PDUs  
							
							... 
							
							
							
							when we get an exception handling a federation PDU, log the whole stacktrace. 
							
						 
						
							2018-07-23 22:13:19 +01:00  
				
					
						
							
							
								 
						
							
							
								49af402019 
								
							
								 
							
						 
						
							
							
								
								run isort  
							
							
							
						 
						
							2018-07-09 16:09:20 +10:00  
				
					
						
							
							
								 
						
							
							
								3cf3e08a97 
								
							
								 
							
						 
						
							
							
								
								Implementation of server_acls  
							
							... 
							
							
							
							... as described at
https://docs.google.com/document/d/1EttUVzjc2DWe2ciw4XPtNpUpIl9lWXGEsy2ewDS7rtw . 
							
						 
						
							2018-07-04 19:06:20 +01:00  
				
					
						
							
							
								 
						
							
							
								e3b4043800 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3456  from matrix-org/hawkowl/federation-prevevent-checking  
							
							... 
							
							
							
							Check the state of prev_events a bit more thoroughly when coming over federation 
							
						 
						
							2018-06-29 13:55:02 +01:00  
				
					
						
							
							
								 
						
							
							
								6350bf925e 
								
									
								
							
								 
							
						 
						
							
							
								
								Attempt to be more performant on PyPy ( #3462 )  
							
							
							
						 
						
							2018-06-28 14:49:57 +01:00  
				
					
						
							
							
								 
						
							
							
								77078d6c8e 
								
							
								 
							
						 
						
							
							
								
								handle federation not telling us about prev_events  
							
							
							
						 
						
							2018-06-27 11:27:32 +01:00  
				
					
						
							
							
								 
						
							
							
								9fc5b74b24 
								
							
								 
							
						 
						
							
							
								
								simplify get_persisted_pdu  
							
							... 
							
							
							
							it doesn't make much sense to use get_persisted_pdu on the receive path: just
get the event straight from the store. 
							
						 
						
							2018-06-12 09:51:31 +01:00  
				
					
						
							
							
								 
						
							
							
								071206304d 
								
							
								 
							
						 
						
							
							
								
								cleanup pep8 errors  
							
							
							
						 
						
							2018-05-22 16:54:22 -05:00  
				
					
						
							
							
								 
						
							
							
								df9f72d9e5 
								
							
								 
							
						 
						
							
							
								
								replacing portions  
							
							
							
						 
						
							2018-05-21 19:47:37 -05:00  
				
					
						
							
							
								 
						
							
							
								77ebef9d43 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3118  from matrix-org/rav/reject_prev_events  
							
							... 
							
							
							
							Reject events which have lots of prev_events 
							
						 
						
							2018-04-23 17:51:38 +01:00  
				
					
						
							
							
								 
						
							
							
								dc875d2712 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3106  from NotAFile/py3-six-itervalues-1  
							
							... 
							
							
							
							Use six.itervalues in some places 
							
						 
						
							2018-04-20 15:43:52 +01:00  
				
					
						
							
							
								 
						
							
							
								0c280d4d99 
								
							
								 
							
						 
						
							
							
								
								Reinstate linearizer for federation_server.on_context_state_request  
							
							
							
						 
						
							2018-04-20 11:10:04 +01:00  
				
					
						
							
							
								 
						
							
							
								1f4b498b73 
								
							
								 
							
						 
						
							
							
								
								Add some comments  
							
							
							
						 
						
							2018-04-18 00:15:36 +01:00  
				
					
						
							
							
								 
						
							
							
								36c59ce669 
								
							
								 
							
						 
						
							
							
								
								Use six.itervalues in some places  
							
							... 
							
							
							
							There's more where that came from
Signed-off-by: Adrian Tschira <nota@notafile.com> 
							
						 
						
							2018-04-15 20:39:43 +02:00  
				
					
						
							
							
								 
						
							
							
								b78395b7fe 
								
							
								 
							
						 
						
							
							
								
								Refactor ResponseCache usage  
							
							... 
							
							
							
							Adds a `.wrap` method to ResponseCache which wraps up the boilerplate of a
(get, set) pair, and then use it throughout the codebase.
This will be largely non-functional, but does include the following functional
changes:
* federation_server.on_context_state_request: drops use of _server_linearizer
  which looked redundant and could cause incorrect cache misses by yielding
  between the get and the set.
* RoomListHandler.get_remote_public_room_list(): fixes logcontext leaks
* the wrap function includes some logging. I'm hoping this won't be too noisy
  on production. 
							
						 
						
							2018-04-12 13:02:15 +01:00  
				
					
						
							
							
								 
						
							
							
								b3384232a0 
								
							
								 
							
						 
						
							
							
								
								Add metrics for ResponseCache  
							
							
							
						 
						
							2018-04-10 23:14:47 +01:00  
				
					
						
							
							
								 
						
							
							
								56e709857c 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2979  from matrix-org/erikj/no_handlers  
							
							... 
							
							
							
							Don't build handlers on workers unnecessarily 
							
						 
						
							2018-03-13 13:46:38 +00:00  
				
					
						
							
							
								 
						
							
							
								9a2d9b4789 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2977  from matrix-org/erikj/replication_move_props  
							
							... 
							
							
							
							Move property setting from ReplicationLayer to base classes 
							
						 
						
							2018-03-13 11:45:25 +00:00  
				
					
						
							
							
								 
						
							
							
								f43b6d6d9b 
								
							
								 
							
						 
						
							
							
								
								Fix docstring types  
							
							
							
						 
						
							2018-03-13 11:29:35 +00:00  
				
					
						
							
							
								 
						
							
							
								265b993b8a 
								
							
								 
							
						 
						
							
							
								
								Split replication layer into two  
							
							
							
						 
						
							2018-03-13 10:55:47 +00:00  
				
					
						
							
							
								 
						
							
							
								e05bf34117 
								
							
								 
							
						 
						
							
							
								
								Move property setting from ReplicationLayer to FederationBase  
							
							
							
						 
						
							2018-03-13 10:51:30 +00:00  
				
					
						
							
							
								 
						
							
							
								c3f79c9da5 
								
							
								 
							
						 
						
							
							
								
								Split out edu/query registration to a separate class  
							
							
							
						 
						
							2018-03-13 10:24:27 +00:00  
				
					
						
							
							
								 
						
							
							
								3079f80d4a 
								
							
								 
							
						 
						
							
							
								
								Factor out `event_from_pdu_json`  
							
							... 
							
							
							
							turns out we have two copies of this, and neither needs to be an instance
method 
							
						 
						
							2017-12-30 18:40:19 +00:00