summary refs log tree commit diff
path: root/synapse/events/utils.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Implement knock feature (#6739)Sorunome2021-06-091-7/+12
| | | | | | This PR aims to implement the knock feature as proposed in https://github.com/matrix-org/matrix-doc/pull/2403 Signed-off-by: Sorunome mail@sorunome.de Signed-off-by: Andrew Morgan andrewm@element.io
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-141-1/+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>`
* Ensure we use a copy of the event content dict before modifying it in ↵Andrew Morgan2021-03-171-2/+12
| | | | | | | | | serialize_event (#9585) This bug was discovered by DINUM. We were modifying `serialized_event["content"]`, which - if you've got `USE_FROZEN_DICTS` turned on or are [using a third party rules module](https://github.com/matrix-org/synapse/blob/17cd48fe5171d50da4cb59db647b993168e7dfab/synapse/events/third_party_rules.py#L73-L76) - will raise a 500 if you try to a edit a reply to a message. `serialized_event["content"]` could be set to the edit event's content, instead of a copy of it, which is bad as we attempt to modify it. Instead, we also end up modifying the original event's content. DINUM uses a third party rules module, which meant the event's content got frozen and thus an exception was raised. To be clear, the problem is not that the event's content was frozen. In fact doing so helped us uncover the fact we weren't copying event content correctly.
* Prep work for removing `outlier` from `internal_metadata` (#9411)Richard van der Hoff2021-03-171-0/+2
| | | | | | | | | | | | * Populate `internal_metadata.outlier` based on `events` table Rather than relying on `outlier` being in the `internal_metadata` column, populate it based on the `events.outlier` column. * Move `outlier` out of InternalMetadata._dict Ultimately, this will allow us to stop writing it to the database. For now, we have to grandfather it back in so as to maintain compatibility with older versions of Synapse.
* 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
* 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.
* Fix typos and spelling errors. (#8639)Patrick Cloke2020-10-231-1/+1
|
* Remove stream ordering from Metadata dict (#8452)Richard van der Hoff2020-10-051-0/+5
| | | | | | | | 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.
* Stop sub-classing object (#8249)Patrick Cloke2020-09-041-1/+1
|
* Convert a synapse.events to async/await. (#7949)Patrick Cloke2020-07-271-8/+7
|
* Fix deprecation warning: import ABC from collections.abc (#7892)Karthikeyan Singaravelan2020-07-201-3/+3
|
* Replace all remaining six usage with native Python 3 equivalents (#7704)Dagfinn Ilmari Mannsåker2020-06-161-3/+1
|
* Strictly enforce canonicaljson requirements in a new room version (#7381)Patrick Cloke2020-05-141-1/+34
|
* 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)Richard van der Hoff2020-03-051-10/+4
| | | | | | | 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.
* 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.
* Replace returnValue with return (#5736)Amber Brown2019-07-231-2/+2
|
* Remove the ability to query relations when the original event was redacted. ↵Andrew Morgan2019-07-181-4/+12
| | | | | | | (#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 Morgan2019-07-051-1/+5
| | | | | Riot team would like some extra fields as part of m.replace, so here you go. Fixes: #5598
* Run Black. (#5482)Amber Brown2019-06-201-26/+32
|
* 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.
* 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
|
* Allow client event serialization to be asyncErik Johnston2019-05-141-0/+44
|
* Implement event format v2Erik Johnston2019-01-291-0/+3
|
* 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.
* run isortAmber Brown2018-07-091-4/+5
|
* Replace some more comparisons with sixAdrian Tschira2018-05-191-1/+3
| | | | | | plus a bonus b"" string I missed last time Signed-off-by: Adrian Tschira <nota@notafile.com>
* 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
|
* 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
|
* More testsKegan Dougal2016-11-221-3/+4
|
* Start adding some testsKegan Dougal2016-11-211-1/+3
|
* Move event_fields filtering to serialize_eventKegan Dougal2016-11-211-4/+97
| | | | Also make it an inclusive not exclusive filter, as the spec demands.
* Include prev_content in redacted state eventsErik Johnston2016-08-111-0/+2
|
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Only add the user_id if the sender is presentMark Haines2015-12-011-1/+3
|
* Copy rather than move the fields to shuffle between a v1 and a v2 event.Mark Haines2015-11-301-9/+5
| | | | | | | | | | This should make all v1 APIs compatible with v2 clients. While still allowing v1 clients to access the fields. This makes the documentation easier since we can just document the v2 format and explain that some of the fields, in some of the APIs are duplicated for backwards compatibility, rather than having to document two separate event formats.
* Flatten the /sync response to remove the event_mapRichard van der Hoff2015-11-191-2/+1
|
* Update the other place check_joined_room is calledMark Haines2015-10-301-1/+2
|
* Surely we don't need to preserve 'events_default' twicePaul "LeoNerd" Evans2015-10-161-1/+0
|
* Bundle in some room state in the unsigned bit of the invite when sending to ↵Erik Johnston2015-09-101-1/+4
| | | | invited servers
* Rename key and values for m.room.history_visibility. Support 'invited' valueErik Johnston2015-07-061-1/+1
|
* Add m.room.history_visibility to list of auth eventsErik Johnston2015-07-031-0/+2
|
* Merge pull request #43 from matrix-org/rejectionsErik Johnston2015-01-301-3/+8
|\ | | | | Rejections
| * Merge branch 'develop' of github.com:matrix-org/synapse into rejectionsErik Johnston2015-01-301-6/+6
| |\ | | | | | | | | | | | | | | | Conflicts: synapse/storage/__init__.py synapse/storage/schema/delta/v12.sql
| * | Fix bug where we changes in outlier in metadata dict propogated to other eventsErik Johnston2015-01-301-1/+4
| | |
| * | Initial implementation of auth conflict resolutionErik Johnston2015-01-291-2/+4
| | |
* | | Include transaction ids in unsigned section of events in the sync results ↵Mark Haines2015-01-291-5/+6
| | | | | | | | | | | | for the clients that made those requests
* | | Add support for formatting events in the way a v2 client expectsMark Haines2015-01-291-39/+52
| | |
* | | Start implementing incremental initial syncMark Haines2015-01-271-0/+1
| | |
* | | Start implementing the non-incremental sync portion of the v2 /sync APIMark Haines2015-01-261-1/+5
| |/ |/|
* | Pass the current time to serialize event, rather than passing anMark Haines2015-01-261-6/+6
|/ | | | | | HS and getting a clock from it and calling time_msec on the clock. Remove the serialize_event method from the HS since it is no longer needed.
* Merge branch 'hotfixes-v0.6.1b' of github.com:matrix-org/synapse into developErik Johnston2015-01-131-1/+1
|\
| * Insert 'age' into top level when returning events to clientsErik Johnston2015-01-131-1/+1
| |
* | Return the raw federation event rather than adding extra keys for federation ↵Kegan Dougal2015-01-081-9/+16
| | | | | | | | data.
* | Add 'raw' query parameter to expose the event graph and signatures to savvy ↵Kegan Dougal2015-01-081-8/+9
|/ | | | clients.
* Update copyright noticesMark Haines2015-01-061-1/+1
|
* Remove unneeded federation keys from eventsMark Haines2014-12-191-0/+3
|
* Fix bug where we ignored event_edge_hashes tableErik Johnston2014-12-151-0/+1
|
* Fix prev_contentErik Johnston2014-12-111-0/+8
|
* Fix redactions. Fix 'age' keyErik Johnston2014-12-111-0/+21
|
* Add PEP8 newlinesErik Johnston2014-12-091-1/+1
|
* Various typos and bug fixes.Erik Johnston2014-12-081-0/+2
|
* Start making more things use EventContext rather than event.*Erik Johnston2014-12-051-0/+16
|
* WIP for new way of managing events.Erik Johnston2014-12-031-0/+82