Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add replication stream for pushers | Mark Haines | 2016-03-15 | 5 | -18/+106 |
| | |||||
* | Fix regression where synapse checked whether push rules were valid JSON ↵ | Mark Haines | 2016-03-14 | 2 | -6/+19 |
| | | | | before the compatibility hack that handled clients sending invalid JSON | ||||
* | Merge pull request #642 from matrix-org/erikj/logout | Erik Johnston | 2016-03-11 | 3 | -15/+113 |
|\ | | | | | Implement logout | ||||
| * | Thats not how transactions work. | Erik Johnston | 2016-03-11 | 1 | -13/+16 |
| | | |||||
| * | Implement logout | Erik Johnston | 2016-03-11 | 3 | -14/+109 |
| | | |||||
* | | Use parse_json_object_from_request to parse JSON out of request bodies | Mark Haines | 2016-03-11 | 10 | -88/+45 |
|/ | |||||
* | Fix SQL statement | Erik Johnston | 2016-03-11 | 1 | -1/+1 |
| | |||||
* | Merge pull request #641 from matrix-org/dbkr/fix_change_password | Erik Johnston | 2016-03-11 | 4 | -30/+32 |
|\ | | | | | Fix logout on password change | ||||
| * | more pep8 | David Baker | 2016-03-11 | 1 | -1/+1 |
| | | |||||
| * | Make select more sensible when dseleting access tokens, rename pusher ↵ | David Baker | 2016-03-11 | 3 | -7/+5 |
| | | | | | | | | deletion to match access token deletion and make exception arg optional. | ||||
| * | Delete old, unused methods and rename new one to just be ↵ | David Baker | 2016-03-11 | 2 | -16/+3 |
| | | | | | | | | `user_delete_access_tokens` with an `except_token_ids` argument doing what it says on the tin. | ||||
| * | Dear PyCharm, please indent sensibly for me. Thx. | David Baker | 2016-03-11 | 2 | -3/+3 |
| | | |||||
| * | Fix cache invalidation so deleting access tokens (which we did when changing ↵ | David Baker | 2016-03-11 | 4 | -17/+34 |
| | | | | | | | | password) actually takes effect without HS restart. Reinstate the code to avoid logging out the session that changed the password, removed in 415c2f05491ce65a4fc34326519754cd1edd9c54 | ||||
* | | Merge pull request #640 from matrix-org/erikj/keyclient_host | Erik Johnston | 2016-03-11 | 1 | -0/+3 |
|\ \ | | | | | | | Make key client send a Host header | ||||
| * | | Make key client send a Host header | Erik Johnston | 2016-03-11 | 1 | -0/+3 |
| | | | |||||
* | | | Merge pull request #635 from matrix-org/erikj/sync_order | Erik Johnston | 2016-03-11 | 1 | -3/+6 |
|\ \ \ | |_|/ |/| | | Use topological orders for initial sync timeline | ||||
| * | | Add comment | Erik Johnston | 2016-03-09 | 1 | -0/+3 |
| | | | |||||
| * | | Return the correct token form | Erik Johnston | 2016-03-09 | 1 | -1/+1 |
| | | | |||||
| * | | Use topological orders for initial sync timeline | Erik Johnston | 2016-03-09 | 1 | -2/+2 |
| | | | |||||
* | | | Store appservice ID on register | Daniel Wagner-Hall | 2016-03-10 | 2 | -7/+38 |
| | | | |||||
* | | | Update users table in a batched manner | Erik Johnston | 2016-03-10 | 1 | -9/+14 |
| |/ |/| | |||||
* | | Register endpoint returns refresh_token | blide | 2016-03-10 | 1 | -5/+8 |
|/ | | | | Guest registration still doesn't return refresh_token | ||||
* | Merge pull request #634 from matrix-org/erikj/pin_saml2_version | Erik Johnston | 2016-03-09 | 1 | -1/+1 |
|\ | | | | | Pin pysaml2 version to 3.x | ||||
| * | Pin pysaml2 version to 3.x | Erik Johnston | 2016-03-09 | 1 | -1/+1 |
| | | | | | | | | | | This is due to the fact that `from saml2 import config` fails in version 4.x | ||||
* | | Add a parse_json_object function | Mark Haines | 2016-03-09 | 11 | -121/+97 |
|/ | | | | | to deduplicate all the copy+pasted _parse_json functions. Also document the parse_.* functions. | ||||
* | Ensure integer is an integer | Erik Johnston | 2016-03-09 | 1 | -1/+1 |
| | |||||
* | Merge pull request #632 from matrix-org/markjh/py3v2 | Mark Haines | 2016-03-08 | 17 | -22/+22 |
|\ | | | | | Fix relative imports so they work in both py3 and py27 | ||||
| * | Fix relative imports so they work in both py3 and py27 | Mark Haines | 2016-03-08 | 17 | -22/+22 |
| | | |||||
* | | Merge branch 'develop' into daniel/ick | Daniel Wagner-Hall | 2016-03-08 | 37 | -299/+802 |
|\ \ | |||||
| * \ | Merge pull request #630 from matrix-org/dbkr/post_urlencoded_encode_params | David Baker | 2016-03-08 | 1 | -2/+15 |
| |\ \ | | |/ | |/| | Encode unicode objects given to post_urlencode* | ||||
| | * | pep8 | David Baker | 2016-03-08 | 1 | -2/+5 |
| | | | |||||
| | * | Encode unicode objects given to post_urlencode* otherwise urllib.urlencode ↵ | David Baker | 2016-03-08 | 1 | -2/+12 |
| | | | | | | | | | | | | chokes. | ||||
| * | | Merge pull request #631 from matrix-org/markjh/py3v1 | Mark Haines | 2016-03-08 | 8 | -10/+10 |
| |\ \ | | | | | | | | | Use syntax that's valid on both py2.7 and py3 | ||||
| | * | | Use syntax that works on both py2.7 and py3 | Mark Haines | 2016-03-07 | 8 | -10/+10 |
| | |/ | |||||
| * / | Send the user ID matching the guest access token, since there is no Matrix ↵ | David Baker | 2016-03-07 | 2 | -2/+7 |
| |/ | | | | | | | API to discover what user ID an access token is for. | ||||
| * | Merge pull request #626 from matrix-org/erikj/visibility | Erik Johnston | 2016-03-07 | 1 | -0/+26 |
| |\ | | | | | | | Send history visibility on boundary changes | ||||
| | * | Send history visibility on boundary changes | Erik Johnston | 2016-03-04 | 1 | -0/+26 |
| | | | |||||
| * | | Merge pull request #618 from matrix-org/markjh/pushrule_stream | Mark Haines | 2016-03-04 | 13 | -189/+477 |
| |\ \ | | | | | | | | | Add a stream for push rule updates | ||||
| | * | | Prefill from the correct stream | Mark Haines | 2016-03-04 | 1 | -1/+1 |
| | | | | |||||
| | * | | prefill the push rules stream change cache | Mark Haines | 2016-03-04 | 1 | -2/+9 |
| | | | | |||||
| | * | | s/stream_ordering/event_stream_ordering/ in push | Mark Haines | 2016-03-04 | 3 | -27/+31 |
| | | | | |||||
| | * | | /FNARG/d | Mark Haines | 2016-03-04 | 1 | -1/+0 |
| | | | | |||||
| | * | | Merge branch 'develop' into markjh/pushrule_stream | Mark Haines | 2016-03-04 | 27 | -119/+356 |
| | |\| | |||||
| | * | | Hook up the push rules stream to account_data in /sync | Mark Haines | 2016-03-04 | 4 | -69/+85 |
| | | | | |||||
| | * | | Move the code for formatting push rules into a separate function | Mark Haines | 2016-03-03 | 2 | -86/+116 |
| | | | | |||||
| | * | | Hook up the push rules to the notifier | Mark Haines | 2016-03-03 | 5 | -18/+43 |
| | | | | |||||
| | * | | Hook push rules up to the replication API | Mark Haines | 2016-03-02 | 2 | -2/+32 |
| | | | | |||||
| | * | | Add a stream for push rule updates | Mark Haines | 2016-03-01 | 5 | -74/+251 |
| | | | | |||||
| * | | | Merge pull request #625 from matrix-org/erikj/kick_ban_sync | Erik Johnston | 2016-03-04 | 1 | -3/+9 |
| |\ \ \ | | | | | | | | | | | Always include kicks and bans in full /sync | ||||
| | * | | | Always include kicks and bans in full /sync | Erik Johnston | 2016-03-04 | 1 | -3/+9 |
| | | |/ | | |/| | |||||
| * | | | Spelling | Erik Johnston | 2016-03-04 | 1 | -1/+1 |
| | | | | |||||
| * | | | Add profile information to invites | Erik Johnston | 2016-03-04 | 3 | -3/+17 |
| |/ / | |||||
| * | | Merge pull request #598 from Rugvip/invite-state | Erik Johnston | 2016-03-04 | 3 | -7/+44 |
| |\ \ | | | | | | | | | config,handlers/_base: added homeserver config for what state is included in a room invite | ||||
| | * | | config,handlers/_base: added homeserver config for what state is included in ↵ | Patrik Oldsberg | 2016-03-04 | 3 | -7/+44 |
| | | | | | | | | | | | | | | | | | | | | | | | | a room invite Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | | Merge pull request #596 from Rugvip/create | Erik Johnston | 2016-03-04 | 1 | -0/+6 |
| |\ \ \ | | |/ / | |/| | | handlers/_base: don't allow room create event to be changed | ||||
| | * | | handlers/_base: don't allow room create event to be changed | Patrik Oldsberg | 2016-02-23 | 1 | -0/+6 |
| | | | | | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | | Merge pull request #610 from Rugvip/unique-user | Erik Johnston | 2016-03-04 | 1 | -0/+1 |
| |\ \ \ | | | | | | | | | | | handlers/register: make sure another user id is generated when a collision occurs | ||||
| | * | | | handlers/register: make sure another user id is generated when a collision ↵ | Patrik Oldsberg | 2016-02-29 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | occurs Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | | | Merge pull request #623 from matrix-org/rav/fix_createroom_race | Richard van der Hoff | 2016-03-04 | 1 | -1/+1 |
| |\ \ \ \ | | | | | | | | | | | | | Make sure we add all invited members before returning from createRoom | ||||
| | * | | | | Make sure we add all invited members before returning from createRoom | Richard van der Hoff | 2016-03-04 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | add a missing yield. | ||||
| * | | | | | Merge pull request #614 from matrix-org/erikj/alias_delete | Erik Johnston | 2016-03-04 | 4 | -10/+51 |
| |\ \ \ \ \ | | | | | | | | | | | | | | | Allow alias creators to delete aliases | ||||
| | * | | | | | Allow alias creators to delete aliases | Erik Johnston | 2016-03-01 | 4 | -10/+51 |
| | | | | | | | |||||
| * | | | | | | Merge remote-tracking branch 'origin/develop' into rav/SYN-642 | Richard van der Hoff | 2016-03-03 | 17 | -90/+193 |
| |\ \ \ \ \ \ | | | |/ / / / | | |/| | | | | |||||
| | * | | | | | Merge pull request #621 from matrix-org/daniel/ratelimiting | Daniel Wagner-Hall | 2016-03-03 | 9 | -63/+95 |
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | | Pass whole requester to ratelimiting | ||||
| | | * | | | | | Pass whole requester to ratelimiting | Daniel Wagner-Hall | 2016-03-03 | 9 | -63/+95 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will enable more detailed decisions | ||||
| | * | | | | | | Merge pull request #619 from matrix-org/dbkr/dont_use_checkpw | Erik Johnston | 2016-03-03 | 1 | -1/+1 |
| | |\ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | Stop using checkpw as it seems to have vanished from bcrypt. | ||||
| | | * | | | | | Stop using checkpw as it seems to have vanished from bcrypt. Use ↵ | David Baker | 2016-03-02 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `bcrypt.hashpw(password, hashed) == hashed` as per the bcrypt README. | ||||
| * | | | | | | | Merge branch 'develop' into rav/SYN-642 | Richard van der Hoff | 2016-03-03 | 23 | -84/+667 |
| |\ \ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | |||||
| * | | | | | | | Fix typo | Richard van der Hoff | 2016-03-03 | 1 | -1/+1 |
| | | | | | | | | |||||
| * | | | | | | | Move arg default to the start of the function | Richard van der Hoff | 2016-03-02 | 1 | -2/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also don't overwrite the list that gets passed in. | ||||
| * | | | | | | | fix pyflakes quibble | Richard van der Hoff | 2016-03-02 | 1 | -1/+2 |
| | | | | | | | | |||||
| * | | | | | | | Address review comments | Richard van der Hoff | 2016-03-02 | 2 | -8/+17 |
| | | | | | | | | |||||
| * | | | | | | | Fix pyflakes warning | Richard van der Hoff | 2016-03-01 | 1 | -1/+1 |
| | | | | | | | | |||||
| * | | | | | | | Handle rejections of invites from local users locally | Richard van der Hoff | 2016-03-01 | 2 | -8/+31 |
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | Slightly hacky fix to SYN-642, which avoids the federation codepath when trying to reject invites from local users. | ||||
* | | | | | | | Idempotent-ise schema update script | Daniel Wagner-Hall | 2016-03-08 | 1 | -1/+5 |
| |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | If any ASes don't have an ID, the schema will fail, and then it will error when trying to add the column again. | ||||
* | | | | | | Merge pull request #571 from matrix-org/daniel/asids | Daniel Wagner-Hall | 2016-03-03 | 7 | -26/+97 |
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | Mark AS users with their AS's ID | ||||
| * | | | | | Mark AS users with their AS's ID | Daniel Wagner-Hall | 2016-02-11 | 7 | -27/+98 |
| | | | | | | |||||
* | | | | | | Merge pull request #616 from matrix-org/matthew/800x600 | Matthew Hodgson | 2016-03-02 | 1 | -0/+3 |
|\ \ \ \ \ \ | | | | | | | | | | | | | | | add 800x600 thumbnails to make vector look prettier (and anyone else … | ||||
| * | | | | | | add 800x600 thumbnails to make vector look prettier (and anyone else who ↵ | Matthew Hodgson | 2016-03-02 | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | likes big thumbnails) | ||||
* | | | | | | | Merge pull request #612 from matrix-org/erikj/cache_size | Erik Johnston | 2016-03-02 | 4 | -3/+15 |
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | | Add environment variable SYNAPSE_CACHE_FACTOR, default it to 0.1 | ||||
| * | | | | | | Limit stream change cache size too | Erik Johnston | 2016-03-01 | 1 | -1/+5 |
| | | | | | | | |||||
| * | | | | | | Move cache size fiddling to descriptors only. Fix tests | Erik Johnston | 2016-03-01 | 1 | -2/+2 |
| | | | | | | | |||||
| * | | | | | | Add enviroment variable SYNAPSE_CACHE_FACTOR, default it to 0.1 | Erik Johnston | 2016-03-01 | 3 | -2/+10 |
| | |_|_|/ / | |/| | | | | |||||
* | | | | | | Merge pull request #489 from matrix-org/markjh/replication | Mark Haines | 2016-03-01 | 11 | -2/+583 |
|\ \ \ \ \ \ | | | | | | | | | | | | | | | Add a /replication API for extracting the updates that happened on synapse. | ||||
| * | | | | | | Add a /replication API for extracting the updates that happened on | Mark Haines | 2016-03-01 | 11 | -2/+583 |
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | synapse This is necessary for replicating the data in synapse to be visible to a separate service because presence and typing notifications aren't stored in a database so won't be visible to another process. This API can be used to either get the raw data by requesting the tables themselves or to just receive notifications for updates by following the streams meta-stream. Returns updates for each table requested a JSON array of arrays with a row for each row in the table. Each table is prefixed by a header row with the: name of the table, current stream_id position for the table, number of rows, number of columns and the names of the columns. This is followed by the rows that have been added to the server since the requester last asked. The API has a timeout and is hooked up to the notifier so that a slave can long poll for updates. | ||||
* | | | | | | Merge pull request #613 from matrix-org/markjh/yield | Mark Haines | 2016-03-01 | 12 | -77/+52 |
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | Load the current id in the IdGenerator constructor | ||||
| * | | | | | Load the current id in the IdGenerator constructor | Mark Haines | 2016-03-01 | 12 | -77/+52 |
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than loading them lazily. This allows us to remove all the yield statements and spurious arguments for the get_next methods. It also allows us to replace all instances of get_next_txn with get_next since get_next no longer needs to access the db. | ||||
* | | | | | Reraise exception | Erik Johnston | 2016-03-01 | 1 | -0/+1 |
| | | | | | |||||
* | | | | | Correct cache miss detection | Erik Johnston | 2016-03-01 | 1 | -1/+1 |
| | | | | | |||||
* | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2016-03-01 | 11 | -30/+227 |
|\| | | | | | | | | | | | | | | | | | | | erikj/expiring_cache_size | ||||
| * | | | | Merge pull request #607 from matrix-org/dbkr/send_inviter_member_event | David Baker | 2016-02-26 | 1 | -1/+7 |
| |\ \ \ \ | | | | | | | | | | | | | Send the invier's member event in room invite state | ||||
| | * \ \ \ | Merge remote-tracking branch 'origin/develop' into ↵ | David Baker | 2016-02-26 | 1 | -2/+4 |
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | dbkr/send_inviter_member_event | ||||
| | * | | | | | Send the invier's member event in room invite state so the invitee has their ↵ | David Baker | 2016-02-25 | 1 | -1/+7 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | display name and avatar. | ||||
| * | | | | | | Add support for changing the actions for default rules | Mark Haines | 2016-02-26 | 3 | -11/+102 |
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | See matrix-org/matrix-doc#283 Works by adding dummy rules to the push rules table with a negative priority class and then using those rules to clobber the default rule actions when adding the default rules in ``list_with_base_rules`` | ||||
| * | | | | | Fix to appease the PEP8 dragon | Gergely Polonkai | 2016-02-26 | 1 | -1/+3 |
| | | | | | | |||||
| * | | | | | Add error codes for malformed/bad JSON in /login | Gergely Polonkai | 2016-02-26 | 1 | -2/+2 |
| |/ / / / | | | | | | | | | | | | | | | | Signed-off-by: Gergely Polonkai <gergely@polonkaieu> | ||||
| * | | | | Make sure we return a JSON object when returning the values of specif… | Mark Haines | 2016-02-25 | 1 | -1/+3 |
| | | | | | | | | | | | | | | | | | | | | …ic keys from a push rule | ||||
| * | | | | Merge branch 'develop' into markjh/dead_code | Mark Haines | 2016-02-24 | 4 | -0/+91 |
| |\ \ \ \ | |||||
| | * | | | | Generate guest access token on 3pid invites | Daniel Wagner-Hall | 2016-02-24 | 4 | -0/+91 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This means that following the same link across multiple sessions or devices can re-use the same guest account. Note that this is somewhat of an abuse vector; we can't throw up captchas on this flow, so this is a way of registering ephemeral accounts for spam, whose sign-up we don't rate limit. | ||||
| * | | | | | Remove unused get_rule_attr method | Mark Haines | 2016-02-24 | 1 | -8/+0 |
| |/ / / / | |||||
| * | | | | Ignore invalid POST bodies when joining rooms | Daniel Wagner-Hall | 2016-02-24 | 1 | -2/+12 |
| | | | | | |||||
| * | | | | Merge pull request #603 from matrix-org/erikj/presence | Erik Johnston | 2016-02-23 | 1 | -6/+9 |
| |\ \ \ \ | | | | | | | | | | | | | Create a new stream_id per presence update | ||||
| | * | | | | Create a new stream_id per presence update | Erik Johnston | 2016-02-23 | 1 | -6/+9 |
| | | | | | | |||||
* | | | | | | Report size of ExpiringCache | Erik Johnston | 2016-02-23 | 1 | -2/+13 |
|/ / / / / | |||||
* | | | | | Check presence token interval is less than 100, rather than the token itself | Erik Johnston | 2016-02-23 | 1 | -4/+4 |
| | | | | | |||||
* | | | | | Merge pull request #602 from matrix-org/erikj/presence | Erik Johnston | 2016-02-23 | 2 | -19/+61 |
|\| | | | | | | | | | | | | | | Change the way we figure out presence updates for small deltas | ||||
| * | | | | Handle get_all_entities_changed returning None | Erik Johnston | 2016-02-23 | 1 | -0/+3 |
| | | | | | |||||
| * | | | | Add comments | Erik Johnston | 2016-02-23 | 1 | -0/+4 |
| | | | | | |||||
| * | | | | Change the way we figure out presence updates for small deltas | Erik Johnston | 2016-02-23 | 2 | -17/+52 |
| | | | | | |||||
* | | | | | Allow third_party_signed to be specified on /join | Daniel Wagner-Hall | 2016-02-23 | 7 | -54/+196 |
| | | | | | |||||
* | | | | | Merge pull request #600 from matrix-org/erikj/presence | Erik Johnston | 2016-02-23 | 1 | -26/+30 |
|\| | | | | | | | | | | | | | | Measure PresenceEventSource.get_new_events | ||||
| * | | | | Don't include defer.returnValue in Measure block | Erik Johnston | 2016-02-23 | 1 | -9/+12 |
| | | | | | |||||
| * | | | | Measure PresenceEventSource.get_new_events | Erik Johnston | 2016-02-23 | 1 | -34/+35 |
| | | | | | |||||
* | | | | | handlers/sync: style fix, line too long | Patrik Oldsberg | 2016-02-23 | 1 | -1/+5 |
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
* | | | | | Pick up currently_active across federation | Erik Johnston | 2016-02-23 | 1 | -0/+1 |
| | | | | | |||||
* | | | | | handlers/sync: fix SyncResult not counting account_data change when ↵ | Patrik Oldsberg | 2016-02-23 | 1 | -1/+1 |
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | converting to bool This fixes account_data events not triggering an immediate /sync response Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
* | | | | Merge pull request #587 from matrix-org/rav/guest_access_after_room_join | Richard van der Hoff | 2016-02-22 | 3 | -16/+41 |
|\ \ \ \ | |/ / / |/| | | | Allow guest users access to messages in rooms they have joined | ||||
| * | | | address review comments | Richard van der Hoff | 2016-02-22 | 1 | -7/+2 |
| | | | | | | | | | | | | | | | | drop commented-out special casing for historyvisibility event s/he/they/ for users | ||||
| * | | | Interpret unknown visibilities the same as shared | Richard van der Hoff | 2016-02-19 | 1 | -11/+13 |
| | | | | |||||
| * | | | Merge branch 'develop' into rav/guest_access_after_room_join | Richard van der Hoff | 2016-02-19 | 38 | -1631/+1598 |
| |\ \ \ | |||||
| * | | | | Allow guest users access to messages in rooms they have joined | Richard van der Hoff | 2016-02-19 | 3 | -14/+42 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There should be no difference between guest users and non-guest users in terms of access to messages. Define the semantics of the is_peeking argument to filter_events_for_clients (slightly) better; interpret it appropriately, and set it correctly from /sync. | ||||
* | | | | | Remove superfluous call to get_state_at when we already have an event for ↵ | Erik Johnston | 2016-02-22 | 1 | -4/+12 |
| | | | | | | | | | | | | | | | | | | | | that stream position | ||||
* | | | | | Correctly filter states | Erik Johnston | 2016-02-19 | 1 | -2/+2 |
| | | | | | |||||
* | | | | | Only send presence updates to remote hosts if user is ours | Erik Johnston | 2016-02-19 | 1 | -2/+10 |
| | | | | | |||||
* | | | | | Add Measures to presence | Erik Johnston | 2016-02-19 | 1 | -57/+62 |
| |/ / / |/| | | | |||||
* | | | | Add presence metric | Erik Johnston | 2016-02-19 | 1 | -0/+3 |
| | | | | |||||
* | | | | Remove spurious extra metrics | Erik Johnston | 2016-02-19 | 1 | -1/+0 |
| | | | | |||||
* | | | | Merge pull request #586 from matrix-org/erikj/presence | Erik Johnston | 2016-02-19 | 2 | -6/+32 |
|\ \ \ \ | | | | | | | | | | | Fix presence `currently_active`. Add presence metrics. | ||||
| * | | | | Don't set currently_active for remote presence | Erik Johnston | 2016-02-19 | 1 | -6/+12 |
| | | | | | |||||
| * | | | | More metrics | Erik Johnston | 2016-02-19 | 1 | -0/+6 |
| | | | | | |||||
| * | | | | Add presence metrics | Erik Johnston | 2016-02-19 | 2 | -0/+14 |
| | | | | | |||||
* | | | | | Merge pull request #582 from matrix-org/erikj/presence | Erik Johnston | 2016-02-19 | 22 | -1123/+1122 |
|\| | | | | | | | | | | | | | | Rewrite presence for performance. | ||||
| * | | | | "You are not..." | Erik Johnston | 2016-02-18 | 1 | -1/+1 |
| | | | | | |||||
| * | | | | Close cursor | Erik Johnston | 2016-02-18 | 1 | -0/+1 |
| | | | | | |||||
| * | | | | Remove unused param from get_max_token | Erik Johnston | 2016-02-18 | 6 | -13/+11 |
| | | | | | |||||
| * | | | | WheelTimer: Don't scan list, use index. | Erik Johnston | 2016-02-18 | 1 | -5/+8 |
| | | | | | |||||
| * | | | | Remove invalid arg. | Erik Johnston | 2016-02-18 | 1 | -1/+0 |
| | | | | | |||||
| * | | | | Add unit test | Erik Johnston | 2016-02-18 | 1 | -93/+187 |
| | | | | | |||||
| * | | | | Add stuff pulled from the DB to the cache | Erik Johnston | 2016-02-18 | 1 | -2/+4 |
| | | | | | |||||
| * | | | | PEP8 | Erik Johnston | 2016-02-18 | 1 | -2/+2 |
| | | | | | |||||
| * | | | | Prefix TS fields with _ts | Erik Johnston | 2016-02-18 | 4 | -43/+44 |
| | | | | | |||||
| * | | | | Remove status_msg when going offline. Don't offline -> online if you send a ↵ | Erik Johnston | 2016-02-18 | 1 | -5/+15 |
| | | | | | | | | | | | | | | | | | | | | message | ||||
| * | | | | Check presence state is a valid one | Erik Johnston | 2016-02-18 | 2 | -1/+6 |
| | | | | | |||||
| * | | | | Move if statement | Erik Johnston | 2016-02-18 | 1 | -8/+8 |
| | | | | | |||||
| * | | | | Comment | Erik Johnston | 2016-02-18 | 1 | -0/+2 |
| | | | | | |||||
| * | | | | Remove spurious comment | Erik Johnston | 2016-02-17 | 1 | -1/+0 |
| | | | | | |||||
| * | | | | Initial cut | Erik Johnston | 2016-02-17 | 15 | -1134/+931 |
| | | | | | |||||
| * | | | | Add wheeltimer impl | Erik Johnston | 2016-02-17 | 1 | -0/+88 |
| | | | | | |||||
* | | | | | Merge pull request #573 from matrix-org/erikj/sync_fix | Erik Johnston | 2016-02-18 | 1 | -5/+12 |
|\ \ \ \ \ | | | | | | | | | | | | | Mitigate against incorrect old state in /sync. | ||||
| * | | | | | Mitigate against incorrect old state in /sync. | Erik Johnston | 2016-02-12 | 1 | -5/+12 |
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There have been reports from the field that servers occasionally have incorrect notions of what the old state of a room is. This proves problematic as /sync relies on a correct old state. This patch makes /sync specifically include in the 'state' key any current state events that haven't been correctly included. | ||||
* | | | | | Remove dead code for setting device specific rules. | Mark Haines | 2016-02-18 | 10 | -141/+45 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It wasn't possible to hit the code from the API because of a typo in parsing the request path. Since no-one was using the feature we might as well remove the dead code. | ||||
* | | | | | Review comments | Daniel Wagner-Hall | 2016-02-18 | 3 | -7/+7 |
| | | | | | |||||
* | | | | | Merge branch 'develop' into daniel/roomcleanupincremental | Daniel Wagner-Hall | 2016-02-17 | 4 | -85/+92 |
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | Conflicts: synapse/rest/client/v1/room.py | ||||
| * | | | | Merge pull request #580 from Rugvip/develop | Erik Johnston | 2016-02-17 | 1 | -1/+4 |
| |\ \ \ \ | | |_|/ / | |/| | | | api/filtering: don't assume that event content will always be a dict | ||||
| | * | | | api/filtering: don't assume that event content will always be a dict | Patrik Oldsberg | 2016-02-17 | 1 | -1/+4 |
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | | | client/v1/room: include event_id in response to state event PUT, in ↵ | Patrik Oldsberg | 2016-02-17 | 1 | -2/+2 |
| |/ / / | | | | | | | | | | | | | | | | | | | | | accordance with the spec Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | | | Fix typo in request validation for adding push rules. | Mark Haines | 2016-02-16 | 1 | -1/+1 |
| | | | | |||||
| * | | | Make adding push rules idempotent | Mark Haines | 2016-02-16 | 1 | -82/+86 |
| | | | | | | | | | | | | | | | | | | | | | | | | Also remove the **kwargs from the add_push_rule method. Fixes https://matrix.org/jira/browse/SYN-391 | ||||
* | | | | Some cleanup | Daniel Wagner-Hall | 2016-02-17 | 2 | -69/+61 |
| | | | | | | | | | | | | | | | | | | | | I'm not particularly happy with the "action" switching, but there's no convenient way to defer the work that needs to happen after it, so... :( | ||||
* | | | | Respond to federated invite with non-empty context | Daniel Wagner-Hall | 2016-02-17 | 3 | -46/+65 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we magically perform an extra database hit to find the inviter, and use this to guess where we should send the event. Instead, fill in a valid context, so that other callers relying on the context actually have one. | ||||
* | | | | Some cleanup, some TODOs, more to do | Daniel Wagner-Hall | 2016-02-16 | 1 | -68/+60 |
| | | | | |||||
* | | | | Some cleanup | Daniel Wagner-Hall | 2016-02-16 | 2 | -23/+30 |
| | | | | |||||
* | | | | Tidy? up room creation event sending | Daniel Wagner-Hall | 2016-02-16 | 1 | -63/+72 |
| | | | | |||||
* | | | | Add comment | Daniel Wagner-Hall | 2016-02-16 | 1 | -1/+1 |
| | | | | |||||
* | | | | Merge branch 'develop' into daniel/roomcleanupincremental | Daniel Wagner-Hall | 2016-02-16 | 1 | -3/+3 |
|\| | | | | | | | | | | | | | | | | | | | Conflicts: synapse/handlers/room.py | ||||
| * | | | Simplify room creation code | Daniel Wagner-Hall | 2016-02-15 | 2 | -55/+31 |
| | | | | |||||
* | | | | Branch off member and non member sends | Daniel Wagner-Hall | 2016-02-15 | 5 | -74/+99 |
| | | | | | | | | | | | | | | | | Unclean, needs tidy-up, but works | ||||
* | | | | Simplify room creation code | Daniel Wagner-Hall | 2016-02-15 | 2 | -52/+28 |
| | | | | |||||
* | | | | Use update_membership for profile updates | Daniel Wagner-Hall | 2016-02-15 | 2 | -20/+12 |
| | | | | |||||
* | | | | Use update_membership to kick guests | Daniel Wagner-Hall | 2016-02-15 | 2 | -16/+19 |
| | | | | |||||
* | | | | Reuse update_membership from /join | Daniel Wagner-Hall | 2016-02-15 | 2 | -19/+14 |
| | | | | |||||
* | | | | Inline _do_local_membership_update | Daniel Wagner-Hall | 2016-02-15 | 1 | -18/+7 |
| | | | | |||||
* | | | | Inline _do_join as it now only has one caller | Daniel Wagner-Hall | 2016-02-15 | 1 | -48/+47 |
| | | | | | | | | | | | | | | | | | | | | | | | | Also, consistently apply rate limiting. Again, ugly, but a step in the right direction. | ||||
* | | | | Merge implementation of /join by alias or ID | Daniel Wagner-Hall | 2016-02-15 | 5 | -70/+71 |
| | | | | | | | | | | | | | | | | | | | | This code is kind of rough (passing the remote servers down a long chain), but is a step towards improvement. | ||||
* | | | | Merge some room joining codepaths | Daniel Wagner-Hall | 2016-02-15 | 2 | -5/+11 |
|/ / / | | | | | | | | | | | | | | | | Force joining by alias to go through the send_membership_event checks, rather than bypassing them straight into _do_join. This is the first of many stages of cleanup. | ||||
* | | | Revert "Merge two of the room join codepaths" | Daniel Wagner-Hall | 2016-02-12 | 5 | -73/+69 |
| | | | | | | | | | | | | | | | | | | This reverts commit cf81375b94c4763766440471e632fc4b103450ab. It subtly violates a guest joining auth check | ||||
* | | | Merge two of the room join codepaths | Daniel Wagner-Hall | 2016-02-12 | 5 | -69/+73 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's at least one more to merge in. Side-effects: * Stop reporting None as displayname and avatar_url in some cases * Joining a room by alias populates guest-ness in join event * Remove unspec'd PUT version of /join/<room_id_or_alias> which has not been called on matrix.org according to logs * Stop recording access_token_id on /join/room_id - currently we don't record it on /join/room_alias; I can try to thread it through at some point. | ||||
* | | | Catch the exceptions thrown by twisted when you write to a closed connection | Mark Haines | 2016-02-12 | 5 | -11/+33 |
| | | | |||||
* | | | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2016-02-12 | 1 | -1/+1 |
|\| | | |||||
| * | | Bump version and changelog | Erik Johnston | 2016-02-11 | 1 | -1/+1 |
| | | | |||||
| * | | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2016-02-11 | 1 | -1/+1 |
| |\ \ | |||||
| | * | | Bump version and changelog | Erik Johnston | 2016-02-11 | 1 | -1/+1 |
| | | | | |||||
* | | | | Enforce user_id exclusivity for AS registrations | Daniel Wagner-Hall | 2016-02-11 | 1 | -5/+12 |
|/ / / | | | | | | | | | | | | | This whole set of checks is kind of an ugly mess, which I may clean up at some point, but for now let's be correct. | ||||
* / / | Fix SYN-627, events are in incorrect room in /sync | Erik Johnston | 2016-02-11 | 1 | -1/+1 |
|/ / | |||||
* | | Return events in correct order for /events | Erik Johnston | 2016-02-11 | 2 | -8/+12 |
| | | |||||
* | | Add some paranoia logging | Erik Johnston | 2016-02-11 | 1 | -0/+10 |
|/ | |||||
* | 0.13.1 v0.13.1 | Matthew Hodgson | 2016-02-10 | 1 | -1/+1 |
| | |||||
* | Merge branch 'master' of git+ssh://github.com/matrix-org/synapse | Matthew Hodgson | 2016-02-10 | 257 | -2954/+4782 |
|\ | |||||
| * | Bump version and changelog | Erik Johnston | 2016-02-10 | 1 | -1/+1 |
| | | |||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.13.0 | Erik Johnston | 2016-02-10 | 77 | -1065/+1540 |
| |\ | |||||
| | * | Batch fetch _get_state_groups_from_groups | Erik Johnston | 2016-02-10 | 1 | -32/+34 |
| | | | |||||
| | * | Use _simple_select_many for _get_state_group_for_events | Erik Johnston | 2016-02-10 | 2 | -17/+11 |
| | | | |||||
| | * | Only calculate initial sync for 10 rooms at a time | Erik Johnston | 2016-02-10 | 1 | -24/+29 |
| | | | | | | | | | | | | This helps to ensure we don't completely starve other requests. | ||||
| | * | Merge pull request #566 from matrix-org/erikj/logcontext | Erik Johnston | 2016-02-10 | 1 | -16/+13 |
| | |\ | | | | | | | | | Don't bother copying records on parent context | ||||
| | | * | Remove comment | Erik Johnston | 2016-02-10 | 1 | -1/+1 |
| | | | | |||||
| | | * | s/parent_context/previous_context/ | Erik Johnston | 2016-02-10 | 1 | -9/+9 |
| | | | | |||||
| | | * | Set parent context on instansiation | Erik Johnston | 2016-02-10 | 1 | -2/+7 |
| | | | | |||||
| | | * | Don't bother copying records on parent context | Erik Johnston | 2016-02-09 | 1 | -8/+0 |
| | | | | |||||
| | * | | Merge pull request #568 from matrix-org/erikj/unread_notif | Erik Johnston | 2016-02-10 | 7 | -89/+66 |
| | |\ \ | | | | | | | | | | | Atomically persit push actions when we persist the event | ||||
| | | * | | Rename functions | Erik Johnston | 2016-02-10 | 2 | -4/+4 |
| | | | | | |||||
| | | * | | Atomically persit push actions when we persist the event | Erik Johnston | 2016-02-09 | 6 | -65/+49 |
| | | | | | |||||
| | | * | | Pass in current state to push action handler | Erik Johnston | 2016-02-09 | 3 | -27/+20 |
| | | | | | |||||
| | * | | | Merge pull request #565 from matrix-org/erikj/macaroon_config | Erik Johnston | 2016-02-09 | 2 | -16/+30 |
| | |\ \ \ | | | | | | | | | | | | | Derive macaroon_secret_key from signing key. | ||||
| | | * | | | Derive macaroon_secret_key from signing key. | Erik Johnston | 2016-02-08 | 2 | -16/+30 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately, there are people that are running synapse without a `macaroon_sercret_key` set. Mandating they set one is a good solution, except that breaking auto upgrades is annoying. | ||||
| | * | | | | Change a log from debug to info | Erik Johnston | 2016-02-09 | 1 | -1/+1 |
| | | |/ / | | |/| | | |||||
| | * | | | Remove dead code | Erik Johnston | 2016-02-09 | 1 | -12/+0 |
| | | | | | |||||
| | * | | | Invalidate get_last_receipt_event_id_for_user cache | Erik Johnston | 2016-02-09 | 1 | -0/+5 |
| | | | | | |||||
| | * | | | Don't load all ephemeral state for a room on every sync | Erik Johnston | 2016-02-09 | 2 | -14/+20 |
| | | | | | |||||
| | * | | | Fix unit tests | Erik Johnston | 2016-02-09 | 2 | -5/+9 |
| | | | | | |||||
| | * | | | Merge branch 'develop' of github.com:matrix-org/synapse into develop | Erik Johnston | 2016-02-09 | 3 | -6/+6 |
| | |\ \ \ | |||||
| | | * | | | Revert "Reject additional path segments" | Daniel Wagner-Hall | 2016-02-09 | 3 | -6/+6 |
| | | | |/ | | | |/| | | | | | | | | | | | | | | | | | | | | | This reverts commit 1d19a5ec0fff73af9cee8c21118020b31be47379. iOS Console is apparently relying on these paths. | ||||
| | * | | | Measure some /sync related things | Erik Johnston | 2016-02-09 | 2 | -150/+162 |
| | | | | | |||||
| | * | | | Revert to putting it around the entire block | Erik Johnston | 2016-02-09 | 1 | -124/+124 |
| | | | | | |||||
| | * | | | Don't create new logging context | Erik Johnston | 2016-02-09 | 1 | -12/+15 |
| | |/ / | |||||
| | * | | Fix bug in util.metrics.Measure | Erik Johnston | 2016-02-09 | 1 | -1/+3 |
| | | | | |||||
| | * | | Create new context when measuring | Erik Johnston | 2016-02-09 | 1 | -2/+5 |
| | | | | |||||
| | * | | Don't measure across event stream call, as it lasts for a long time. | Erik Johnston | 2016-02-09 | 1 | -124/+124 |
| | | | | |||||
| | * | | Change logcontext warns to debug | Erik Johnston | 2016-02-09 | 1 | -3/+3 |
| | |/ | |||||
| | * | Merge pull request #564 from matrix-org/erikj/logcontext | Erik Johnston | 2016-02-08 | 31 | -229/+356 |
| | |\ | | | | | | | | | Fix up logcontexts | ||||
| | | * | Fix up logcontexts | Erik Johnston | 2016-02-08 | 31 | -229/+356 |
| | | | | |||||
| | * | | Merge pull request #562 from matrix-org/erikj/push_metric | Erik Johnston | 2016-02-08 | 3 | -31/+149 |
| | |\| | | | | | | | | | Add metrics to pushers | ||||
| | | * | Add metrics to pushers | Erik Johnston | 2016-02-08 | 3 | -31/+149 |
| | | | | |||||
| | * | | Reject additional path segments | Daniel Wagner-Hall | 2016-02-08 | 3 | -6/+6 |
| | |/ | |||||
| | * | Allocate guest user IDs numericcally | Daniel Wagner-Hall | 2016-02-05 | 2 | -19/+72 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current random IDs are ugly and confusing when presented in UIs. This makes them prettier and easier to read. Also, disable non-automated registration of numeric IDs so that we don't need to worry so much about people carving out our automated address space and us needing to keep retrying ID registration. | ||||
| | * | Host /media/r0 as well as /media/v1 | Daniel Wagner-Hall | 2016-02-05 | 2 | -3/+6 |
| | | | |||||
| | * | Error if macaroon key is missing from config | Daniel Wagner-Hall | 2016-02-05 | 4 | -23/+57 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we store all access tokens in the DB, and fall back to that check if we can't validate the macaroon, so our fallback works here, but for guests, their macaroons don't get persisted, so we don't get to find them in the database. Each restart, we generate a new ephemeral key, so guests lose access after each server restart. I tried to fix up the config stuff to be less insane, but gave up, so instead I bolt on yet another piece of custom one-off insanity. Also, add some basic tests for config generation and loading. | ||||
| | * | Merge pull request #557 from matrix-org/dbkr/profile_dont_return_null | David Baker | 2016-02-04 | 1 | -6/+17 |
| | |\ | | | | | | | | | Omit keys rather then returning null in profile API | ||||
| | | * | No braces here | David Baker | 2016-02-03 | 1 | -1/+1 |
| | | | | |||||
| | | * | Don't return null if profile display name / avatar url isn't set: omit them ↵ | David Baker | 2016-02-03 | 1 | -6/+17 |
| | | | | | | | | | | | | | | | | instead | ||||
| | * | | Actually return something sensible | Erik Johnston | 2016-02-03 | 1 | -1/+1 |
| | | | | |||||
| | * | | Remove old log line | Erik Johnston | 2016-02-03 | 1 | -2/+0 |
| | | | | |||||
| | * | | We return dicts now. | Erik Johnston | 2016-02-03 | 1 | -1/+1 |
| | | | | |||||
| | * | | Add descriptions | Erik Johnston | 2016-02-03 | 4 | -1/+5 |
| | | | | |||||
| | * | | Preserve log context over when deferring to thread pool in media repo | Erik Johnston | 2016-02-03 | 1 | -4/+7 |
| | | | | |||||
| | * | | Merge pull request #555 from matrix-org/erikj/logcontext | Erik Johnston | 2016-02-03 | 3 | -16/+42 |
| | |\ \ | | | | | | | | | | | Allowing tagging log contexts | ||||
| | | * | | Allowing tagging log contexts | Erik Johnston | 2016-02-03 | 3 | -16/+42 |
| | | | | | |||||
| | * | | | Merge pull request #554 from matrix-org/erikj/event_push | Erik Johnston | 2016-02-03 | 5 | -21/+67 |
| | |\ \ \ | | | |_|/ | | |/| | | Change event_push_actions_rm_tokens schema | ||||
| | | * | | Change event_push_actions_rm_tokens schema | Erik Johnston | 2016-02-03 | 5 | -21/+67 |
| | | |/ | |||||
| | * | | Merge pull request #556 from matrix-org/daniel/config | Daniel Wagner-Hall | 2016-02-03 | 3 | -6/+6 |
| | |\ \ | | | | | | | | | | | Rename config field to reflect yaml name | ||||
| | | * | | Rename config field to reflect yaml name | Daniel Wagner-Hall | 2016-02-03 | 3 | -6/+6 |
| | | |/ | |||||
| | * | | Simplify get_rooms | Erik Johnston | 2016-02-03 | 2 | -79/+9 |
| | | | | |||||
| | * | | PEP8 | Erik Johnston | 2016-02-03 | 1 | -1/+1 |
| | | | | |||||
| | * | | Remove unused method | Erik Johnston | 2016-02-03 | 1 | -8/+0 |
| | | | | |||||
| | * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2016-02-03 | 35 | -238/+215 |
| | |\| | | | | | | | | | | | | | erikj/public_room_fix | ||||
| | | * | Log more diagnostics for unrecognised access tokens | Daniel Wagner-Hall | 2016-02-02 | 1 | -0/+2 |
| | | | | |||||
| | | * | Fix flake8 warnings for new flake8 | Daniel Wagner-Hall | 2016-02-02 | 33 | -66/+72 |
| | | | | |||||
| | | * | s/get_room_changes_for_user/get_membership_changes_for_user/ | Erik Johnston | 2016-02-02 | 3 | -4/+4 |
| | | | | |||||
| | | * | Fetch events in a separate transaction. | Erik Johnston | 2016-02-02 | 1 | -26/+29 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has a couple of benefits: - It reduces the time of transactions, allowing other database requests to run. - Fetching events is given a dedicated database thread, and so can't starve other database requests. | ||||
| | | * | Merge pull request #545 from matrix-org/erikj/sync | Erik Johnston | 2016-02-02 | 2 | -141/+99 |
| | | |\ | | | | | | | | | | | Move /sync state calculations from rest to handler | ||||
| | | | * | Comments | Erik Johnston | 2016-02-01 | 1 | -5/+6 |
| | | | | |