summary refs log tree commit diff
path: root/synapse/server_notices (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove redundant types from comments. (#14412)Patrick Cloke2022-11-162-8/+9
| | | | | | | Remove type hints from comments which have been added as Python type hints. This helps avoid drift between comments and reality, as well as removing redundant information. Also adds some missing type hints which were simple to fill in.
* Directly lookup local membership instead of getting all members in a room ↵Eric Eastwood2022-08-241-2/+8
| | | | | first (`get_users_in_room` mis-use) (#13608) See https://github.com/matrix-org/synapse/pull/13575#discussion_r953023755
* `synapse.api.auth.Auth` cleanup: make permission-related methods use ↵Quentin Gliech2022-08-221-1/+1
| | | | | | | | | `Requester` instead of the `UserID` (#13024) Part of #13019 This changes all the permission-related methods to rely on the Requester instead of the UserID. This is a first step towards enabling scoped access tokens at some point, since I expect the Requester to have scope-related informations in it. It also changes methods which figure out the user/device/appservice out of the access token to return a Requester instead of something else. This avoids having store-related objects in the methods signatures.
* Decouple `synapse.api.auth_blocking.AuthBlocking` from ↵Quentin Gliech2022-06-141-2/+2
| | | | `synapse.api.auth.Auth`. (#13021)
* Reduce the amount of state we pull from the DB (#12811)Erik Johnston2022-06-061-2/+5
|
* Add `StreamKeyType` class and replace string literals with constants (#12567)Andrew Morgan2022-05-161-2/+2
|
* Don't create an empty room when checking for MAU limits (#12713)Brendan Abolivier2022-05-132-55/+55
|
* Update the server notices user profile in room if changed. (#12115)Jorge Florian2022-04-081-4/+55
|
* Remove `HomeServer.get_datastore()` (#12031)Richard van der Hoff2022-02-233-3/+3
| | | | | | | The presence of this method was confusing, and mostly present for backwards compatibility. Let's get rid of it. Part of #11733
* disallow-untyped-defs for synapse.server_notices (#11021)David Robertson2021-10-071-6/+2
|
* Use direct references for configuration variables (part 6). (#10916)Patrick Cloke2021-09-291-4/+4
|
* Use direct references for configuration variables (part 5). (#10897)Patrick Cloke2021-09-241-11/+12
|
* Use direct references for some configuration variables (part 3) (#10885)Patrick Cloke2021-09-231-3/+8
| | | | | | | | This avoids the overhead of searching through the various configuration classes by directly referencing the class that the attributes are in. It also improves type hints since mypy can now resolve the types of the configuration variables.
* Improve ServerNoticeServlet to avoid duplicate requests (#10679)Dirk Klimpel2021-08-271-9/+8
| | | Fixes: #9544
* Use inline type hints in various other places (in `synapse/`) (#10380)Jonathan de Jong2021-07-153-4/+6
|
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-145-5/+0
| | | | | | | 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>`
* Add a type hints for service notices to the HomeServer object. (#9675)Patrick Cloke2021-03-245-28/+32
|
* Update black, and run auto formatting over the codebase (#9381)Eric Eastwood2021-02-161-1/+1
| | | | | | | - Update black version to the latest - Run black auto formatting over the codebase - Run autoformatting according to [`docs/code_style.md `](https://github.com/matrix-org/synapse/blob/80d6dc9783aa80886a133756028984dbf8920168/docs/code_style.md) - Update `code_style.md` docs around installing black to use the correct version
* Use the account handler in additional places. (#9166)Patrick Cloke2021-01-202-2/+4
|
* Add admin API for logging in as a user (#8617)Erik Johnston2020-11-171-3/+10
|
* Check support room has only two users before sending a notice (#8728)Will Hunt2020-11-111-1/+1
| | | | | | | | | | | * Check support room has only two users * Create 8728.bugfix * Update synapse/server_notices/server_notices_manager.py Co-authored-by: Erik Johnston <erik@matrix.org> Co-authored-by: Erik Johnston <erik@matrix.org>
* Fix typos and spelling errors. (#8639)Patrick Cloke2020-10-231-1/+1
|
* Stop sub-classing object (#8249)Patrick Cloke2020-09-045-5/+5
|
* Fix some comments and types in service notices (#7996)Patrick Cloke2020-07-315-59/+54
|
* Replace all remaining six usage with native Python 3 equivalents (#7704)Dagfinn Ilmari Mannsåker2020-06-161-3/+1
|
* Replace iteritems/itervalues/iterkeys with native versions. (#7692)Patrick Cloke2020-06-152-5/+3
|
* Optimise some references to hs.config (#7546)Richard van der Hoff2020-05-221-8/+7
| | | These are surprisingly expensive, and we only really need to do them at startup.
* Add ability to wait for replication streams (#7542)Erik Johnston2020-05-221-3/+3
| | | | | | | The idea here is that if an instance persists an event via the replication HTTP API it can return before we receive that event over replication, which can lead to races where code assumes that persisting an event immediately updates various caches (e.g. current state of the room). Most of Synapse doesn't hit such races, so we don't do the waiting automagically, instead we do so where necessary to avoid unnecessary delays. We may decide to change our minds here if it turns out there are a lot of subtle races going on. People probably want to look at this commit by commit.
* Convert synapse.server_notices to async/await. (#7394)Patrick Cloke2020-05-011-10/+6
|
* async/await is_server_admin (#7363)Andrew Morgan2020-05-014-51/+39
|
* Server notices: Dissociate room creation/lookup from invite (#7199)Brendan Abolivier2020-04-042-10/+45
| | | | | | | | | Fixes #6815 Before figuring out whether we should alert a user on MAU, we call get_notice_room_for_user to get some info on the existing server notices room for this user. This function, if the room doesn't exist, creates it and invites the user in it. This means that, if we decide later that no server notice is needed, the user gets invited in a room with no message in it. This happens at every restart of the server, since the room ID returned by get_notice_room_for_user is cached. This PR fixes that by moving the inviting bit to a dedicated function, that's only called when the server actually needs to send a notice to the user. A potential issue with this approach is that the room that's created by get_notice_room_for_user doesn't match how that same function looks for an existing room (i.e. it creates a room that doesn't have an invite or a join for the current user in it, so it could lead to a new room being created each time a user syncs), but I'm not sure this is a problem given it's cached until the server restarts, so that function won't run very often. It also renames get_notice_room_for_user into get_or_create_notice_room_for_user to make what it does clearer.
* Add `local_current_membership` table (#6655)Erik Johnston2020-01-151-1/+1
| | | | | | | Currently we rely on `current_state_events` to figure out what rooms a user was in and their last membership event in there. However, if the server leaves the room then the table may be cleaned up and that information is lost. So lets add a table that separately holds that information.
* Clean up newline quote marks around the codebase (#6362)Andrew Morgan2019-11-211-1/+1
|
* Remove usage of deprecated logger.warn method from codebase (#6271)Andrew Morgan2019-10-311-1/+1
| | | Replace every instance of `logger.warn` with `logger.warning` as the former is deprecated.
* Option to suppress resource exceeded alerting (#6173)Neil Johnson2019-10-241-38/+72
| | | | The expected use case is to suppress MAU limiting on small instances
* Remove unnecessary parentheses around return statements (#5931)Andrew Morgan2019-08-301-1/+1
| | | | | 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 :)
* Revert "Do not send consent notices if "no-consent-required" is set"Brendan Abolivier2019-08-221-4/+0
| | | | This reverts commit 27a686e53b8ba3f2e2f102fae73e598c00ec0086.
* Do not send consent notices if "no-consent-required" is setHalf-Shot2019-08-221-0/+4
|
* Replace returnValue with return (#5736)Amber Brown2019-07-232-4/+4
|
* Run Black. (#5482)Amber Brown2019-06-205-60/+39
|
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/admin_contactErik Johnston2018-08-241-4/+3
|\
| * Fix checking if service notice room is already taggedErik Johnston2018-08-241-4/+3
| | | | | | | | This manifested in synapse repeatedly setting the tag for the room
* | Change admin_uri to admin_contact in config and errorsErik Johnston2018-08-241-1/+1
|/
* Ensure we wake up /sync when we add tag to notice roomErik Johnston2018-08-242-2/+13
|
* Make content of tag an empty object rather than nullErik Johnston2018-08-242-2/+2
|
* Fix bug where we broke sync when using limit_usage_by_mauErik Johnston2018-08-241-0/+4
| | | | | We assumed that we always had service notices configured, but that is not always true
* Fix bug where we resent "limit exceeded" server noticesErik Johnston2018-08-231-1/+5
| | | | This was due to a bug where we mutated a cached event's contents
* Update notice formatErik Johnston2018-08-221-3/+11
|
* special case server_notices_mxidNeil Johnson2018-08-181-1/+1
|
* clean up, no functional changesNeil Johnson2018-08-172-41/+47
|
* flake8Neil Johnson2018-08-161-3/+2
|
* refactor for readability, and reuse caching for setting tagsNeil Johnson2018-08-162-68/+114
|
* add room taggingNeil Johnson2018-08-161-9/+5
|
* check for room state before deciding on actionNeil Johnson2018-08-162-67/+26
|
* WIP impl commiting to get feedbackNeil Johnson2018-08-161-6/+74
|
* fix case where empty string state check is evaulated as FalseNeil Johnson2018-08-161-1/+2
|
* wip cut at sending resource server noticesNeil Johnson2018-08-152-44/+55
|
* backout ability to pass in event type to server noticesNeil Johnson2018-08-143-4/+5
|
* support server notice state events for resource limitsNeil Johnson2018-08-143-8/+20
|
* fix typoNeil Johnson2018-08-131-1/+1
|
* implementation of server notices to alert on hitting resource limitsNeil Johnson2018-08-102-45/+65
|
* wip at implementing MSC 7075Neil Johnson2018-08-091-0/+84
|
* run isortAmber Brown2018-07-091-1/+2
|
* Avoid sending consent notice to guest usersRichard van der Hoff2018-05-251-0/+5
| | | | we think it makes sense not to send the notices to guest users.
* Allow overriding the server_notices user's avatarRichard van der Hoff2018-05-231-3/+14
| | | | probably should have done this in the first place, like @turt2live suggested.
* Merge pull request #3271 from matrix-org/rav/consent_uri_in_messagesRichard van der Hoff2018-05-231-2/+39
|\ | | | | Support for putting %(consent_uri)s in messages
| * Support for putting %(consent_uri)s in messagesRichard van der Hoff2018-05-231-2/+39
| | | | | | | | | | Make it possible to put the URI in the error message and the server notice that get sent by the server
* | fix typoRichard van der Hoff2018-05-231-1/+1
| |
* | Block attempts to send server notices to remote usersRichard van der Hoff2018-05-231-0/+4
|/
* fix synchrotronhera2018-05-221-1/+1
|
* Stub out ServerNoticesSender on the workersRichard van der Hoff2018-05-222-4/+50
| | | | | ... and have the sync endpoints call it directly rather than obsure indirection via PresenceHandler
* Move consent config parsing into ConsentConfigRichard van der Hoff2018-05-221-8/+2
| | | | turns out we need to reuse this, so it's better in the config class.
* Send users a server notice about consentRichard van der Hoff2018-05-222-0/+159
| | | | | When a user first syncs, we will send them a server notice asking them to consent to the privacy policy if they have not already done so.
* Better docstringsRichard van der Hoff2018-05-181-0/+16
|
* Make sure we reject attempts to invite the notices userRichard van der Hoff2018-05-181-0/+5
|
* Infrastructure for a server notices roomRichard van der Hoff2018-05-172-0/+110
Server Notices use a special room which the user can't dismiss. They are created on demand when some other bit of the code calls send_notice. (This doesn't actually do much yet becuse we don't call send_notice anywhere)