800ba87cc8 
								
									
								
							
								 
							
						 
						
							
							
								
								Refactor and convert `Linearizer` to async ( #12357 )  
							
							... 
							
							
							
							Refactor and convert `Linearizer` to async. This makes a `Linearizer`
cancellation bug easier to fix.
Also refactor to use an async context manager, which eliminates an
unlikely footgun where code that doesn't immediately use the context
manager could forget to release the lock.
Signed-off-by: Sean Quah <seanq@element.io> 
							
						 
						
							2022-04-05 15:43:52 +01:00  
				
					
						
							
							
								 
						
							
							
								7ca8ee67a5 
								
									
								
							
								 
							
						 
						
							
							
								
								Add cache for `get_membership_from_event_ids` ( #12272 )  
							
							... 
							
							
							
							This should speed up push rule calculations for rooms with large numbers of local users when the main push rule cache fails.
Co-authored-by: reivilibre <oliverw@matrix.org> 
							
						 
						
							2022-03-25 14:58:56 +00:00  
				
					
						
							
							
								 
						
							
							
								dda9b7fc4d 
								
									
								
							
								 
							
						 
						
							
							
								
								Use the ignored_users table to test event visibility & sync. ( #12225 )  
							
							... 
							
							
							
							Instead of fetching the raw account data and re-parsing it. The
ignored_users table is a denormalised version of the account data
for quick searching. 
							
						 
						
							2022-03-15 14:06:05 -04:00  
				
					
						
							
							
								 
						
							
							
								735e89bd3a 
								
									
								
							
								 
							
						 
						
							
							
								
								Add an additional HTTP pusher + push rule tests. ( #12188 )  
							
							... 
							
							
							
							And rename the field used for caching from _id to _cache_key. 
							
						 
						
							2022-03-11 08:45:26 -05:00  
				
					
						
							
							
								 
						
							
							
								e24ff8ebe3 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove `HomeServer.get_datastore()` ( #12031 )  
							
							... 
							
							
							
							The presence of this method was confusing, and mostly present for backwards
compatibility. Let's get rid of it.
Part of #11733  
							
						 
						
							2022-02-23 11:04:02 +00:00  
				
					
						
							
							
								 
						
							
							
								10a88ba91c 
								
									
								
							
								 
							
						 
						
							
							
								
								Use auto_attribs/native type hints for attrs classes. ( #11692 )  
							
							
							
						 
						
							2022-01-13 13:49:28 +00:00  
				
					
						
							
							
								 
						
							
							
								c01bc5f43d 
								
									
								
							
								 
							
						 
						
							
							
								
								Add remaining type hints to `synapse.events`. ( #11098 )  
							
							
							
						 
						
							2021-11-02 09:55:52 -04:00  
				
					
						
							
							
								 
						
							
							
								e0f11ae4a5 
								
									
								
							
								 
							
						 
						
							
							
								
								disallow-untyped-defs for synapse.push ( #11023 )  
							
							
							
						 
						
							2021-10-11 17:42:10 +01:00  
				
					
						
							
							
								 
						
							
							
								bf72d10dbf 
								
									
								
							
								 
							
						 
						
							
							
								
								Use inline type hints in various other places (in `synapse/`) ( #10380 )  
							
							
							
						 
						
							2021-07-15 11:02:43 +01:00  
				
					
						
							
							
								 
						
							
							
								8d609435c0 
								
									
								
							
								 
							
						 
						
							
							
								
								Move methods involving event authentication to EventAuthHandler. ( #10268 )  
							
							... 
							
							
							
							Instead of mixing them with user authentication methods. 
							
						 
						
							2021-07-01 14:25:37 -04:00  
				
					
						
							
							
								 
						
							
							
								3853a7edfc 
								
									
								
							
								 
							
						 
						
							
							
								
								Only store data in caches, not "smart" objects ( #9845 )  
							
							
							
						 
						
							2021-04-23 11:47:07 +01:00  
				
					
						
							
							
								 
						
							
							
								4b965c862d 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove redundant "coding: utf-8" lines ( #9786 )  
							
							... 
							
							
							
							Part of #9744 
Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now.
`Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>` 
							
						 
						
							2021-04-14 15:34:27 +01:00  
				
					
						
							
							
								 
						
							
							
								b7748d3c00 
								
									
								
							
								 
							
						 
						
							
							
								
								Import HomeServer from the proper module. ( #9665 )  
							
							
							
						 
						
							2021-03-23 07:12:48 -04:00  
				
					
						
							
							
								 
						
							
							
								0a00b7ff14 
								
									
								
							
								 
							
						 
						
							
							
								
								Update black, and run auto formatting over the codebase ( #9381 )  
							
							... 
							
							
							
							- Update black version to the latest
 - Run black auto formatting over the codebase
    - Run autoformatting according to [`docs/code_style.md
`](80d6dc9783/docs/code_style.md 
							
						 
						
							2021-02-16 22:32:34 +00:00  
				
					
						
							
							
								 
						
							
							
								7950aa8a27 
								
							
								 
							
						 
						
							
							
								
								Fix some typos.  
							
							
							
						 
						
							2021-02-12 11:14:12 -05:00  
				
					
						
							
							
								 
						
							
							
								23d701864f 
								
									
								
							
								 
							
						 
						
							
							
								
								Improve the performance of calculating ignored users in large rooms ( #9024 )  
							
							... 
							
							
							
							This allows for efficiently finding which users ignore a particular
user.
Co-authored-by: Erik Johnston <erik@matrix.org> 
							
						 
						
							2021-01-07 13:03:38 +00:00  
				
					
						
							
							
								 
						
							
							
								5d34f40d49 
								
									
								
							
								 
							
						 
						
							
							
								
								Add type hints to the push module. ( #8901 )  
							
							
							
						 
						
							2020-12-11 11:43:53 -05:00  
				
					
						
							
							
								 
						
							
							
								cbc82aa09f 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement and use an @lru_cache decorator ( #8595 )  
							
							... 
							
							
							
							We don't always need the full power of a DeferredCache. 
							
						 
						
							2020-10-30 11:43:17 +00:00  
				
					
						
							
							
								 
						
							
							
								34a5696f93 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix typos and spelling errors. ( #8639 )  
							
							
							
						 
						
							2020-10-23 12:38:40 -04:00  
				
					
						
							
							
								 
						
							
							
								903d11c43a 
								
									
								
							
								 
							
						 
						
							
							
								
								Add `DeferredCache.get_immediate` method ( #8568 )  
							
							... 
							
							
							
							* Add `DeferredCache.get_immediate` method
A bunch of things that are currently calling `DeferredCache.get` are only
really interested in the result if it's completed. We can optimise and simplify
this case.
* Remove unused 'default' parameter to DeferredCache.get()
* another get_immediate instance 
							
						 
						
							2020-10-19 15:00:12 +01:00  
				
					
						
							
							
								 
						
							
							
								d8762cc116 
								
									
								
							
								 
							
						 
						
							
							
								
								Only add rows to the push actions table if the event notifies or should be marked unread ( #8274 )  
							
							
							
						 
						
							2020-09-07 16:56:27 +01:00  
				
					
						
							
							
								 
						
							
							
								c619253db8 
								
									
								
							
								 
							
						 
						
							
							
								
								Stop sub-classing object ( #8249 )  
							
							
							
						 
						
							2020-09-04 06:54:56 -04:00  
				
					
						
							
							
								 
						
							
							
								5a1dd297c3 
								
									
								
							
								 
							
						 
						
							
							
								
								Re-implement unread counts (again) ( #8059 )  
							
							
							
						 
						
							2020-09-02 17:19:37 +01:00  
				
					
						
							
							
								 
						
							
							
								d4a7829b12 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert synapse.api to async/await ( #8031 )  
							
							
							
						 
						
							2020-08-06 08:30:06 -04:00  
				
					
						
							
							
								 
						
							
							
								8144bc26a7 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert push to async/await. ( #7948 )  
							
							
							
						 
						
							2020-07-27 12:21:34 -04:00  
				
					
						
							
							
								 
						
							
							
								b975fa2e99 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert state resolution to async/await ( #7942 )  
							
							
							
						 
						
							2020-07-24 10:59:51 -04:00  
				
					
						
							
							
								 
						
							
							
								74d3e177f0 
								
									
								
							
								 
							
						 
						
							
							
								
								Back out MSC2625 implementation ( #7761 )  
							
							
							
						 
						
							2020-07-01 11:08:25 +01:00  
				
					
						
							
							
								 
						
							
							
								6efb2b0ad4 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into babolivier/mark_unread  
							
							
							
						 
						
							2020-06-15 16:37:52 +01:00  
				
					
						
							
							
								 
						
							
							
								bd6dc17221 
								
									
								
							
								 
							
						 
						
							
							
								
								Replace iteritems/itervalues/iterkeys with native versions. ( #7692 )  
							
							
							
						 
						
							2020-06-15 07:03:36 -04:00  
				
					
						
							
							
								 
						
							
							
								e47e5a2dcd 
								
									
								
							
								 
							
						 
						
							
							
								
								Incorporate review bits  
							
							
							
						 
						
							2020-06-12 15:13:12 +01:00  
				
					
						
							
							
								 
						
							
							
								ea8f6e611b 
								
									
								
							
								 
							
						 
						
							
							
								
								Actually act on mark_unread  
							
							
							
						 
						
							2020-06-11 15:30:42 +01:00  
				
					
						
							
							
								 
						
							
							
								7cb8b4bc67 
								
									
								
							
								 
							
						 
						
							
							
								
								Allow configuration of Synapse's cache without using synctl or environment variables ( #6391 )  
							
							
							
						 
						
							2020-05-11 18:45:23 +01:00  
				
					
						
							
							
								 
						
							
							
								509e381afa 
								
									
								
							
								 
							
						 
						
							
							
								
								Clarify list/set/dict/tuple comprehensions and enforce via flake8 ( #6957 )  
							
							... 
							
							
							
							Ensure good comprehension hygiene using flake8-comprehensions. 
							
						 
						
							2020-02-21 07:15:07 -05:00  
				
					
						
							
							
								 
						
							
							
								fa780e9721 
								
									
								
							
								 
							
						 
						
							
							
								
								Change EventContext to use the Storage class ( #6564 )  
							
							
							
						 
						
							2019-12-20 10:32:02 +00:00  
				
					
						
							
							
								 
						
							
							
								c2f525a525 
								
							
								 
							
						 
						
							
							
								
								Don't call SQLBaseStore methods from outside stores  
							
							
							
						 
						
							2019-12-04 16:23:43 +00:00  
				
					
						
							
							
								 
						
							
							
								020add5099 
								
									
								
							
								 
							
						 
						
							
							
								
								Update black to 19.10b0 ( #6304 )  
							
							... 
							
							
							
							* update version of black and also fix the mypy config being overridden 
							
						 
						
							2019-11-01 02:43:24 +11:00  
				
					
						
							
							
								 
						
							
							
								d0d8a22c13 
								
							
								 
							
						 
						
							
							
								
								Quick fix to ensure cache descriptors always return deferreds  
							
							
							
						 
						
							2019-10-28 13:33:04 +00:00  
				
					
						
							
							
								 
						
							
							
								4548d1f87e 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove unnecessary parentheses around return statements  ( #5931 )  
							
							... 
							
							
							
							Python will return a tuple whether there are parentheses around the returned values or not.
I'm just sick of my editor complaining about this all over the place :) 
							
						 
						
							2019-08-30 16:28:26 +01:00  
				
					
						
							
							
								 
						
							
							
								4806651744 
								
									
								
							
								 
							
						 
						
							
							
								
								Replace returnValue with return ( #5736 )  
							
							
							
						 
						
							2019-07-23 23:00:55 +10:00  
				
					
						
							
							
								 
						
							
							
								32e7c9e7f2 
								
									
								
							
								 
							
						 
						
							
							
								
								Run Black. ( #5482 )  
							
							
							
						 
						
							2019-06-20 19:32:02 +10: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  
				
					
						
							
							
								 
						
							
							
								e42510ba63 
								
							
								 
							
						 
						
							
							
								
								Use new getters  
							
							
							
						 
						
							2018-07-23 13:17:22 +01:00  
				
					
						
							
							
								 
						
							
							
								49af402019 
								
							
								 
							
						 
						
							
							
								
								run isort  
							
							
							
						 
						
							2018-07-09 16:09:20 +10:00  
				
					
						
							
							
								 
						
							
							
								754826a830 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/develop' into 3218-official-prom  
							
							
							
						 
						
							2018-05-28 18:57:23 +10:00  
				
					
						
							
							
								 
						
							
							
								e987079037 
								
							
								 
							
						 
						
							
							
								
								fixes  
							
							
							
						 
						
							2018-05-23 13:03:51 -05:00  
				
					
						
							
							
								 
						
							
							
								53cc2cde1f 
								
							
								 
							
						 
						
							
							
								
								cleanup  
							
							
							
						 
						
							2018-05-22 17:32:57 -05:00  
				
					
						
							
							
								 
						
							
							
								fcc525b0b7 
								
							
								 
							
						 
						
							
							
								
								rest of the changes  
							
							
							
						 
						
							2018-05-21 19:48:57 -05:00  
				
					
						
							
							
								 
						
							
							
								933bf2dd35 
								
							
								 
							
						 
						
							
							
								
								replace some iteritems with six  
							
							... 
							
							
							
							Signed-off-by: Adrian Tschira <nota@notafile.com> 
							
						 
						
							2018-05-19 17:59:26 +02:00  
				
					
						
							
							
								 
						
							
							
								573712da6b 
								
							
								 
							
						 
						
							
							
								
								Update comments  
							
							
							
						 
						
							2018-02-21 11:29:49 +00:00  
				
					
						
							
							
								 
						
							
							
								6ff8c87484 
								
							
								 
							
						 
						
							
							
								
								Batch inserts into event_push_actions_staging  
							
							
							
						 
						
							2018-02-20 11:33:07 +00:00