Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add filter param to /messages API | Erik Johnston | 2016-07-14 | 1 | -4/+12 |
| | |||||
* | Add ReadWriteLock for pagination and history prune | Erik Johnston | 2016-07-05 | 1 | -34/+36 |
| | |||||
* | Add purge_history API | Erik Johnston | 2016-07-05 | 1 | -0/+13 |
| | |||||
* | Poke notifier on next reactor tick | Erik Johnston | 2016-06-03 | 1 | -4/+7 |
| | |||||
* | Merge pull request #787 from matrix-org/markjh/liberate_presence_handler | Mark Haines | 2016-05-17 | 1 | -2/+2 |
|\ | | | | | Move the presence handler out of the Handlers object | ||||
| * | Move the presence handler out of the Handlers object | Mark Haines | 2016-05-16 | 1 | -2/+2 |
| | | |||||
* | | Spell "domain" correctly | Mark Haines | 2016-05-16 | 1 | -2/+2 |
|/ | | | | s/domian/domain/g | ||||
* | move filter_events_for_client out of base handler | Mark Haines | 2016-05-11 | 1 | -8/+10 |
| | |||||
* | Shuffle when we get the signing_key attribute. | Mark Haines | 2016-05-11 | 1 | -2/+2 |
| | | | | | | | | Wait until we sign a message to get the signing key from the homeserver config. This means that the message handler can be created without having a signing key in the config which means that separate processes like the pusher that don't send messages and don't need to sign them can still access the handlers. | ||||
* | Move _create_new_client_event and handle_new_client_event out of base handler | Mark Haines | 2016-05-11 | 1 | -2/+197 |
| | |||||
* | Run filter_events_for_client | David Baker | 2016-04-27 | 1 | -4/+4 |
| | | | | so we don't accidentally mail out events people shouldn't see | ||||
* | Remove some unused functions (#711) | Mark Haines | 2016-04-08 | 1 | -29/+0 |
| | | | | | | | | * Remove some unused functions * get_room_events_stream is only used in tests * is_exclusive_room might actually be something we want | ||||
* | Call profile handler get_displayname directly rather than using ↵ | Mark Haines | 2016-04-07 | 1 | -9/+1 |
| | | | | collect_presencelike_data | ||||
* | Use computed prev event ids | Erik Johnston | 2016-04-01 | 1 | -1/+5 |
| | |||||
* | Add concurrently_execute function | Erik Johnston | 2016-04-01 | 1 | -8/+2 |
| | |||||
* | Merge pull request #618 from matrix-org/markjh/pushrule_stream | Mark Haines | 2016-03-04 | 1 | -2/+2 |
|\ | | | | | Add a stream for push rule updates | ||||
| * | Merge branch 'develop' into markjh/pushrule_stream | Mark Haines | 2016-03-04 | 1 | -3/+5 |
| |\ | |||||
| * | | Hook up the push rules to the notifier | Mark Haines | 2016-03-03 | 1 | -2/+2 |
| | | | |||||
* | | | Spelling | Erik Johnston | 2016-03-04 | 1 | -1/+1 |
| | | | |||||
* | | | Add profile information to invites | Erik Johnston | 2016-03-04 | 1 | -2/+15 |
| |/ |/| | |||||
* | | Pass whole requester to ratelimiting | Daniel Wagner-Hall | 2016-03-03 | 1 | -3/+5 |
|/ | | | | This will enable more detailed decisions | ||||
* | Merge pull request #582 from matrix-org/erikj/presence | Erik Johnston | 2016-02-19 | 1 | -11/+3 |
|\ | | | | | Rewrite presence for performance. | ||||
| * | Initial cut | Erik Johnston | 2016-02-17 | 1 | -11/+3 |
| | | |||||
* | | Review comments | Daniel Wagner-Hall | 2016-02-18 | 1 | -1/+1 |
| | | |||||
* | | Some cleanup | Daniel Wagner-Hall | 2016-02-16 | 1 | -4/+10 |
| | | |||||
* | | Branch off member and non member sends | Daniel Wagner-Hall | 2016-02-15 | 1 | -32/+34 |
| | | | | | | | | Unclean, needs tidy-up, but works | ||||
* | | Merge implementation of /join by alias or ID | Daniel Wagner-Hall | 2016-02-15 | 1 | -7/+13 |
|/ | | | | | This code is kind of rough (passing the remote servers down a long chain), but is a step towards improvement. | ||||
* | Allow paginating backwards from stream token | Erik Johnston | 2016-01-28 | 1 | -6/+9 |
| | |||||
* | Make it possible to paginate forwards from stream tokens | Richard van der Hoff | 2016-01-27 | 1 | -22/+21 |
| | | | | | In order that we can fill the gap after a /sync, make it possible to paginate forwards from a stream token. | ||||
* | Allow non-guests to peek on rooms using /events | Daniel Wagner-Hall | 2016-01-20 | 1 | -47/+46 |
| | |||||
* | Require unbanning before other membership changes | Daniel Wagner-Hall | 2016-01-15 | 1 | -12/+45 |
| | |||||
* | Skip, rather than erroring, invalid guest requests | Daniel Wagner-Hall | 2016-01-05 | 1 | -2/+2 |
| | | | | | | | | | | Erroring causes problems when people make illegal requests, because they don't know what limit parameter they should pass. This is definitely buggy. It leaks message counts for rooms people don't have permission to see, via tokens. But apparently we already consciously decided to allow that as a team, so this preserves that behaviour. | ||||
* | Move the doc string to the public facing method | Mark Haines | 2015-12-22 | 1 | -16/+17 |
| | |||||
* | Add a cache for initialSync responses that expires after 5 minutes | Mark Haines | 2015-12-22 | 1 | -1/+23 |
| | |||||
* | Make state updates in the C+S API idempotent | Mark Haines | 2015-12-02 | 1 | -0/+12 |
| | |||||
* | Fix typo in collect_presencelike_data | Mark Haines | 2015-12-02 | 1 | -1/+1 |
| | |||||
* | Wrap calls to distributor.fire in appropriately named functions so that ↵ | Mark Haines | 2015-12-01 | 1 | -4/+6 |
| | | | | static analysis can work out want is calling what | ||||
* | Add API for setting account_data globaly or on a per room basis | Mark Haines | 2015-12-01 | 1 | -6/+34 |
| | |||||
* | Merge pull request #375 from matrix-org/daniel/guestroominitialsync | Daniel Wagner-Hall | 2015-11-23 | 1 | -10/+15 |
|\ | | | | | Clean up room initialSync for guest users | ||||
| * | Clean up room initialSync for guest users | Daniel Wagner-Hall | 2015-11-13 | 1 | -10/+15 |
| | | |||||
* | | s/private_user_data/account_data/ | Mark Haines | 2015-11-18 | 1 | -6/+6 |
|/ | |||||
* | Merge pull request #367 from matrix-org/daniel/readafterleave | Daniel Wagner-Hall | 2015-11-12 | 1 | -10/+11 |
|\ | | | | | | | | | Merge pull request #367 from matrix-org/daniel/readafterleave Tweak guest access permissions | ||||
| * | Tweak guest access permissions | Daniel Wagner-Hall | 2015-11-12 | 1 | -10/+11 |
| | | | | | | | | | | | | * Allow world_readable rooms to be read by guests who have joined and left * Allow regular users to access world_readable rooms | ||||
* | | Merge pull request #360 from matrix-org/daniel/guestroominitialsync | Daniel Wagner-Hall | 2015-11-12 | 1 | -23/+32 |
|\ \ | |/ |/| | | | | | Merge pull request #360 from matrix-org/daniel/guestroominitialsync Allow guest access to room initialSync | ||||
| * | Allow guest access to room initialSync | Daniel Wagner-Hall | 2015-11-11 | 1 | -23/+32 |
| | | |||||
* | | Consider joined guest users as joined users | Daniel Wagner-Hall | 2015-11-12 | 1 | -12/+21 |
|/ | | | | | Otherwise they're inconveniently allowed to write events to the room but not to read them from the room. | ||||
* | Allow guest users to join and message rooms | Daniel Wagner-Hall | 2015-11-10 | 1 | -2/+2 |
| | |||||
* | Open up /events to anonymous users for room events only | Daniel Wagner-Hall | 2015-11-05 | 1 | -13/+34 |
| | | | | Squash-merge of PR #345 from daniel/anonymousevents | ||||
* | Allow guests to register and call /events?room_id= | Daniel Wagner-Hall | 2015-11-04 | 1 | -21/+25 |
| | | | | | | | 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. | ||||
* | Store room tag content and return the content in the m.tag event | Mark Haines | 2015-11-02 | 1 | -4/+2 |
| | |||||
* | Include tags in v1 room initial sync | Mark Haines | 2015-10-30 | 1 | -0/+11 |
| | |||||
* | Include room tags v1 /initialSync | Mark Haines | 2015-10-30 | 1 | -0/+12 |
| | |||||
* | Amalgamate _filter_events_for_client | Erik Johnston | 2015-10-16 | 1 | -50/+4 |
| | |||||
* | Remove unused room_id arg | Erik Johnston | 2015-10-14 | 1 | -5/+5 |
| | |||||
* | Add a flag to initial sync to indicate we want rooms that the user has left | Mark Haines | 2015-10-08 | 1 | -5/+8 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/invite_state | Erik Johnston | 2015-09-25 | 1 | -48/+158 |
|\ | |||||
| * | Clarify that room_initial_sync returns a python dict | Mark Haines | 2015-09-21 | 1 | -1/+1 |
| | | |||||
| * | Fix doc string to point at the right class | Mark Haines | 2015-09-21 | 1 | -2/+3 |
| | | |||||
| * | Add explicit "elif event.membership == Membership.LEAVE" for clarity | Mark Haines | 2015-09-21 | 1 | -1/+2 |
| | | |||||
| * | Clamp the "to" token for /rooms/{roomId}/messages to when the user left | Mark Haines | 2015-09-21 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | the room. There isn't a way for the client to learn a valid "to" token for a room that they have left in the C-S API but that doesn't stop a client making one up. | ||||
| * | Allow users to GET individual state events for rooms that they have left | Mark Haines | 2015-09-10 | 1 | -7/+13 |
| | | |||||
| * | Allow users that have left a room to get the messages that happend in the ↵ | Mark Haines | 2015-09-09 | 1 | -4/+27 |
| | | | | | | | | room before they left | ||||
| * | Remove undocumented and unimplemented 'feedback' parameter from the ↵ | Mark Haines | 2015-09-09 | 1 | -18/+3 |
| | | | | | | | | Client-Server API | ||||
| * | Allow rooms/{roomId}/state for a room that has been left | Mark Haines | 2015-09-09 | 1 | -5/+13 |
| | | |||||
| * | Allow room initialSync for users that have left the room, returning a ↵ | Mark Haines | 2015-09-09 | 1 | -9/+76 |
| | | | | | | | | snapshot of how the room was when they left it | ||||
| * | Include rooms that a user has left in an initialSync. Include the state and ↵ | Mark Haines | 2015-09-08 | 1 | -6/+21 |
| | | | | | | | | messages at the point they left the room | ||||
* | | Bundle in some room state in the unsigned bit of the invite when sending to ↵ | Erik Johnston | 2015-09-10 | 1 | -0/+4 |
|/ | | | | invited servers | ||||
* | Remove completely unused concepts from codebase | Daniel Wagner-Hall | 2015-08-25 | 1 | -6/+3 |
| | | | | | | | | | | 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. | ||||
* | Implement a batched presence_handler.get_state and use it | Erik Johnston | 2015-08-17 | 1 | -12/+6 |
| | |||||
* | Fix _filter_events_for_client | Erik Johnston | 2015-08-12 | 1 | -3/+1 |
| | |||||
* | Simplify staggered deferred lists | Erik Johnston | 2015-08-12 | 1 | -2/+2 |
| | |||||
* | Use list comprehension instead of filter | Erik Johnston | 2015-08-12 | 1 | -10/+3 |
| | |||||
* | Remove debug loggers | Erik Johnston | 2015-08-11 | 1 | -3/+0 |
| | |||||
* | Fix application of ACLs | Erik Johnston | 2015-08-11 | 1 | -4/+12 |
| | |||||
* | Don't be too enthusiatic with defer.gatherResults | Erik Johnston | 2015-08-07 | 1 | -4/+8 |
| | |||||
* | Speed up event filtering (for ACL) logic | Erik Johnston | 2015-08-04 | 1 | -1/+5 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/receipts | Erik Johnston | 2015-07-13 | 1 | -1/+65 |
|\ | |||||
| * | Rename key and values for m.room.history_visibility. Support 'invited' value | Erik Johnston | 2015-07-06 | 1 | -4/+20 |
| | | |||||
| * | Make v1 initial syncs respect room history ACL | Erik Johnston | 2015-07-02 | 1 | -17/+34 |
| | | |||||
| * | Add basic impl for room history ACL on GET /messages client API | Erik Johnston | 2015-07-02 | 1 | -1/+32 |
| | | |||||
* | | Hook up receipts to v1 initialSync | Erik Johnston | 2015-07-08 | 1 | -3/+13 |
|/ | |||||
* | Use another deferred list | Erik Johnston | 2015-06-16 | 1 | -18/+27 |
| | |||||
* | Use DeferredList | Erik Johnston | 2015-06-16 | 1 | -9/+9 |
| | |||||
* | Don't do unecessary db ops in presence.get_state | Erik Johnston | 2015-06-16 | 1 | -0/+1 |
| | |||||
* | Merge pull request #144 from matrix-org/erikj/logging_context | Mark Haines | 2015-05-12 | 1 | -2/+3 |
|\ | | | | | Preserving logging contexts | ||||
| * | Unwrap defer.gatherResults failures | Erik Johnston | 2015-05-12 | 1 | -2/+3 |
| | | |||||
* | | Make get_current_token accept a direction parameter, which tells whether the ↵ | Erik Johnston | 2015-05-12 | 1 | -1/+3 |
| | | | | | | | | source whether we want a token for going 'forwards' or 'backwards' | ||||
* | | Initial hack at wiring together pagination and backfill | Erik Johnston | 2015-05-11 | 1 | -1/+9 |
|/ | |||||
* | Make simple query rather than long one and then throw away half the results | Erik Johnston | 2015-04-30 | 1 | -2/+1 |
| | |||||
* | Do more parellelization for initialSync | Erik Johnston | 2015-04-15 | 1 | -7/+11 |
| | |||||
* | Parellelize initial sync | Erik Johnston | 2015-04-15 | 1 | -2/+8 |
| | |||||
* | Reindent code to be less human-readable to keep pep8 from complaining | Paul "LeoNerd" Evans | 2015-02-12 | 1 | -1/+1 |
| | |||||
* | Appease pyflakes | Paul "LeoNerd" Evans | 2015-02-12 | 1 | -1/+1 |
| | |||||
* | Can now remove the FIXME too | Paul "LeoNerd" Evans | 2015-02-12 | 1 | -10/+3 |
| | |||||
* | Only attempt to fetch presence state of JOINed members in room initialSync ↵ | Paul "LeoNerd" Evans | 2015-02-12 | 1 | -0/+1 |
| | | | | (SYN-202) | ||||
* | During room intial sync, only calculate current state once. | Erik Johnston | 2015-02-09 | 1 | -10/+22 |
| | |||||
* | SYN-202: Log as WARN the 404 'Presence information not visible' errors ↵ | Erik Johnston | 2015-02-05 | 1 | -5/+12 |
| | | | | instead of as ERROR since they were spamming the logs | ||||
* | Extract the id token of the token when authing users, include the token and ↵ | Mark Haines | 2015-01-28 | 1 | -1/+11 |
| | | | | device_id in the internal meta data for the event along with the transaction id when sending events | ||||
* | Pass the current time to serialize event, rather than passing an | Mark Haines | 2015-01-26 | 1 | -6/+15 |
| | | | | | | HS and getting a clock from it and calling time_msec on the clock. Remove the serialize_event method from the HS since it is no longer needed. | ||||
* | Replace hs.parse_userid with UserID.from_string | Mark Haines | 2015-01-23 | 1 | -6/+7 |
| | |||||
* | Add raw query param for scrollback. | Kegan Dougal | 2015-01-08 | 1 | -2/+5 |
| | |||||
* | Return the raw federation event rather than adding extra keys for federation ↵ | Kegan Dougal | 2015-01-08 | 1 | -2/+3 |
| | | | | data. | ||||
* | Add missing continuation indent. | Erik Johnston | 2015-01-08 | 1 | -1/+2 |
| | |||||
* | Add 'raw' query parameter to expose the event graph and signatures to savvy ↵ | Kegan Dougal | 2015-01-08 | 1 | -2/+4 |
| | | | | clients. | ||||
* | RoomsForUser now has sender instead of user_id | Erik Johnston | 2015-01-06 | 1 | -1/+1 |
| | |||||
* | Update copyright notices | Mark Haines | 2015-01-06 | 1 | -1/+1 |
| | |||||
* | bump_presence_active_time when sending a message event | Mark Haines | 2014-12-19 | 1 | -0/+6 |
| | |||||
* | Don't ratelimit room create events | Mark Haines | 2014-12-19 | 1 | -2/+3 |
| | |||||
* | Merge branch 'release-v0.6.0' into develop | Mark Haines | 2014-12-16 | 1 | -0/+5 |
|\ | |||||
| * | Enable rate limiting for all events | Erik Johnston | 2014-12-16 | 1 | -0/+5 |
| | | |||||
* | | Remove send_message since nothing was calling it. Remove Snapshot because ↵ | Mark Haines | 2014-12-16 | 1 | -38/+0 |
|/ | | | | only send_message was using it | ||||
* | Kill off synapse.api.events.* | Erik Johnston | 2014-12-16 | 1 | -1/+0 |
| | |||||
* | Rename MessageHandler.handle_event. Add a few comments. | Erik Johnston | 2014-12-15 | 1 | -1/+13 |
| | |||||
* | Validate message, topic and name event contents | Erik Johnston | 2014-12-12 | 1 | -1/+1 |
| | |||||
* | Add some basic event validation | Erik Johnston | 2014-12-10 | 1 | -2/+6 |
| | |||||
* | Fix bug when uploading state with empty state_key | Erik Johnston | 2014-12-10 | 1 | -15/+0 |
| | |||||
* | Try and figure out how and why signatures are being changed. | Erik Johnston | 2014-12-10 | 1 | -1/+0 |
| | |||||
* | More bug fixes | Erik Johnston | 2014-12-08 | 1 | -0/+12 |
| | |||||
* | Convert rest and handlers to use new event structure | Erik Johnston | 2014-12-04 | 1 | -1/+22 |
| | |||||
* | Change DomainSpecificString so that it doesn't use a HomeServer object | Erik Johnston | 2014-12-02 | 1 | -1/+1 |
| | |||||
* | Fix bugs in invite/join dances. | Erik Johnston | 2014-11-25 | 1 | -1/+1 |
| | | | | | We now do more implement more of the auth on the events so that we don't reject valid events. | ||||
* | SYN-58: Allow passing explicit limit=0 to initialSync to request no messages ↵ | Paul "LeoNerd" Evans | 2014-11-20 | 1 | -1/+1 |
| | | | | at all; missing still implies default 10 | ||||
* | Fix pep8 codestyle warnings | Mark Haines | 2014-11-20 | 1 | -3/+3 |
| | |||||
* | Add a few missing yields, Move deferred lists inside PreserveLoggingContext ↵ | Mark Haines | 2014-11-20 | 1 | -3/+5 |
| | | | | because they don't interact well with the logging contexts | ||||
* | Remove unused variable | Mark Haines | 2014-11-18 | 1 | -1/+1 |
| | |||||
* | Rename message handler's new snapshot_room to room_initial_sync() as that ↵ | Paul "LeoNerd" Evans | 2014-11-18 | 1 | -1/+1 |
| | | | | better suits its purpose | ||||
* | Include room members' presence in room initialSync | Paul "LeoNerd" Evans | 2014-11-18 | 1 | -1/+22 |
| | |||||
* | Include 'messages' snapshot in room initialSync | Paul "LeoNerd" Evans | 2014-11-18 | 1 | -1/+20 |
| | |||||
* | Merge branch 'develop' into room-initial-sync | Paul "LeoNerd" Evans | 2014-11-17 | 1 | -63/+26 |
|\ | | | | | | | | | Conflicts: synapse/handlers/message.py | ||||
| * | PEP8ify | Erik Johnston | 2014-11-11 | 1 | -9/+12 |
| | | |||||
| * | Only allow people in a room to look up room state. | Erik Johnston | 2014-11-11 | 1 | -34/+4 |
| | | |||||
| * | Implement new replace_state and changed prev_state | Erik Johnston | 2014-11-06 | 1 | -8/+3 |
| | | | | | | | | | | `prev_state` is now a list of previous state ids, similiar to prev_events. `replace_state` now points to what we think was replaced. | ||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2014-10-30 | 1 | -3/+7 |
| |\ | | | | | | | | | | federation_authorization | ||||
| * \ | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2014-10-27 | 1 | -13/+3 |
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | federation_authorization Conflicts: synapse/federation/transport.py synapse/handlers/message.py | ||||
| * | | | Use state groups to get current state. Make join dance actually work. | Erik Johnston | 2014-10-17 | 1 | -3/+3 |
| | | | | |||||
| * | | | Begin making auth use event.old_state_events | Erik Johnston | 2014-10-15 | 1 | -10/+3 |
| | | | | |||||
* | | | | Include room membership in room initialSync | Paul "LeoNerd" Evans | 2014-11-10 | 1 | -1/+7 |
| | | | | |||||
* | | | | Put room state in room initialSync output - I guess this is right; I really ↵ | Paul "LeoNerd" Evans | 2014-11-10 | 1 | -2/+5 |
| | | | | | | | | | | | | | | | | can't find any other tests similar... | ||||
* | | | | Have room initialSync return the room's room_id | Paul "LeoNerd" Evans | 2014-11-10 | 1 | -0/+11 |
| |_|/ |/| | | |||||
* | | | Construct a source-specific 'SourcePaginationConfig' to pass into ↵ | Paul "LeoNerd" Evans | 2014-10-29 | 1 | -3/+7 |
| |/ |/| | | | | | get_pagination_rows; meaning each source doesn't have to care about its own name any more | ||||
* | | SPEC-7: Don't stamp event contents with 'hsob_ts' | Mark Haines | 2014-10-17 | 1 | -13/+3 |
|/ | |||||
* | Implemented /rooms/$roomid/state API. | Kegan Dougal | 2014-09-23 | 1 | -0/+16 |
| | |||||
* | SYWEB-3 : Added 'visibility' key to rooms returned via /initialSync | Kegan Dougal | 2014-09-17 | 1 | -0/+5 |
| | |||||
* | Correctly handle the 'age' key in events and pdus | Erik Johnston | 2014-09-15 | 1 | -3/+3 |
| | |||||
* | Generate m.room.aliases event when the HS creates a room alias | Erik Johnston | 2014-09-05 | 1 | -2/+2 |
| | |||||
* | 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. | ||||
* | Snapshot prev_state for generic events | Erik Johnston | 2014-09-03 | 1 | -1/+6 |
| | |||||
* | rate limiting for message sending | Mark Haines | 2014-09-02 | 1 | -0/+2 |
| | |||||
* | Add message to assertion | Erik Johnston | 2014-09-02 | 1 | -1/+1 |
| | |||||
* | 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/+4 |
| | |||||
* | Perform room unit tests with 'local' users actually in the right domain ;) | Paul "LeoNerd" Evans | 2014-09-01 | 1 | -0/+4 |
| | |||||
* | Rename 'events_key' to 'room_key' so it matches the name of the event source | Paul "LeoNerd" Evans | 2014-08-29 | 1 | -3/+3 |
| | |||||
* | Get the equalities right. | Erik Johnston | 2014-08-29 | 1 | -2/+5 |
| | |||||
* | Split out MessageHandler | Erik Johnston | 2014-08-27 | 1 | -0/+301 |