Erik Johnston
							
						 
						
							 
							
							
							
								
							
								6823fe5241 
								
							
								 
							
						 
						
							
							
								
								Linearize updates to membership via PUT /state/  
							
							 
							
							
							
						 
						
							2017-01-09 18:25:13 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								1574b839e0 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1676  from matrix-org/erikj/room_list  
							
							 
							
							... 
							
							
							
							Add new API appservice specific public room list 
							
						 
						
							2016-12-12 17:00:10 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								52d12ca782 
								
							
								 
							
						 
						
							
							
								
								Add /room/<room_id>/joined_members API  
							
							 
							
							... 
							
							
							
							This returns the currently joined members in the room with their display
names and avatar urls. This is more efficient than /members for large
rooms where you don't need the full events. 
							
						 
						
							2016-12-08 13:32:07 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								de796f27e6 
								
							
								 
							
						 
						
							
							
								
								Add joined_rooms servlet  
							
							 
							
							
							
						 
						
							2016-12-08 11:39:03 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								f32fb65552 
								
							
								 
							
						 
						
							
							
								
								Add new API appservice specific public room list  
							
							 
							
							
							
						 
						
							2016-12-06 16:12:27 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								af4a1bac50 
								
							
								 
							
						 
						
							
							
								
								Move .observe() up to the cache to make things neater  
							
							 
							
							
							
						 
						
							2016-11-14 09:52:41 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								8ecaff51a1 
								
							
								 
							
						 
						
							
							
								
								Review comments  
							
							 
							
							
							
						 
						
							2016-11-11 17:47:03 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								f6c48802f5 
								
							
								 
							
						 
						
							
							
								
								More flake8  
							
							 
							
							
							
						 
						
							2016-11-11 15:08:24 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								a88bc67f88 
								
							
								 
							
						 
						
							
							
								
								Flake8 and fix whoopsie  
							
							 
							
							
							
						 
						
							2016-11-11 15:02:29 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								42c43cfafd 
								
							
								 
							
						 
						
							
							
								
								Use ObservableDeferreds instead of Deferreds as they behave as intended  
							
							 
							
							
							
						 
						
							2016-11-11 14:54:10 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								8a8ad46f48 
								
							
								 
							
						 
						
							
							
								
								Flake8  
							
							 
							
							
							
						 
						
							2016-11-10 15:22:11 +00:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								2771447c29 
								
							
								 
							
						 
						
							
							
								
								Store Promise<Response> instead of Response for HTTP API transactions  
							
							 
							
							... 
							
							
							
							This fixes a race whereby:
 - User hits an endpoint.
 - No cached transaction so executes main code.
 - User hits same endpoint.
 - No cache transaction so executes main code.
 - Main code finishes executing and caches response and returns.
 - Main code finishes executing and caches response and returns.
 This race is common in the wild when Synapse is struggling under load.
 This commit fixes the race by:
  - User hits an endpoint.
  - Caches the promise to execute the main code and executes main code.
  - User hits same endpoint.
  - Yields on the same promise as the first request.
  - Main code finishes executing and returns, unblocking both requests. 
							
						 
						
							2016-11-10 14:49:26 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								22578545a0 
								
							
								 
							
						 
						
							
							
								
								Time out typing over federation  
							
							 
							
							
							
						 
						
							2016-09-23 14:00:52 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								87528f0756 
								
							
								 
							
						 
						
							
							
								
								Support /initialSync in synchrotron worker  
							
							 
							
							
							
						 
						
							2016-09-21 11:46:28 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								ddc89df89d 
								
							
								 
							
						 
						
							
							
								
								Enable guest access to POST /publicRooms  
							
							 
							
							
							
						 
						
							2016-09-17 15:55:24 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								2e67cabd7f 
								
							
								 
							
						 
						
							
							
								
								Make POST /publicRooms require auth  
							
							 
							
							
							
						 
						
							2016-09-16 11:32:51 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								c33b25fd8d 
								
							
								 
							
						 
						
							
							
								
								Change the way we calculate new_limit in /publicRooms and add POST API  
							
							 
							
							
							
						 
						
							2016-09-15 17:35:20 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								68c1ed4d1a 
								
							
								 
							
						 
						
							
							
								
								Remove default public rooms limit  
							
							 
							
							
							
						 
						
							2016-09-15 13:56:20 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								1d98cf26be 
								
							
								 
							
						 
						
							
							
								
								By default limit /publicRooms to 100 entries  
							
							 
							
							
							
						 
						
							2016-09-15 13:18:35 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								5810cffd33 
								
							
								 
							
						 
						
							
							
								
								Pass since/from parameters over federation  
							
							 
							
							
							
						 
						
							2016-09-15 10:36:19 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								f3eead0660 
								
							
								 
							
						 
						
							
							
								
								Allow paginating both forwards and backwards  
							
							 
							
							
							
						 
						
							2016-09-15 10:15:37 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								4131381123 
								
							
								 
							
						 
						
							
							
								
								Remove support for aggregate room lists  
							
							 
							
							
							
						 
						
							2016-09-15 09:28:15 +01:00  
						
					 
				
					
						
							
							
								 
								Paul "LeoNerd" Evans
							
						 
						
							 
							
							
							
								
							
								d271383e63 
								
							
								 
							
						 
						
							
							
								
								Filter returned events for client-facing format  
							
							 
							
							
							
						 
						
							2016-09-09 14:40:15 +01:00  
						
					 
				
					
						
							
							
								 
								Paul "LeoNerd" Evans
							
						 
						
							 
							
							
							
								
							
								0fc0a3bdff 
								
							
								 
							
						 
						
							
							
								
								Allow clients to specify the format a room state event is returned in  
							
							 
							
							
							
						 
						
							2016-09-09 14:34:29 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								3f9889bfd6 
								
							
								 
							
						 
						
							
							
								
								Use parse_string  
							
							 
							
							
							
						 
						
							2016-09-08 15:51:10 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								791658b576 
								
							
								 
							
						 
						
							
							
								
								Add server param to /publicRooms  
							
							 
							
							
							
						 
						
							2016-09-08 11:53:05 +01:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								4b31426a02 
								
							
								 
							
						 
						
							
							
								
								Pass through user-supplied content in /join/$room_id  
							
							 
							
							... 
							
							
							
							It was always intended to allow custom keys on the join event, but this has
at some point been lost. Restore it.
If the user specifies keys like "avatar_url" then they will be clobbered. 
							
						 
						
							2016-08-23 16:32:04 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								866a5320de 
								
							
								 
							
						 
						
							
							
								
								Dont invoke get_handlers fromClientV1RestServlet  
							
							 
							
							... 
							
							
							
							hs.get_handlers() can not be invoked from split out processes. Moving
the invocations down a level means that we can slowly split out
individual servlets. 
							
						 
						
							2016-08-12 10:03:19 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								a98d215204 
								
							
								 
							
						 
						
							
							
								
								Add filter param to /messages API  
							
							 
							
							
							
						 
						
							2016-07-14 16:30:56 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								690029d1a3 
								
							
								 
							
						 
						
							
							
								
								Don't make rooms visibile by default  
							
							 
							
							
							
						 
						
							2016-06-08 14:47:42 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								efeabd3180 
								
							
								 
							
						 
						
							
							
								
								Log user that is making /publicRooms calls  
							
							 
							
							
							
						 
						
							2016-06-08 14:23:15 +01:00  
						
					 
				
					
						
							
							
								 
								David Baker
							
						 
						
							 
							
							
							
								
							
								d240796ded 
								
							
								 
							
						 
						
							
							
								
								Basic, un-cached support for secondary_directory_servers  
							
							 
							
							
							
						 
						
							2016-05-31 17:20:07 +01:00  
						
					 
				
					
						
							
							
								 
								David Baker
							
						 
						
							 
							
							
							
								
							
								887c6e6f05 
								
							
								 
							
						 
						
							
							
								
								Split out the room list handler  
							
							 
							
							... 
							
							
							
							So I can use it from federation bits without pulling in all the handlers. 
							
						 
						
							2016-05-31 11:05:16 +01:00  
						
					 
				
					
						
							
							
								 
								Kegan Dougal
							
						 
						
							 
							
							
							
								
							
								332d7e9b97 
								
							
								 
							
						 
						
							
							
								
								Allow clients to specify a server_name to avoid 'No known servers'  
							
							 
							
							... 
							
							
							
							Multiple server_names are supported via ?server_name=foo&server_name=bar 
							
						 
						
							2016-05-19 13:50:52 +01:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								0cb441fedd 
								
							
								 
							
						 
						
							
							
								
								Move typing handler out of the Handlers object  
							
							 
							
							
							
						 
						
							2016-05-17 15:58:46 +01:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								3b86ecfa79 
								
							
								 
							
						 
						
							
							
								
								Move the presence handler out of the Handlers object  
							
							 
							
							
							
						 
						
							2016-05-16 18:56:37 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								08a8514b7a 
								
							
								 
							
						 
						
							
							
								
								Remove spurious comment  
							
							 
							
							
							
						 
						
							2016-03-30 15:05:33 +01:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								fddb6fddc1 
								
							
								 
							
						 
						
							
							
								
								Require user to have left room to forget room  
							
							 
							
							... 
							
							
							
							This dramatically simplifies the forget API code - in particular it no
longer generates a leave event. 
							
						 
						
							2016-03-30 11:03:00 +01:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								e9c1cabac2 
								
							
								 
							
						 
						
							
							
								
								Use parse_json_object_from_request to parse JSON out of request bodies  
							
							 
							
							
							
						 
						
							2016-03-11 16:41:03 +00:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								b7dbe5147a 
								
							
								 
							
						 
						
							
							
								
								Add a parse_json_object function  
							
							 
							
							... 
							
							
							
							to deduplicate all the copy+pasted _parse_json functions. Also document
the parse_.* functions. 
							
						 
						
							2016-03-09 11:26:26 +00:00  
						
					 
				
					
						
							
							
								 
								Mark Haines
							
						 
						
							 
							
							
							
								
							
								7076082ae6 
								
							
								 
							
						 
						
							
							
								
								Fix relative imports so they work in both py3 and py27  
							
							 
							
							
							
						 
						
							2016-03-08 11:45:50 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								b4022cc487 
								
							
								 
							
						 
						
							
							
								
								Pass whole requester to ratelimiting  
							
							 
							
							... 
							
							
							
							This will enable more detailed decisions 
							
						 
						
							2016-03-03 16:43:42 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								869580206d 
								
							
								 
							
						 
						
							
							
								
								Ignore invalid POST bodies when joining rooms  
							
							 
							
							
							
						 
						
							2016-02-24 08:50:28 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								577951b032 
								
							
								 
							
						 
						
							
							
								
								Allow third_party_signed to be specified on /join  
							
							 
							
							
							
						 
						
							2016-02-23 15:11:25 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								e5ad2e5267 
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #582  from matrix-org/erikj/presence  
							
							 
							
							... 
							
							
							
							Rewrite presence for performance. 
							
						 
						
							2016-02-19 09:37:50 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								7e90fb6a57 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into daniel/roomcleanupincremental  
							
							 
							
							... 
							
							
							
							Conflicts:
	synapse/rest/client/v1/room.py 
							
						 
						
							2016-02-17 15:53:59 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								591af2d074 
								
							
								 
							
						 
						
							
							
								
								Some cleanup  
							
							 
							
							... 
							
							
							
							I'm not particularly happy with the "action" switching, but there's no
convenient way to defer the work that needs to happen after it, so... :( 
							
						 
						
							2016-02-17 15:50:13 +00:00  
						
					 
				
					
						
							
							
								 
								Erik Johnston
							
						 
						
							 
							
							
							
								
							
								e5999bfb1a 
								
							
								 
							
						 
						
							
							
								
								Initial cut  
							
							 
							
							
							
						 
						
							2016-02-17 15:40:50 +00:00  
						
					 
				
					
						
							
							
								 
								Patrik Oldsberg
							
						 
						
							 
							
							
							
								
							
								71d5d2c669 
								
							
								 
							
						 
						
							
							
								
								client/v1/room: include event_id in response to state event PUT, in accordance with the spec  
							
							 
							
							... 
							
							
							
							Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> 
							
						 
						
							2016-02-17 11:53:43 +01:00  
						
					 
				
					
						
							
							
								 
								Daniel Wagner-Hall
							
						 
						
							 
							
							
							
								
							
								4bfb32f685 
								
							
								 
							
						 
						
							
							
								
								Branch off member and non member sends  
							
							 
							
							... 
							
							
							
							Unclean, needs tidy-up, but works 
							
						 
						
							2016-02-15 18:21:30 +00:00