summary refs log tree commit diff
path: root/synapse/handlers/message.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix incorrect log about not persisting duplicate state event. (#4776)Richard van der Hoff2019-03-011-3/+4
| | | We were logging this when it was not true.
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-291-28/+6
|\ | | | | | | erikj/redactions_eiah
| * Correctly set context.app_serviceErik Johnston2019-01-291-0/+2
| |
| * Refactor event building into EventBuilderErik Johnston2019-01-291-29/+5
| | | | | | | | | | This is so that everything is done in one place, making it easier to change the event format based on room version
* | Implement rechecking of redactionsErik Johnston2019-01-291-1/+5
|/
* Merge pull request #4494 from matrix-org/erikj/fixup_event_validatorErik Johnston2019-01-291-1/+3
|\ | | | | Split up event validation between event and builder
| * Split up event validation between event and builderErik Johnston2019-01-281-1/+3
| | | | | | | | | | | | | | | | | | The validator was being run on the EventBuilder objects, and so the validator only checked a subset of fields. With the upcoming EventBuilder refactor even fewer fields will be there to validate. To get around this we split the validation into those that can be run against an EventBuilder and those run against a fully fledged event.
* | Correctly use default room version if none is setErik Johnston2019-01-281-2/+2
| |
* | Pass through room version to event authErik Johnston2019-01-251-1/+6
|/
* Require event format version to parse or create eventsErik Johnston2019-01-251-1/+9
|
* Revert "Require event format version to parse or create events"Erik Johnston2019-01-251-9/+1
|
* Require event format version to parse or create eventsErik Johnston2019-01-231-1/+9
|
* Log some bits about event creation (#4121)Richard van der Hoff2018-10-311-0/+3
| | | | I found these helpful in debugging my room upgrade tests.
* Refactor state group lookup to reduce DB hits (#4011)Erik Johnston2018-10-251-12/+8
| | | | | | | | Currently when fetching state groups from the data store we make two hits two the database: once for members and once for non-members (unless request is filtered to one or the other). This adds needless load to the datbase, so this PR refactors the lookup to make only a single database hit.
* Remove redundant run_as_background_process() from pusherpoolRichard van der Hoff2018-10-221-1/+1
| | | | | | | `on_new_notifications` and `on_new_receipts` in `HttpPusher` and `EmailPusher` now always return synchronously, so we can remove the `defer.gatherResults` on their results, and the `run_as_background_process` wrappers can be removed too because the PusherPool methods will now complete quickly enough.
* Avoid reraise, to improve stacktracesRichard van der Hoff2018-10-011-12/+13
|
* Merge pull request #3710 from matrix-org/rav/logcontext_for_pusher_updatesRichard van der Hoff2018-08-171-5/+2
|\ | | | | Fix logcontexts for running pushers
| * Fix logcontexts for running pushersRichard van der Hoff2018-08-171-5/+2
| | | | | | | | | | | | | | First of all, avoid resetting the logcontext before running the pushers, to fix the "Starting db txn 'get_all_updated_receipts' from sentinel context" warning. Instead, give them their own "background process" logcontexts.
* | block event creation and room creation on hitting resource limitsNeil Johnson2018-08-161-1/+5
|/
* speed up /members and add at= and membership params (#3568)Matthew Hodgson2018-08-151-12/+76
|
* Rename async to async_helpers because `async` is a keyword on Python 3.7 (#3678)Amber Brown2018-08-101-1/+1
|
* Use new helper base class for ReplicationSendEventRestServletErik Johnston2018-07-311-7/+4
|
* Merge branch 'develop' into erikj/client_apis_moveErik Johnston2018-07-241-12/+19
|\
| * Fix missing attributes on workers.Erik Johnston2018-07-231-2/+3
| | | | | | | | | | This was missed during the transition from attribute to getter for getting state from context.
| * Use new gettersErik Johnston2018-07-231-10/+16
| |
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-07-231-2/+2
|\| | | | | | | erikj/client_apis_move
| * Combine Limiter and LinearizerRichard van der Hoff2018-07-201-2/+2
| | | | | | | | | | Linearizer was effectively a Limiter with max_count=1, so rather than maintaining two sets of code, let's combine them.
| * Improvements to the LimiterRichard van der Hoff2018-07-201-1/+1
| | | | | | | | | | * give them names, to improve logging * use a deque rather than a list for efficiency
* | Move PaginationHandler to its own fileErik Johnston2018-07-201-240/+2
| |
* | Move check_in_room_or_world_readable to AuthErik Johnston2018-07-201-34/+6
| |
* | Split MessageHandler into read only and writersErik Johnston2018-07-181-131/+150
|/ | | | | This will let us call the read only parts from workers, and so be able to move some APIs off of master, e.g. the `/state` API.
* s/becuase/because/gMatthew Hodgson2018-07-101-1/+1
|
* run isortAmber Brown2018-07-091-13/+10
|
* Attempt to be more performant on PyPy (#3462)Amber Brown2018-06-281-3/+2
|
* allow non-consented users to still part rooms (to let us autopart them)Matthew Hodgson2018-06-251-2/+6
|
* Remove all global reactor imports & pass it around explicitly (#3424)Amber Brown2018-06-251-2/+2
|
* Pass around the reactor explicitly (#3385)Amber Brown2018-06-221-0/+1
|
* Remove run_on_reactor (#3395)Amber Brown2018-06-141-3/+1
|
* Exempt AS-registered users from doing gdprRichard van der Hoff2018-05-291-0/+3
|
* Misc. py3 fixesAdrian Tschira2018-05-241-4/+5
| | | | Signed-off-by: Adrian Tschira <nota@notafile.com>
* Merge branch 'release-v0.30.0' into rav/localpart_in_consent_uriRichard van der Hoff2018-05-231-1/+4
|\
| * Support for putting %(consent_uri)s in messagesRichard van der Hoff2018-05-231-1/+4
| | | | | | | | | | Make it possible to put the URI in the error message and the server notice that get sent by the server
* | Use the localpart in the consent uriRichard van der Hoff2018-05-231-1/+3
|/ | | | ... because it's shorter.
* Reject attempts to send event before privacy consent is givenRichard van der Hoff2018-05-221-1/+85
| | | | | | Returns an M_CONSENT_NOT_GIVEN error (cf https://github.com/matrix-org/matrix-doc/issues/1252) if consent is not yet given.
* Make purge_history operate on tokensErik Johnston2018-05-151-6/+6
| | | | As we're soon going to change how topological_ordering works
* Merge branch 'release-v0.28.1' into developRichard van der Hoff2018-05-011-1/+5
|\
| * Apply some limits to depth to counter abuseRichard van der Hoff2018-05-011-1/+5
| | | | | | | | | | | | | | * When creating a new event, cap its depth to 2^63 - 1 * When receiving events, reject any without a sensible depth As per https://docs.google.com/document/d/1I3fi2S-XnpO45qrpCsowZv8P8dHcNZ4fsBsbOW7KABI
* | pep8; remove spurious importRichard van der Hoff2018-04-271-1/+1
| |
* | Merge remote-tracking branch 'origin/develop' into rav/use_run_in_backgroundRichard van der Hoff2018-04-271-13/+30
|\ \
| * \ Merge pull request #3142 from matrix-org/rav/reraiseRichard van der Hoff2018-04-271-7/+14
| |\ \ | | | | | | | | reraise exceptions more carefully
| | * | reraise exceptions more carefullyRichard van der Hoff2018-04-271-7/+14
| | |/ | | | | | | | | | | | | | | | | | | We need to be careful (under python 2, at least) that when we reraise an exception after doing some error handling, we actually reraise the original exception rather than anything that might have been raised (and handled) during the error handling.
| * / Improve exception handling for background processesRichard van der Hoff2018-04-271-6/+16
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were a bunch of places where we fire off a process to happen in the background, but don't have any exception handling on it - instead relying on the unhandled error being logged when the relevent deferred gets garbage-collected. This is unsatisfactory for a number of reasons: - logging on garbage collection is best-effort and may happen some time after the error, if at all - it can be hard to figure out where the error actually happened. - it is logged as a scary CRITICAL error which (a) I always forget to grep for and (b) it's not really CRITICAL if a background process we don't care about fails. So this is an attempt to add exception handling to everything we fire off into the background.
* / Use run_in_background in preference to preserve_fnRichard van der Hoff2018-04-271-2/+3
|/ | | | | | While I was going through uses of preserve_fn for other PRs, I converted places which only use the wrapped function once to use run_in_background, to avoid creating the function object.
* Avoid creating events with huge numbers of prev_eventsRichard van der Hoff2018-04-161-34/+44
| | | | | | In most cases, we limit the number of prev_events for a given event to 10 events. This fixes a particular code path which created events with huge numbers of prev_events.
* Note why we're limiting concurrent event sendsErik Johnston2018-04-101-0/+5
|
* Limit concurrent event sends for a roomErik Johnston2018-04-091-49/+50
|
* Use static JSONEncodersRichard van der Hoff2018-03-291-2/+2
| | | | | using json.dumps with custom options requires us to create a new JSONEncoder on each call. It's more efficient to create one upfront and reuse it.
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2018-03-191-3/+3
|\
| * Replace ujson with simplejsonErik Johnston2018-03-151-3/+3
| |
* | extra_users is actually a list of UserIDsErik Johnston2018-03-131-1/+1
| |
* | Add transactional API to history purgeRichard van der Hoff2018-03-121-5/+99
| | | | | | | | Make the purge request return quickly, and allow scripts to poll for updates.
* | Return an error when doing two purges on a roomRichard van der Hoff2018-03-121-3/+14
| | | | | | | | Queuing up purges doesn't sound like a good thing.
* | Provide a means to pass a timestamp to purge_historyRichard van der Hoff2018-03-051-9/+5
| |
* | Check event auth on the workerErik Johnston2018-03-011-16/+16
| |
* | Correctly send ratelimit and extra_users paramsErik Johnston2018-03-011-0/+2
| |
* | Fixup commentsErik Johnston2018-03-011-4/+4
| |
* | Calculate push actions on workerErik Johnston2018-02-281-25/+61
| |
* | Ensure that we delete staging push actions on errorsErik Johnston2018-02-151-3/+9
| |
* | Merge pull request #2854 from matrix-org/erikj/event_create_workerErik Johnston2018-02-131-6/+22
|\ \ | | | | | | Create a worker for event creation
| * | Move presence handling into handle_new_client_eventErik Johnston2018-02-071-6/+6
| | | | | | | | | | | | As we want to have it run on the main synapse instance
| * | Add replication http endpoint for event sendingErik Johnston2018-02-071-0/+16
| | |
* | | Merge pull request #2858 from matrix-org/rav/purge_updatesRichard van der Hoff2018-02-091-2/+2
|\ \ \ | |/ / |/| | delete_local_events for purge_room_history
| * | delete_local_events for purge_historyRichard van der Hoff2018-02-091-2/+2
| | | | | | | | | | | | Add a flag which makes the purger delete local events
| * | rename delete_old_state -> purge_historyRichard van der Hoff2018-02-091-1/+1
| |/ | | | | | | (beacause it deletes more than state)
* | Remove pointless ratelimit checkErik Johnston2018-02-071-5/+0
| | | | | | | | | | | | The intention was for the check to be called as early as possible in the request, but actually was called just before the main ratelimit check, so was fairly pointless.
* | Update copyrightErik Johnston2018-02-061-1/+1
| |
* | s/_create_new_client_event/create_new_client_event/Erik Johnston2018-02-061-3/+3
| |
* | Split event creation into a separate handlerErik Johnston2018-02-051-146/+160
|/
* replace 'except:' with 'except Exception:'Richard van der Hoff2017-10-231-1/+1
| | | | what could possibly go wrong
* fix isinstanceDavid Baker2017-10-111-1/+1
|
* Allow error strings from spam checkerDavid Baker2017-10-111-2/+6
|
* Merge pull request #2466 from matrix-org/erikj/groups_mergedErik Johnston2017-10-111-1/+2
|\ | | | | Initial Group Implementation
| * Merge branch 'develop' into erikj/groups_mergedDavid Baker2017-10-021-1/+53
| |\
| * | Split out profile handler to fix testsErik Johnston2017-08-251-1/+2
| | |
* | | Merge pull request #2483 from jeremycline/unfreeze-ujson-dumpErik Johnston2017-10-111-1/+2
|\ \ \ | |_|/ |/| | Unfreeze event before serializing with ujson
| * | Unfreeze event before serializing with ujsonJeremy Cline2017-09-301-1/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In newer versions of https://github.com/esnme/ultrajson, ujson does not serialize frozendicts (introduced in esnme/ultrajson@53f85b1). Although the PyPI version is still 1.35, Fedora ships with a build from commit esnme/ultrajson@2f1d487. This causes the serialization to fail if the distribution-provided package is used. This runs the event through the unfreeze utility before serializing it. Thanks to @ignatenkobrain for tracking down the root cause. fixes #2351 Signed-off-by: Jeremy Cline <jeremy@jcline.org>
* | Fix /joined_members to work with AS usersErik Johnston2017-09-281-11/+25
| |
* | Fix bug where /joined_members didn't check user was in roomErik Johnston2017-09-271-0/+31
| |
* | Make the spam checker a moduleDavid Baker2017-09-261-2/+3
| |
* | PoC for filtering spammy events (#2456)Richard van der Hoff2017-09-191-1/+7
|/ | | Demonstration of how you might add some hooks to filter out spammy events.
* Fix bug where pusherpool didn't start and broke some roomsErik Johnston2017-07-061-1/+3
| | | | | | | | Since we didn't instansiate the PusherPool at start time it could fail at run time, which it did for some users. This may or may not fix things for those users, but it should happen at start time and stop the server from starting.
* Remove unused variablesErik Johnston2017-06-261-1/+1
|
* Reject local events that don't round trip the DBErik Johnston2017-06-191-0/+9
|
* Store ActionGenerator in HomeServerErik Johnston2017-05-191-2/+1
|
* Faster push rule calculation via push specific cacheErik Johnston2017-05-171-2/+3
| | | | | We add a push rule specific cache that ensures that we can reuse calculated push rules appropriately when a user join/leaves.
* Add per user ratelimiting overridesErik Johnston2017-05-101-13/+3
|
* Add more granular event send metricsErik Johnston2017-05-021-2/+8
|
* Fix invite state to always include all eventsErik Johnston2017-04-261-6/+3
|
* Remove spurious yieldRichard van der Hoff2017-04-031-1/+1
| | | | | In `MessageHandler`, remove `yield` on call to `Notifier.on_new_room_event`: it doesn't return anything anyway.
* Don't clobber a displayname or avatar_url if provided by an m.room.member eventPaul "LeoNerd" Evans2017-01-241-2/+4
|
* CommentErik Johnston2017-01-101-0/+2
|
* Don't block messages sending on bumping presenceErik Johnston2017-01-101-1/+1
|
* Merge pull request #1620 from matrix-org/erikj/concurrent_room_accessErik Johnston2016-12-121-27/+33
|\ | | | | Limit the number of events that can be created on a given room concurrently
| * CommentsErik Johnston2016-11-111-0/+2
| |
| * Limit the number of events that can be created on a given room concurretnlyErik Johnston2016-11-101-27/+31
| |
* | Handle sending events and device messages over federationErik Johnston2016-11-171-12/+1
|/
* Sample correctlyErik Johnston2016-11-081-1/+3
|
* Limit the number of prev_events of new eventsErik Johnston2016-11-081-0/+13
|
* Fix incredubly slow back pagination queryErik Johnston2016-10-241-2/+2
| | | | | | | If a client didn't specify a from token when paginating backwards synapse would attempt to query the (global) maximum topological token. This a) doesn't make much sense since they're room specific and b) there are no indices that lets postgres do this efficiently.
* CommentErik Johnston2016-10-191-0/+3
|
* Check whether to ratelimit sooner to avoid workErik Johnston2016-10-191-1/+13
|
* Support /initialSync in synchrotron workerErik Johnston2016-09-211-378/+3
|
* Use get_joined_users_from_context instead of manually looking up hostsErik Johnston2016-09-051-38/+6
|
* Correctly handle the difference between prev and current stateErik Johnston2016-08-311-5/+5
|
* Replace context.current_state with context.current_state_idsErik Johnston2016-08-251-22/+69
|
* Preserve some logcontextsErik Johnston2016-08-241-15/+20
|
* Add filter param to /messages APIErik Johnston2016-07-141-4/+12
|
* Add ReadWriteLock for pagination and history pruneErik Johnston2016-07-051-34/+36
|
* Add purge_history APIErik Johnston2016-07-051-0/+13
|
* Poke notifier on next reactor tickErik Johnston2016-06-031-4/+7
|
* Merge pull request #787 from matrix-org/markjh/liberate_presence_handlerMark Haines2016-05-171-2/+2
|\ | | | | Move the presence handler out of the Handlers object
| * Move the presence handler out of the Handlers objectMark Haines2016-05-161-2/+2
| |
* | Spell "domain" correctlyMark Haines2016-05-161-2/+2
|/ | | | s/domian/domain/g
* move filter_events_for_client out of base handlerMark Haines2016-05-111-8/+10
|
* Shuffle when we get the signing_key attribute.Mark Haines2016-05-111-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 handlerMark Haines2016-05-111-2/+197
|
* Run filter_events_for_clientDavid Baker2016-04-271-4/+4
| | | | so we don't accidentally mail out events people shouldn't see
* Remove some unused functions (#711)Mark Haines2016-04-081-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 Haines2016-04-071-9/+1
| | | | collect_presencelike_data
* Use computed prev event idsErik Johnston2016-04-011-1/+5
|
* Add concurrently_execute functionErik Johnston2016-04-011-8/+2
|
* Merge pull request #618 from matrix-org/markjh/pushrule_streamMark Haines2016-03-041-2/+2
|\ | | | | Add a stream for push rule updates
| * Merge branch 'develop' into markjh/pushrule_streamMark Haines2016-03-041-3/+5
| |\
| * | Hook up the push rules to the notifierMark Haines2016-03-031-2/+2
| | |
* | | SpellingErik Johnston2016-03-041-1/+1
| | |
* | | Add profile information to invitesErik Johnston2016-03-041-2/+15
| |/ |/|
* | Pass whole requester to ratelimitingDaniel Wagner-Hall2016-03-031-3/+5
|/ | | | This will enable more detailed decisions
* Merge pull request #582 from matrix-org/erikj/presenceErik Johnston2016-02-191-11/+3
|\ | | | | Rewrite presence for performance.
| * Initial cutErik Johnston2016-02-171-11/+3
| |
* | Review commentsDaniel Wagner-Hall2016-02-181-1/+1
| |
* | Some cleanupDaniel Wagner-Hall2016-02-161-4/+10
| |
* | Branch off member and non member sendsDaniel Wagner-Hall2016-02-151-32/+34
| | | | | | | | Unclean, needs tidy-up, but works
* | Merge implementation of /join by alias or IDDaniel Wagner-Hall2016-02-151-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 tokenErik Johnston2016-01-281-6/+9
|
* Make it possible to paginate forwards from stream tokensRichard van der Hoff2016-01-271-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 /eventsDaniel Wagner-Hall2016-01-201-47/+46
|
* Require unbanning before other membership changesDaniel Wagner-Hall2016-01-151-12/+45
|
* Skip, rather than erroring, invalid guest requestsDaniel Wagner-Hall2016-01-051-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 methodMark Haines2015-12-221-16/+17
|
* Add a cache for initialSync responses that expires after 5 minutesMark Haines2015-12-221-1/+23
|
* Make state updates in the C+S API idempotentMark Haines2015-12-021-0/+12
|
* Fix typo in collect_presencelike_dataMark Haines2015-12-021-1/+1
|
* Wrap calls to distributor.fire in appropriately named functions so that ↵Mark Haines2015-12-011-4/+6
| | | | static analysis can work out want is calling what
* Add API for setting account_data globaly or on a per room basisMark Haines2015-12-011-6/+34
|
* Merge pull request #375 from matrix-org/daniel/guestroominitialsyncDaniel Wagner-Hall2015-11-231-10/+15
|\ | | | | Clean up room initialSync for guest users
| * Clean up room initialSync for guest usersDaniel Wagner-Hall2015-11-131-10/+15
| |
* | s/private_user_data/account_data/Mark Haines2015-11-181-6/+6
|/
* Merge pull request #367 from matrix-org/daniel/readafterleaveDaniel Wagner-Hall2015-11-121-10/+11
|\ | | | | | | | | Merge pull request #367 from matrix-org/daniel/readafterleave Tweak guest access permissions
| * Tweak guest access permissionsDaniel Wagner-Hall2015-11-121-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/guestroominitialsyncDaniel Wagner-Hall2015-11-121-23/+32
|\ \ | |/ |/| | | | | Merge pull request #360 from matrix-org/daniel/guestroominitialsync Allow guest access to room initialSync
| * Allow guest access to room initialSyncDaniel Wagner-Hall2015-11-111-23/+32
| |
* | Consider joined guest users as joined usersDaniel Wagner-Hall2015-11-121-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 roomsDaniel Wagner-Hall2015-11-101-2/+2
|
* Open up /events to anonymous users for room events onlyDaniel Wagner-Hall2015-11-051-13/+34
| | | | Squash-merge of PR #345 from daniel/anonymousevents
* Allow guests to register and call /events?room_id=Daniel Wagner-Hall2015-11-041-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 eventMark Haines2015-11-021-4/+2
|
* Include tags in v1 room initial syncMark Haines2015-10-301-0/+11
|
* Include room tags v1 /initialSyncMark Haines2015-10-301-0/+12
|
* Amalgamate _filter_events_for_clientErik Johnston2015-10-161-50/+4
|
* Remove unused room_id argErik Johnston2015-10-141-5/+5
|
* Add a flag to initial sync to indicate we want rooms that the user has leftMark Haines2015-10-081-5/+8
|
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/invite_stateErik Johnston2015-09-251-48/+158
|\
| * Clarify that room_initial_sync returns a python dictMark Haines2015-09-211-1/+1
| |
| * Fix doc string to point at the right classMark Haines2015-09-211-2/+3
| |
| * Add explicit "elif event.membership == Membership.LEAVE" for clarityMark Haines2015-09-211-1/+2
| |
| * Clamp the "to" token for /rooms/{roomId}/messages to when the user leftMark Haines2015-09-211-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 leftMark Haines2015-09-101-7/+13
| |
| * Allow users that have left a room to get the messages that happend in the ↵Mark Haines2015-09-091-4/+27
| | | | | | | | room before they left
| * Remove undocumented and unimplemented 'feedback' parameter from the ↵Mark Haines2015-09-091-18/+3
| | | | | | | | Client-Server API
| * Allow rooms/{roomId}/state for a room that has been leftMark Haines2015-09-091-5/+13
| |
| * Allow room initialSync for users that have left the room, returning a ↵Mark Haines2015-09-091-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 Haines2015-09-081-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 Johnston2015-09-101-0/+4
|/ | | | invited servers
* Remove completely unused concepts from codebaseDaniel Wagner-Hall2015-08-251-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 itErik Johnston2015-08-171-12/+6
|
* Fix _filter_events_for_clientErik Johnston2015-08-121-3/+1
|
* Simplify staggered deferred listsErik Johnston2015-08-121-2/+2
|
* Use list comprehension instead of filterErik Johnston2015-08-121-10/+3
|
* Remove debug loggersErik Johnston2015-08-111-3/+0
|
* Fix application of ACLsErik Johnston2015-08-111-4/+12
|
* Don't be too enthusiatic with defer.gatherResultsErik Johnston2015-08-071-4/+8
|
* Speed up event filtering (for ACL) logicErik Johnston2015-08-041-1/+5
|
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/receiptsErik Johnston2015-07-131-1/+65
|\
| * Rename key and values for m.room.history_visibility. Support 'invited' valueErik Johnston2015-07-061-4/+20
| |
| * Make v1 initial syncs respect room history ACLErik Johnston2015-07-021-17/+34
| |
| * Add basic impl for room history ACL on GET /messages client APIErik Johnston2015-07-021-1/+32
| |
* | Hook up receipts to v1 initialSyncErik Johnston2015-07-081-3/+13
|/
* Use another deferred listErik Johnston2015-06-161-18/+27
|
* Use DeferredListErik Johnston2015-06-161-9/+9
|
* Don't do unecessary db ops in presence.get_stateErik Johnston2015-06-161-0/+1
|
* Merge pull request #144 from matrix-org/erikj/logging_contextMark Haines2015-05-121-2/+3
|\ | | | | Preserving logging contexts
| * Unwrap defer.gatherResults failuresErik Johnston2015-05-121-2/+3
| |
* | Make get_current_token accept a direction parameter, which tells whether the ↵Erik Johnston2015-05-121-1/+3
| | | | | | | | source whether we want a token for going 'forwards' or 'backwards'
* | Initial hack at wiring together pagination and backfillErik Johnston2015-05-111-1/+9
|/
* Make simple query rather than long one and then throw away half the resultsErik Johnston2015-04-301-2/+1
|
* Do more parellelization for initialSyncErik Johnston2015-04-151-7/+11
|
* Parellelize initial syncErik Johnston2015-04-151-2/+8
|
* Reindent code to be less human-readable to keep pep8 from complainingPaul "LeoNerd" Evans2015-02-121-1/+1
|
* Appease pyflakesPaul "LeoNerd" Evans2015-02-121-1/+1
|
* Can now remove the FIXME tooPaul "LeoNerd" Evans2015-02-121-10/+3
|
* Only attempt to fetch presence state of JOINed members in room initialSync ↵Paul "LeoNerd" Evans2015-02-121-0/+1
| | | | (SYN-202)
* During room intial sync, only calculate current state once.Erik Johnston2015-02-091-10/+22
|
* SYN-202: Log as WARN the 404 'Presence information not visible' errors ↵Erik Johnston2015-02-051-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 Haines2015-01-281-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 anMark Haines2015-01-261-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_stringMark Haines2015-01-231-6/+7
|
* Add raw query param for scrollback.Kegan Dougal2015-01-081-2/+5
|
* Return the raw federation event rather than adding extra keys for federation ↵Kegan Dougal2015-01-081-2/+3
| | | | data.
* Add missing continuation indent.Erik Johnston2015-01-081-1/+2
|
* Add 'raw' query parameter to expose the event graph and signatures to savvy ↵Kegan Dougal2015-01-081-2/+4
| | | | clients.
* RoomsForUser now has sender instead of user_idErik Johnston2015-01-061-1/+1
|
* Update copyright noticesMark Haines2015-01-061-1/+1
|
* bump_presence_active_time when sending a message eventMark Haines2014-12-191-0/+6
|
* Don't ratelimit room create eventsMark Haines2014-12-191-2/+3
|
* Merge branch 'release-v0.6.0' into developMark Haines2014-12-161-0/+5
|\
| * Enable rate limiting for all eventsErik Johnston2014-12-161-0/+5
| |
* | Remove send_message since nothing was calling it. Remove Snapshot because ↵Mark Haines2014-12-161-38/+0
|/ | | | only send_message was using it
* Kill off synapse.api.events.*Erik Johnston2014-12-161-1/+0
|
* Rename MessageHandler.handle_event. Add a few comments.Erik Johnston2014-12-151-1/+13
|
* Validate message, topic and name event contentsErik Johnston2014-12-121-1/+1
|
* Add some basic event validationErik Johnston2014-12-101-2/+6
|
* Fix bug when uploading state with empty state_keyErik Johnston2014-12-101-15/+0
|
* Try and figure out how and why signatures are being changed.Erik Johnston2014-12-101-1/+0
|
* More bug fixesErik Johnston2014-12-081-0/+12
|
* Convert rest and handlers to use new event structureErik Johnston2014-12-041-1/+22
|
* Change DomainSpecificString so that it doesn't use a HomeServer objectErik Johnston2014-12-021-1/+1
|
* Fix bugs in invite/join dances.Erik Johnston2014-11-251-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" Evans2014-11-201-1/+1
| | | | at all; missing still implies default 10
* Fix pep8 codestyle warningsMark Haines2014-11-201-3/+3
|
* Add a few missing yields, Move deferred lists inside PreserveLoggingContext ↵Mark Haines2014-11-201-3/+5
| | | | because they don't interact well with the logging contexts
* Remove unused variableMark Haines2014-11-181-1/+1
|
* Rename message handler's new snapshot_room to room_initial_sync() as that ↵Paul "LeoNerd" Evans2014-11-181-1/+1
| | | | better suits its purpose
* Include room members' presence in room initialSyncPaul "LeoNerd" Evans2014-11-181-1/+22
|
* Include 'messages' snapshot in room initialSyncPaul "LeoNerd" Evans2014-11-181-1/+20
|
* Merge branch 'develop' into room-initial-syncPaul "LeoNerd" Evans2014-11-171-63/+26
|\ | | | | | | | | Conflicts: synapse/handlers/message.py
| * PEP8ifyErik Johnston2014-11-111-9/+12
| |
| * Only allow people in a room to look up room state.Erik Johnston2014-11-111-34/+4
| |
| * Implement new replace_state and changed prev_stateErik Johnston2014-11-061-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 Johnston2014-10-301-3/+7
| |\ | | | | | | | | | federation_authorization
| * \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2014-10-271-13/+3
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | federation_authorization Conflicts: synapse/federation/transport.py synapse/handlers/message.py