32fd9bc673 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix possible AttributeError when account-api is called over unix socket ( #16404 )  
							
							... 
							
							
							
							Fixes  #16396  
						
							2023-10-09 10:16:07 +01:00  
				
					
						
							
							
								 
						
							
							
								06bbf1029c 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert simple_select_list_paginate_txn to return tuples. ( #16433 )  
							
							
							
						 
						
							2023-10-06 11:41:57 -04:00  
				
					
						
							
							
								 
						
							
							
								7ec0a141b4 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert more cached return values to immutable types ( #16356 )  
							
							
							
						 
						
							2023-09-20 07:48:55 -04:00  
				
					
						
							
							
								 
						
							
							
								954921736b 
								
									
								
							
								 
							
						 
						
							
							
								
								Refactor `get_user_by_id` ( #16316 )  
							
							
							
						 
						
							2023-09-14 12:46:30 +01:00  
				
					
						
							
							
								 
						
							
							
								32fb264120 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/release-v1.92' into develop  
							
							
							
						 
						
							2023-09-06 13:08:22 -04:00  
				
					
						
							
							
								 
						
							
							
								55c20da4a3 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'origin/release-v1.91' into release-v1.92  
							
							
							
						 
						
							2023-09-06 11:25:28 -04:00  
				
					
						
							
							
								 
						
							
							
								1940d990a3 
								
									
								
							
								 
							
						 
						
							
							
								
								Revert MSC3861 introspection cache, admin impersonation and account lock ( #16258 )  
							
							
							
						 
						
							2023-09-06 15:19:51 +01:00  
				
					
						
							
							
								 
						
							
							
								a2b8814d64 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix incorrect docstring for Ratelimiter. ( #16255 )  
							
							
							
						 
						
							2023-09-05 12:11:05 -04:00  
				
					
						
							
							
								 
						
							
							
								ea75346f6a 
								
									
								
							
								 
							
						 
						
							
							
								
								Track presence state per-device and combine to a user state. ( #16066 )  
							
							... 
							
							
							
							Tracks presence on an individual per-device basis and combine
the per-device state into a per-user state. This should help in
situations where a user has multiple devices with conflicting status
(e.g. one is syncing with unavailable and one is syncing with online).
The tie-breaking is done by priority:
    BUSY > ONLINE > UNAVAILABLE > OFFLINE 
							
						 
						
							2023-09-05 09:58:51 -04:00  
				
					
						
							
							
								 
						
							
							
								62a1a9be52 
								
									
								
							
								 
							
						 
						
							
							
								
								Describe which rate limiter was hit in logs ( #16135 )  
							
							
							
						 
						
							2023-08-30 00:39:39 +01:00  
				
					
						
							
							
								 
						
							
							
								0538e3e2db 
								
									
								
							
								 
							
						 
						
							
							
								
								Add `Retry-After` to M_LIMIT_EXCEEDED error responses ( #16136 )  
							
							... 
							
							
							
							Implements MSC4041 behind an experimental configuration flag. 
							
						 
						
							2023-08-24 10:40:26 -04:00  
				
					
						
							
							
								 
						
							
							
								69048f7b48 
								
									
								
							
								 
							
						 
						
							
							
								
								Add an admin endpoint to allow authorizing server to signal token revocations ( #16125 )  
							
							
							
						 
						
							2023-08-22 14:15:34 +00:00  
				
					
						
							
							
								 
						
							
							
								2d15e39684 
								
									
								
							
								 
							
						 
						
							
							
								
								MSC3861: allow impersonation by an admin using a query param ( #16132 )  
							
							
							
						 
						
							2023-08-18 15:46:46 +02:00  
				
					
						
							
							
								 
						
							
							
								6130afb862 
								
									
								
							
								 
							
						 
						
							
							
								
								Add response time metrics for introspection requests ( #16131 )  
							
							... 
							
							
							
							See #16119  
							
						 
						
							2023-08-18 12:16:00 +01:00  
				
					
						
							
							
								 
						
							
							
								54a51ff6c1 
								
									
								
							
								 
							
						 
						
							
							
								
								Cache token introspection response from OIDC provider ( #16117 )  
							
							
							
						 
						
							2023-08-17 10:53:10 -07:00  
				
					
						
							
							
								 
						
							
							
								ad3f43be9a 
								
									
								
							
								 
							
						 
						
							
							
								
								Run pyupgrade for python 3.7 & 3.8. ( #16110 )  
							
							
							
						 
						
							2023-08-15 08:11:20 -04:00  
				
					
						
							
							
								 
						
							
							
								dac97642e4 
								
									
								
							
								 
							
						 
						
							
							
								
								Implements admin API to lock an user (MSC3939) ( #15870 )  
							
							
							
						 
						
							2023-08-10 09:10:55 +00:00  
				
					
						
							
							
								 
						
							
							
								6d81aec09f 
								
									
								
							
								 
							
						 
						
							
							
								
								Support room version 11 ( #15912 )  
							
							... 
							
							
							
							And fix a bug in the implementation of the updated redaction
format (MSC2174) where the top-level redacts field was not
properly added for backwards-compatibility. 
							
						 
						
							2023-07-18 08:44:59 -04:00  
				
					
						
							
							
								 
						
							
							
								1c802de626 
								
									
								
							
								 
							
						 
						
							
							
								
								Re-introduce the outbound federation proxy ( #15913 )  
							
							... 
							
							
							
							Allow configuring the set of workers to proxy outbound federation traffic through (`outbound_federation_restricted_to`).
This is useful when you have a worker setup with `federation_sender` instances responsible for sending outbound federation requests and want to make sure *all* outbound federation traffic goes through those instances. Before this change, the generic workers would still contact federation themselves for things like profile lookups, backfill, etc. This PR allows you to set more strict access controls/firewall for all workers and only allow the `federation_sender`'s to contact the outside world. 
							
						 
						
							2023-07-18 09:49:21 +01:00  
				
					
						
							
							
								 
						
							
							
								0f02f0b4da 
								
									
								
							
								 
							
						 
						
							
							
								
								Remove experimental MSC2716 implementation to incrementally import history into existing rooms ( #15748 )  
							
							... 
							
							
							
							Context for why we're removing the implementation:
 - https://github.com/matrix-org/matrix-spec-proposals/pull/2716#issuecomment-1487441010 
 - https://github.com/matrix-org/matrix-spec-proposals/pull/2716#issuecomment-1504262734 
Anyone wanting to continue MSC2716, should also address these leftover tasks: https://github.com/matrix-org/synapse/issues/10737 
Closes https://github.com/matrix-org/synapse/issues/10737  in the fact that it is not longer necessary to track those things. 
							
						 
						
							2023-06-16 14:12:24 -05:00  
				
					
						
							
							
								 
						
							
							
								f880e64b11 
								
									
								
							
								 
							
						 
						
							
							
								
								Stabilize support for MSC3952: Intentional mentions. ( #15520 )  
							
							
							
						 
						
							2023-06-06 09:11:07 +01:00  
				
					
						
							
							
								 
						
							
							
								d0c4257f14 
								
									
								
							
								 
							
						 
						
							
							
								
								`N + 3`: Read from column `full_user_id` rather than `user_id` of tables `profiles` and `user_filters`  ( #15649 )  
							
							
							
						 
						
							2023-06-02 17:24:13 -07:00  
				
					
						
							
							
								 
						
							
							
								c01343de43 
								
									
								
							
								 
							
						 
						
							
							
								
								Add stricter mypy options ( #15694 )  
							
							... 
							
							
							
							Enable warn_unused_configs, strict_concatenate, disallow_subclassing_any,
and disallow_incomplete_defs. 
							
						 
						
							2023-05-31 07:18:29 -04:00  
				
					
						
							
							
								 
						
							
							
								ceb3dd77db 
								
							
								 
							
						 
						
							
							
								
								Enforce that an admin token also has the basic Matrix API scope  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								f739bde962 
								
							
								 
							
						 
						
							
							
								
								Reject tokens with multiple device scopes  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								98afc57d59 
								
							
								 
							
						 
						
							
							
								
								Make OIDC scope constants  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								14a5be9c4d 
								
							
								 
							
						 
						
							
							
								
								Handle errors when introspecting tokens  
							
							... 
							
							
							
							This returns a proper 503 when the introspection endpoint is not working
for some reason, which should avoid logging out clients in those cases. 
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								4d0231b364 
								
							
								 
							
						 
						
							
							
								
								Make AS tokens work & allow ASes to /register  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								c008b44b4f 
								
							
								 
							
						 
						
							
							
								
								Add an admin token for MAS -> Synapse calls  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								249f4a338d 
								
							
								 
							
						 
						
							
							
								
								Refactor config to be an experimental feature  
							
							... 
							
							
							
							Also enforce you can't combine it with incompatible config options 
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								5fe96082d0 
								
							
								 
							
						 
						
							
							
								
								Actually enforce guest + return www-authenticate header  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								a1374b5c70 
								
							
								 
							
						 
						
							
							
								
								MSC2967: Check access token scope for use as user and add guest support  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								d20669971a 
								
							
								 
							
						 
						
							
							
								
								Use `name` claim as display name when registering users on the fly.  
							
							... 
							
							
							
							This makes is so that the `name` claim got when introspecting the token
is used as the display name when registering a user on the fly. 
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								f9cd549f64 
								
							
								 
							
						 
						
							
							
								
								Record the `sub` claims as an external_id  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								7628dbf4e9 
								
							
								 
							
						 
						
							
							
								
								Handle the Synapse admin scope  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								c5cf1b421d 
								
							
								 
							
						 
						
							
							
								
								Save the scopes in the requester  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								765244faee 
								
							
								 
							
						 
						
							
							
								
								Initial MSC3964 support: delegation of auth to OIDC server  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								e2c8458bba 
								
							
								 
							
						 
						
							
							
								
								Make the api.auth.Auth a Protocol  
							
							
							
						 
						
							2023-05-30 09:43:06 -04:00  
				
					
						
							
							
								 
						
							
							
								50918c4940 
								
									
								
							
								 
							
						 
						
							
							
								
								Add `MSC3820opt2` as a known room version ( #15678 )  
							
							
							
						 
						
							2023-05-26 18:05:24 +00:00  
				
					
						
							
							
								 
						
							
							
								4e013093a8 
								
									
								
							
								 
							
						 
						
							
							
								
								Add MSC3820 (room version 11) option 2 unstable room version. ( #15666 )  
							
							
							
						 
						
							2023-05-26 07:46:13 -04:00  
				
					
						
							
							
								 
						
							
							
								c5d1e6d414 
								
									
								
							
								 
							
						 
						
							
							
								
								Properly parse event_fields in filters ( #15607 )  
							
							... 
							
							
							
							The event_fields property in filters should use the proper
escape rules, namely backslashes can be escaped with
an additional backslash.
This adds tests (adapted from matrix-js-sdk) and implements
the logic to properly split the event_fields strings. 
							
						 
						
							2023-05-22 11:31:22 -04:00  
				
					
						
							
							
								 
						
							
							
								f2905d827f 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement MSC3821 to update redaction rules (`third_party_invite.signed`) ( #15563 )  
							
							... 
							
							
							
							Updates the redaction rules to protect enough information that the
event can still be properly verified. 
							
						 
						
							2023-05-15 15:02:24 -04:00  
				
					
						
							
							
								 
						
							
							
								ba6b21c81e 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement MSC3389 to protect relations from redaction. ( #15565 )  
							
							... 
							
							
							
							MSC3389 proposes protecting the relation type & parent event ID
from redaction. This keeps the relation information intact after
redaction which helps with some UX flaws (e.g. deleting an
event causes it to no longer be in a thread, which is confusing). 
							
						 
						
							2023-05-15 12:58:09 +00:00  
				
					
						
							
							
								 
						
							
							
								86d541f37c 
								
									
								
							
								 
							
						 
						
							
							
								
								Stabilize MSC2659 support for AS ping endpoint. ( #15528 )  
							
							
							
						 
						
							2023-05-09 15:02:36 -04:00  
				
					
						
							
							
								 
						
							
							
								2bfe3f0b81 
								
									
								
							
								 
							
						 
						
							
							
								
								Use account data constants in more places. ( #15554 )  
							
							
							
						 
						
							2023-05-09 07:23:27 -04:00  
				
					
						
							
							
								 
						
							
							
								e46d5f3586 
								
									
								
							
								 
							
						 
						
							
							
								
								Factor out an `is_mine_server_name` method ( #15542 )  
							
							... 
							
							
							
							Add an `is_mine_server_name` method, similar to `is_mine_id`.
Ideally we would use this consistently, instead of sometimes comparing
against `hs.hostname` and other times reaching into
`hs.config.server.server_name`.
Also fix a bug in the tests where `hs.hostname` would sometimes differ
from `hs.config.server.server_name`.
Signed-off-by: Sean Quah <seanq@matrix.org> 
							
						 
						
							2023-05-05 15:06:22 +01:00  
				
					
						
							
							
								 
						
							
							
								301b4156d5 
								
									
								
							
								 
							
						 
						
							
							
								
								Add column `full_user_id` to tables `profiles` and `user_filters`. ( #15458 )  
							
							
							
						 
						
							2023-04-26 16:03:26 -07:00  
				
					
						
							
							
								 
						
							
							
								2503126d52 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement MSC2174: move redacts to a content property. ( #15395 )  
							
							... 
							
							
							
							This moves `redacts` from being a top-level property to
a `content` property in a new room version.
MSC2176 (which was previously implemented) states to not
`redact` this property. 
							
						 
						
							2023-04-13 13:47:07 +00:00  
				
					
						
							
							
								 
						
							
							
								d07d255830 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement MSC2175: remove the creator field from create events. ( #15394 )  
							
							
							
						 
						
							2023-04-06 16:26:28 -04:00  
				
					
						
							
							
								 
						
							
							
								83649b891d 
								
									
								
							
								 
							
						 
						
							
							
								
								Implement MSC3989 to redact the origin field. ( #15393 )  
							
							... 
							
							
							
							This will be done in a future room version, for now an unstable
room version is added which redacts the origin field. 
							
						 
						
							2023-04-05 14:42:46 -04:00