Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #4494 from matrix-org/erikj/fixup_event_validator | Erik Johnston | 2019-01-29 | 1 | -23/+37 |
|\ | | | | | Split up event validation between event and builder | ||||
| * | Remove duplicate checks | Erik Johnston | 2019-01-29 | 1 | -14/+0 |
| | | |||||
| * | Fix up error messages | Erik Johnston | 2019-01-29 | 1 | -2/+2 |
| | | |||||
| * | Fold validate into validate_new | Erik Johnston | 2019-01-29 | 1 | -16/+11 |
| | | |||||
| * | Split up event validation between event and builder | Erik Johnston | 2019-01-28 | 1 | -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 dicts | Erik Johnston | 2019-01-28 | 1 | -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 events | Erik Johnston | 2019-01-25 | 2 | -2/+73 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813 | Erik Johnston | 2019-01-25 | 1 | -2/+7 |
|\ | |||||
| * | Merge pull request #4405 from matrix-org/erikj/fixup_rejecting_invites | Erik Johnston | 2019-01-24 | 1 | -2/+7 |
| |\ | | | | | | | Store rejected remote invite events as outliers | ||||
| | * | Use term 'out of band membership' instead | Erik Johnston | 2019-01-24 | 1 | -4/+5 |
| | | | |||||
| | * | Clarify the invite flows | Erik Johnston | 2019-01-23 | 1 | -2/+6 |
| | | | |||||
* | | | Review comments | Erik Johnston | 2019-01-24 | 1 | -1/+2 |
| | | | |||||
* | | | Implement MSC 1813 - Add room version to make APIs | Erik Johnston | 2019-01-23 | 1 | -1/+16 |
|/ / | | | | | | | | | We also implement `make_membership_event` converting the returned room version to an event format version. | ||||
* | | isort | Erik Johnston | 2019-01-23 | 1 | -3/+1 |
| | | |||||
* | | Add support for persisting event format versions | Erik Johnston | 2019-01-23 | 1 | -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 Johnston | 2018-11-06 | 1 | -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 Brown | 2018-10-02 | 1 | -3/+10 |
| | |||||
* | Fix handling of redacted events from federation | Erik Johnston | 2018-09-13 | 1 | -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_events | Richard van der Hoff | 2018-07-23 | 1 | -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) | ||||
* | Comments | Erik Johnston | 2018-07-23 | 1 | -2/+3 |
| | |||||
* | Only get cached state from context in persist_event | Erik Johnston | 2018-07-23 | 1 | -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 Johnston | 2018-07-23 | 1 | -4/+6 |
| | | | | | This was missed during the transition from attribute to getter for getting state from context. | ||||
* | Fix EventContext when using workers | Erik Johnston | 2018-07-23 | 1 | -7/+7 |
| | | | | | | We were: 1. Not correctly setting all attributes 2. Using defer.inlineCallbacks in a non-generator | ||||
* | Update docstrings to make sense | Erik Johnston | 2018-07-23 | 1 | -5/+8 |
| | |||||
* | Add support for updating state | Erik Johnston | 2018-07-23 | 1 | -0/+19 |
| | |||||
* | Make EventContext lazy load state | Erik Johnston | 2018-07-23 | 1 | -41/+112 |
| | |||||
* | pep8 | Erik Johnston | 2018-07-23 | 1 | -1/+1 |
| | |||||
* | Refcator EventContext to accept state during init | Erik Johnston | 2018-07-23 | 1 | -21/+27 |
| | |||||
* | Make the rest of the .iterwhatever go away (#3562) | Amber Brown | 2018-07-21 | 1 | -1/+3 |
| | |||||
* | run isort | Amber Brown | 2018-07-09 | 5 | -15/+14 |
| | |||||
* | Consistently use six's iteritems and wrap lazy keys/values in list() if ↵ | Amber Brown | 2018-05-31 | 1 | -1/+1 |
| | | | | they're not meant to be lazy (#3307) | ||||
* | Replace some more comparisons with six | Adrian Tschira | 2018-05-19 | 2 | -3/+7 |
| | | | | | | plus a bonus b"" string I missed last time Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | add comment explaining attributeerror | Adrian Tschira | 2018-04-30 | 1 | -0/+3 |
| | |||||
* | Make event properties raise AttributeError instead | Adrian Tschira | 2018-04-15 | 1 | -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_actions | Erik Johnston | 2018-02-15 | 1 | -4/+0 |
| | |||||
* | Don't serialize current state over replication | Erik Johnston | 2018-02-15 | 1 | -6/+35 |
| | |||||
* | Add replication http endpoint for event sending | Erik Johnston | 2018-02-07 | 1 | -0/+72 |
| | |||||
* | Store state groups separately from events (#2784) | Erik Johnston | 2018-02-06 | 1 | -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 Hoff | 2017-10-23 | 1 | -1/+1 |
| | | | | what could possibly go wrong | ||||
* | Remove pointless create() method | Richard van der Hoff | 2017-10-20 | 1 | -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_invite | David Baker | 2017-10-05 | 1 | -2/+2 |
| | |||||
* | spam check room publishing | David Baker | 2017-10-04 | 1 | -0/+18 |
| | |||||
* | Add room creation checks to spam checker | David Baker | 2017-10-04 | 1 | -0/+32 |
| | | | | | Lets the spam checker deny attempts to create rooms and add aliases to them. | ||||
* | s/roomid/room_id/ | David Baker | 2017-10-03 | 1 | -2/+2 |
| | |||||
* | pass room id too | David Baker | 2017-10-03 | 1 | -2/+2 |
| | |||||
* | Actually write warpper function | David Baker | 2017-10-03 | 1 | -0/+16 |
| | |||||
* | Don't test is spam_checker not None | David Baker | 2017-09-27 | 1 | -1/+7 |
| | | | | | Sometimes it's a Mock object which is not none but is still not what we're after | ||||
* | Remove unintentional debugging | David Baker | 2017-09-27 | 1 | -1/+0 |
| | |||||
* | pep8 | David Baker | 2017-09-27 | 1 | -0/+1 |
| | |||||
* | Make the spam checker a module | David Baker | 2017-09-26 | 1 | -17/+20 |
| | |||||
* | fix thinko'd docstring | Matthew Hodgson | 2017-09-22 | 1 | -1/+1 |
| | |||||
* | PoC for filtering spammy events (#2456) | Richard van der Hoff | 2017-09-19 | 1 | -0/+38 |
| | | | Demonstration of how you might add some hooks to filter out spammy events. | ||||
* | Add more granular event send metrics | Erik Johnston | 2017-05-02 | 1 | -0/+3 |
| | |||||
* | Comment and remove spurious logging | Erik Johnston | 2017-04-27 | 1 | -0/+3 |
| | |||||
* | Fix tests | Erik Johnston | 2017-04-26 | 1 | -3/+3 |
| | |||||
* | Fix invite state to always include all events | Erik Johnston | 2017-04-26 | 1 | -1/+19 |
| | |||||
* | Refactoring and cleanups | Richard van der Hoff | 2017-03-17 | 1 | -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 resolution | Erik Johnston | 2017-01-17 | 2 | -4/+10 |
| | |||||
* | gah, fix mangled merge of 0.18.7 into develop | Matthew Hodgson | 2017-01-07 | 1 | -1/+1 |
| | |||||
* | Only send events that originate on this server. | Mark Haines | 2017-01-05 | 1 | -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 comments | Kegan Dougal | 2016-11-22 | 1 | -11/+9 |
| | |||||
* | Also check for dict since sometimes they aren't frozen | Kegan Dougal | 2016-11-22 | 1 | -1/+1 |
| | |||||
* | Glue only_event_fields into the sync rest servlet | Kegan Dougal | 2016-11-22 | 1 | -1/+1 |
| | |||||
* | More tests | Kegan Dougal | 2016-11-22 | 1 | -3/+4 |
| | |||||
* | Start adding some tests | Kegan Dougal | 2016-11-21 | 1 | -1/+3 |
| | |||||
* | Move event_fields filtering to serialize_event | Kegan Dougal | 2016-11-21 | 1 | -4/+97 |
| | | | | Also make it an inclusive not exclusive filter, as the spec demands. | ||||
* | Add comments | Erik Johnston | 2016-09-05 | 1 | -0/+5 |
| | |||||
* | Move to storing state_groups_state as deltas | Erik Johnston | 2016-09-01 | 1 | -0/+16 |
| | |||||
* | Correctly handle the difference between prev and current state | Erik Johnston | 2016-08-31 | 1 | -2/+3 |
| | |||||
* | Make None optional | Erik Johnston | 2016-08-26 | 1 | -1/+1 |
| | |||||
* | Replace context.current_state with context.current_state_ids | Erik Johnston | 2016-08-25 | 1 | -11/+2 |
| | |||||
* | Pull out event ids rather than full events for state | Erik Johnston | 2016-08-25 | 1 | -0/+8 |
| | |||||
* | Include prev_content in redacted state events | Erik Johnston | 2016-08-11 | 1 | -0/+2 |
| | |||||
* | Remove the is_new_state argument to persist event. | Mark Haines | 2016-03-31 | 1 | -0/+3 |
| | | | | | | | | | Move the checks for whether an event is new state inside persist event itself. This was harder than expected because there wasn't enough information passed to persist event to correctly handle invites from remote servers for new rooms. | ||||
* | Use a stream id generator to assign state group ids | Mark Haines | 2016-03-30 | 1 | -1/+1 |
| | |||||
* | Intern all the things | Erik Johnston | 2016-03-23 | 1 | -9/+2 |
| | |||||
* | Intern sender, event_id and room_id in events | Erik Johnston | 2016-03-23 | 1 | -0/+5 |
| | |||||
* | Intern type and state_key on events | Erik Johnston | 2016-03-23 | 1 | -0/+7 |
| | |||||
* | Don't assume existence of event_id in __str__ | Erik Johnston | 2016-03-18 | 1 | -1/+3 |
| | |||||
* | Atomically persit push actions when we persist the event | Erik Johnston | 2016-02-09 | 1 | -0/+1 |
| | |||||
* | Make Event objects behave more like dicts | Erik Johnston | 2016-01-18 | 1 | -0/+9 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 5 | -5/+5 |
| | |||||
* | Only add the user_id if the sender is present | Mark Haines | 2015-12-01 | 1 | -1/+3 |
| | |||||
* | Copy rather than move the fields to shuffle between a v1 and a v2 event. | Mark Haines | 2015-11-30 | 1 | -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_map | Richard van der Hoff | 2015-11-19 | 1 | -2/+1 |
| | |||||
* | Update the other place check_joined_room is called | Mark Haines | 2015-10-30 | 1 | -1/+2 |
| | |||||
* | Surely we don't need to preserve 'events_default' twice | Paul "LeoNerd" Evans | 2015-10-16 | 1 | -1/+0 |
| | |||||
* | Bundle in some room state in the unsigned bit of the invite when sending to ↵ | Erik Johnston | 2015-09-10 | 1 | -1/+4 |
| | | | | invited servers | ||||
* | Fix bug where we didn't correctly serialize the redacted_because key over ↵ | Erik Johnston | 2015-08-21 | 1 | -1/+4 |
| | | | | federation | ||||
* | Rename key and values for m.room.history_visibility. Support 'invited' value | Erik Johnston | 2015-07-06 | 1 | -1/+1 |
| | |||||
* | Add m.room.history_visibility to list of auth events | Erik Johnston | 2015-07-03 | 1 | -0/+2 |
| | |||||
* | Don't copy twice | Erik Johnston | 2015-05-29 | 1 | -1/+1 |
| | |||||
* | Add config option to turn off freezing events. Use new encode_json api and ↵ | Erik Johnston | 2015-05-29 | 1 | -1/+10 |
| | | | | ujson.loads | ||||
* | Store the rejected reason in (Frozen)Event structs | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -2/+4 |
| | |||||
* | Remove concept of context.auth_events, instead use context.current_state | Erik Johnston | 2015-03-16 | 1 | -2/+1 |
| | |||||
* | pyflakes | Erik Johnston | 2015-02-11 | 1 | -1/+1 |
| | |||||
* | Don't unfreeze when using FreezeEvent.get_dict, as we are using a ↵ | Erik Johnston | 2015-02-11 | 1 | -4/+0 |
| | | | | JSONEncoder that understands FrozenDict | ||||
* | Rearrange persist_event so that do all the queries that need to be done ↵ | Erik Johnston | 2015-02-04 | 1 | -1/+1 |
| | | | | before returning early if we have already persisted that event. | ||||
* | Actually, the old prune_event function was non-deterministic, so no point ↵ | Erik Johnston | 2015-02-03 | 1 | -79/+0 |
| | | | | keeping it around :( | ||||
* | Keep around the old (buggy) version of the prune_event function so that we ↵ | Erik Johnston | 2015-02-03 | 1 | -0/+79 |
| | | | | can use it to check signatures for events on old servers | ||||
* | Merge pull request #43 from matrix-org/rejections | Erik Johnston | 2015-01-30 | 3 | -6/+12 |
|\ | | | | | Rejections | ||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into rejections | Erik Johnston | 2015-01-30 | 1 | -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 events | Erik Johnston | 2015-01-30 | 3 | -4/+8 |
| | | | |||||
| * | | Initial implementation of auth conflict resolution | Erik Johnston | 2015-01-29 | 1 | -2/+4 |
| | | | |||||
* | | | Merge pull request #41 from matrix-org/client_v2_sync | Mark Haines | 2015-01-30 | 1 | -33/+52 |
|\ \ \ | | | | | | | | | Client v2 sync | ||||
| * | | | Include transaction ids in unsigned section of events in the sync results ↵ | Mark Haines | 2015-01-29 | 1 | -5/+6 |
| | | | | | | | | | | | | | | | | for the clients that made those requests | ||||
| * | | | Add support for formatting events in the way a v2 client expects | Mark Haines | 2015-01-29 | 1 | -39/+52 |
| | | | | |||||
| * | | | Start implementing incremental initial sync | Mark Haines | 2015-01-27 | 1 | -0/+1 |
| | | | | |||||
| * | | | Start implementing the non-incremental sync portion of the v2 /sync API | Mark Haines | 2015-01-26 | 1 | -1/+5 |
| | |/ | |/| | |||||
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into rejections_storage | Erik Johnston | 2015-01-30 | 1 | -6/+6 |
|\| | | |/ |/| | | | | | | | Conflicts: synapse/storage/__init__.py synapse/storage/schema/delta/v12.sql | ||||
| * | Pass the current time to serialize event, rather than passing an | Mark Haines | 2015-01-26 | 1 | -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. | ||||
* | | Add support for storing rejected events in EventContext and data stores | Erik Johnston | 2015-01-22 | 1 | -0/+1 |
|/ | |||||
* | Remove unused functions | Mark Haines | 2015-01-13 | 1 | -6/+0 |
| | |||||
* | Merge branch 'hotfixes-v0.6.1b' of github.com:matrix-org/synapse into develop | Erik Johnston | 2015-01-13 | 1 | -1/+1 |
|\ | |||||
| * | Insert 'age' into top level when returning events to clients | Erik Johnston | 2015-01-13 | 1 | -1/+1 |
| | | |||||
* | | Return the raw federation event rather than adding extra keys for federation ↵ | Kegan Dougal | 2015-01-08 | 1 | -9/+16 |
| | | | | | | | | data. | ||||
* | | Add 'raw' query parameter to expose the event graph and signatures to savvy ↵ | Kegan Dougal | 2015-01-08 | 1 | -8/+9 |
|/ | | | | clients. | ||||
* | Remove unused import | Erik Johnston | 2015-01-07 | 1 | -2/+0 |
| | |||||
* | Optimize FrozenEvent creation | Erik Johnston | 2015-01-06 | 1 | -7/+13 |
| | |||||
* | Update copyright notices | Mark Haines | 2015-01-06 | 5 | -5/+5 |
| | |||||
* | Remove unneeded federation keys from events | Mark Haines | 2014-12-19 | 1 | -0/+3 |
| | |||||
* | clean up coding style a bit | Mark Haines | 2014-12-16 | 1 | -11/+11 |
| | |||||
* | Persist internal_metadata | Erik Johnston | 2014-12-16 | 1 | -2/+3 |
| | |||||
* | Fix pyflakes | Erik Johnston | 2014-12-15 | 1 | -2/+0 |
| | |||||
* | Use frozenutils | Erik Johnston | 2014-12-15 | 1 | -32/+4 |
| | |||||
* | Remove unused functions | Erik Johnston | 2014-12-15 | 1 | -42/+0 |
| | |||||
* | Finish up upgrade script | Erik Johnston | 2014-12-15 | 1 | -1/+1 |
| | |||||
* | Fix bug where we ignored event_edge_hashes table | Erik Johnston | 2014-12-15 | 1 | -0/+1 |
| | |||||
* | Validate message, topic and name event contents | Erik Johnston | 2014-12-12 | 1 | -0/+21 |
| | |||||
* | Fix prev_content | Erik Johnston | 2014-12-11 | 1 | -0/+8 |
| | |||||
* | Fix redactions. Fix 'age' key | Erik Johnston | 2014-12-11 | 3 | -3/+32 |
| | |||||
* | Add some basic event validation | Erik Johnston | 2014-12-10 | 1 | -8/+21 |
| | |||||
* | Actually fix bug when uploading state with empty state_key | Erik Johnston | 2014-12-10 | 1 | -0/+1 |
| | |||||
* | Fix bug when uploading state with empty state_key | Erik Johnston | 2014-12-10 | 1 | -2/+8 |
| | |||||
* | Fix AttributeError | Erik Johnston | 2014-12-10 | 1 | -0/+3 |
| | |||||
* | Add __str__ to FrozenEvent | Erik Johnston | 2014-12-10 | 1 | -0/+5 |
| | |||||
* | Try and figure out how and why signatures are being changed. | Erik Johnston | 2014-12-10 | 2 | -11/+14 |
| | |||||
* | Add PEP8 newlines | Erik Johnston | 2014-12-09 | 3 | -3/+3 |
| | |||||
* | More bug fixes | Erik Johnston | 2014-12-08 | 1 | -8/+1 |
| | |||||
* | Various typos and bug fixes. | Erik Johnston | 2014-12-08 | 2 | -1/+4 |
| | |||||
* | Start making more things use EventContext rather than event.* | Erik Johnston | 2014-12-05 | 2 | -2/+49 |
| | |||||
* | Convert rest and handlers to use new event structure | Erik Johnston | 2014-12-04 | 2 | -5/+8 |
| | |||||
* | Begin converting things to use the new Event structure | Erik Johnston | 2014-12-04 | 1 | -0/+3 |
| | |||||
* | WIP for new way of managing events. | Erik Johnston | 2014-12-03 | 5 | -78/+286 |
| | |||||
* | Begin fleshing out a new Event object | Erik Johnston | 2014-12-02 | 2 | -0/+194 |