summary refs log tree commit diff
path: root/synapse/push/action_generator.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove unneeded `ActionGenerator` class. (#12691)Patrick Cloke2022-05-111-48/+0
| | | | It simply passes through to `BulkPushRuleEvaluator`, which can be called directly instead.
* Refactor `EventContext` (#12689)Erik Johnston2022-05-101-0/+4
| | | | | | | | | | Refactor how the `EventContext` class works, with the intention of reducing the amount of state we fetch from the DB during event processing. The idea here is to get rid of the cached `current_state_ids` and `prev_state_ids` that live in the `EventContext`, and instead defer straight to the database (and its caching). One change that may have a noticeable effect is that we now no longer prefill the `get_current_state_ids` cache on a state change. However, that query is relatively light, since its just a case of reading a table from the DB (unlike fetching state at an event which is more heavyweight). For deployments with workers this cache isn't even used. Part of #12684
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-141-1/+0
| | | | | | | Part of #9744 Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now. `Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>`
* Import HomeServer from the proper module. (#9665)Patrick Cloke2021-03-231-1/+1
|
* Add type hints to the push module. (#8901)Patrick Cloke2020-12-111-5/+10
|
* Stop sub-classing object (#8249)Patrick Cloke2020-09-041-1/+1
|
* Convert push to async/await. (#7948)Patrick Cloke2020-07-271-5/+2
|
* Run Black. (#5482)Amber Brown2019-06-201-3/+1
|
* run isortAmber Brown2018-07-091-3/+3
|
* Remove context.push_actionsErik Johnston2018-02-151-5/+1
|
* Store ActionGenerator in HomeServerErik Johnston2017-05-191-1/+1
|
* Faster push rule calculation via push specific cacheErik Johnston2017-05-171-8/+4
| | | | | We add a push rule specific cache that ensures that we can reuse calculated push rules appropriately when a user join/leaves.
* Replace context.current_state with context.current_state_idsErik Johnston2016-08-251-2/+2
|
* Move _bulk_get_push_rules_for_room to storage layerErik Johnston2016-08-191-1/+1
|
* Make push Measure finer grainedErik Johnston2016-08-171-4/+5
|
* Use state to calculate get_users_in_roomErik Johnston2016-06-011-1/+1
|
* move filter_events_for_client out of base handlerMark Haines2016-05-111-2/+2
|
* Measure push action generatorErik Johnston2016-04-141-11/+15
|
* Fix invite pushesDavid Baker2016-04-081-3/+3
| | | | | | * If the event is an invite event, add the invitee to list of user we run push rules for (if they have a pusher etc) * Move invite_for_me to be higher prio than member events otherwise member events matches them * Spell override right
* Fix relative imports so they work in both py3 and py27Mark Haines2016-03-081-2/+2
|
* Remove dead code for setting device specific rules.Mark Haines2016-02-181-1/+1
| | | | | | It wasn't possible to hit the code from the API because of a typo in parsing the request path. Since no-one was using the feature we might as well remove the dead code.
* Atomically persit push actions when we persist the eventErik Johnston2016-02-091-15/+5
|
* Pass in current state to push action handlerErik Johnston2016-02-091-2/+4
|
* Add regex cache. Only caculate push actions for users that have sent read ↵Erik Johnston2016-01-191-3/+4
| | | | receipts, and are on that server
* Re-enable urnead notificationsErik Johnston2016-01-181-3/+0
|
* Temporarily disable notification branchErik Johnston2016-01-131-0/+3
|
* Delete notifications for redacted eventsDavid Baker2016-01-061-0/+7
|
* Add is_guest flag to users db to track whether a user is a guest user or ↵David Baker2016-01-061-3/+3
| | | | not. Use this so we can run _filter_events_for_client when calculating event_push_actions.
* Rename event-actions to event_push_actions as per PR requestDavid Baker2016-01-041-1/+1
|
* Address minor PR issuesDavid Baker2016-01-041-4/+3
|
* pep8 & unused variableDavid Baker2015-12-221-2/+0
|
* Insert push actions in a single db query rather than one per user/profile_tagDavid Baker2015-12-221-4/+6
|
* Add bulk push rule evaluator which actually still evaluates rules one by ↵David Baker2015-12-221-17/+11
| | | | one, but does far fewer db queries to fetch the rules
* Only run pushers for users on this hs!David Baker2015-12-211-1/+7
|
* still very WIP, but now sends unread_notifications_count in the room object ↵David Baker2015-12-161-1/+1
| | | | on sync (only actually corrrect in a full sync: hardcoded to 0 in incremental syncs).
* Store nothing instead of ['dont_notify'] for events with no notification ↵David Baker2015-12-101-4/+4
| | | | required: much as it would be nice to be able to tell between the event not having been processed and there being no notification for it, this isn't worth filling up the table with ['dont_notify'] I think. Consequently treat the empty actions array as dont_notify and filter dont_notify out of the result.
* Save event actions to the dbDavid Baker2015-12-101-2/+4
|
* Very first cut of calculating actions for events as they come in. Doesn't ↵David Baker2015-12-101-0/+47
store them yet. Not very efficient.