1
0
Commit Graph

19530 Commits

Author SHA1 Message Date
Andrew Morgan 535afe4313 Merge commit 'f27a78969' into anoa/dinsic_release_1_23_1 2020-12-31 14:35:28 +00:00
Andrew Morgan 71289856e5 Merge commit 'b4289795e' into anoa/dinsic_release_1_23_1 2020-12-31 14:35:16 +00:00
Andrew Morgan de6773523d Merge commit 'ef2d62701' into anoa/dinsic_release_1_23_1 2020-12-31 14:34:59 +00:00
Andrew Morgan b90b34744a Merge commit 'c97da1e45' into anoa/dinsic_release_1_23_1 2020-12-31 13:40:57 +00:00
Andrew Morgan 3efa169750 Merge commit '88e1d0c52' into anoa/dinsic_release_1_23_1 2020-12-31 13:40:45 +00:00
Andrew Morgan 47c25048c5 Merge commit '24229fac0' into anoa/dinsic_release_1_23_1 2020-12-31 13:40:07 +00:00
Andrew Morgan 8c2f42374b Merge commit 'fedfdfd75' into anoa/dinsic_release_1_23_1 2020-12-31 12:07:35 +00:00
Andrew Morgan 468d7f6777 Merge commit '7a3adbd7a' into anoa/dinsic_release_1_23_1 2020-12-31 12:06:40 +00:00
Andrew Morgan a190ad61b3 Merge commit '2b7c18087' into anoa/dinsic_release_1_23_1 2020-12-31 11:58:26 +00:00
Andrew Morgan 6d1b93cf08 Merge commit '054a6b953' into anoa/dinsic_release_1_23_1 2020-12-31 11:58:10 +00:00
Andrew Morgan 7e1a0bf068 Merge commit 'b19b63e6b' into anoa/dinsic_release_1_23_1 2020-12-31 11:51:30 +00:00
Andrew Morgan 2af070196c Merge commit 'ec0e9c469' into dinsic 2020-12-31 11:44:27 +00:00
Andrew Morgan 9e11250574 Merge commit '9146a8a69' into dinsic 2020-12-31 11:44:21 +00:00
Andrew Morgan 7df02e4431 Merge commit '70259d8c' into dinsic 2020-12-31 11:44:13 +00:00
Andrew Morgan 8f05de1d97 Merge commit 'de5cafe98' into dinsic 2020-12-31 11:43:55 +00:00
Andrew Morgan 4c7d889be7 Merge commit '97647b33c' into dinsic 2020-12-31 11:24:03 +00:00
Andrew Morgan b30484ab34 Merge commit '3ee17585c' into dinsic 2020-12-31 11:23:56 +00:00
Andrew Morgan 247081274a Merge commit '654e239b2' into dinsic 2020-12-31 11:23:48 +00:00
Andrew Morgan 5fc0dd8126 Merge commit '74976a8e4' into dinsic 2020-12-31 11:23:24 +00:00
Andrew Morgan 63e8ab5481 Allow users to click account renewal links multiple times without hitting an 'Invalid Token' page (#74) 2020-12-30 17:43:08 +00:00
Patrick Cloke 0d86b11666 Support PyJWT v2.0.0. (#8986)
Tests were broken due to an API changing. The code used in Synapse
proper should be compatible with both versions already.
2020-12-29 18:41:36 +00:00
Mathieu Velten e6797e004f Allow per-room profile to be used for server notice user (#8799)
This applies even if the feature is disabled at the server level with `allow_per_room_profiles`.
The server notice not being a real user it doesn't have an user profile.
2020-12-14 10:31:27 +01:00
Andrew Morgan 903bb990b9 Remove the CI requirement for newsfiles (#73)
We don't use newsfiles for DINUM releases anyways, so a CI requirement for them
does not make sense.
2020-12-11 14:47:38 +00:00
Mathieu Velten 4d17afc255 Fix users info for remote users (#71) 2020-12-11 14:41:02 +00:00
Andrew Morgan 8a02d38ce2 Update mypy to 0.790 to resolve mypy CI errors (#72) 2020-12-11 12:32:49 +00:00
Erik Johnston f27a789697 Merge branch 'master' into develop 2020-10-30 16:27:02 +00:00
Erik Johnston b176f1036a Fix changelog v1.22.1 2020-10-30 15:33:33 +00:00
Erik Johnston aef8514193 use correct version 2020-10-30 15:27:58 +00:00
Erik Johnston b4289795ea 1.22.1 2020-10-30 15:25:44 +00:00
Erik Johnston 1b831f2bec Merge branch 'release-v1.22.1' into develop 2020-10-30 15:24:48 +00:00
Richard van der Hoff 90c900a8ff Merge pull request #8678 from matrix-org/rav/fix_frozen_events
Fix serialisation errors when using third-party event rules.
2020-10-30 15:24:10 +00:00
Will Hunt b37aa1643b Tie together matches_user_in_member_list and get_users_in_room caches (#8676)
* Tie together matches_user_in_member_list and get_users_in_room

* changelog

* Remove type to fix mypy

* Add `on_invalidate` to the function signature in the hopes that may make things work well

* Remove **kwargs

* Update 8676.bugfix
2020-10-30 15:23:16 +00:00
Patrick Cloke 8f1aefa694 Improve the sample config for SSO (OIDC, SAML, and CAS). (#8635) 2020-10-30 10:01:59 -04:00
Richard van der Hoff 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
Patrick Cloke fd7c743445 Fail test cases if they fail to await all awaitables (#8690) 2020-10-30 07:15:07 -04:00
Erik Johnston 46f4be94b4 Fix race for concurrent downloads of remote media. (#8682)
Fixes #6755
2020-10-30 10:55:24 +00:00
Andrew Morgan 4504151546 Fix optional parameter in stripped state storage method (#8688)
Missed in #8671.
2020-10-30 00:22:31 +00:00
Erik Johnston ef2d627015 Fix unit tests (#8689)
* Fix unit tests

* Newsfile
2020-10-29 18:21:49 +00:00
Will Hunt 70269fbd18 Tie together matches_user_in_member_list and get_users_in_room caches (#8676)
* Tie together matches_user_in_member_list and get_users_in_room

* changelog

* Remove type to fix mypy

* Add `on_invalidate` to the function signature in the hopes that may make things work well

* Remove **kwargs

* Update 8676.bugfix
2020-10-29 16:58:16 +00:00
Patrick Cloke 8b42a4eefd Gracefully handle a pending logging connection during shutdown. (#8685) 2020-10-29 12:53:57 -04:00
Erik Johnston f21e24ffc2 Add ability for access tokens to belong to one user but grant access to another user. (#8616)
We do it this way round so that only the "owner" can delete the access token (i.e. `/logout/all` by the "owner" also deletes that token, but `/logout/all` by the "target user" doesn't).

A future PR will add an API for creating such a token.

When the target user and authenticated entity are different the `Processed request` log line will be logged with a: `{@admin:server as @bob:server} ...`. I'm not convinced by that format (especially since it adds spaces in there, making it harder to use `cut -d ' '` to chop off the start of log lines). Suggestions welcome.
2020-10-29 15:58:44 +00:00
Erik Johnston 22eeb6bc54 Fix cache call signature to accept on_invalidate. (#8684)
Cached functions accept an `on_invalidate` function, which we failed to add to the type signature. It's rarely used in the files that we have typed, which is why we haven't noticed it before.
2020-10-29 15:18:17 +00:00
Richard van der Hoff 0073fe914a Use %r rather than %s for stringifying events (#8679)
otherwise non-state events get written as `<FrozenEvent ... state_key='None'>`
which is indistinguishable from state events with the actual state_key `None`.
2020-10-29 12:16:49 +00:00
Richard van der Hoff 56f0ee78a9 Optimise createRoom with multiple invites (#8559)
By not dropping the membership lock between invites, we can stop joins from
grabbing the lock when we're half-done and slowing the whole thing down.
2020-10-29 11:48:39 +00:00
Patrick Cloke 00b24aa545 Support generating structured logs in addition to standard logs. (#8607)
This modifies the configuration of structured logging to be usable from
the standard Python logging configuration.

This also separates the formatting of logs from the transport allowing
JSON logs to files or standard logs to sockets.
2020-10-29 07:27:37 -04:00
Erik Johnston 9a7e0d2ea6 Don't require hiredis to run unit tests (#8680) 2020-10-29 11:17:35 +00:00
Andrew Morgan 0ebdde8739 Override any missing default power level keys with DINUM's defaults when creating a room (#68)
The createRoom flow in DINUM's Synapse (through the AccessRules module which has hooks for all of this) already rejects a power levels content dict if it doesn't have high enough power levels to satisfy DINUM's [requirements](https://github.com/matrix-org/synapse-dinsic/blob/ac50ed353b5fdbdf9f853be0d94b6fccaf33973e/synapse/third_party_rules/access_rules.py#L233-L252).

This PR ensures that any keys that aren't provided are replaced with the defaults, instead of just assuming the whole dict was correct (and thus those keys were set to mainline Synapse's default instead).
2020-10-29 10:48:29 +00:00
Richard van der Hoff c97da1e45d Merge pull request #8678 from matrix-org/rav/fix_frozen_events
Fix serialisation errors when using third-party event rules.
2020-10-28 20:41:42 +00:00
Richard van der Hoff e80eb69887 remove unused imports 2020-10-28 16:18:05 +00:00
Richard van der Hoff b6ca69e4f1 Remove frozendict_json_encoder and support frozendicts everywhere
Not being able to serialise `frozendicts` is fragile, and it's annoying to have
to think about which serialiser you want. There's no real downside to
supporting frozendicts, so let's just have one json encoder.
2020-10-28 15:56:57 +00:00