ea752bdd99 
								
							
								 
							
						 
						
							
							
								
								s/becuase/because/g  
							
							
							
						 
						
							2018-07-10 17:58:18 +01:00  
				
					
						
							
							
								 
						
							
							
								49af402019 
								
							
								 
							
						 
						
							
							
								
								run isort  
							
							
							
						 
						
							2018-07-09 16:09:20 +10:00  
				
					
						
							
							
								 
						
							
							
								6350bf925e 
								
									
								
							
								 
							
						 
						
							
							
								
								Attempt to be more performant on PyPy ( #3462 )  
							
							
							
						 
						
							2018-06-28 14:49:57 +01:00  
				
					
						
							
							
								 
						
							
							
								0269367f18 
								
							
								 
							
						 
						
							
							
								
								allow non-consented users to still part rooms (to let us autopart them)  
							
							
							
						 
						
							2018-06-25 17:56:10 +01:00  
				
					
						
							
							
								 
						
							
							
								07cad26d65 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove all global reactor imports & pass it around explicitly ( #3424 )  
							
							
							
						 
						
							2018-06-25 14:08:28 +01:00  
				
					
						
							
							
								 
						
							
							
								77ac14b960 
								
									
								
							
								 
							
						 
						
							
							
								
								Pass around the reactor explicitly ( #3385 )  
							
							
							
						 
						
							2018-06-22 09:37:10 +01:00  
				
					
						
							
							
								 
						
							
							
								a61738b316 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove run_on_reactor ( #3395 )  
							
							
							
						 
						
							2018-06-14 18:27:37 +10:00  
				
					
						
							
							
								 
						
							
							
								4a9cbdbc15 
								
							
								 
							
						 
						
							
							
								
								Exempt AS-registered users from doing gdpr  
							
							
							
						 
						
							2018-05-29 19:54:32 +01:00  
				
					
						
							
							
								 
						
							
							
								17a70cf6e9 
								
							
								 
							
						 
						
							
							
								
								Misc. py3 fixes  
							
							... 
							
							
							
							Signed-off-by: Adrian Tschira <nota@notafile.com> 
							
						 
						
							2018-05-24 20:20:33 +02:00  
				
					
						
							
							
								 
						
							
							
								a0b3946fe2 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge branch 'release-v0.30.0' into rav/localpart_in_consent_uri  
							
							
							
						 
						
							2018-05-23 16:06:03 +01:00  
				
					
						
							
							
								 
						
							
							
								3ff6f50eac 
								
							
								 
							
						 
						
							
							
								
								Use the localpart in the consent uri  
							
							... 
							
							
							
							... because it's shorter. 
							
						 
						
							2018-05-23 15:28:23 +01:00  
				
					
						
							
							
								 
						
							
							
								82191b08f6 
								
							
								 
							
						 
						
							
							
								
								Support for putting %(consent_uri)s in messages  
							
							... 
							
							
							
							Make it possible to put the URI in the error message and the server notice that
get sent by the server 
							
						 
						
							2018-05-23 15:24:31 +01:00  
				
					
						
							
							
								 
						
							
							
								a5e2941aad 
								
							
								 
							
						 
						
							
							
								
								Reject attempts to send event before privacy consent is given  
							
							... 
							
							
							
							Returns an M_CONSENT_NOT_GIVEN error (cf
https://github.com/matrix-org/matrix-doc/issues/1252 ) if consent is not yet
given. 
							
						 
						
							2018-05-22 12:00:47 +01:00  
				
					
						
							
							
								 
						
							
							
								5f27ed75ad 
								
							
								 
							
						 
						
							
							
								
								Make purge_history operate on tokens  
							
							... 
							
							
							
							As we're soon going to change how topological_ordering works 
							
						 
						
							2018-05-15 16:23:50 +01:00  
				
					
						
							
							
								 
						
							
							
								ca7211104e 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'release-v0.28.1' into develop  
							
							
							
						 
						
							2018-05-01 18:16:57 +01:00  
				
					
						
							
							
								 
						
							
							
								33f469ba19 
								
							
								 
							
						 
						
							
							
								
								Apply some limits to depth to counter abuse  
							
							... 
							
							
							
							* When creating a new event, cap its depth to 2^63 - 1
* When receiving events, reject any without a sensible depth
As per https://docs.google.com/document/d/1I3fi2S-XnpO45qrpCsowZv8P8dHcNZ4fsBsbOW7KABI  
							
						 
						
							2018-05-01 17:54:19 +01:00  
				
					
						
							
							
								 
						
							
							
								453adf00b6 
								
							
								 
							
						 
						
							
							
								
								pep8; remove spurious import  
							
							
							
						 
						
							2018-04-27 14:32:08 +01:00  
				
					
						
							
							
								 
						
							
							
								fc149b4eeb 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/develop' into rav/use_run_in_background  
							
							
							
						 
						
							2018-04-27 14:31:23 +01:00  
				
					
						
							
							
								 
						
							
							
								2a13af23bc 
								
							
								 
							
						 
						
							
							
								
								Use run_in_background in preference to preserve_fn  
							
							... 
							
							
							
							While I was going through uses of preserve_fn for other PRs, I converted places
which only use the wrapped function once to use run_in_background, to avoid
creating the function object. 
							
						 
						
							2018-04-27 12:55:51 +01:00  
				
					
						
							
							
								 
						
							
							
								41d4b07a53 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #3142  from matrix-org/rav/reraise  
							
							... 
							
							
							
							reraise exceptions more carefully 
							
						 
						
							2018-04-27 12:16:19 +01:00  
				
					
						
							
							
								 
						
							
							
								6493b22b42 
								
							
								 
							
						 
						
							
							
								
								reraise exceptions more carefully  
							
							... 
							
							
							
							We need to be careful (under python 2, at least) that when we reraise an
exception after doing some error handling, we actually reraise the original
exception rather than anything that might have been raised (and handled) during
the error handling. 
							
						 
						
							2018-04-27 11:40:06 +01:00  
				
					
						
							
							
								 
						
							
							
								9255a6cb17 
								
							
								 
							
						 
						
							
							
								
								Improve exception handling for background processes  
							
							... 
							
							
							
							There were a bunch of places where we fire off a process to happen in the
background, but don't have any exception handling on it - instead relying on
the unhandled error being logged when the relevent deferred gets
garbage-collected.
This is unsatisfactory for a number of reasons:
 - logging on garbage collection is best-effort and may happen some time after
   the error, if at all
 - it can be hard to figure out where the error actually happened.
 - it is logged as a scary CRITICAL error which (a) I always forget to grep for
   and (b) it's not really CRITICAL if a background process we don't care about
   fails.
So this is an attempt to add exception handling to everything we fire off into
the background. 
							
						 
						
							2018-04-27 11:07:40 +01:00  
				
					
						
							
							
								 
						
							
							
								639480e14a 
								
							
								 
							
						 
						
							
							
								
								Avoid creating events with huge numbers of prev_events  
							
							... 
							
							
							
							In most cases, we limit the number of prev_events for a given event to 10
events. This fixes a particular code path which created events with huge
numbers of prev_events. 
							
						 
						
							2018-04-16 18:41:37 +01:00  
				
					
						
							
							
								 
						
							
							
								f8e8ec013b 
								
							
								 
							
						 
						
							
							
								
								Note why we're limiting concurrent event sends  
							
							
							
						 
						
							2018-04-10 14:00:46 +01:00  
				
					
						
							
							
								 
						
							
							
								e5082494eb 
								
							
								 
							
						 
						
							
							
								
								Limit concurrent event sends for a room  
							
							
							
						 
						
							2018-04-09 12:07:39 +01:00  
				
					
						
							
							
								 
						
							
							
								05630758f2 
								
							
								 
							
						 
						
							
							
								
								Use static JSONEncoders  
							
							... 
							
							
							
							using json.dumps with custom options requires us to create a new JSONEncoder on
each call. It's more efficient to create one upfront and reuse it. 
							
						 
						
							2018-03-29 23:13:33 +01:00  
				
					
						
							
							
								 
						
							
							
								fa72803490 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of github.com:matrix-org/synapse into develop  
							
							
							
						 
						
							2018-03-19 11:41:01 +00:00  
				
					
						
							
							
								 
						
							
							
								926ba76e23 
								
							
								 
							
						 
						
							
							
								
								Replace ujson with simplejson  
							
							
							
						 
						
							2018-03-15 23:43:31 +00:00  
				
					
						
							
							
								 
						
							
							
								d0fcc48f9d 
								
							
								 
							
						 
						
							
							
								
								extra_users is actually a list of UserIDs  
							
							
							
						 
						
							2018-03-13 11:20:06 +00:00  
				
					
						
							
							
								 
						
							
							
								e48c7aac4d 
								
							
								 
							
						 
						
							
							
								
								Add transactional API to history purge  
							
							... 
							
							
							
							Make the purge request return quickly, and allow scripts to poll for updates. 
							
						 
						
							2018-03-12 16:22:55 +00:00  
				
					
						
							
							
								 
						
							
							
								1708412f56 
								
							
								 
							
						 
						
							
							
								
								Return an error when doing two purges on a room  
							
							... 
							
							
							
							Queuing up purges doesn't sound like a good thing. 
							
						 
						
							2018-03-12 16:22:54 +00:00  
				
					
						
							
							
								 
						
							
							
								f8bfcd7e0d 
								
							
								 
							
						 
						
							
							
								
								Provide a means to pass a timestamp to purge_history  
							
							
							
						 
						
							2018-03-05 14:37:23 +00:00  
				
					
						
							
							
								 
						
							
							
								f381d63813 
								
							
								 
							
						 
						
							
							
								
								Check event auth on the worker  
							
							
							
						 
						
							2018-03-01 10:18:37 +00:00  
				
					
						
							
							
								 
						
							
							
								6b8604239f 
								
							
								 
							
						 
						
							
							
								
								Correctly send ratelimit and extra_users params  
							
							
							
						 
						
							2018-03-01 10:08:39 +00:00  
				
					
						
							
							
								 
						
							
							
								f756f961ea 
								
							
								 
							
						 
						
							
							
								
								Fixup comments  
							
							
							
						 
						
							2018-03-01 10:05:27 +00:00  
				
					
						
							
							
								 
						
							
							
								28e973ac11 
								
							
								 
							
						 
						
							
							
								
								Calculate push actions on worker  
							
							
							
						 
						
							2018-02-28 18:02:30 +00:00  
				
					
						
							
							
								 
						
							
							
								b96278d6fe 
								
							
								 
							
						 
						
							
							
								
								Ensure that we delete staging push actions on errors  
							
							
							
						 
						
							2018-02-15 15:47:06 +00:00  
				
					
						
							
							
								 
						
							
							
								c0c9327fe0 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2854  from matrix-org/erikj/event_create_worker  
							
							... 
							
							
							
							Create a worker for event creation 
							
						 
						
							2018-02-13 18:07:10 +00:00  
				
					
						
							
							
								 
						
							
							
								10b34dbb9a 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #2858  from matrix-org/rav/purge_updates  
							
							... 
							
							
							
							delete_local_events for purge_room_history 
							
						 
						
							2018-02-09 14:11:00 +00:00  
				
					
						
							
							
								 
						
							
							
								74fcbf741b 
								
							
								 
							
						 
						
							
							
								
								delete_local_events for purge_history  
							
							... 
							
							
							
							Add a flag which makes the purger delete local events 
							
						 
						
							2018-02-09 13:07:41 +00:00  
				
					
						
							
							
								 
						
							
							
								671540dccf 
								
							
								 
							
						 
						
							
							
								
								rename delete_old_state -> purge_history  
							
							... 
							
							
							
							(beacause it deletes more than state) 
							
						 
						
							2018-02-09 13:07:41 +00:00  
				
					
						
							
							
								 
						
							
							
								50fe92cd26 
								
							
								 
							
						 
						
							
							
								
								Move presence handling into handle_new_client_event  
							
							... 
							
							
							
							As we want to have it run on the main synapse instance 
							
						 
						
							2018-02-07 10:34:09 +00:00  
				
					
						
							
							
								 
						
							
							
								24dd73028a 
								
							
								 
							
						 
						
							
							
								
								Add replication http endpoint for event sending  
							
							
							
						 
						
							2018-02-07 10:32:32 +00:00  
				
					
						
							
							
								 
						
							
							
								e3624fad5f 
								
							
								 
							
						 
						
							
							
								
								Remove pointless ratelimit check  
							
							... 
							
							
							
							The intention was for the check to be called as early as possible in the
request, but actually was called just before the main ratelimit check,
so was fairly pointless. 
							
						 
						
							2018-02-07 10:30:25 +00:00  
				
					
						
							
							
								 
						
							
							
								3e1e69ccaf 
								
							
								 
							
						 
						
							
							
								
								Update copyright  
							
							
							
						 
						
							2018-02-06 16:40:38 +00:00  
				
					
						
							
							
								 
						
							
							
								770b2252ca 
								
							
								 
							
						 
						
							
							
								
								s/_create_new_client_event/create_new_client_event/  
							
							
							
						 
						
							2018-02-06 16:40:30 +00:00  
				
					
						
							
							
								 
						
							
							
								5ff3d23564 
								
							
								 
							
						 
						
							
							
								
								Split event creation into a separate handler  
							
							
							
						 
						
							2018-02-05 16:01:48 +00:00  
				
					
						
							
							
								 
						
							
							
								eaaabc6c4f 
								
							
								 
							
						 
						
							
							
								
								replace 'except:' with 'except Exception:'  
							
							... 
							
							
							
							what could possibly go wrong 
							
						 
						
							2017-10-23 15:52:32 +01:00  
				
					
						
							
							
								 
						
							
							
								b78bae2d51 
								
							
								 
							
						 
						
							
							
								
								fix isinstance  
							
							
							
						 
						
							2017-10-11 14:49:09 +01:00  
				
					
						
							
							
								 
						
							
							
								c3b7a45e84 
								
							
								 
							
						 
						
							
							
								
								Allow error strings from spam checker  
							
							
							
						 
						
							2017-10-11 14:39:22 +01:00