Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #612 from matrix-org/erikj/cache_size | Erik Johnston | 2016-03-02 | 1 | -5/+7 |
|\ | | | | | Add environment variable SYNAPSE_CACHE_FACTOR, default it to 0.1 | ||||
| * | Move cache size fiddling to descriptors only. Fix tests | Erik Johnston | 2016-03-01 | 1 | -5/+7 |
| | | |||||
* | | Add a /replication API for extracting the updates that happened on | Mark Haines | 2016-03-01 | 3 | -2/+196 |
|/ | | | | | | | | | | | | | | | | | | | | | | | | 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. | ||||
* | Check that the disable_registration config key is handled correctly | Mark Haines | 2016-02-22 | 1 | -0/+21 |
| | |||||
* | Add a test for TreeCache.__contains__ | Mark Haines | 2016-02-22 | 2 | -0/+9 |
| | |||||
* | Test Filter.filter_rooms | Mark Haines | 2016-02-19 | 1 | -0/+18 |
| | | | | | Also check that the __repr__ method for FilterCollection does something sensible. | ||||
* | Fix flake8 warnings for tests | Mark Haines | 2016-02-19 | 38 | -363/+358 |
| | |||||
* | Don't set currently_active for remote presence | Erik Johnston | 2016-02-19 | 1 | -4/+15 |
| | |||||
* | Add unit test | Erik Johnston | 2016-02-18 | 1 | -0/+373 |
| | |||||
* | Remove old tests. | Erik Johnston | 2016-02-18 | 6 | -2098/+0 |
| | |||||
* | Initial cut | Erik Johnston | 2016-02-17 | 1 | -2/+2 |
| | |||||
* | Add wheeltimer impl | Erik Johnston | 2016-02-17 | 1 | -0/+74 |
| | |||||
* | Merge pull request #566 from matrix-org/erikj/logcontext | Erik Johnston | 2016-02-10 | 1 | -9/+1 |
|\ | | | | | Don't bother copying records on parent context | ||||
| * | Fix test | Erik Johnston | 2016-02-09 | 1 | -9/+1 |
| | | |||||
* | | Typo | Erik Johnston | 2016-02-09 | 1 | -1/+1 |
| | | |||||
* | | Fix test | Erik Johnston | 2016-02-09 | 1 | -3/+4 |
|/ | |||||
* | Error if macaroon key is missing from config | Daniel Wagner-Hall | 2016-02-05 | 3 | -0/+141 |
| | | | | | | | | | | | | | 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 #556 from matrix-org/daniel/config | Daniel Wagner-Hall | 2016-02-03 | 3 | -4/+4 |
|\ | | | | | Rename config field to reflect yaml name | ||||
| * | Rename config field to reflect yaml name | Daniel Wagner-Hall | 2016-02-03 | 3 | -4/+4 |
| | | |||||
* | | Simplify get_rooms | Erik Johnston | 2016-02-03 | 1 | -26/+0 |
|/ | |||||
* | Fix the mock homserver used in the tests | Mark Haines | 2016-01-29 | 1 | -0/+1 |
| | |||||
* | Merge pull request #536 from matrix-org/erikj/sync | Erik Johnston | 2016-01-29 | 1 | -8/+1 |
|\ | | | | | Make /sync "better". | ||||
| * | Allow paginating backwards from stream token | Erik Johnston | 2016-01-28 | 1 | -8/+1 |
| | | |||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/sync | Erik Johnston | 2016-01-28 | 1 | -2/+14 |
| |\ | |||||
* | \ | Merge pull request #538 from matrix-org/erikj/fix_lru_cache | Erik Johnston | 2016-01-29 | 2 | -0/+19 |
|\ \ \ | | | | | | | | | Fix LruCache. Make TreeCache track its own size. | ||||
| * | | | Add tests | Erik Johnston | 2016-01-29 | 2 | -0/+19 |
| | | | | |||||
* | | | | Fix test | Erik Johnston | 2016-01-28 | 1 | -3/+4 |
|/ / / | |||||
* | / | Merge pull request #534 from matrix-org/erikj/setup | Erik Johnston | 2016-01-28 | 3 | -5/+12 |
|\| | | |/ |/| | Add a Homeserver.setup method | ||||
| * | Fix tests | Erik Johnston | 2016-01-27 | 3 | -5/+12 |
| | | |||||
* | | Merge pull request #535 from matrix-org/rav/paginate_from_stream_token | Richard van der Hoff | 2016-01-28 | 1 | -2/+14 |
|\ \ | |/ |/| | Make it possible to paginate forwards from stream tokens | ||||
| * | Make it possible to paginate forwards from stream tokens | Richard van der Hoff | 2016-01-27 | 1 | -2/+14 |
| | | | | | | | | | | In order that we can fill the gap after a /sync, make it possible to paginate forwards from a stream token. | ||||
* | | Remove redundated BaseHomeServer | Erik Johnston | 2016-01-26 | 5 | -314/+30 |
|/ | |||||
* | Fix tests | Erik Johnston | 2016-01-25 | 1 | -6/+4 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/sync | Erik Johnston | 2016-01-22 | 2 | -0/+86 |
|\ | |||||
| * | Revert all the bits changing keys of eeverything that used LRUCaches to tuples | David Baker | 2016-01-22 | 2 | -35/+35 |
| | | |||||
| * | Make LRU cache not default to treecache & add options to use it | David Baker | 2016-01-22 | 1 | -1/+2 |
| | | |||||
| * | Test treecache directly | David Baker | 2016-01-22 | 1 | -0/+19 |
| | | |||||
| * | Add tests for treecache directly and test del_multi at the LruCache level too. | David Baker | 2016-01-22 | 1 | -0/+66 |
| | | |||||
| * | Change LRUCache to be tree-based so we can delete subtrees. | David Baker | 2016-01-21 | 2 | -35/+35 |
| | | |||||
* | | Fix tests | Erik Johnston | 2016-01-22 | 1 | -1/+1 |
|/ | |||||
* | Cache dns lookups, and use the cache if we fail to lookup servers later | Erik Johnston | 2016-01-20 | 1 | -0/+115 |
| | |||||
* | Make unit tests work | Erik Johnston | 2016-01-18 | 2 | -559/+0 |
| | |||||
* | Require unbanning before other membership changes | Daniel Wagner-Hall | 2016-01-15 | 1 | -3/+3 |
| | |||||
* | Require ID and as_token be unique for ASs | Daniel Wagner-Hall | 2016-01-14 | 2 | -16/+86 |
| | | | | | Defaults ID to as_token if not specified. This will change when IDs are fully supported. | ||||
* | Delete the table objects from TransactionStore | Mark Haines | 2016-01-13 | 2 | -2/+0 |
| | |||||
* | Merge pull request #478 from matrix-org/daniel/userobject | Daniel Wagner-Hall | 2016-01-11 | 3 | -13/+11 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a User object I'm sick of passing around more and more things as tuple items around the whole world, and needing to edit every call site every time there is more information about a user. So pass them around together as an object. This object has incredibly poorly named fields because we have a convention that `user` indicates a UserID object, and `user_id` indicates a string. I tried to clean up the whole repo to fix this, but gave up. So instead, I introduce a second convention. A user_object is a User, and a user_id_object is a UserId. I may have cried a little bit. | ||||
| * | Introduce a Requester object | Daniel Wagner-Hall | 2016-01-11 | 3 | -13/+11 |
| | | | | | | | | | | | | | | | | | | This tracks data about the entity which made the request. This is instead of passing around a tuple, which requires call-site modifications every time a new piece of optional context is passed around. I tried to introduce a User object. I gave up. | ||||
* | | Merge pull request #456 from matrix-org/store_event_actions | David Baker | 2016-01-08 | 3 | -1/+26 |
|\ \ | |/ |/| | Send unread notification counts | ||||
| * | fix tests | David Baker | 2016-01-06 | 3 | -1/+10 |
| | | |||||
| * | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2016-01-05 | 1 | -9/+9 |
| |\ | |||||
| * | | fix tests | David Baker | 2016-01-04 | 2 | -2/+2 |
| | | | |||||
| * | | Merge remote-tracking branch 'origin/develop' into store_event_actions | David Baker | 2016-01-04 | 1 | -0/+60 |
| |\ \ | |||||
| * | | | Add mocks to make tests work again | David Baker | 2015-12-22 | 2 | -0/+16 |
| | | | | |||||
* | | | | copyrights | Matthew Hodgson | 2016-01-07 | 53 | -53/+53 |
| |_|/ |/| | | |||||
* | | | Allow guests to upgrade their accounts | Daniel Wagner-Hall | 2016-01-05 | 1 | -9/+9 |
| |/ |/| | |||||
* | | Add a unit test for the snapshot cache | Mark Haines | 2015-12-23 | 1 | -0/+60 |
|/ | |||||
* | Merge remote-tracking branch 'origin/master' into develop | Mark Haines | 2015-12-07 | 1 | -1/+1 |
|\ | |||||
| * | Fix mock import in tests. | Oleg Girko | 2015-12-06 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | For some reason, one test imports Mock class from mock.mock rather than from mock. This change fixes this error. Signed-off-by: Oleg Girko <ol@infoserver.lv> | ||||
* | | Host /unstable and /r0 versions of r0 APIs | Daniel Wagner-Hall | 2015-12-01 | 1 | -2/+3 |
| | | |||||
* | | rename the method in the tests as well | Mark Haines | 2015-12-01 | 1 | -3/+3 |
|/ | |||||
* | Update tests | Erik Johnston | 2015-11-17 | 3 | -0/+17 |
| | |||||
* | Return non-room events from guest /events calls | Daniel Wagner-Hall | 2015-11-12 | 1 | -0/+3 |
| | |||||
* | Fix an issue with ignoring power_level changes on divergent graphs | Richard van der Hoff | 2015-11-12 | 1 | -0/+93 |
| | | | | | | | | Changes to m.room.power_levels events are supposed to be handled at a high priority; however a typo meant that the relevant bit of code was never executed, so they were handled just like any other state change - which meant that a bad person could cause room state changes by forking the graph from a point in history when they were allowed to do so. | ||||
* | Merge pull request #359 from matrix-org/markjh/incremental_indexing | Erik Johnston | 2015-11-11 | 2 | -0/+79 |
|\ | | | | | Incremental background updates for db indexes | ||||
| * | Test for background updates | Mark Haines | 2015-11-10 | 2 | -0/+79 |
| | | |||||
* | | Return world_readable and guest_can_join in /publicRooms | Daniel Wagner-Hall | 2015-11-10 | 1 | -0/+2 |
| | | |||||
* | | Add a couple of unit tests for room/<x>/messages | Richard van der Hoff | 2015-11-09 | 1 | -0/+56 |
|/ | | | | ... merely because I was trying to figure out how it worked, and couldn't. | ||||
* | Open up /events to anonymous users for room events only | Daniel Wagner-Hall | 2015-11-05 | 4 | -26/+89 |
| | | | | Squash-merge of PR #345 from daniel/anonymousevents | ||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into develop | Daniel Wagner-Hall | 2015-11-04 | 4 | -117/+1 |
|\ | |||||
| * | Merge branch 'develop' into daniel/removesomelies | Mark Haines | 2015-11-04 | 2 | -110/+2 |
| |\ | | | | | | | | | | | | | Conflicts: synapse/notifier.py | ||||
| | * | Remove the LockManager class because it wasn't being used | Mark Haines | 2015-11-04 | 1 | -108/+0 |
| | | | |||||
| * | | Remove more unused parameters | Daniel Wagner-Hall | 2015-11-02 | 3 | -9/+1 |
| | | | |||||
* | | | Allow guests to register and call /events?room_id= | Daniel Wagner-Hall | 2015-11-04 | 6 | -18/+48 |
| |/ |/| | | | | | | | | | | | This follows the same flows-based flow as regular registration, but as the only implemented flow has no requirements, it auto-succeeds. In the future, other flows (e.g. captcha) may be required, so clients should treat this like the regular registration flow choices. | ||||
* | | Merge branch 'develop' into markjh/room_tags | Mark Haines | 2015-11-02 | 1 | -2/+7 |
|\| | |||||
| * | Fix a 500 error resulting from empty room_ids | Richard van der Hoff | 2015-10-26 | 1 | -2/+7 |
| | | | | | | | | | | POST /_matrix/client/api/v1/rooms//send/a.b.c gave a 500 error, because we assumed that rooms always had at least one character. | ||||
* | | Support clients supplying older tokens, fix short poll test | Mark Haines | 2015-10-30 | 1 | -2/+2 |
|/ | |||||
* | Merge pull request #319 from matrix-org/erikj/filter_refactor | Erik Johnston | 2015-10-22 | 1 | -26/+31 |
|\ | | | | | Refactor api.filtering to have a Filter API | ||||
| * | Refactor api.filtering to have a Filter API | Erik Johnston | 2015-10-20 | 1 | -26/+31 |
| | | |||||
* | | Merge pull request #314 from matrix-org/paul/event-redaction | Mark Haines | 2015-10-22 | 2 | -0/+115 |
|\ \ | |/ |/| | Add some unit tests of prune_events() | ||||
| * | Add some unit tests of prune_events() | Paul "LeoNerd" Evans | 2015-10-16 | 2 | -0/+115 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into develop | Daniel Wagner-Hall | 2015-10-20 | 2 | -0/+129 |
|\ \ | |||||
| * | | Invoke EventBuilder directly instead of going via the EventBuilderFactory | Paul "LeoNerd" Evans | 2015-10-19 | 1 | -35/+3 |
| | | | |||||
| * | | Capture __init__.py | Paul "LeoNerd" Evans | 2015-10-19 | 1 | -0/+15 |
| | | | |||||
| * | | Use assertIn() instead of assertTrue on the 'in' operator | Paul "LeoNerd" Evans | 2015-10-19 | 1 | -6/+6 |
| | | | |||||
| * | | Another signing test vector using an 'm.room.message' with content, so that ↵ | Paul "LeoNerd" Evans | 2015-10-19 | 1 | -1/+49 |
| | | | | | | | | | | | | the implementation will have to redact it | ||||
| * | | Initial minimial hack at a test of event hashing and signing | Paul "LeoNerd" Evans | 2015-10-19 | 1 | -0/+98 |
| |/ | |||||
* / | Allow rejecting invites | Daniel Wagner-Hall | 2015-10-20 | 1 | -2/+2 |
|/ | | | | | This is done by using the same /leave flow as you would use if you had already accepted the invite and wanted to leave. | ||||
* | update filtering tests | Mark Haines | 2015-10-13 | 1 | -6/+6 |
| | |||||
* | rename schema_prepare to prepare_database | Erik Johnston | 2015-10-13 | 1 | -1/+1 |
| | |||||
* | Expose error more nicely | Erik Johnston | 2015-10-13 | 1 | -1/+1 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/unfederatable | Erik Johnston | 2015-10-02 | 11 | -98/+391 |
|\ | |||||
| * | synapse/storage/_base.py:_simple_selectupdate_one was unused | Mark Haines | 2015-09-23 | 1 | -20/+0 |
| | | |||||
| * | Move NullSource out of synapse and into tests since it is only used by the tests | Mark Haines | 2015-09-22 | 1 | -1/+17 |
| | | |||||
| * | Implement configurable stats reporting | Daniel Wagner-Hall | 2015-09-22 | 4 | -54/+213 |
| | | | | | | | | | | | | | | | | | | | | SYN-287 This requires that HS owners either opt in or out of stats reporting. When --generate-config is passed, --report-stats must be specified If an already-generated config is used, and doesn't have the report_stats key, it is requested to be set. | ||||
| * | Merge pull request #276 from ↵ | Mark Haines | 2015-09-21 | 1 | -7/+7 |
| |\ | | | | | | | | | | | | | matrix-org/markjh/history_for_rooms_that_have_been_left SPEC-216: Allow users to view the history of rooms that they have left. | ||||
| | * | Allow users to GET individual state events for rooms that they have left | Mark Haines | 2015-09-10 | 1 | -5/+5 |
| | | | |||||
| | * | Allow users that have left the room to view the member list from the point ↵ | Mark Haines | 2015-09-09 | 1 | -2/+2 |
| | | | | | | | | | | | | they left | ||||
| * | | Merge pull request #256 from matrix-org/auth | Daniel Wagner-Hall | 2015-09-14 | 6 | -16/+154 |
| |\ \ | | | | | | | | | Attempt to validate macaroons | ||||
| | * | | s/user_id/user/g for consistency | Daniel Wagner-Hall | 2015-09-01 | 5 | -15/+15 |
| | | | | |||||
| | * | | Turn TODO into thing which actually will fail | Daniel Wagner-Hall | 2015-08-26 | 1 | -6/+9 |
| | | | | |||||
| | * | | Attempt to validate macaroons | Daniel Wagner-Hall | 2015-08-26 | 6 | -27/+162 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A couple of weird caveats: * If we can't validate your macaroon, we fall back to checking that your access token is in the DB, and ignoring the failure * Even if we can validate your macaroon, we still have to hit the DB to get the access token ID, which we pretend is a device ID all over the codebase. This mostly adds the interesting code, and points out the two pieces we need to delete (and necessary conditions) in order to fix the above caveats. | ||||
* | | | | Merge branch 'erikj/check_room_exists' into erikj/unfederatable | Erik Johnston | 2015-09-01 | 1 | -8/+29 |
|\| | | | |||||
| * | | | Fix tests | Erik Johnston | 2015-09-01 | 1 | -8/+29 |
| | |/ | |/| | |||||
* / | | Check against sender rather than event_id | Erik Johnston | 2015-09-01 | 1 | -1/+1 |
|/ / | |||||
* / | Swap out bcrypt for md5 in tests | Daniel Wagner-Hall | 2015-08-26 | 1 | -0/+13 |
|/ | | | | This reduces our ~8 second sequential test time down to ~7 seconds | ||||
* | Stop looking up "admin", which we never read | Daniel Wagner-Hall | 2015-08-25 | 7 | -18/+2 |
| | |||||
* | Remove completely unused concepts from codebase | Daniel Wagner-Hall | 2015-08-25 | 7 | -20/+4 |
| | | | | | | | | | | Removes device_id and ClientInfo device_id is never actually written, and the matrix.org DB has no non-null entries for it. Right now, it's just cluttering up code. This doesn't remove the columns from the database, because that's fiddly. | ||||
* | Merge branch 'develop' into refresh | Daniel Wagner-Hall | 2015-08-20 | 1 | -1/+2 |
|\ | | | | | | | | | Conflicts: synapse/rest/client/v1/login.py | ||||
| * | Merge pull request #211 from matrix-org/email_in_use | Mark Haines | 2015-08-20 | 1 | -1/+2 |
| |\ | | | | | | | Changes for unique emails | ||||
| | * | Fix tests | David Baker | 2015-08-04 | 1 | -1/+2 |
| | | | |||||
* | | | /tokenrefresh POST endpoint | Daniel Wagner-Hall | 2015-08-20 | 1 | -0/+55 |
| | | | | | | | | | | | | | | | | | | | | | | | | This allows refresh tokens to be exchanged for (access_token, refresh_token). It also starts issuing them on login, though no clients currently interpret them. | ||||
* | | | s/by_token/by_access_token/g | Daniel Wagner-Hall | 2015-08-20 | 8 | -34/+34 |
| | | | | | | | | | | | | We're about to have two kinds of token, access and refresh | ||||
* | | | Move token generation to auth handler | Daniel Wagner-Hall | 2015-08-20 | 1 | -7/+7 |
| | | | | | | | | | | | | | | | I prefer the auth handler to worry about all auth, and register to call into it as needed, than to smatter auth logic between the two. | ||||
* | | | Re-add whitespace around caveat operators | Daniel Wagner-Hall | 2015-08-19 | 1 | -4/+4 |
| | | | |||||
* | | | Remove padding space around caveat operators | Daniel Wagner-Hall | 2015-08-18 | 1 | -4/+4 |
| | | | |||||
* | | | Fix units in test | Daniel Wagner-Hall | 2015-08-18 | 1 | -1/+1 |
| | | | | | | | | | | | | I made the non-test seconds instead of ms, but not the test | ||||
* | | | Fix some formatting to use tuples | Daniel Wagner-Hall | 2015-08-18 | 1 | -1/+1 |
| | | | |||||
* | | | Merge branch 'develop' into auth | Daniel Wagner-Hall | 2015-08-18 | 4 | -5/+104 |
|\| | | |||||
| * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-08-12 | 1 | -2/+2 |
| |\ \ | | | | | | | | | | | | | erikj/dictionary_cache | ||||
| | * | | Remove call to recently removed function in mock | Daniel Wagner-Hall | 2015-08-11 | 1 | -2/+2 |
| | | | | |||||
| * | | | Move all the caches into their own package, synapse.util.caches | Erik Johnston | 2015-08-11 | 3 | -5/+3 |
| | | | | |||||
| * | | | Change Cache to not use *args in its interface | Erik Johnston | 2015-08-07 | 1 | -6/+6 |
| | | | | |||||
| * | | | Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cache | Erik Johnston | 2015-08-06 | 1 | -4/+7 |
| |\ \ \ | |||||
| * | | | | Use dictionary cache to do group -> state fetching | Erik Johnston | 2015-08-05 | 1 | -1/+1 |
| | | | | | |||||
| * | | | | Move DictionaryCache | Erik Johnston | 2015-08-04 | 1 | -1/+1 |
| | | | | | |||||
| * | | | | Add basic dictionary cache | Erik Johnston | 2015-08-04 | 1 | -0/+101 |
| | |_|/ | |/| | | |||||
* | | | | Issue macaroons as opaque auth tokens | Daniel Wagner-Hall | 2015-08-18 | 2 | -0/+72 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This just replaces random bytes with macaroons. The macaroons are not inspected by the client or server. In particular, they claim to have an expiry time, but nothing verifies that they have not expired. Follow-up commits will actually enforce the expiration, and allow for token refresh. See https://bit.ly/matrix-auth for more information | ||||
* | | | | Remove call to recently removed function in mock | Daniel Wagner-Hall | 2015-08-11 | 1 | -2/+2 |
| |_|/ |/| | | |||||
* | | | Change Cache to not use *args in its interface | Erik Johnston | 2015-08-07 | 1 | -6/+6 |
| |/ |/| | |||||
* | | Merge branch 'erikj/cached_keyword_args' into erikj/cache_deferreds | Erik Johnston | 2015-08-06 | 1 | -0/+134 |
|\| | |||||
| * | Use the same reg paths as register v1 for ASes. | Kegan Dougal | 2015-07-29 | 1 | -1/+3 |
| | | | | | | | | Namely this means using registration_handler.appservice_register. | ||||
| * | Fix v2_alpha registration. Add unit tests. | Kegan Dougal | 2015-07-28 | 1 | -0/+132 |
| | | | | | | | | | | | | | | | | V2 Registration forced everyone (including ASes) to create a password for a user, when ASes should be able to omit passwords. Also unbreak AS registration in general which checked too early if the given username was claimed by an AS; it was checked before knowing if the AS was the one doing the registration! Add unit tests for AS reg, user reg and disabled_registration flag. | ||||
* | | Make @cached cache deferreds rather than the deferreds' values | Erik Johnston | 2015-08-06 | 1 | -4/+7 |
|/ | |||||
* | Fix test. | Erik Johnston | 2015-07-07 | 1 | -1/+11 |
| | |||||
* | Consolidate duplicate code in notifier | Erik Johnston | 2015-07-02 | 1 | -10/+10 |
| | |||||
* | Add receipts_key to StreamToken | Erik Johnston | 2015-07-02 | 1 | -2/+2 |
| | |||||
* | Fix bug where synapse was sending AS user queries incorrectly. | Kegan Dougal | 2015-06-17 | 1 | -0/+43 |
| | | | | | | Bug introduced in 92b20713d7c6346aeb20dc09963081e472752bb5 which reversed the comparison when checking if a user existed in the users table. Added UTs to prevent this happening again. | ||||
* | Fix tests | Erik Johnston | 2015-06-12 | 1 | -0/+2 |
| | |||||
* | Merge pull request #180 from matrix-org/erikj/prev_state_context | Erik Johnston | 2015-06-03 | 1 | -0/+2 |
|\ | | | | | Don't needlessly compute prev_state | ||||
| * | Don't needlessly compute prev_state | Erik Johnston | 2015-06-03 | 1 | -0/+2 |
| | | |||||
* | | Merge pull request #179 from matrix-org/erikj/state_group_outliers | Erik Johnston | 2015-06-03 | 1 | -2/+2 |
|\ \ | | | | | | | Don't compute EventContext for outliers. | ||||
| * | | Don't needlessly compute context | Erik Johnston | 2015-06-03 | 1 | -2/+2 |
| |/ | |||||
* / | Caches should be bound to instances. | Erik Johnston | 2015-06-03 | 2 | -36/+50 |
|/ | | | | | Before, caches were global and so different instances of the stores would share caches. This caused problems in the unit tests. | ||||
* | Fix the presence tests | Mark Haines | 2015-05-22 | 3 | -17/+23 |
| | |||||
* | Merge pull request #157 from matrix-org/markjh/presence_performance | Mark Haines | 2015-05-22 | 2 | -10/+6 |
|\ | | | | | Improve presence performance in loadtest | ||||
| * | Fix the presence tests | Mark Haines | 2015-05-20 | 2 | -10/+6 |
| | | |||||
* | | Make the appservice use 'users_in_room' rather than get_room_members since ↵ | Mark Haines | 2015-05-22 | 1 | -12/+3 |
| | | | | | | | | it is cached | ||||
* | | Oops, get_rooms_for_user returns a namedtuple, not a room_id | Mark Haines | 2015-05-21 | 1 | -1/+6 |
| | | |||||
* | | Merge pull request #155 from matrix-org/erikj/perf | Erik Johnston | 2015-05-21 | 1 | -1/+2 |
|\ \ | |/ |/| | Bulk and batch retrieval of events. | ||||
| * | Merge branch 'erikj/events_move' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-05-18 | 2 | -48/+13 |
| |\ | | | | | | | | | | erikj/perf | ||||
| * | | Fix daedlock | Erik Johnston | 2015-05-15 | 1 | -1/+2 |
| | | | |||||
* | | | Merge branch 'develop' into notifier_performance | Mark Haines | 2015-05-18 | 2 | -48/+13 |
|\ \ \ | | |/ | |/| | |||||
| * | | Remove unused arguments and doc PresenceHandler.push_update_to_clients | Mark Haines | 2015-05-14 | 2 | -48/+13 |
| |/ | |||||
* | | Discard unused NotifierUserStreams | Mark Haines | 2015-05-13 | 2 | -0/+4 |
| | | |||||
* | | Don't bother checking for updates if the stream token hasn't advanced for a user | Mark Haines | 2015-05-13 | 5 | -17/+24 |
|/ | |||||
* | Add support for using executemany | Erik Johnston | 2015-05-05 | 1 | -2/+2 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into postgres | Erik Johnston | 2015-04-28 | 4 | -13/+13 |
|\ | |||||
| * | Merge branch 'develop' into csauth | David Baker | 2015-04-24 | 1 | -0/+65 |
| |\ | | | | | | | | | | | | | Conflicts: synapse/http/server.py | ||||
| * \ | Merge branch 'develop' into csauth | David Baker | 2015-04-17 | 7 | -61/+677 |
| |\ \ | |||||
| * | | | Fix tests | David Baker | 2015-03-24 | 5 | -14/+14 |
| | | | | |||||
| * | | | Don't test exact equality of the list: as long as it has the fields we ↵ | David Baker | 2015-03-24 | 1 | -6/+5 |
| | | | | | | | | | | | | | | | | expect, that's just fine. I added the user_id (as in database pkey) and it broke: no point testing what that comes out as: it's determined by the db. | ||||
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into postgres | Erik Johnston | 2015-04-27 | 1 | -0/+65 |
|\ \ \ \ | | |_|/ | |/| | | |||||
| * | | | Remove users from the remote_offline_serials list (and clean up empty ↵ | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -0/+27 |
| | | | | | | | | | | | | | | | | elements) when they go online again | ||||
| * | | | Store a list of the presence serial number at which remote users went ↵ | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -0/+38 |
| | |/ | |/| | | | | | | | offline, so that when we delete them from the cachemap, we can still synthesize OFFLINE events for them (SYN-261) | ||||
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into postgres | Erik Johnston | 2015-04-17 | 2 | -8/+24 |
|\| | | |||||
| * | | Various minor fixes to unit-test structure around typing notifications | Paul "LeoNerd" Evans | 2015-04-15 | 2 | -2/+11 |
| | | | |||||
| * | | Have TypingNotificationEventSource.get_new_events_for_user() return a ↵ | Paul "LeoNerd" Evans | 2015-04-15 | 2 | -7/+14 |
| | | | | | | | | | | | | deferred, for consistency and extensibility | ||||
* | | | Fix tests after commit 9a0579 | Erik Johnston | 2015-04-08 | 1 | -0/+6 |
| | | | |||||
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into mysql | Erik Johnston | 2015-04-07 | 5 | -56/+691 |
|\| | | |||||
| * | | Merge branch 'develop' into application-services-registration-script | Kegan Dougal | 2015-04-01 | 1 | -0/+13 |
| |\ \ | |||||
| | * | | Fix thinko whereby events *for the AS specifically* were not passed on. | Kegan Dougal | 2015-03-31 | 1 | -0/+13 |
| | | | | | | | | | | | | | | | | | | | | This was caused by not explicitly checking the service.sender field. This has now been fixed and a regression test has been added. | ||||
| * | | | Use a sender localpart instead of a user ID. | Kegan Dougal | 2015-03-31 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | | | Form the user ID at runtime instead, This gives less room for error in AS config files since they cannot specify the domain of another HS. | ||||
| * | | | Edit SQL schema to use string IDs not ints. Use token as ID. Update tests. | Kegan Dougal | 2015-03-31 | 1 | -15/+23 |
| | | | | |||||
| * | | | Fix tests and missing returns on deferreds. | Kegan Dougal | 2015-03-31 | 1 | -12/+29 |
| | | | | |||||
| * | | | Remove more reg/unreg methods. Read config not database for cache. | Kegan Dougal | 2015-03-31 | 1 | -39/+0 |
| |/ / | |||||
| * | | Merge branch 'develop' into application-services-txn-reliability | Kegan Dougal | 2015-03-26 | 3 | -3/+75 |
| |\ \ | | | | | | | | | | | | | | | | | Conflicts: synapse/storage/__init__.py | ||||
| | * | | Allow a choice of LRU behaviour for Cache() by using LruCache() or OrderedDict() | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -0/+22 |
| | | | | |||||
| | * | | Unit-test that Cache() key eviction is ordered | Paul "LeoNerd" Evans | 2015-03-25 | 1 | -0/+18 |
| | |/ | |||||
| | * | Pull out the cache logic from the @cached wrapper into its own class we can ↵ | Paul "LeoNerd" Evans | 2015-03-20 | 1 | -1/+33 |
| | | | | | | | | | | | | reuse | ||||
| * | | Implement ServiceQueuer with tests. | Kegan Dougal | 2015-03-16 | 1 | -7/+47 |
| | | | |||||
| * | | Replace EventGrouper for ServiceQueuer to move to push-based txns. Fix tests ↵ | Kegan Dougal | 2015-03-16 | 1 | -73/+27 |
| | | | | | | | | | | | | and add stub tests for ServiceQueuer. | ||||
| * | | Minor PR comment tweaks. | Kegan Dougal | 2015-03-16 | 1 | -5/+5 |
| | | | |||||
| * | | Merge branch 'develop' into application-services-txn-reliability | Kegan Dougal | 2015-03-16 | 5 | -10/+171 |
| |\ \ | | | | | | | | | | | | | | | | | Conflicts: synapse/storage/appservice.py | ||||
| * | | | Use event IDs instead of dumping event content in the txns table. | Kegan Dougal | 2015-03-09 | 1 | -13/+17 |
| | | | | |||||
| * | | | Use seconds; start gluing in the AS scheduler into the AS handler. | Kegan Dougal | 2015-03-09 | 2 | -7/+10 |
| | | | | |||||
| * | | | Finish appservice txn storage impl and tests. | Kegan Dougal | 2015-03-09 | 1 | -0/+68 |
| | | | | |||||
| * | | | Implement create_appservice_txn with tests. | Kegan Dougal | 2015-03-09 | 1 | -0/+67 |
| | | | | |||||
| * | | | Partially implement txn store methods with tests. | Kegan Dougal | 2015-03-09 | 1 | -2/+169 |
| | | | | |||||
| * | | | Update UTs | Kegan Dougal | 2015-03-06 | 1 | -5/+5 |
| | | | | |||||
| * | | | Apply clarity and docstrings | Kegan Dougal | 2015-03-06 | 1 | -1/+1 |
| | | | | |||||
| * | | | Finish synapse.appservice.scheduler implementation. | Kegan Dougal | 2015-03-06 | 1 | -2/+113 |
| | | | | | | | | | | | | | | | | | | | | With tests to assert behaviour. Not hooked up yet. Stub datastore methods not implemented yet. | ||||
| * | | | Flesh out more stub functions. | Kegan Dougal | 2015-03-06 | 1 | -2/+3 |
| | | | | |||||
| * | | | Add more tests; fix bugs. | Kegan Dougal | 2015-03-06 | 1 | -7/+47 |
| | | | | |||||
| * | | | Start adding some tests | Kegan Dougal | 2015-03-06 | 1 | -0/+106 |
| | | | | |||||
* | | | | Make work in both Maria and SQLite. Fix tests | Erik Johnston | 2015-04-01 | 10 | -52/+83 |
| |_|/ |/| | | |||||
* | | | Tidy up _simple_... methods | Erik Johnston | 2015-03-20 | 2 | -2/+2 |
| |/ |/| | |||||
* | | Add an .inc_by() method to CounterMetric; implement DistributionMetric a ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+2 |
| | | | | | | | | neater way | ||||
* | | Rename TimerMetric to DistributionMetric; as it could count more than just time | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -12/+12 |
| | | |||||
* | | Export CacheMetric as hits+total, rather than hits+misses, as it's easier to ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+3 |
| | | | | | | | | derive hit ratio from that | ||||
* | | Prometheus needs "escaped" label values | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -27/+27 |
| | | |||||
* | | Bugfix to rendering output of vectored TimerMetrics | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -4/+4 |
| | | |||||
* | | Rename Metrics' "keys" to "labels" | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -3/+3 |
| | | |||||
* | | Initial hack at a TimerMetric; for storing counts + duration accumulators | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+35 |
| | | |||||
* | | Implement vector CallbackMetrics | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+17 |
| | | |||||
* | | Rename CacheCounterMetric to just CacheMetric; add a CallbackMetric ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -9/+15 |
| | | | | | | | | component to give the size of the cache | ||||
* | | Initial attempt at a scalar callback-based metric to give instantaneous ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+21 |
| | | | | | | | | snapshot gauges | ||||
* | | Create the concept of a cachecounter metric; generating two counters ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+26 |
| | | | | | | | | specific to caches | ||||
* | | Initial tiny attempt at (vectorable) counter metrics | Paul "LeoNerd" Evans | 2015-03-12 | 2 | -0/+61 |
| | | |||||
* | | Fix tests | Erik Johnston | 2015-03-09 | 3 | -10/+10 |
|/ | |||||
* | Merge pull request #93 from matrix-org/application-services-exclusive | Kegsay | 2015-03-02 | 2 | -19/+80 |
|\ | | | | | Application services exclusive flag support | ||||
| * | Add more unit tests for exclusive namespaces. | Kegan Dougal | 2015-02-27 | 2 | -2/+50 |
| | | |||||
| * | Update unit tests to use new format. | Kegan Dougal | 2015-02-27 | 2 | -19/+32 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into batched_get_pdu | Erik Johnston | 2015-03-02 | 2 | -0/+113 |
|\ \ | |||||
| * | | Fix unit tests | Kegan Dougal | 2015-02-27 | 1 | -0/+3 |
| |/ | |||||
| * | Use cache.pop() instead of a separate membership test + del [] | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -0/+7 |
| | | |||||
| * | Merge remote-tracking branch 'origin/develop' into ↵ | Paul "LeoNerd" Evans | 2015-02-23 | 2 | -0/+2 |
| |\ | | | | | | | | | | performance-cache-improvements | ||||
| * | | Allow @cached-wrapped functions to have a prefill method for setting entries | Paul "LeoNerd" Evans | 2015-02-23 | 1 | -0/+14 |
| | | | |||||
| * | | Take named arguments to @cached() decorator, add a 'max_entries' limit | Paul "LeoNerd" Evans | 2015-02-19 | 1 | -0/+89 |
| | | | |||||
* | | | Fix presence tests | Erik Johnston | 2015-02-23 | 1 | -15/+28 |
| |/ |/| | |||||
* | | Update tests | Erik Johnston | 2015-02-19 | 2 | -0/+2 |
|/ | |||||
* | Use git aware version string in User-Agent and Server headers | Erik Johnston | 2015-02-18 | 1 | -2/+8 |
| | |||||
* | Merge pull request #50 from matrix-org/application-services | Mark Haines | 2015-02-13 | 7 | -1/+532 |
|\ | | | | | Application Services | ||||
| * | Fix tests which broke when event caching was introduced. | Kegan Dougal | 2015-02-11 | 1 | -1/+4 |
| | | |||||
| * | Merge branch 'develop' into application-services | Kegan Dougal | 2015-02-11 | 26 | -362/+200 |
| |\ | |||||
| * | | Notify ASes for events sent by other users in a room which an AS user is a ↵ | Kegan Dougal | 2015-02-11 | 1 | -0/+25 |
| | | | | | | | | | | | | part of. | ||||
| * | | Remove unused imports. | Kegan Dougal | 2015-02-09 | 1 | -2/+2 |
| | | | |||||
| * | | Modify auth.get_user_by_req for authing appservices directly. | Kegan Dougal | 2015-02-09 | 3 | -1/+145 |
| | | | | | | | | | | | | | | | | | | Add logic to map the appservice token to the autogenned appservice user ID. Add unit tests for all forms of get_user_by_req (user/appservice, valid/bad/missing tokens) | ||||
| * | | Dependency inject ApplicationServiceApi when creating ↵ | Kegan Dougal | 2015-02-05 | 1 | -7/+3 |
| | | | | | | | | | | | | ApplicationServicesHandler. | ||||
| * | | Merge branch 'develop' into application-services | Kegan Dougal | 2015-02-05 | 1 | -1/+4 |
| |\ \ | |||||
| * | | | Fix unit tests. | Kegan Dougal | 2015-02-05 | 1 | -2/+5 |
| | | | | |||||
| * | | | Add unit test for appservice_handler.query_room_alias_exists | Kegan Dougal | 2015-02-05 | 1 | -1/+30 |
| | | | | |||||
| * | | | Add unknown user ID check. Use store.get_aliases_for_room(room_id) when ↵ | Kegan Dougal | 2015-02-05 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | searching for services by alias. | ||||
| * | | | Add hs_token column and generate a different token f.e application service. | Kegan Dougal | 2015-02-05 | 1 | -4/+6 |
| | | | | |||||
| * | | | Fix bug in store defer. Add more unit tests. | Kegan Dougal | 2015-02-04 | 3 | -5/+193 |
| | | | | |||||
| * | | | Begin to add unit tests for appservice glue and regex testing. | Kegan Dougal | 2015-02-04 | 3 | -0/+140 |
| | | | | |||||
* | | | | Merge pull request #62 from matrix-org/state-chache | Erik Johnston | 2015-02-11 | 1 | -1/+6 |
|\ \ \ \ | |_|_|/ |/| | | | State chache | ||||
| * | | | Fix tests | Erik Johnston | 2015-02-09 | 1 | -1/+6 |
| | |/ | |/| | |||||
* | | | Add a cache for get_event | Mark Haines | 2015-02-11 | 2 | -2/+4 |
| | | | |||||
* | | | Add a lru cache class | Mark Haines | 2015-02-11 | 1 | -0/+56 |
| | | | |||||
* | | | Factor out some of the common homeserver setup code into a | Mark Haines | 2015-02-11 | 25 | -360/+140 |
|/ / | | | | | | | setup_test_homeserver function in utils. | ||||
* / | Try to ensure we don't persist an event we have already persisted. In ↵ | Erik Johnston | 2015-02-03 | 1 | -1/+4 |
|/ | | | | persist_event check if we already have the event, if so then update instead of replacing so that we don't cause a bump of the stream_ordering. | ||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into rejections | Erik Johnston | 2015-01-30 | 3 | -3/+614 |
|\ | | | | | | | | | Conflicts: synapse/storage/schema/im.sql | ||||
| * | Merge pull request #37 from matrix-org/client_v2_filter | Erik Johnston | 2015-01-30 | 3 | -3/+614 |
| |\ | | | | | | | Client v2 filter | ||||
| | * | Create a separate filter object to do the actual filtering, so that we can | Mark Haines | 2015-01-29 | 1 | -51/+57 |
| | | | | | | | | | | | | | | | split the storage and management of filters from the actual filter code and don't have to load a filter from the db each time we filter an event | ||||
| | * | Merge in auth changes from develop | Mark Haines | 2015-01-29 | 1 | -0/+1 |
| | | | |||||
| | * | Merge changes from develop | Mark Haines | 2015-01-29 | 5 | -4/+20 |
| | |\ | |||||
| | * | | Add filter_room_state unit tests. | Kegan Dougal | 2015-01-29 | 1 | -0/+56 |
| | | | | |||||
| | * | | Add basic filtering public API unit tests. Use defers in the right places. | Kegan Dougal | 2015-01-29 | 1 | -1/+53 |
| | | | | |||||
| | * | | Add more unit tests for the filter algorithm. | Kegan Dougal | 2015-01-29 | 1 | -5/+259 |
| | | | | |||||
| | * | | Implement filter algorithm. Add basic event type unit tests to assert it works. | Kegan Dougal | 2015-01-29 | 1 | -1/+44 |
| | | | |