summary refs log tree commit diff
path: root/synapse/handlers/presence.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-09-26Bump changelog and versionErik Johnston2-1/+9
2017-09-25Refactor to speed up incremental syncsErik Johnston1-5/+18
2017-09-25Include review feedbackMax Dor1-5/+3
2017-09-25Clarify recommended network setupMax Dor1-15/+24
2017-09-25Update CHANGES v0.23.0-rc1Erik Johnston1-3/+11
2017-09-25Bump version and changesErik Johnston2-1/+25
2017-09-25Fix logcontxt leak in keyclient (#2465)Richard van der Hoff1-12/+5
preserve_context_over_function doesn't do what you want it to do.
2017-09-22Do an AAAA lookup on SRV record targets (#2462)Richard van der Hoff2-24/+118
Support SRV records which point at AAAA records, as well as A records. Fixes https://github.com/matrix-org/synapse/issues/2405
2017-09-22fix thinko'd docstringMatthew Hodgson1-1/+1
2017-09-22Fix device list when rejoining room (#2461)Erik Johnston1-2/+14
2017-09-20Fix logcontexts in _check_sigs_and_hashesRichard van der Hoff2-60/+62
2017-09-20Add some more tests for KeyringRichard van der Hoff1-37/+140
2017-09-20Fix logcontext handling in verify_json_objects_for_serverRichard van der Hoff1-8/+12
preserve_context_over_fn is essentially broken, because (a) it pointlessly drops the current logcontext before calling its wrapped function, which means we don't get any useful logcontexts for _handle_key_deferred; (b) it wraps the resulting deferred in a _PreservingContextDeferred, which is very dangerous because you then can't yield on it without leaking context back into the reactor. Instead, let's specify that the resultant deferreds call their callbacks with no logcontext.
2017-09-20Turn _start_key_lookups into an inlineCallbacks functionRichard van der Hoff1-40/+37
... which means that logcontexts can be correctly preserved for the stuff it does. get_server_verify_keys is now called with the logcontext, so needs to preserve_fn when it fires off its nested inlineCallbacks function. Also renames get_server_verify_keys to reflect the fact it's meant to be private.
2017-09-20Fix potential race in _start_key_lookupsRichard van der Hoff1-5/+8
If the verify_request.deferred has already completed, then `remove_deferreds` will be called immediately. It therefore might resolve the server_to_deferred deferred while there are still other requests for that server in flight. To avoid that, we should build the complete list of requests, and *then* add the callbacks.
2017-09-20Add some comments to _start_key_lookupsRichard van der Hoff1-0/+8
2017-09-20Consistency for how verify_request.deferred is calledRichard van der Hoff1-13/+17
Define that it is run with no log context, and make sure that happens. If we aren't careful to reset the logcontext, we can't bung the deferreds into defer.gatherResults etc. We don't actually do that directly, but we *do* resolve other deferreds from affected callbacks (notably the server_to_deferred map in _start_key_lookups), and those *do* get passed into defer.gatherResults. It turns out that this way ends up being least confusing.
2017-09-20Factor out _start_key_lookupsRichard van der Hoff1-7/+17
... to make it easier to see what's going on.
2017-09-20Replace `server_and_json` with `verify_requests`Richard van der Hoff1-3/+3
This is a precursor to factoring some of this code out.
2017-09-20pull out handle_key_deferred to top levelRichard van der Hoff1-43/+44
There's no need for this to be a nested definition; pulling it out not only makes it more efficient, but makes it easier to check that it's not accessing any local variables it shouldn't be.
2017-09-20Fix incorrect key_ids in error messageRichard van der Hoff1-1/+1
2017-09-20Invalidate signing key cache when we gat an updateRichard van der Hoff1-17/+24
This might make the cache slightly more efficient.
2017-09-20Remove redundant `preserve_fn`Richard van der Hoff1-2/+2
preserve_fn is a no-op unless the wrapped function returns a Deferred. verify_json_objects_for_server returns a list, so this is doing nothing.
2017-09-19Fix concurrent server_key requests (#2458)Richard van der Hoff2-4/+58
Fix a bug where we could end up firing off multiple requests for server_keys for the same server at the same time.
2017-09-19Add a config option to block all room invites (#2457)Richard van der Hoff5-0/+44
- allows sysadmins the ability to lock down their servers so that people can't send their users room invites.
2017-09-19add some comments to on_exchange_third_party_invite_requestRichard van der Hoff1-0/+11
2017-09-19PoC for filtering spammy events (#2456)Richard van der Hoff3-17/+69
Demonstration of how you might add some hooks to filter out spammy events.
2017-09-19Fix overzealous kicking of guest users (#2453)Richard van der Hoff1-1/+1
We should only kick guest users if the guest access event is authorised.
2017-09-18Clean up and document handling of logcontexts in Keyring (#2452)Richard van der Hoff2-28/+110
I'm still unclear on what the intended behaviour for `verify_json_objects_for_server` is, but at least I now understand the behaviour of most of the things it calls...
2017-09-18Don't filter out current state events from timelineErik Johnston2-3/+18
2017-09-18Also include the room_idDavid Baker1-0/+1
as really it's part of the event ID
2017-09-18Use .get - it's much shorterDavid Baker1-1/+1
2017-09-18Add support for event_id_only push formatDavid Baker1-0/+19
Param in the data dict of a pusher that tells an HTTP pusher to send just the event_id of the event it's notifying about and the notification counts. For clients that want to go & fetch the body of the event themselves anyway.
2017-09-18Correctly handle leaving room in /key/changesErik Johnston1-13/+12
2017-09-15Fix typoErik Johnston1-1/+1
2017-09-14Actually hook leave notifs upErik Johnston1-2/+3
2017-09-13Handle joining/leaving rooms in /keys/changesErik Johnston1-1/+38
2017-09-13Get left roomsErik Johnston1-3/+32
2017-09-12In sync handle device lists for newly joined/left roomsErik Johnston1-2/+10
2017-09-08Add left section to /keys/changesErik Johnston3-11/+19
2017-09-07Send down device list change notif when member leaves/rejoins roomErik Johnston3-14/+55
2017-09-05Exclude the github issue template from our sdist (#2440)Richard van der Hoff2-0/+1
PR #2413 added an issue template, but just adding files to the project directory upsets the packaging scripts: we need to explicitly include or exclude them. Move the template into a .github directory to make that easy, and to de-clutter the root a bit.
2017-09-05do tox install with pip -eRichard van der Hoff1-5/+29
- this ensures we end up with a working virtualenv which we can use for other things.
2017-09-01Document known to work postgres versionPaul Tötterman1-0/+2
2017-09-01Set --python when running sytestRichard van der Hoff4-0/+4
.. because I want to make the 'install_and_run' script useful for non-synapse jobs, which do not accept --python. In any case we set up the path here, so sytest shouldn't be guessing it.
2017-09-01fix python path in jenkins scriptsRichard van der Hoff4-4/+4
2017-09-01Set --python when running sytestRichard van der Hoff4-0/+4
.. because I want to make the 'install_and_run' script useful for non-synapse jobs, which do not accept --python. In any case we set up the path here, so sytest shouldn't be guessing it.
2017-08-23Tweaks to the upgrade instructionsRichard van der Hoff1-33/+42
2017-08-22test federation client: Allow server-name and key-file as optionsRichard van der Hoff1-8/+28
so that you don't necessarily need a config file.
2017-08-17Improvements to the federation test clientRichard van der Hoff1-7/+58
Make it read the config file, primarily.
2017-08-17Update ISSUE_TEMPLATE.mdTom Lant1-1/+5
Added instructions for checking server version.
2017-08-17Update ISSUE_TEMPLATE.mdTom Lant1-3/+10
Responding to review comments.
2017-08-16Add prometheus configRichard van der Hoff3-0/+436
... from https://github.com/matrix-org/synapse-prometheus-config.
2017-08-16Fix user_dir startupRichard van der Hoff1-1/+1
Add missing parameter to _base.start_worker_reactor
2017-08-16Fix process startupRichard van der Hoff1-10/+13
escape the % that got added in 92168cb so that the process starts up ok.
2017-08-15explain why CPU affinity is a good ideaMatthew Hodgson1-0/+8
2017-08-15Allow configuration of CPU affinityRichard van der Hoff5-1/+23
Make it possible to set the CPU affinity in the config file, so that we don't need to remember to do it manually every time.
2017-08-15Factor out common application startRichard van der Hoff11-464/+248