synapse-product/synapse
Andrew Morgan a7a37437bc
Integrate knock rooms with the public rooms directory (#9359)
This PR implements the ["Changes regarding the Public Rooms Directory"](https://github.com/Sorunome/matrix-doc/blob/soru/knock/proposals/2403-knock.md#changes-regarding-the-public-rooms-directory) section of knocking MSC2403.

Specifically, it:

* Allows rooms with `join_rule` "knock" to be returned by the query behind the public rooms directory
* Adds the field `join_rule` to each room entry returned by a public rooms directory query, so clients can know whether to attempt a join or knock on a room

Based on https://github.com/matrix-org/synapse/issues/6739. Complement tests for this change: https://github.com/matrix-org/complement/pull/72
2021-06-09 20:31:31 +01:00
..
_scripts Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
api Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
app Move some more endpoints off master (#10084) 2021-05-27 22:45:43 +01:00
appservice Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
config Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
crypto When joining a remote room limit the number of events we concurrently check signatures/hashes for (#10117) 2021-06-08 11:07:46 +01:00
events Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
federation Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
groups Rewrite the KeyRing (#10035) 2021-06-02 16:37:59 +01:00
handlers Integrate knock rooms with the public rooms directory (#9359) 2021-06-09 20:31:31 +01:00
http Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
logging Clean up the interface for injecting opentracing over HTTP (#10143) 2021-06-09 11:33:00 +01:00
metrics opentracing: use a consistent name for background processes (#10135) 2021-06-07 17:57:49 +01:00
module_api Use a database table to hold the users that should have full presence sent to them, instead of something in-memory (#9823) 2021-05-18 14:13:45 +01:00
push Split multiplart email sending into a dedicated handler (#9977) 2021-05-17 12:33:38 +02:00
replication Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
res/templates Port "Allow users to click account renewal links multiple times without hitting an 'Invalid Token' page #74" from synapse-dinsic (#9832) 2021-04-19 19:16:34 +01:00
rest Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
server_notices Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
spam_checker_api Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
state Use get_current_users_in_room from store and not StateHandler (#9910) 2021-05-05 16:49:34 +01:00
static Add initial support for a "pick your IdP" page (#9017) 2021-01-05 11:25:28 +00:00
storage Integrate knock rooms with the public rooms directory (#9359) 2021-06-09 20:31:31 +01:00
streams Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
util When joining a remote room limit the number of events we concurrently check signatures/hashes for (#10117) 2021-06-08 11:07:46 +01:00
__init__.py 1.36.0rc1 2021-06-08 14:09:00 +01:00
event_auth.py Implement knock feature (#6739) 2021-06-09 19:39:51 +01:00
notifier.py Improve opentracing annotations for Notifier (#10111) 2021-06-03 16:01:30 +01:00
python_dependencies.py Use ijson to parse the response to /send_join, reducing memory usage. (#9958) 2021-05-20 16:11:48 +01:00
server.py Split multiplart email sending into a dedicated handler (#9977) 2021-05-17 12:33:38 +02:00
types.py Make DomainSpecificString an attrs class (#9875) 2021-04-23 15:46:29 +01:00
visibility.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00