summary refs log tree commit diff
path: root/synapse/events (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit '0312266ee' into anoa/dinsic_release_1_31_0Andrew Morgan2021-04-211-2/+14
|\
| * Implement MSC2176: Updated redaction rules (#8984)Patrick Cloke2021-01-051-2/+14
| | | | | | | | An experimental room version ("org.matrix.msc2176") contains the new redaction rules for testing.
* | lintAndrew Morgan2021-04-161-3/+5
| |
* | Merge commit 'f14428b25' into anoa/dinsic_release_1_31_0Andrew Morgan2021-04-161-27/+45
|\|
| * Allow spam-checker modules to be provide async methods. (#8890)David Teller2020-12-111-16/+39
| | | | | | | | Spam checker modules can now provide async methods. This is implemented in a backwards-compatible manner.
| * Use TYPE_CHECKING instead of magic MYPY variable. (#8770)Patrick Cloke2020-11-171-3/+2
| |
* | Add knocking support (#81)Andrew Morgan2021-02-091-7/+12
| | | | | | | | | | | | | | | | | | Implement knocking as defined by https://github.com/matrix-org/matrix-doc/pull/2403 This is the base knocking stuff, taken from https://github.com/matrix-org/synapse/pull/6739 and does not include any public room directory changes. While knocking hasn't merged yet on mainline due to waiting on getting Complement into Synapse's CI, the code has been well-tested.
* | Merged commit 'deff8f628' into anoa/dinsic_release_1_23_1Andrew Morgan2020-12-311-3/+2
| |
* | Merge commit 'c3119d153' into anoa/dinsic_release_1_23_1Andrew Morgan2020-12-311-9/+18
|\|
| * Block clients from sending server ACLs that lock the local server out. (#8708)Erik Johnston2020-11-031-9/+18
| | | | | | Fixes #4042
* | Merge commit 'ef2d62701' into anoa/dinsic_release_1_23_1Andrew Morgan2020-12-311-2/+2
|\|
| * Use `%r` rather than `%s` for stringifying events (#8679)Richard van der Hoff2020-10-291-2/+2
| | | | | | | | otherwise non-state events get written as `<FrozenEvent ... state_key='None'>` which is indistinguishable from state events with the actual state_key `None`.
* | Merge commit '2b7c18087' into anoa/dinsic_release_1_23_1Andrew Morgan2020-12-312-2/+2
|\|
| * Fix typos and spelling errors. (#8639)Patrick Cloke2020-10-232-2/+2
| |
* | Merge commit '3ee17585c' into dinsicAndrew Morgan2020-12-313-7/+20
|\|
| * Fix modifying events in `ThirdPartyRules` modules (#8564)Richard van der Hoff2020-10-161-1/+1
| | | | | | EventBuilder.build wants auth events these days
| * Merge pull request #8535 from matrix-org/rav/third_party_events_updatesRichard van der Hoff2020-10-152-6/+19
| |\ | | | | | | Support modifying event content from ThirdPartyRules modules
| | * guard against accidental modificationRichard van der Hoff2020-10-132-3/+10
| | |
| | * Allow ThirdPartyRules modules to replace event contentRichard van der Hoff2020-10-131-3/+9
| | | | | | | | | | | | Support returning a new event dict from `check_event_allowed`.
* | | Merge commit '74976a8e4' into dinsicAndrew Morgan2020-12-315-19/+33
|\| |
| * | Merge pull request #8537 from matrix-org/rav/simplify_locally_reject_inviteRichard van der Hoff2020-10-151-8/+13
| |\ \ | | | | | | | | Simplify `_locally_reject_invite`
| | * | Simplify `_locally_reject_invite`Richard van der Hoff2020-10-131-8/+13
| | |/ | | | | | | | | | | | | Update `EventCreationHandler.create_event` to accept an auth_events param, and use it in `_locally_reject_invite` instead of reinventing the wheel.
| * / Make sure a retention policy is a state event (#8527)Brendan Abolivier2020-10-141-0/+3
| |/ | | | | | | | | * Make sure a retention policy is a state event * Changelog
| * Combine `SpamCheckerApi` with the more generic `ModuleApi`. (#8464)Richard van der Hoff2020-10-072-4/+4
| | | | | | | | | | Lots of different module apis is not easy to maintain. Rather than adding yet another ModuleApi(hs, hs.get_auth_handler()) incantation, first add an hs.get_module_api() method and use it where possible.
| * Additional tests for third-party event rules (#8468)Richard van der Hoff2020-10-061-5/+7
| | | | | | | | | | | | | | | | | | * Optimise and test state fetching for 3p event rules Getting all the events at once is much more efficient than getting them individually * Test that 3p event rules can modify events
| * Fix third-party event modules for `check_visibility_can_be_modified` checkRichard van der Hoff2020-10-051-1/+3
| | | | | | | | | | | | PR #8292 tried to maintain backwards compat with modules which don't provide a `check_visibility_can_be_modified` method, but the tests weren't being run, and the check didn't work.
| * Allow ThirdPartyEventRules modules to manipulate public room state (#8292)Andrew Morgan2020-10-051-6/+45
| | | | | | | | | | This PR allows `ThirdPartyEventRules` modules to view, manipulate and block changes to the state of whether a room is published in the public rooms directory. While the idea of whether a room is in the public rooms list is not kept within an event in the room, `ThirdPartyEventRules` generally deal with controlling which modifications can happen to a room. Public rooms fits within that idea, even if its toggle state isn't controlled through a state event.
| * Remove stream ordering from Metadata dict (#8452)Richard van der Hoff2020-10-052-2/+9
| | | | | | | | | | | | | | | | There's no need for it to be in the dict as well as the events table. Instead, we store it in a separate attribute in the EventInternalMetadata object, and populate that on load. This means that we can rely on it being correctly populated for any event which has been persited to the database.
* | Make sure a retention policy is a state event (#8527)Brendan Abolivier2020-10-211-0/+3
| | | | | | | | | | * Make sure a retention policy is a state event * Changelog
* | Merge commit 'cc40a59b4' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-211-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'cc40a59b4': 1.21.0 Add prometheus metrics to track federation delays (#8430) Make token serializing/deserializing async (#8427) Allow additional SSO properties to be passed to the client (#8413) changelog Add an improved "forward extremities" metric Rewrite BucketCollector Fix _exposition.py to stop stripping samples Drop support for ancient prometheus_client (#8426) Various clean ups to room stream tokens. (#8423) changelog Report state res metrics to Prometheus and log Move Measure calls into `resolve_events_with_store` Expose a `get_resource_usage` method in `Measure` Move `resolve_events_with_store` into StateResolutionHandler
| * Various clean ups to room stream tokens. (#8423)Erik Johnston2020-09-291-3/+3
| |
* | Merge commit '17fa4c7ca' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-206-7/+7
|\| | | | | | | | | | | | | | | * commit '17fa4c7ca': Catch up after Federation Outage (split, 2): Track last successful stream ordering after transmission (#8247) Catch-up after Federation Outage (split, 1) (#8230) Fix type signature in simple_select_one_onecol and friends (#8241) Stop sub-classing object (#8249)
| * Stop sub-classing object (#8249)Patrick Cloke2020-09-046-7/+7
| |
* | Merge commit '112266eaf' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-201-2/+2
|\| | | | | | | | | | | * commit '112266eaf': Add StreamStore to mypy (#8232) Re-implement unread counts (again) (#8059)
| * Add StreamStore to mypy (#8232)Erik Johnston2020-09-021-2/+2
| |
* | Merge commit '5bf8e5f55' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-201-7/+12
|\| | | | | | | | | | | | | | | | | | | | | * commit '5bf8e5f55': Convert the well known resolver to async (#8214) Convert additional databases to async/await part 2 (#8200) Make MultiWriterIDGenerator work for streams that use negative stream IDs (#8203) Do not install setuptools 50.0. (#8212) Move and rename `get_devices_with_keys_by_user` (#8204) Rename `get_e2e_device_keys` to better reflect its purpose (#8205) Add a comment about _LimitedHostnameResolver
| * Convert additional databases to async/await part 2 (#8200)Patrick Cloke2020-09-011-7/+12
| |
* | Merge commit '56efa9ec7' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-203-58/+38
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '56efa9ec7': (22 commits) Fix rate limiting unit tests. (#8167) Add functions to `MultiWriterIdGen` used by events stream (#8164) Do not allow send_nonmember_event to be called with shadow-banned users. (#8158) Changelog fixes Make StreamIdGen `get_next` and `get_next_mult` async (#8161) Wording fixes to 'name' user admin api filter (#8163) Fix missing double-backtick in RST document Search in columns 'name' and 'displayname' in the admin users endpoint (#7377) Add type hints for state. (#8140) Stop shadow-banned users from sending non-member events. (#8142) Allow capping a room's retention policy (#8104) Add healthcheck for default localhost 8008 port on /health endpoint. (#8147) Fix flaky shadow-ban tests. (#8152) Don't fail /submit_token requests on incorrect session ID if request_token_inhibit_3pid_errors is turned on (#7991) Do not apply ratelimiting on joins to appservices (#8139) Micro-optimisations to get_auth_chain_ids (#8132) Allow denying or shadow banning registrations via the spam checker (#8034) Stop shadow-banned users from sending invites. (#8095) Be more tolerant of membership events in unknown rooms (#8110) Improve the error code when trying to register using a name reserved for guests. (#8135) ...
| * Allow capping a room's retention policy (#8104)Brendan Abolivier2020-08-241-56/+3
| |
| * Allow denying or shadow banning registrations via the spam checker (#8034)Patrick Cloke2020-08-201-2/+33
| |
| * Be more tolerant of membership events in unknown rooms (#8110)Richard van der Hoff2020-08-201-0/+2
| | | | | | | | It turns out that not all out-of-band membership events are labelled as such, so we need to be more accepting here.
* | Merge commit '5dd73d029' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-191-27/+31
|\| | | | | | | | | * commit '5dd73d029': Add type hints to handlers.message and events.builder (#8067)
| * Add type hints to handlers.message and events.builder (#8067)Erik Johnston2020-08-121-27/+31
| |
* | Merge commit 'd4a7829b1' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-191-1/+1
|\| | | | | | | | | * commit 'd4a7829b1': Convert synapse.api to async/await (#8031)
| * Convert synapse.api to async/await (#8031)Patrick Cloke2020-08-061-1/+1
| |
* | Merge commit 'a7bdf98d0' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-161-1/+1
|\| | | | | | | | | * commit 'a7bdf98d0': Rename database classes to make some sense (#8033)
| * Rename database classes to make some sense (#8033)Erik Johnston2020-08-051-1/+1
| |
* | Merge commit '3950ae51e' into anoa/dinsic_release_1_21_xAndrew Morgan2020-10-164-58/+59
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '3950ae51e': Ensure that remove_pusher is always async (#7981) Ensure the msg property of HttpResponseException is a string. (#7979) Remove from the event_relations table when purging historical events. (#7978) Add additional logging for SAML sessions. (#7971) Add MSC reference to changelog for #7736 Re-implement unread counts (#7736) Various improvements to the docs (#7899) Convert storage layer to async/await. (#7963) Add an option to disable purge in delete room admin API (#7964) Move some log lines from default logger to sql/transaction loggers (#7952) Use the JSON module from the std library instead of simplejson. (#7936) Fix exit code for `check_line_terminators.sh` (#7970) Option to allow server admins to join complex rooms (#7902) Fix typo in metrics docs (#7966) Add script for finding files with unix line terminators (#7965) Convert the remaining media repo code to async / await. (#7947) Convert a synapse.events to async/await. (#7949) Convert groups and visibility code to async / await. (#7951) Convert push to async/await. (#7948)
| * Convert a synapse.events to async/await. (#7949)Patrick Cloke2020-07-274-68/+67
| |
* | Allow modules to create and send events into rooms (#8479)Andrew Morgan2020-10-121-1/+3
| | | | | | | | | | | | | | | | This PR allows Synapse modules making use of the `ModuleApi` to create and send non-membership events into a room. This can useful to have modules send messages, or change power levels in a room etc. Note that they must send event through a user that's already in the room. The non-membership event limitation is currently arbitrary, as it's another chunk of work and not necessary at the moment. This commit has been cherry-picked from mainline.
* | Make AccessRules use the public rooms directory instead of checking a room's ↵Andrew Morgan2020-09-181-18/+55
| | | | | | | | | | | | | | join rules on rule change (#63) This PR switches several conditions regarding room access rules to check against the status of the room's inclusion in the public room list instead of its join rules. The code includes a snapshot of https://github.com/matrix-org/synapse/pull/8292, which will likely change in time and need merging in again.
* | Merge commit 'f88c48f3b' into anoa/dinsic_release_1_18_xAndrew Morgan2020-08-031-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f88c48f3b': 1.18.0rc1 Fix error reporting when using `opentracing.trace` (#7961) Fix typing replication not being handled on master (#7959) Remove hacky error handling for inlineDeferreds. (#7950) Convert tests/rest/admin/test_room.py to unix file endings (#7953) Support oEmbed for media previews. (#7920) Convert state resolution to async/await (#7942) Fix up types and comments that refer to Deferreds. (#7945) Do not convert async functions to Deferreds in the interactive_auth_handler (#7944) Convert more of the media code to async/await (#7873) Return an empty body for OPTIONS requests. (#7886) Downgrade warning on client disconnect to INFO (#7928) Convert presence handler helpers to async/await. (#7939) Update the auth providers to be async. (#7935) Put a cache on `/state_ids` (#7931)
| * Convert state resolution to async/await (#7942)Patrick Cloke2020-07-241-2/+2
| |
* | Merge commit 'de119063f' into anoa/dinsic_release_1_18_xAndrew Morgan2020-08-031-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'de119063f': (31 commits) Convert room list handler to async/await. (#7912) Element CSS and logo in email templates (#7919) Lint the contrib/ directory in CI and linting scripts, add synctl to linting script (#7914) Remove unused code from synapse.logging.utils. (#7897) Fix a typo in the sample config. (#7890) Fix deprecation warning: import ABC from collections.abc (#7892) Change sample config's postgres user to synapse_user (#7889) Fix deprecation warning due to invalid escape sequences (#7895) Remove Ubuntu Eoan that is now EOL (#7888) Fix the trace function for async functions. (#7872) Add help for creating a user via docker (#7885) Switch to Debian:Slim from Alpine for the docker image (#7839) Stop using 'device_max_stream_id' (#7882) Fix TypeError in synapse.notifier (#7880) Add a default limit (of 100) to get/sync operations. (#7858) Change "unknown room ver" logging to warning. (#7881) Convert device handler to async/await (#7871) Convert synapse.app to async/await. (#7868) Convert _base, profile, and _receipts handlers to async/await (#7860) Add admin endpoint to get members in a room. (#7842) ...
| * Fix deprecation warning: import ABC from collections.abc (#7892)Karthikeyan Singaravelan2020-07-201-3/+3
| |
* | Merge commit '43726783e' into dinsicAndrew Morgan2020-08-031-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '43726783e': (22 commits) 1.17.0rc1 Fix some spelling mistakes / typos. (#7811) `update_membership` declaration: now always returns an event id. (#7809) Improve stacktraces from exceptions in background processes (#7808) Fix `can only concatenate list (not "tuple") to list` exception (#7810) Pass original request headers from workers to the main process. (#7797) Generate real events when we reject invites (#7804) Add `HomeServer.signing_key` property (#7805) Revert "Update the installation docs on apt-transport-https (#7801)" Do not use simplejson in Synapse. (#7800) Stop passing bytes when dumping JSON (#7799) Update the installation docs on apt-transport-https (#7801) shuffle changelog slightly Change Caddy links (old is deprecated) (#7789) Stop populating unused table `local_invites`. (#7793) Refactor getting replication updates from database v2. (#7740) Add libwebp dependency to Dockerfile (#7791) Add documentation for JWT login type and improve sample config. (#7776) Convert the appservice handler to async/await. (#7775) Don't ignore `set_tweak` actions with no explicit `value`. (#7766) ...
| * Add `HomeServer.signing_key` property (#7805)Richard van der Hoff2020-07-081-1/+1
| | | | | | ... instead of duplicating `config.signing_key[0]` everywhere
* | Merge commit 'a3f11567d' into dinsicAndrew Morgan2020-08-032-10/+6
|\| | | | | | | | | * commit 'a3f11567d': Replace all remaining six usage with native Python 3 equivalents (#7704)
| * Replace all remaining six usage with native Python 3 equivalents (#7704)Dagfinn Ilmari Mannsåker2020-06-162-10/+6
| |
* | Merge commit '03619324f' into dinsicAndrew Morgan2020-08-032-6/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '03619324f': Create a ListenerConfig object (#7681) Fix changelog wording 1.15.1 Wrap register_device coroutine in an ensureDeferred (#7684) Ensure the body is a string before comparing push rules. (#7701) Ensure etag is a string for GET room_keys/version response (#7691) Update m.id.phone to use 'phone' instead of 'number' (#7687) Fix "There was no active span when trying to log." error (#7698) Enable 3PID add/bind/unbind endpoints on r0 routes Discard RDATA from already seen positions. (#7648) Replace iteritems/itervalues/iterkeys with native versions. (#7692) Fix warnings about losing log context during UI auth. (#7688) Fix a typo when comparing the URI & method during UI Auth. (#7689) Remove "user_id" from GET /presence. (#7606) Increase the default SAML session expirary time to 15 minutes. (#7664) fix typo in sample_config.yaml (#7652) Take out a lock before modifying _CACHES (#7663) Add option to enable encryption by default for new rooms (#7639) Clean-up the fallback login code. (#7657)
| * Replace iteritems/itervalues/iterkeys with native versions. (#7692)Patrick Cloke2020-06-152-6/+2
| |
* | Merge branch 'release-v1.14.0' of github.com:matrix-org/synapse into ↵Andrew Morgan2020-06-103-56/+102
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dinsic-release-v1.14.x * 'release-v1.14.0' of github.com:matrix-org/synapse: (108 commits) Fix typo in PR link Update debian changelog 1.14.0 Improve changelog wording 1.14.0rc2 Fix sample config docs error (#7581) Fix up comments Fix specifying cache factors via env vars with * in name. (#7580) Don't apply cache factor to event cache. (#7578) Ensure ReplicationStreamer is always started when replication enabled. (#7579) Remove the changes to the debian changelog Not full release yet, this is rc1 Merge event persistence move changelog entries More changelog fix Changelog fixes 1.14.0 Replace device_27_unique_idx bg update with a fg one (#7562) Fix incorrect exception handling in KeyUploadServlet.on_POST (#7563) Fix recording of federation stream token (#7564) Simplify reap_monthly_active_users (#7558) ...
| * Strictly enforce canonicaljson requirements in a new room version (#7381)Patrick Cloke2020-05-142-1/+41
| |
| * Extend spam checker to allow for multiple modules (#7435)Andrew Morgan2020-05-081-39/+39
| |
* | Merge branch 'release-v1.13.0' of github.com:matrix-org/synapse into ↵Andrew Morgan2020-06-101-2/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dinsic-release-v1.14.x * 'release-v1.13.0' of github.com:matrix-org/synapse: (257 commits) Update changelog based on feedback. Move warnings in the changelog and re-iterate changes to branches. 1.13.0 update dh-virtualenv (#7526) 1.13.0rc3 Hash passwords earlier in the registration process (#7523) 1.13.0rc2 1.13.0rc2 Stop `get_joined_users` corruption from custom statuses (#7376) Do not validate that the client dict is stable during UI Auth. (#7483) Fix new flake8 errors (#7489) Don't UPGRADE database rows RST indenting Put rollback instructions in upgrade notes Fix changelog typo Oh yeah, RST Absolute URL it is then Fix upgrade notes link Provide summary of upgrade issues in changelog. Fix ) Move next version notes from changelog to upgrade notes ...
| * Fix bug in EventContext.deserialize. (#7393)Erik Johnston2020-05-051-2/+5
| | | | | | | | This caused `prev_state_ids` to be incorrect if the state event was not replacing an existing state entry.
* | apply lintingAndrew Morgan2020-05-141-1/+1
| |
* | Remove special auth and redaction rules for aliases events in experimental ↵Andrew Morgan2020-03-241-7/+5
|\| | | | | | | | | | | | | room ver. (#7037) * commit '06eb5cae0': Remove special auth and redaction rules for aliases events in experimental room ver. (#7037)
| * Remove special auth and redaction rules for aliases events in experimental ↵Patrick Cloke2020-03-091-7/+5
| | | | | | | | room ver. (#7037)
* | Store room_versions in EventBase objects (#6875)Andrew Morgan2020-03-242-24/+43
|\| | | | | | | | | * commit '78a15b1f9': Store room_versions in EventBase objects (#6875)
| * Store room_versions in EventBase objects (#6875)Richard van der Hoff2020-03-052-24/+43
| | | | | | | | | | | | | | This is a bit fiddly because it all has to be done on one fell swoop: * Wherever we create a new event, pass in the room version (and check it matches the format version) * When we prune an event, use the room version of the unpruned event to create the pruned version. * When we pass an event over the replication protocol, pass the room version over alongside it, and use it when deserialising the event again.
* | Merge pull request #6872 from matrix-org/rav/dictpropertyAndrew Morgan2020-03-241-81/+118
|\| | | | | | | | | | | | | * commit '3f1cd1479': changelog Rewrite _EventInternalMetadata to back it with a _dict Replace _event_dict_property with DictProperty
| * Merge pull request #6872 from matrix-org/rav/dictpropertyRichard van der Hoff2020-02-181-81/+118
| |\ | | | | | | Rewrite _EventInternalMetadata to back it with a dict
| | * Rewrite _EventInternalMetadata to back it with a _dictRichard van der Hoff2020-02-141-16/+39
| | | | | | | | | | | | Mostly, this gives mypy an easier time.
| | * Replace _event_dict_property with DictPropertyRichard van der Hoff2020-02-141-65/+79
| | | | | | | | | | | | | | | this amounts to the same thing, but replaces `_event_dict` with `_dict`, and removes some of the function layers generated by `property`.
* | | Add type hints to the spam check module (#6915)Andrew Morgan2020-03-231-34/+42
|\| | | | | | | | | | | | | | * commit '10027c80b': Add type hints to the spam check module (#6915)
| * | Add type hints to the spam check module (#6915)Patrick Cloke2020-02-141-18/+26
| |/ | | | | | | Add typing information to the spam checker modules.
* | Filter the results of user directory searching via the spam checker (#6888)Andrew Morgan2020-03-231-0/+27
|\| | | | | | | | | * commit '49f877d32': Filter the results of user directory searching via the spam checker (#6888)
| * Filter the results of user directory searching via the spam checker (#6888)Patrick Cloke2020-02-141-0/+27
| | | | | | Add a method to the spam checker to filter the user directory results.
* | Add a `make_event_from_dict` method (#6858)Andrew Morgan2020-03-232-9/+17
|\| | | | | | | | | * commit '799001f2c': Add a `make_event_from_dict` method (#6858)
| * Add a `make_event_from_dict` method (#6858)Richard van der Hoff2020-02-072-9/+17
| | | | | | | | | | | | | | ... and use it in places where it's trivial to do so. This will make it easier to pass room versions into the FrozenEvent constructors.
* | remove unused room_version_to_event_format (#6857)Andrew Morgan2020-03-231-23/+1
|\| | | | | | | | | * commit 'f4884444c': remove unused room_version_to_event_format (#6857)
| * remove unused room_version_to_event_format (#6857)Richard van der Hoff2020-02-071-23/+1
| |
* | Third party event rules Update (#6781)Andrew Morgan2020-03-231-3/+4
|\| | | | | | | | | * commit '99fcc9628': Third party event rules Update (#6781)
| * Third party event rules Update (#6781)PeerD2020-02-061-3/+4
| |
* | Add typing to SyncHandler (#6821)Andrew Morgan2020-03-231-7/+11
|\| | | | | | | | | * commit 'b9391c957': Add typing to SyncHandler (#6821)
| * Add typing to SyncHandler (#6821)Erik Johnston2020-02-031-7/+11
| | | | | | | | Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* | Merge pull request #6806 from matrix-org/rav/redact_changes/3Andrew Morgan2020-03-231-27/+25
|\| | | | | | | | | | | | | | | * commit 'a5afdd15e': changelog Pass room_version into add_hashes_and_signatures Pass room_version into create_local_event_from_event_dict Store the room version in EventBuilder
| * Pass room_version into add_hashes_and_signaturesRichard van der Hoff2020-01-301-1/+1
| |
| * Pass room_version into create_local_event_from_event_dictRichard van der Hoff2020-01-301-22/+18
| |
| * Store the room version in EventBuilderRichard van der Hoff2020-01-301-5/+7
| |
* | Type defintions for use in refactoring for redaction changes (#6803)Andrew Morgan2020-03-231-2/+3
|\| | | | | | | | | * commit '5a246611e': Type defintions for use in refactoring for redaction changes (#6803)
| * Type defintions for use in refactoring for redaction changes (#6803)Richard van der Hoff2020-01-301-2/+3
| | | | | | | | | | | | | | | | | | | | * Bump signedjson to 1.1 ... so that we can use the type definitions * Fix breakage caused by upgrade to signedjson 1.1 Thanks, @illicitonion...
* | Merge pull request #6790 from matrix-org/rav/msc2260.1Andrew Morgan2020-03-231-1/+36
|\| | | | | | | | | | | | | | | * commit '281551f72': changelog Make /directory/room/<alias> handle restrictive power levels Set the PL for aliases events to 0. Factor out a `copy_power_levels_contents` method
| * Set the PL for aliases events to 0.Richard van der Hoff2020-01-291-1/+1
| |
| * Factor out a `copy_power_levels_contents` methodRichard van der Hoff2020-01-291-1/+36
| | | | | | | | I'm going to need another copy (hah!) of this.
* | Make 'event.redacts' never raise. (#6771)Andrew Morgan2020-03-231-4/+24
|\| | | | | | | | | | | | | | | * commit 'fa4d609e2': Make 'event.redacts' never raise. (#6771) Fixup changelog Fixup changelog Fixup changelog
| * Make 'event.redacts' never raise. (#6771)Erik Johnston2020-01-231-4/+24
| | | | | | | | | | | | There are quite a few places that we assume that a redaction event has a corresponding `redacts` key, which is not always the case. So lets cheekily make it so that event.redacts just returns None instead.
* | Add StateMap type alias (#6715)Andrew Morgan2020-03-231-6/+5
|\| | | | | | | | | * commit 'd386f2f33': Add StateMap type alias (#6715)
| * Add StateMap type alias (#6715)Erik Johnston2020-01-161-6/+5
| |
* | Change EventContext to use the Storage class (#6564)Andrew Morgan2020-03-202-16/+22
|\| | | | | | | | | * commit 'fa780e972': Change EventContext to use the Storage class (#6564)
| * Change EventContext to use the Storage class (#6564)Erik Johnston2019-12-202-16/+22
| |
| * Merge branch 'develop' into babolivier/message_retentionBrendan Abolivier2019-11-261-30/+129
| |\
| * | Implement per-room message retention policiesBrendan Abolivier2019-11-041-3/+97
| | |
* | | Fix bug which caused rejected events to be stored with the wrong room state ↵Andrew Morgan2020-03-161-2/+23
|\ \ \ | | |/ | |/| | | | | | | | | | | | | (#6320) * commit '807ec3bd9': Fix bug which caused rejected events to be stored with the wrong room state (#6320)
| * | Fix bug which caused rejected events to be stored with the wrong room state ↵Richard van der Hoff2019-11-061-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#6320) Fixes a bug where rejected events were persisted with the wrong state group. Also fixes an occasional internal-server-error when receiving events over federation which are rejected and (possibly because they are backwards-extremities) have no prev_group. Fixes #6289.
* | | Add some checks that we aren't using state from rejected events (#6330)Andrew Morgan2020-03-161-5/+44
|\| | | | | | | | | | | | | | * commit '0e3ab8afd': Add some checks that we aren't using state from rejected events (#6330)
| * | Add some checks that we aren't using state from rejected events (#6330)Richard van der Hoff2019-11-051-5/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Raise an exception if accessing state for rejected events Add some sanity checks on accessing state_group etc for rejected events. * Skip calculating push actions for rejected events It didn't actually cause any bugs, because rejected events get filtered out at various later points, but there's not point in trying to calculate the push actions for a rejected event.
* | | Improve documentation for EventContext fields (#6319)Andrew Morgan2020-03-161-26/+65
|\| | | | | | | | | | | | | | * commit '408600282': Improve documentation for EventContext fields (#6319)
| * | Improve documentation for EventContext fields (#6319)Richard van der Hoff2019-11-051-26/+65
| |/
* | Merge pull request #6301 from matrix-org/babolivier/msc2326Andrew Morgan2020-03-161-65/+42
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f496d2587': Incorporate review Factor out an _AsyncEventContextImpl (#6298) Update synapse/storage/data_stores/main/schema/delta/56/event_labels.sql Add more data to the event_labels table and fix the indexes Add unstable feature flag Lint Incorporate review Lint Changelog Add integration tests for /messages Add more integration testing Add integration tests for sync Add unit tests Add index on label Implement filtering Store labels for new events Add database table for keeping track of labels on events
| * Factor out an _AsyncEventContextImpl (#6298)Richard van der Hoff2019-11-011-65/+42
| | | | | | | | | | | | The intention here is to make it clearer which fields we can expect to be populated when: notably, that the _event_type etc aren't used for the synchronous impl of EventContext.
* | Expose some homeserver functionality to spam checkers (#6259)Andrew Morgan2020-03-161-1/+13
|\| | | | | | | | | * commit '3a74c03ff': Expose some homeserver functionality to spam checkers (#6259)
| * Expose some homeserver functionality to spam checkers (#6259)Travis Ralston2019-10-311-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Offer the homeserver instance to the spam checker * Newsfile * Linting * Expose a Spam Checker API instead of passing the homeserver object * Alter changelog * s/hs/api
* | Convert EventContext to attrs (#6218)Andrew Morgan2020-03-161-61/+39
|\| | | | | | | | | * commit '9aee28927': Convert EventContext to attrs (#6218)
| * Convert EventContext to attrs (#6218)Richard van der Hoff2019-10-281-61/+39
| | | | | | | | * make EventContext use an attr
* | Revert "Use the v2 lookup API for 3PID invites (#5897)"Andrew Morgan2020-02-241-0/+1
| | | | | | | | | | This reverts commit 978f263e7c5d1eb440efaf07abc5009408ade25d, reversing changes made to 4f6ee99818d9c338944a10585d0aea4c7349d456.
* | Use the v2 lookup API for 3PID invites (#5897)Andrew Morgan2020-02-241-1/+0
|\|
* | Merge pull request #5805 from matrix-org/erikj/validate_stateAndrew Morgan2020-02-201-2/+9
|\|
| * Merge pull request #5805 from matrix-org/erikj/validate_stateErik Johnston2019-08-011-2/+9
| |\ | | | | | | Validate well known state events are state events.
| | * Validate well-known state events are state events.Erik Johnston2019-07-311-2/+9
| | | | | | | | | | | | | | | Lets disallow sending things like memberships, topics etc as non-state events.
* | | Merge pull request #5801 from matrix-org/erikj/recursive_tombstoneAndrew Morgan2020-02-201-0/+9
|\| |
| * | Fix spelling.Erik Johnston2019-08-011-1/+3
| |/ | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| * Don't allow clients to send tombstones that reference the same roomErik Johnston2019-07-311-0/+7
| |
* | Replace returnValue with return (#5736)Andrew Morgan2020-02-194-30/+26
|\|
| * Replace returnValue with return (#5736)Amber Brown2019-07-234-30/+26
| |
* | Remove the ability to query relations when the original event was redacted. ↵Andrew Morgan2020-02-192-4/+23
|\| | | | | | | (#5629)
| * Remove the ability to query relations when the original event was redacted. ↵Andrew Morgan2019-07-182-4/+23
| | | | | | | | | | | | | | (#5629) Fixes #5594 Forbid viewing relations on an event once it has been redacted.
* | Add origin_server_ts and sender fields to m.replace (#5613)Andrew Morgan2020-02-171-1/+5
|\|
| * Add origin_server_ts and sender fields to m.replace (#5613)Andrew Morgan2019-07-051-1/+5
| | | | | | | | | | Riot team would like some extra fields as part of m.replace, so here you go. Fixes: #5598
* | Move logging utilities out of the side drawer of util/ and into logging/ (#5606)Andrew Morgan2020-02-141-1/+1
|\|
| * Move logging utilities out of the side drawer of util/ and into logging/ (#5606)Amber Brown2019-07-041-1/+1
| |
| * Run Black. (#5482)Amber Brown2019-06-207-106/+98
| |
* | Dinsic Blacking with black==18.6b2Andrew Morgan2020-02-117-111/+113
| |
* | Merge pull request #5480 from matrix-org/erikj/extremities_dummy_eventsAndrew Morgan2020-02-101-1/+1
|\|
| * Merge pull request #5480 from matrix-org/erikj/extremities_dummy_eventsErik Johnston2019-06-191-0/+12
| |\ | | | | | | Add experimental option to reduce extremities.
| | * Run as background process and fix commentsErik Johnston2019-06-191-1/+1
| | |
| * | Make check_threepid_can_be_invited asyncBrendan Abolivier2019-06-171-0/+1
| | |
| * | Add third party rules hook for 3PID invitesBrendan Abolivier2019-06-171-1/+31
| | |
| * | Add third party rules hook into create roomErik Johnston2019-06-171-3/+24
| | |
* | | Add experimental option to reduce extremities.Andrew Morgan2020-02-101-0/+12
|\ \ \ | | |/ | |/|
| * | Add experimental option to reduce extremities.Erik Johnston2019-06-181-0/+12
| |/ | | | | | | | | | | | | Adds new config option `cleanup_extremities_with_dummy_events` which periodically sends dummy events to rooms with more than 10 extremities. THIS IS REALLY EXPERIMENTAL.
* | Implement per-room message retention policiesBrendan Abolivier2019-08-281-3/+97
| |
* | Make check_threepid_can_be_invited asyncBrendan Abolivier2019-06-171-0/+1
| |
* | Add third party rules hook for 3PID invitesBrendan Abolivier2019-06-171-1/+31
| |
* | Add third party rules hook into create roomErik Johnston2019-06-171-3/+24
| |
* | Merge branch 'babolivier/third_party_event_rules' into dinsicBrendan Abolivier2019-06-141-0/+62
|\|
| * Add plugin APIs for implementations of custom event rules.Brendan Abolivier2019-06-141-0/+62
| |
* | Merge branch 'master' into dinsicBrendan Abolivier2019-06-122-3/+9
|\|
| * Fix appservice timestamp massaging (#5233)Tulir Asokan2019-05-241-1/+6
| | | | | | Signed-off-by: Tulir Asokan <tulir@maunium.net>
| * Don't bundle events in /sync or /eventsErik Johnston2019-05-211-2/+3
| | | | | | | | | | As we'll send down the annotations too anyway, so this just ends up confusing clients.
* | Merge branch 'master' into dinsicBrendan Abolivier2019-06-113-10/+83
|\|
| * Fix error handling for rooms whose versions are unknown. (#5219)Richard van der Hoff2019-05-212-5/+9
| | | | | | | | | | | | | | If we remove support for a particular room version, we should behave more gracefully. This should make client requests fail with a 400 rather than a 500, and will ignore individiual PDUs in a federation transaction, rather than the whole transaction.
| * Add a test room version which updates event ID format (#5210)Richard van der Hoff2019-05-201-1/+22
| | | | | | Implements MSC1884
| * Rename relation types to match MSCErik Johnston2019-05-201-3/+3
| |
| * Fixup bsaed on review commentsErik Johnston2019-05-171-3/+1
| |
| * Add basic editing supportErik Johnston2019-05-161-4/+26
| |
| * Add aggregations APIErik Johnston2019-05-161-3/+31
| |
* | Merge branch 'babolivier/per_room_profiles' into dinsic dinsic_2019-05-17Brendan Abolivier2019-05-171-0/+44
|\|
| * Allow client event serialization to be asyncErik Johnston2019-05-141-0/+44
| |
* | Merge branch 'release-v0.99.4' into dinsic dinsic_2019-05-14Brendan Abolivier2019-05-142-4/+19
|\|
| * Do checks on aliases for incoming m.room.aliases events (#5128)Brendan Abolivier2019-05-082-4/+19
| | | | | | | | | | Follow-up to #5124 Also added a bunch of checks to make sure everything (both the stuff added on #5124 and this PR) works as intended.
* | [DINSIC] Block internal users from inviting external users to a public room ↵Andrew Morgan2019-04-161-2/+6
| | | | | | | | | | | | (#5061) Co-Authored-By: babolivier <contact@brendanabolivier.com>
* | Merge branch 'develop' into dinsicAndrew Morgan2019-04-154-26/+30
|\|
| * Remove periods from copyright headers (#5046)Andrew Morgan2019-04-111-1/+1
| |
| * Collect room-version variations into one place (#4969)Richard van der Hoff2019-04-013-25/+29
| | | | | | | | Collect all the things that make room-versions different to one another into one place, so that it's easier to define new room versions.
* | Fix commentsErik Johnston2019-03-211-2/+2
| |
* | Add 3PID invite support to spam checkerErik Johnston2019-03-211-3/+8
| |
* | Correctly handle 3PID invites in create room spam checkErik Johnston2019-03-211-2/+7
| | | | | | | | We also add an option to outright deny third party invites
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/dinsic-mergedErik Johnston2019-03-211-1/+14
|\|
| * Make `prev_state` field optionalErik Johnston2019-03-081-1/+0
| | | | | | | | | | | | | | The `prev_state` field on events is not specced and so synapse shouldn't explode if an event is missing the field. Fixes #4787
| * Implement soft failErik Johnston2019-03-061-0/+14
| |
* | Add user_may_join_room spam checkErik Johnston2019-03-181-0/+18
| |
* | Add invite_list and cloning param to create room ruleErik Johnston2019-03-181-5/+16
|/
* Enable room version v3Erik Johnston2019-01-291-0/+2
|
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-291-2/+3
|\ | | | | | | erikj/redactions_eiah
| * Merge pull request #4514 from matrix-org/erikj/remove_event_idErik Johnston2019-01-291-2/+3
| |\ | | | | | | Remove usages of event ID's domain
| | * Don't assert an event must have an event IDErik Johnston2019-01-291-2/+3
| | |
* | | Fixup commentErik Johnston2019-01-291-2/+2
| | |
* | | kill vdh test some moreErik Johnston2019-01-291-2/+1
| | |
* | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-293-79/+320
|\| | | | | | | | | | | erikj/redactions_eiah
| * | Implement event format v2Erik Johnston2019-01-293-19/+106
| |/
| * Don't set event_id twiceErik Johnston2019-01-291-2/+0
| |
| * Refactor event building into EventBuilderErik Johnston2019-01-291-65/+219
| | | | | | | | | | This is so that everything is done in one place, making it easier to change the event format based on room version
* | Drop vdh supportErik Johnston2019-01-291-2/+0
| |
* | Add docstringErik Johnston2019-01-291-0/+12
| |
* | Implement rechecking of redactionsErik Johnston2019-01-291-0/+3
|/
* Merge pull request #4494 from matrix-org/erikj/fixup_event_validatorErik Johnston2019-01-291-23/+37
|\ | | | | Split up event validation between event and builder
| * Remove duplicate checksErik Johnston2019-01-291-14/+0
| |
| * Fix up error messagesErik Johnston2019-01-291-2/+2
| |
| * Fold validate into validate_newErik Johnston2019-01-291-16/+11
| |
| * Split up event validation between event and builderErik Johnston2019-01-281-20/+53
| | | | | | | | | | | | | | | | | | The validator was being run on the EventBuilder objects, and so the validator only checked a subset of fields. With the upcoming EventBuilder refactor even fewer fields will be there to validate. To get around this we split the validation into those that can be run against an EventBuilder and those run against a fully fledged event.
* | Refactor event signing to work on dictsErik Johnston2019-01-281-12/+35
|/ | | | | | This is in preparation for making EventBuilder format agnostic, which means event signing should be done against the event dict rather than the EventBuilder object.
* Require event format version to parse or create eventsErik Johnston2019-01-252-2/+73
|
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813Erik Johnston2019-01-251-2/+7
|\
| * Merge pull request #4405 from matrix-org/erikj/fixup_rejecting_invitesErik Johnston2019-01-241-2/+7
| |\ | | | | | | Store rejected remote invite events as outliers
| | * Use term 'out of band membership' insteadErik Johnston2019-01-241-4/+5
| | |
| | * Clarify the invite flowsErik Johnston2019-01-231-2/+6
| | |
* | | Review commentsErik Johnston2019-01-241-1/+2
| | |
* | | Implement MSC 1813 - Add room version to make APIsErik Johnston2019-01-231-1/+16
|/ / | | | | | | | | We also implement `make_membership_event` converting the returned room version to an event format version.
* | isortErik Johnston2019-01-231-3/+1
| |
* | Add support for persisting event format versionsErik Johnston2019-01-231-0/+5
|/ | | | | | | | | | | | | | Currently we only have the one event format version defined, but this adds the necessary infrastructure to persist and fetch the format versions alongside the events. We specify the format version rather than the room version as: 1. We don't necessarily know the room version, existing events may be either v1 or v2. 2. We'd need to be careful to prevent/handle correctly if different events in the same room reported to be of different versions, which sounds annoying.
* Add helpers for getting prev and auth events (#4139)Erik Johnston2018-11-061-0/+18
| | | | | | | * Add helpers for getting prev and auth events This is in preparation for allowing the event format to change between room versions.
* Disable frozen dicts by default (#3987)Amber Brown2018-10-021-3/+10
|
* Fix handling of redacted events from federationErik Johnston2018-09-131-0/+5
| | | | | | | | | | If we receive an event that doesn't pass their content hash check (e.g. due to already being redacted) then we hit a bug which causes an exception to be raised, which then promplty stops the event (and request) from being processed. This effects all sorts of federation APIs, including joining rooms with a redacted state event.
* Handle delta_ids being None in _update_context_for_auth_eventsRichard van der Hoff2018-07-231-1/+2
| | | | | | | it's easier to create the new state group as a delta from the existing one. (There's an outside chance this will help with https://github.com/matrix-org/synapse/issues/3364)
* CommentsErik Johnston2018-07-231-2/+3
|
* Only get cached state from context in persist_eventErik Johnston2018-07-231-0/+13
| | | | | | We don't want to bother pulling out the current state from the DB since until we know we have to. Checking the context for state is just an optimisation.
* Fix missing attributes on workers.Erik Johnston2018-07-231-4/+6
| | | | | This was missed during the transition from attribute to getter for getting state from context.
* Fix EventContext when using workersErik Johnston2018-07-231-7/+7
| | | | | | We were: 1. Not correctly setting all attributes 2. Using defer.inlineCallbacks in a non-generator
* Update docstrings to make senseErik Johnston2018-07-231-5/+8
|
* Add support for updating stateErik Johnston2018-07-231-0/+19
|
* Make EventContext lazy load stateErik Johnston2018-07-231-41/+112
|
* pep8Erik Johnston2018-07-231-1/+1
|
* Refcator EventContext to accept state during initErik Johnston2018-07-231-21/+27
|
* Make the rest of the .iterwhatever go away (#3562)Amber Brown2018-07-211-1/+3
|
* run isortAmber Brown2018-07-095-15/+14
|
* Consistently use six's iteritems and wrap lazy keys/values in list() if ↵Amber Brown2018-05-311-1/+1
| | | | they're not meant to be lazy (#3307)
* Replace some more comparisons with sixAdrian Tschira2018-05-192-3/+7
| | | | | | plus a bonus b"" string I missed last time Signed-off-by: Adrian Tschira <nota@notafile.com>
* add comment explaining attributeerrorAdrian Tschira2018-04-301-0/+3
|
* Make event properties raise AttributeError insteadAdrian Tschira2018-04-151-3/+12
| | | | | | | | | | | | | They raised KeyError before. I'm changing this because the code uses hasattr() to check for the presence of a key. This worked accidentally before, because hasattr() silences all exceptions in python 2. However, in python3, this isn't the case anymore. I had a look around to see if anything depended on this raising a KeyError and I couldn't find anything. Of course, I could have simply missed it. Signed-off-by: Adrian Tschira <nota@notafile.com>
* Remove context.push_actionsErik Johnston2018-02-151-4/+0
|
* Don't serialize current state over replicationErik Johnston2018-02-151-6/+35
|
* Add replication http endpoint for event sendingErik Johnston2018-02-071-0/+72
|
* Store state groups separately from events (#2784)Erik Johnston2018-02-061-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Split state group persist into seperate storage func * Add per database engine code for state group id gen * Move store_state_group to StateReadStore This allows other workers to use it, and so resolve state. * Hook up store_state_group * Fix tests * Rename _store_mult_state_groups_txn * Rename StateGroupReadStore * Remove redundant _have_persisted_state_group_txn * Update comments * Comment compute_event_context * Set start val for state_group_id_seq ... otherwise we try to recreate old state groups * Update comments * Don't store state for outliers * Update comment * Update docstring as state groups are ints
* replace 'except:' with 'except Exception:'Richard van der Hoff2017-10-231-1/+1
| | | | what could possibly go wrong
* Remove pointless create() methodRichard van der Hoff2017-10-201-1/+1
| | | | | It just calls the constructor, so we may as well kill it rather than having random codepaths.
* Spam checking: add the invitee to user_may_inviteDavid Baker2017-10-051-2/+2
|
* spam check room publishingDavid Baker2017-10-041-0/+18
|
* Add room creation checks to spam checkerDavid Baker2017-10-041-0/+32
| | | | | Lets the spam checker deny attempts to create rooms and add aliases to them.
* s/roomid/room_id/David Baker2017-10-031-2/+2
|
* pass room id tooDavid Baker2017-10-031-2/+2
|
* Actually write warpper functionDavid Baker2017-10-031-0/+16
|
* Don't test is spam_checker not NoneDavid Baker2017-09-271-1/+7
| | | | | Sometimes it's a Mock object which is not none but is still not what we're after
* Remove unintentional debuggingDavid Baker2017-09-271-1/+0
|
* pep8David Baker2017-09-271-0/+1
|
* Make the spam checker a moduleDavid Baker2017-09-261-17/+20
|
* fix thinko'd docstringMatthew Hodgson2017-09-221-1/+1
|
* PoC for filtering spammy events (#2456)Richard van der Hoff2017-09-191-0/+38
| | | Demonstration of how you might add some hooks to filter out spammy events.
* Add more granular event send metricsErik Johnston2017-05-021-0/+3
|
* Comment and remove spurious loggingErik Johnston2017-04-271-0/+3
|
* Fix testsErik Johnston2017-04-261-3/+3
|
* Fix invite state to always include all eventsErik Johnston2017-04-261-1/+19
|
* Refactoring and cleanupsRichard van der Hoff2017-03-171-0/+26
| | | | | | | | | | | | A few non-functional changes: * A bunch of docstrings to document types * Split `EventsStore._persist_events_txn` up a bit. Hopefully it's a bit more readable. * Rephrase `EventFederationStore._update_min_depth_for_room_txn` to avoid mind-bending conditional. * Rephrase rejected/outlier conditional in `_update_outliers_txn` to avoid mind-bending conditional.
* Optimise state resolutionErik Johnston2017-01-172-4/+10
|
* gah, fix mangled merge of 0.18.7 into developMatthew Hodgson2017-01-071-1/+1
|
* Only send events that originate on this server.Mark Haines2017-01-051-0/+9
| | | | | | Or events that are sent via the federation "send_join" API. This should match the behaviour from before v0.18.5 and #1635 landed.
* Review commentsKegan Dougal2016-11-221-11/+9
|
* Also check for dict since sometimes they aren't frozenKegan Dougal2016-11-221-1/+1
|
* Glue only_event_fields into the sync rest servletKegan Dougal2016-11-221-1/+1
|