Erik Johnston
2884712ca7
Only re-sign our own events
2016-06-17 14:47:33 +01:00
Erik Johnston
b31c49d676
Correctly mark backfilled events as backfilled
2016-06-15 10:59:08 +01:00
Mark Haines
0b2158719c
Remove dead code.
...
Loading push rules now happens in the datastore, so we can remove
the methods that loaded them outside the datastore.
The ``waiting_for_join_list`` in federation handler is populated by
anything, so can be removed.
The ``_get_members_events_txn`` method isn't called from anywhere
so can be removed.
2016-06-07 15:07:11 +01:00
Mark Haines
1a3a2002ff
Spell "domain" correctly
...
s/domian/domain/g
2016-05-16 19:17:23 +01:00
Mark Haines
a458a40337
missed a spot
2016-05-12 18:19:58 +01:00
Mark Haines
30057b1e15
Move _create_new_client_event and handle_new_client_event out of base handler
2016-05-11 09:09:20 +01:00
Erik Johnston
08dfa8eee2
Add and use get_domian_from_id
2016-05-09 10:36:03 +01:00
Erik Johnston
c53f9d561e
Don't auto log failed auth checks
2016-04-13 11:11:46 +01:00
Erik Johnston
c48465dbaa
More comments
2016-04-12 12:48:30 +01:00
Erik Johnston
8be1a37909
More comments
2016-04-12 12:04:19 +01:00
Erik Johnston
d3d0be4167
Don't append to unused list
2016-04-12 11:59:00 +01:00
Erik Johnston
762ada1e07
Add back backfilled parameter that was removed
2016-04-12 11:58:04 +01:00
Erik Johnston
0d3da210f0
Add comment
2016-04-12 11:54:41 +01:00
Erik Johnston
cccf86dd05
Check if we've already backfilled events
2016-04-12 11:19:32 +01:00
David Baker
2547dffccc
Merge pull request #705 from matrix-org/dbkr/pushers_use_event_actions
...
Change pushers to use the event_actions table
2016-04-11 12:58:55 +01:00
Mark Haines
b9ee5650b0
Move all the wrapper functions for distributor.fire
...
Move the functions inside the distributor and import them
where needed. This reduces duplication and makes it possible
for flake8 to detect when the functions aren't used in a
given file.
2016-04-08 11:01:38 +01:00
David Baker
9c99ab4572
Merge remote-tracking branch 'origin/develop' into dbkr/pushers_use_event_actions
2016-04-07 16:35:22 +01:00
David Baker
7e2c89a37f
Make pushers use the event_push_actions table instead of listening on an event stream & running the rules again. Sytest passes, but remaining to do:
...
* Make badges work again
* Remove old, unused code
2016-04-06 15:42:15 +01:00
Erik Johnston
c2b429ab24
Merge pull request #693 from matrix-org/erikj/backfill_self
...
Don't backfill from self
2016-04-05 13:04:36 +01:00
Erik Johnston
6222ae51ce
Don't backfill from self
2016-04-05 12:56:29 +01:00
Erik Johnston
b29f98377d
Merge pull request #691 from matrix-org/erikj/member
...
Fix stuck invites
2016-04-05 12:44:39 +01:00
Erik Johnston
df727f2126
Fix stuck invites
...
If rejecting a remote invite fails with an error response don't fail
the entire request; instead mark the invite as locally rejected.
This fixes the bug where users can get stuck invites which they can
neither accept nor reject.
2016-04-05 11:13:24 +01:00
Mark Haines
89e6839a48
Merge pull request #686 from matrix-org/markjh/doc_strings
...
Use google style doc strings.
2016-04-01 16:20:09 +01:00
Mark Haines
2a37467fa1
Use google style doc strings.
...
pycharm supports them so there is no need to use the other format.
Might as well convert the existing strings to reduce the risk of
people accidentally cargo culting the wrong doc string format.
2016-04-01 16:12:07 +01:00
Mark Haines
dc4c1579d4
Remove outlier parameter from compute_event_context
...
Use event.internal_metadata.is_outlier instead.
2016-03-31 15:32:24 +01:00
Mark Haines
76503f95ed
Remove the is_new_state argument to persist event.
...
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.
2016-03-31 15:00:42 +01:00
Mark Haines
5244c0b48e
Remove unused backfilled parameter from persist_event
2016-03-21 18:06:08 +00:00
Mark Haines
58f8226c7f
remove unused current_state variable from on_receive_pdu
2016-03-21 14:20:34 +00:00
Erik Johnston
e5f0e58931
Remove needless PreserveLoggingContext
2016-03-15 13:48:40 +00:00
Erik Johnston
9e982750ee
Persist rejection of invites over federation
2016-03-15 13:24:31 +00:00
Mark Haines
239badea9b
Use syntax that works on both py2.7 and py3
2016-03-07 20:13:10 +00:00
Daniel Wagner-Hall
b4022cc487
Pass whole requester to ratelimiting
...
This will enable more detailed decisions
2016-03-03 16:43:42 +00:00
Daniel Wagner-Hall
577951b032
Allow third_party_signed to be specified on /join
2016-02-23 15:11:25 +00:00
Daniel Wagner-Hall
4bfb32f685
Branch off member and non member sends
...
Unclean, needs tidy-up, but works
2016-02-15 18:21:30 +00:00
Erik Johnston
7b0d846407
Atomically persit push actions when we persist the event
2016-02-09 16:19:15 +00:00
Erik Johnston
2c1fbea531
Fix up logcontexts
2016-02-08 14:26:45 +00:00
Richard van der Hoff
d6d60b4d6c
Federation: drop events which cause SynapseErrors
...
... rather than rejecting any attempt to federate channels which contain such
events.
2016-01-27 17:02:10 +00:00
Erik Johnston
5a7d1ecffc
Add regex cache. Only caculate push actions for users that have sent read receipts, and are on that server
2016-01-19 16:01:05 +00:00
Erik Johnston
63485b3029
Re-enable urnead notifications
2016-01-18 14:48:30 +00:00
Daniel Wagner-Hall
ac5a4477ad
Require unbanning before other membership changes
2016-01-15 16:27:26 +00:00
Erik Johnston
fcb05b4c82
Temporarily disable notification branch
2016-01-13 17:39:58 +00:00
David Baker
c232780081
Merge pull request #456 from matrix-org/store_event_actions
...
Send unread notification counts
2016-01-08 14:47:15 +00:00
Matthew Hodgson
6c28ac260c
copyrights
2016-01-07 04:26:29 +00:00
David Baker
c79f221192
Add is_guest flag to users db to track whether a user is a guest user or not. Use this so we can run _filter_events_for_client when calculating event_push_actions.
2016-01-06 11:38:09 +00:00
David Baker
3051c9d002
Address minor PR issues
2016-01-04 13:39:29 +00:00
David Baker
c061b47c57
Merge remote-tracking branch 'origin/develop' into store_event_actions
2015-12-21 15:30:26 +00:00
David Baker
f73f154ec2
Only run pushers for users on this hs!
2015-12-21 15:28:54 +00:00
Daniel Wagner-Hall
bdacee476d
Add display_name to 3pid invite in m.room.member invites
2015-12-17 18:55:08 +01:00
Daniel Wagner-Hall
8c5f252edb
Strip address and such out of 3pid invites
...
We're not meant to leak that into the graph
2015-12-17 18:09:51 +01:00
David Baker
a84a693327
Having consulted The Erikle, this should go at the end of on_receive_pdu, otherwise it will be triggered whenever we backfill too.
2015-12-10 17:18:46 +00:00
Paul "LeoNerd" Evans
99afb4b750
Ensure that the event that gets persisted is the one that was signed
2015-12-10 17:08:21 +00:00
David Baker
21f135ba76
Very first cut of calculating actions for events as they come in. Doesn't store them yet. Not very efficient.
2015-12-10 16:26:08 +00:00
Mark Haines
c2c70f7daf
Use the context returned by _handle_new_event
2015-12-02 12:01:24 +00:00
Mark Haines
c30cdb0d68
Add comments
2015-12-02 10:49:35 +00:00
Mark Haines
2a0ec3b89d
Merge branch 'develop' into markjh/edu_frequency
...
Conflicts:
synapse/handlers/federation.py
synapse/handlers/room.py
2015-12-02 10:40:22 +00:00
Mark Haines
a9526831a4
Wrap calls to distributor.fire in appropriately named functions so that static analysis can work out want is calling what
2015-12-01 20:53:04 +00:00
Mark Haines
ed0f79bdc5
Only fire user_joined_room if the membership has changed
2015-12-01 19:46:15 +00:00
Erik Johnston
c0b3554401
Fix missing profile data in federation joins
...
There was a regression where we stopped including profile data in
initial joins for rooms joined over federation.
2015-11-12 16:19:55 +00:00
Daniel Wagner-Hall
38d82edf0e
Allow guest users to join and message rooms
2015-11-10 16:57:13 +00:00
Daniel Wagner-Hall
2cebe53545
Exchange 3pid invites for m.room.member invites
2015-11-05 16:43:19 +00:00
Mark Haines
c452dabc3d
Remove the LockManager class because it wasn't being used
2015-11-04 14:08:15 +00:00
Daniel Wagner-Hall
137fafce4e
Allow rejecting invites
...
This is done by using the same /leave flow as you would use if you had
already accepted the invite and wanted to leave.
2015-10-20 11:58:58 +01:00
Daniel Wagner-Hall
f38df51e8d
Merge branch 'develop' into daniel/3pidinvites
2015-10-15 11:51:55 +01:00
Erik Johnston
858634e1d0
Remove unused room_id arg
2015-10-14 09:31:20 +01:00
Daniel Wagner-Hall
0c38e8637f
Remove unnecessary class-wrapping
2015-10-13 18:00:38 +01:00
Daniel Wagner-Hall
bb407cd624
Re-add accidentally removed code
2015-10-13 17:19:26 +01:00
Daniel Wagner-Hall
17dffef5ec
Move event contents into third_party_layout field
2015-10-13 15:48:12 +01:00
Daniel Wagner-Hall
d4bb28c59b
Revert "Revert "Merge pull request #283 from matrix-org/erikj/atomic_join_federation""
...
This reverts commit 34d26d3687
.
2015-10-06 09:58:21 -05:00
Daniel Wagner-Hall
c05b5ef7b0
Merge branch 'develop' into daniel/3pidinvites
2015-10-06 08:10:34 -05:00
Daniel Wagner-Hall
34d26d3687
Revert "Merge pull request #283 from matrix-org/erikj/atomic_join_federation"
...
This reverts commit 5879edbb09
, reversing
changes made to b43930d4c9
.
2015-10-05 19:10:47 -05:00
Daniel Wagner-Hall
58e6a58eb7
Merge branch 'develop' into daniel/3pidinvites
2015-10-05 10:33:41 -05:00
Erik Johnston
49ebd472fa
Explicitly add Create event as auth event
2015-10-02 13:22:36 +01:00
Erik Johnston
5879edbb09
Merge pull request #283 from matrix-org/erikj/atomic_join_federation
...
Atomically persist events when joining a room over federation/
2015-10-02 09:18:44 +01:00
Daniel Wagner-Hall
5b3e9713dd
Implement third party identifier invites
2015-10-01 17:49:52 +01:00
Erik Johnston
83892d0d30
Comment
2015-09-30 16:41:48 +01:00
Erik Johnston
9d39615b7d
Rename var
2015-09-30 16:37:59 +01:00
Mark Haines
60728c8c9e
synapse/handlers/federation.py:_handle_auth_events was unused
2015-09-23 10:25:26 +01:00
Erik Johnston
c34ffd2736
Fix getting an event for a room the server forgot it was in
2015-09-17 10:26:03 +01:00
Erik Johnston
54e688277a
Also persist state
2015-09-17 10:26:03 +01:00
Erik Johnston
3a01901d6c
Capture err
2015-09-17 10:26:03 +01:00
Erik Johnston
744e7d2790
Also handle state
2015-09-17 10:26:03 +01:00
Erik Johnston
a3e332af19
Don't bail out of joining if we encounter a rejected event
2015-09-17 10:26:03 +01:00
Erik Johnston
4678055173
Refactor do_invite_join
2015-09-17 10:24:51 +01:00
Erik Johnston
3e9ee62db0
Add missing param in store.get_state_groups invocation
2015-08-21 09:15:13 +01:00
Erik Johnston
9f7f228ec2
Remove pointless map
2015-08-13 17:20:59 +01:00
Erik Johnston
1b994a97dd
Fix application of ACLs
2015-08-11 10:41:40 +01:00
Erik Johnston
07507643cb
Use dictionary cache to do group -> state fetching
2015-08-05 15:11:42 +01:00
Erik Johnston
4d6cb8814e
Speed up event filtering (for ACL) logic
2015-08-04 09:32:23 +01:00
Erik Johnston
baa55fb69e
Merge pull request #193 from matrix-org/erikj/bulk_persist_event
...
Add bulk insert events API
2015-07-14 10:49:24 +01:00
Erik Johnston
b5f0d73ea3
Add comment
2015-07-09 17:09:26 +01:00
Erik Johnston
fb47c3cfbe
Rename key and values for m.room.history_visibility. Support 'invited' value
2015-07-06 13:05:52 +01:00
Erik Johnston
c3e2600c67
Filter and redact events that the other server doesn't have permission to see during backfill
2015-07-03 17:52:57 +01:00
Erik Johnston
5130d80d79
Add bulk insert events API
2015-06-25 17:29:34 +01:00
Erik Johnston
8047fd2434
Merge pull request #176 from matrix-org/erikj/backfill_auth
...
Improve backfill.
2015-06-03 17:25:37 +01:00
Erik Johnston
1c3d844e73
Don't needlessly compute context
2015-06-03 16:41:51 +01:00
Erik Johnston
09e23334de
Add a timeout
2015-06-02 11:00:37 +01:00
Erik Johnston
02410e9239
Handle the fact we might be missing auth events
2015-06-02 10:58:35 +01:00
Erik Johnston
e552b78d50
Add some logging
2015-06-02 10:28:14 +01:00
Erik Johnston
fde0da6f19
Correctly look up auth_events
2015-06-02 10:19:38 +01:00
Erik Johnston
3f04a08a0c
Don't process events we've already processed. Remember to process state events
2015-06-02 10:11:32 +01:00
Erik Johnston
4bbfbf898e
Correctly pass in auth_events
2015-06-01 17:02:23 +01:00
Erik Johnston
20814fabdd
Actually fetch state for new backwards extremeties when backfilling.
2015-05-20 11:59:02 +01:00
Erik Johnston
7223129916
Don't apply new room join hack if depth > 5
2015-05-19 14:16:08 +01:00
Erik Johnston
5e7883ec19
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/join_perf
2015-05-19 10:50:43 +01:00
Erik Johnston
ef910a0358
Do work in parellel when joining a room
2015-05-18 17:17:04 +01:00
Mark Haines
899d4675dd
Merge branch 'notifier_unify' into notifier_performance
2015-05-14 11:36:44 +01:00
Mark Haines
63878c0379
Don't bother checking for updates if the stream token hasn't advanced for a user
2015-05-13 13:42:21 +01:00
Erik Johnston
80fd2b574c
Don't talk to yourself when backfilling
2015-05-12 16:19:46 +01:00
Mark Haines
a6fb2aa2a5
Merge pull request #144 from matrix-org/erikj/logging_context
...
Preserving logging contexts
2015-05-12 15:23:50 +01:00
Erik Johnston
07a1223156
s/backfil/backfill/
2015-05-12 14:09:54 +01:00
Erik Johnston
0d31ad5101
Typos everywhere
2015-05-12 14:02:01 +01:00
Erik Johnston
a0dfffb33c
And another typo.
2015-05-12 14:00:31 +01:00
Erik Johnston
6e5ac4a28f
Err, gatherResults doesn't take a dict...
2015-05-12 13:58:14 +01:00
Erik Johnston
95dedb866f
Unwrap defer.gatherResults failures
2015-05-12 13:14:29 +01:00
Erik Johnston
367382b575
Handle the case where the other side is unreachable when backfilling
2015-05-12 10:35:45 +01:00
Erik Johnston
84e6b4001f
Initial hack at wiring together pagination and backfill
2015-05-11 18:01:31 +01:00
Erik Johnston
2236ef6c92
Fix up leak. Add warnings.
2015-05-08 19:53:34 +01:00
Erik Johnston
2d386d7038
That wasn't a deferred
2015-05-01 14:41:25 +01:00
Erik Johnston
4ac2823b3c
Remove inlineCallbacks from non-generator
2015-05-01 14:41:25 +01:00
Erik Johnston
42c12c04f6
Remove some run_on_reactors
2015-05-01 14:41:25 +01:00
Erik Johnston
a43b40449b
Merge branch 'develop' of github.com:matrix-org/synapse into mysql
2015-04-08 16:46:56 +01:00
Erik Johnston
19234cc6c3
typo
2015-04-08 14:10:06 +01:00
Erik Johnston
e8f1521605
Don't yield on notifying all listeners
2015-04-08 14:08:30 +01:00
Erik Johnston
278149f533
Sanitize TransactionStore
2015-03-23 13:43:21 +00:00
Erik Johnston
bb24609158
Clean out event_forward_extremities table when the server rejoins the room
2015-03-18 11:19:47 +00:00
Erik Johnston
b2e6ee5b43
Remove concept of context.auth_events, instead use context.current_state
2015-03-16 13:06:23 +00:00
Erik Johnston
e25e0f4da9
Merge branch 'develop' of github.com:matrix-org/synapse into batched_get_pdu
2015-02-23 14:36:00 +00:00
Erik Johnston
db215b7e00
Implement and use new batched get missing pdu
2015-02-23 13:58:02 +00:00
Erik Johnston
2bafeca270
Add missing comma so that it generates a dict and not a set
2015-02-20 14:08:42 +00:00
Erik Johnston
0ac2a79faa
Initial stab at implementing a batched get_missing_pdus request
2015-02-19 17:24:14 +00:00
Erik Johnston
47281f8fa4
Change some debug logging to info
2015-02-17 13:14:11 +00:00
Erik Johnston
b99a33f283
resolve_events expect lists, not dicts
2015-02-15 20:20:51 +00:00
Erik Johnston
b11a6e1c3c
Fix wrong variable name
2015-02-13 15:37:18 +00:00
Erik Johnston
e441c10a73
pyflakes
2015-02-13 14:23:39 +00:00
Erik Johnston
8c652a2b5f
When we see a difference in current state, actually use state conflict resolution algorithm
2015-02-13 14:20:05 +00:00
Erik Johnston
76935078d1
Remove more debug logging
2015-02-11 16:51:22 +00:00
Erik Johnston
ed877d6585
Remove debug logging
2015-02-11 16:50:46 +00:00
Erik Johnston
ddb816cf60
Don't unfreeze when using FreezeEvent.get_dict, as we are using a JSONEncoder that understands FrozenDict
2015-02-11 15:44:28 +00:00
Erik Johnston
cc0532a4bf
Explicitly list the RejectedReasons that we can prove
2015-02-06 15:16:26 +00:00
Erik Johnston
e890ce223c
Don't query auth if the only difference is events that were rejected due to auth.
2015-02-06 14:16:50 +00:00
Erik Johnston
c78b5fb1f1
Make seen_ids a set
2015-02-06 13:52:16 +00:00
Erik Johnston
3737329d9b
Handle the fact the list.remove raises if element doesn't exist
2015-02-06 10:53:18 +00:00
Erik Johnston
e1515c3e91
Pass through list of room hosts from room alias query to federation so that it can retry against different room hosts
2015-02-05 13:44:42 +00:00
Erik Johnston
d45e2302ed
Merge branch 'signature_failures' of github.com:matrix-org/synapse into federation_client_retries
2015-02-04 16:30:15 +00:00
Erik Johnston
ae46f10fc5
Apply sanity to the transport client interface. Convert 'make_join' and 'send_join' to accept iterables of destinations
2015-02-04 16:28:12 +00:00
Erik Johnston
650e32d455
Change context.auth_events to what the auth_events would be bases on context.current_state, rather than based on the auth_events from the event.
2015-02-04 14:06:46 +00:00
Erik Johnston
c0462dbf15
Rearrange persist_event so that do all the queries that need to be done before returning early if we have already persisted that event.
2015-02-04 10:16:51 +00:00
Erik Johnston
7dd1c5c542
Neaten the handling of state and auth_chain up a bit
2015-02-03 16:12:04 +00:00
Erik Johnston
6efd4d1649
Don't completely die if get auth_chain or querying auth_chain requests fail
2015-02-03 13:57:54 +00:00
Erik Johnston
77a076bd25
Set combinations is | and not +
2015-02-03 13:35:17 +00:00