Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #612 from matrix-org/erikj/cache_size | Erik Johnston | 2016-03-02 | 1 | -0/+4 |
|\ | | | | | Add environment variable SYNAPSE_CACHE_FACTOR, default it to 0.1 | ||||
| * | Add enviroment variable SYNAPSE_CACHE_FACTOR, default it to 0.1 | Erik Johnston | 2016-03-01 | 1 | -0/+4 |
| | | |||||
* | | Add a /replication API for extracting the updates that happened on | Mark Haines | 2016-03-01 | 1 | -0/+19 |
|/ | | | | | | | | | | | | | | | | | | | | | | | | 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 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 | 1 | -19/+45 |
|\ | | | | | 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 | 1 | -17/+36 |
| | | |||||
* | | 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 |
| | | |||||
* | | Pick up currently_active across federation | Erik Johnston | 2016-02-23 | 1 | -0/+1 |
|/ | |||||
* | 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 |
| | |||||
* | 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 | 1 | -0/+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 | 1 | -27/+27 |
| | |||||
* | 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 | 1 | -0/+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 | 1 | -1031/+631 |
| | |||||
* | Fix up logcontexts | Erik Johnston | 2016-02-08 | 1 | -9/+11 |
| | |||||
* | Fix flake8 warnings for new flake8 | Daniel Wagner-Hall | 2016-02-02 | 1 | -1/+1 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 1 | -1/+1 |
| | |||||
* | Wrap calls to distributor.fire in appropriately named functions so that ↵ | Mark Haines | 2015-12-01 | 1 | -7/+11 |
| | | | | static analysis can work out want is calling what | ||||
* | Rename presence_handler.send_invite to presence_handler.send_presence_invite ↵ | Mark Haines | 2015-12-01 | 1 | -1/+1 |
| | | | | to distinguish it from normal invites | ||||
* | Allow guest users to join and message rooms | Daniel Wagner-Hall | 2015-11-10 | 1 | -1/+2 |
| | |||||
* | Open up /events to anonymous users for room events only | Daniel Wagner-Hall | 2015-11-05 | 1 | -2/+2 |
| | | | | Squash-merge of PR #345 from daniel/anonymousevents | ||||
* | Fix some races in the synapse presence handler caused by not yielding on ↵ | Mark Haines | 2015-10-09 | 1 | -3/+8 |
| | | | | deferreds | ||||
* | Typo | Erik Johnston | 2015-08-18 | 1 | -1/+1 |
| | |||||
* | None check | Erik Johnston | 2015-08-18 | 1 | -0/+2 |
| | |||||
* | More helpful variable names | Erik Johnston | 2015-08-18 | 1 | -7/+7 |
| | |||||
* | Doc strings | Erik Johnston | 2015-08-18 | 1 | -0/+28 |
| | |||||
* | Remove debug try/catch | Erik Johnston | 2015-08-18 | 1 | -47/+43 |
| | |||||
* | Implement a batched presence_handler.get_state and use it | Erik Johnston | 2015-08-17 | 1 | -0/+63 |
| | |||||
* | Consolidate duplicate code in notifier | Erik Johnston | 2015-07-02 | 1 | -1/+1 |
| | |||||
* | Don't do unecessary db ops in presence.get_state | Erik Johnston | 2015-06-16 | 1 | -14/+14 |
| | |||||
* | Add a cache for getting the presence list for a user | Mark Haines | 2015-05-22 | 1 | -9/+15 |
| | |||||
* | Remove spurious TODO comment | Mark Haines | 2015-05-22 | 1 | -1/+0 |
| | |||||
* | Removed unused 'is_visible' method | Mark Haines | 2015-05-20 | 1 | -27/+0 |
| | |||||
* | Clean up the presence_list checking logic a bit | Mark Haines | 2015-05-20 | 1 | -12/+9 |
| | |||||
* | Speed up the get_pagination_rows as well | Mark Haines | 2015-05-18 | 1 | -3/+17 |
| | |||||
* | Cache the most recent serial for each room | Mark Haines | 2015-05-18 | 1 | -6/+22 |
| | |||||
* | Move updating the serial and state of the presence cache into a single function | Mark Haines | 2015-05-18 | 1 | -17/+43 |
| | |||||
* | Merge branch 'notifier_performance' into markjh/presence_performance | Mark Haines | 2015-05-18 | 1 | -0/+4 |
|\ | |||||
| * | Merge branch 'develop' into notifier_performance | Mark Haines | 2015-05-18 | 1 | -49/+220 |
| |\ | |||||
| * \ | Merge branch 'notifier_unify' into notifier_performance | Mark Haines | 2015-05-14 | 1 | -20/+6 |
| |\ \ | |||||
| * | | | Don't bother checking for updates if the stream token hasn't advanced for a user | Mark Haines | 2015-05-13 | 1 | -0/+4 |
| | | | | |||||
* | | | | Add more doc string, reduce C+P boilerplate for getting room list | Mark Haines | 2015-05-18 | 1 | -6/+22 |
| |_|/ |/| | | |||||
* | | | More whitespace | Mark Haines | 2015-05-15 | 1 | -0/+1 |
| | | | |||||
* | | | Add some missed argument types, cleanup the whitespace a bit | Mark Haines | 2015-05-14 | 1 | -6/+17 |
| | | | |||||
* | | | More doc-strings | Mark Haines | 2015-05-14 | 1 | -39/+202 |
| | | | |||||
* | | | Remove unused arguments and doc PresenceHandler.push_update_to_clients | Mark Haines | 2015-05-14 | 1 | -12/+8 |
| |/ |/| | |||||
* | | Revert "Improvement to performance of presence event stream handling" | Mark Haines | 2015-05-12 | 1 | -20/+6 |
|/ | |||||
* | Merge pull request #147 from matrix-org/presence-performance | Mark Haines | 2015-05-12 | 1 | -6/+20 |
|\ | | | | | Improvement to performance of presence event stream handling | ||||
| * | Use the presence cachemap ordering to early-abort the iteration loop | Paul "LeoNerd" Evans | 2015-05-07 | 1 | -2/+7 |
| | | |||||
| * | Store presence cachemap in an ordered dict, so that the newer serials will ↵ | Paul "LeoNerd" Evans | 2015-05-07 | 1 | -4/+13 |
| | | | | | | | | be at the end | ||||
* | | Fix up leak. Add warnings. | Erik Johnston | 2015-05-08 | 1 | -4/+6 |
| | | |||||
* | | Change the way we do logging contexts so that they survive divergences | Erik Johnston | 2015-05-08 | 1 | -19/+15 |
|/ | |||||
* | Fix off by one in presence token handling | Erik Johnston | 2015-04-29 | 1 | -1/+1 |
| | |||||
* | Ensure we never miss any presence updates | Erik Johnston | 2015-04-28 | 1 | -1/+7 |
| | |||||
* | Fix typo | Erik Johnston | 2015-04-28 | 1 | -1/+1 |
| | |||||
* | Ensure the serial returned by presence is always an integer | Erik Johnston | 2015-04-28 | 1 | -3/+3 |
| | |||||
* | Remove users from the remote_offline_serials list (and clean up empty ↵ | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -1/+11 |
| | | | | elements) when they go online again | ||||
* | Don't let the remote offline serial list grow arbitrarily large | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -0/+5 |
| | |||||
* | Store a list of the presence serial number at which remote users went ↵ | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -0/+21 |
| | | | | offline, so that when we delete them from the cachemap, we can still synthesize OFFLINE events for them (SYN-261) | ||||
* | Generate presence event-stream JSON structures directly | Paul "LeoNerd" Evans | 2015-04-23 | 1 | -8/+9 |
| | |||||
* | Reduce activity timer granularity to avoid too many quick updates (SYN-247) | Paul "LeoNerd" Evans | 2015-03-23 | 1 | -0/+8 |
| | |||||
* | Appease pep8 | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -2/+3 |
| | |||||
* | Use _ instead of . as a metric namespacing separator, for Prometheus | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -1/+1 |
| | |||||
* | Add a scalar gauge metric on the size of the presence user cachemap | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -0/+7 |
| | |||||
* | Change room handlers get_rooms_for_user to get_joined_rooms_for_user. This ↵ | Erik Johnston | 2015-03-09 | 1 | -3/+3 |
| | | | | uses the a storage api that is cached. | ||||
* | Use consumeErrors=True on all DeferredLists. | Erik Johnston | 2015-02-17 | 1 | -4/+4 |
| | | | | | | This is so that the DeferredLists actually consume the error instead of propogating down the non-existent errback chain. This should reduce the number of unhandled errors we are seeing. | ||||
* | Fix code-style | Mark Haines | 2015-02-10 | 1 | -4/+4 |
| | |||||
* | Code-style fixes | Mark Haines | 2015-02-10 | 1 | -1/+3 |
| | |||||
* | Merge branch 'develop' into pushers | David Baker | 2015-01-28 | 1 | -11/+12 |
|\ | | | | | | | | | | | Conflicts: synapse/handlers/events.py synapse/server.py | ||||
| * | Replace hs.parse_userid with UserID.from_string | Mark Haines | 2015-01-23 | 1 | -11/+12 |
| | | |||||
* | | Reset badge count to zero when last active time is bumped | David Baker | 2015-01-28 | 1 | -0/+5 |
|/ | |||||
* | Update copyright notices | Mark Haines | 2015-01-06 | 1 | -1/+1 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into events_refactor | Erik Johnston | 2014-12-04 | 1 | -5/+7 |
|\ | |||||
| * | @log_function on PresenceStream's get_new_events_for_user() | Paul "LeoNerd" Evans | 2014-12-03 | 1 | -1/+3 |
| | | |||||
| * | Store any incoming presence push in the local cache anyway, even if there's ↵ | Paul "LeoNerd" Evans | 2014-12-03 | 1 | -4/+4 |
| | | | | | | | | no interested observers (yet *hint*) (SYN-115) | ||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into events_refactor | Erik Johnston | 2014-12-03 | 1 | -0/+5 |
|\| | |||||
| * | Extra verbosity on logging of received presence info | Paul "LeoNerd" Evans | 2014-12-02 | 1 | -0/+5 |
| | | |||||
* | | Change DomainSpecificString so that it doesn't use a HomeServer object | Erik Johnston | 2014-12-02 | 1 | -19/+19 |
|/ | |||||
* | Add a few missing yields, Move deferred lists inside PreserveLoggingContext ↵ | Mark Haines | 2014-11-20 | 1 | -21/+27 |
| | | | | because they don't interact well with the logging contexts | ||||
* | Initialise UserPresenceCache instances to always contain a 'presence' key | Paul "LeoNerd" Evans | 2014-11-19 | 1 | -4/+2 |
| | |||||
* | Added ability to .get_state() from the PresenceHandler by returning a ↵ | Paul "LeoNerd" Evans | 2014-11-18 | 1 | -2/+15 |
| | | | | complete m.presence event | ||||
* | Don't expect all _user_cachemap entries to definitely contain a ↵ | Paul "LeoNerd" Evans | 2014-11-18 | 1 | -3/+3 |
| | | | | "last_active" key | ||||
* | Fix pep8 warnings | Mark Haines | 2014-10-30 | 1 | -18/+15 |
| | |||||
* | Fix an off-by-one bug in presence event stream pagination; this might be ↵ | Paul "LeoNerd" Evans | 2014-10-29 | 1 | -1/+1 |
| | | | | responsible for any number of bug reports | ||||
* | Construct a source-specific 'SourcePaginationConfig' to pass into ↵ | Paul "LeoNerd" Evans | 2014-10-29 | 1 | -20/+5 |
| | | | | get_pagination_rows; meaning each source doesn't have to care about its own name any more | ||||
* | Remove redundant (and incorrect) presence pagination fetching code | Paul "LeoNerd" Evans | 2014-10-29 | 1 | -3/+0 |
| | |||||
* | Fix race in presence handler where we evicted things from cache while ↵ | Erik Johnston | 2014-09-06 | 1 | -2/+3 |
| | | | | handling a key therein | ||||
* | fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵ | Matthew Hodgson | 2014-09-03 | 1 | -1/+1 |
| | | | | hasn't been incorporated in time for launch. | ||||
* | Kill the state | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -26/+5 |
| | | | | ... key from all the Presence messages | ||||
* | Bugfix for back-pagination of presence | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -0/+2 |
| | |||||
* | Implement presence state visibilty limiting when polling eventsource for stream | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -9/+57 |
| | |||||
* | Update API docs to use 'presence' key not 'state'. Fixed error messages when ↵ | Kegan Dougal | 2014-09-03 | 1 | -1/+1 |
| | | | | setting presence. | ||||
* | Rename the 'do_users_share_a_room' to something slightly less verb-sounding | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -1/+1 |
| | |||||
* | Neater is_presence_visible() code | Paul "LeoNerd" Evans | 2014-09-03 | 1 | -9/+8 |
| | |||||
* | Safer handling of incoming presence EDUs that may or maynot contain ↵ | Paul "LeoNerd" Evans | 2014-09-02 | 1 | -3/+13 |
| | | | | 'presence' or 'state' | ||||
* | 'continue' to go to the next item in a for loop, not 'break' | Paul "LeoNerd" Evans | 2014-09-02 | 1 | -1/+1 |
| | |||||
* | Reënable presence visibility permission checking now it's not used on ↵ | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -4/+0 |
| | | | | redundant code paths | ||||
* | No need to test is_presence_visible in _start_polling_local because we know ↵ | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -4/+0 |
| | | | | it will be by when it's called | ||||
* | Bump a user's presence last_active time every time they send a message to a room | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -0/+6 |
| | |||||
* | Rename API-visible 'mtime' presence field to 'last_active'; slightly ↵ | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -23/+49 |
| | | | | different semantics | ||||
* | Rename 'state' presence key to the much more obvious 'presence'; maintain a ↵ | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -11/+31 |
| | | | | legacy 'state' copy for now | ||||
* | Bugfixes on presence pushes on user joining: | Paul "LeoNerd" Evans | 2014-08-29 | 1 | -9/+8 |
| | | | | | | | | | * No need to inform clients of status of remote users; as that will arrive in due course anyway. We don't -have- the state currently, so we'd only send an unknown message * Remember to bump the presence serial for the event source, so the notifiers will wake up and report it | ||||
* | Renamed get_current_token_part to get_current_key | Paul "LeoNerd" Evans | 2014-08-29 | 1 | -1/+1 |
| | |||||
* | Have EventSource's get_new_events_for_user() API work only on keys within ↵ | Paul "LeoNerd" Evans | 2014-08-29 | 1 | -10/+4 |
| | | | | that source, not overall eventstream tokens | ||||
* | Move the *EventSource classes into the handlers they relate to, so it's ↵ | Paul "LeoNerd" Evans | 2014-08-29 | 1 | -0/+78 |
| | | | | easier to find the code | ||||
* | Fix a couple of bugs in presence handler related to pushing updatesto the ↵ | Erik Johnston | 2014-08-29 | 1 | -18/+41 |
| | | | | correct user. Fix presence tests. | ||||
* | Turn of trace_function logging | Erik Johnston | 2014-08-28 | 1 | -8/+8 |
| | |||||
* | Only poll remote users if they are in our presence list, rather than in a ↵ | Erik Johnston | 2014-08-28 | 1 | -53/+66 |
| | | | | common room | ||||
* | Don't query the rooms members table so much by using the new notifier api ↵ | Erik Johnston | 2014-08-28 | 1 | -61/+45 |
| | | | | that allows you to specify room_ids to notify. | ||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into presence_logging | Erik Johnston | 2014-08-28 | 1 | -2/+14 |
|\ | | | | | | | | | Conflicts: synapse/handlers/presence.py | ||||
| * | Only send presence "poll"/"unpoll" EDUs when changing from/to zero remotes | Paul "LeoNerd" Evans | 2014-08-28 | 1 | -2/+14 |
| | | |||||
| * | Re-enable presence, un-skip presence tests | Paul "LeoNerd" Evans | 2014-08-28 | 1 | -8/+0 |
| | | |||||
* | | And more logging. | Erik Johnston | 2014-08-28 | 1 | -0/+1 |
| | | |||||
* | | Add more logging. Up the event stream timer to 10s | Erik Johnston | 2014-08-28 | 1 | -0/+2 |
| | | |||||
* | | Add logging to try and figure out what is going on with the presence stuff | Erik Johnston | 2014-08-28 | 1 | -2/+9 |
|/ | |||||
* | Turn off presence again. | Erik Johnston | 2014-08-27 | 1 | -2/+2 |
| | |||||
* | Implement presence event source. Change the way the notifier indexes listeners | Erik Johnston | 2014-08-27 | 1 | -6/+1 |
| | |||||
* | Enable presence again. Fix up api to match old api. | Erik Johnston | 2014-08-26 | 1 | -2/+2 |
| | |||||
* | WIP: Completely change how event streaming and pagination work. This ↵ | Erik Johnston | 2014-08-26 | 1 | -32/+0 |
| | | | | reflects the change in the underlying storage model. | ||||
* | Fix pyflakes errors | Mark Haines | 2014-08-26 | 1 | -1/+1 |
| | |||||
* | Add a do_users_share_a_room method and use that in the presence handler. | Erik Johnston | 2014-08-26 | 1 | -5/+4 |
| | |||||
* | Oops, we need to use defer.returnValue. | Erik Johnston | 2014-08-22 | 1 | -1/+2 |
| | |||||
* | Make is_presence_visible always return true as it was thrashing the database. | Erik Johnston | 2014-08-22 | 1 | -0/+3 |
| | |||||
* | Add indices to schema | Erik Johnston | 2014-08-22 | 1 | -0/+4 |
| | |||||
* | Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor | Erik Johnston | 2014-08-19 | 1 | -3/+0 |
|\ | |||||
| * | Don't delete OFFLINE users from the presence cache, so we can report on ↵ | Paul "LeoNerd" Evans | 2014-08-19 | 1 | -3/+0 |
| | | | | | | | | their offline mtime | ||||
* | | PresenceStreamData was expecting *_key to be ints | Erik Johnston | 2014-08-19 | 1 | -0/+3 |
| | | |||||
* | | Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor | Erik Johnston | 2014-08-19 | 1 | -3/+7 |
|\| | | | | | | | | | | | | | Conflicts: tests/rest/test_presence.py tests/rest/test_rooms.py tests/utils.py | ||||
| * | Perform the 'REST'-level tests of Presence against the real Presence handler ↵ | Paul "LeoNerd" Evans | 2014-08-19 | 1 | -1/+1 |
| | | | | | | | | as well, mocking out the datastore beneath it | ||||
| * | Implement and test presence dropping of remote users | Paul "LeoNerd" Evans | 2014-08-19 | 1 | -2/+6 |
| | | |||||
* | | Change the way pagination works to support out of order events. | Erik Johnston | 2014-08-19 | 1 | -1/+1 |
|/ | |||||
* | Allow room presence visibility between users who share a room | Paul "LeoNerd" Evans | 2014-08-18 | 1 | -7/+5 |
| | |||||
* | improve comment | Matthew Hodgson | 2014-08-16 | 1 | -1/+1 |
| | |||||
* | emergency bodges to turn off presence ACLs in order to make | Matthew Hodgson | 2014-08-16 | 1 | -2/+7 |
| | | | | matrix.org:8080 actually work | ||||
* | When starting to poll for presence, also include members of all shared rooms | Paul "LeoNerd" Evans | 2014-08-15 | 1 | -3/+12 |
| | |||||
* | Round Presence mtime and mtime_age to nearest msec; avoids floats for msec ↵ | Paul "LeoNerd" Evans | 2014-08-14 | 1 | -5/+15 |
| | | | | values over the wire | ||||
* | An initial hack at storing presence state-change mtimes in database and ↵ | Paul "LeoNerd" Evans | 2014-08-13 | 1 | -7/+34 |
| | | | | presenting age durations to clients/federation events | ||||
* | add in whitespace after copyright statements to improve legibility | Matthew Hodgson | 2014-08-13 | 1 | -0/+1 |
| | |||||
* | Reference Matrix Home Server | matrix.org | 2014-08-12 | 1 | -0/+697 |