Commit Graph

17 Commits

Author SHA1 Message Date
Patrick Cloke
b2d97bac09
Implement MSC3958: suppress notifications from edits ()
Co-authored-by: Brad Murray <brad@beeper.com>
Co-authored-by: Nick Barrett <nick@beeper.com>

Copy the suppress_edits push rule from Beeper to implement MSC3958.

9415a1284b/rust/src/push/base_rules.rs (L98-L114)
2023-02-03 14:31:14 -05:00
Patrick Cloke
52700a0bcf
Support the backwards compatibility features in MSC3952. ()
If the feature is enabled and the event has a `m.mentions` property,
skip processing of the legacy mentions rules.
2023-02-03 16:28:20 +00:00
Patrick Cloke
8e9fc28c6a
Reload the pyo3-log config when the Python logging config changes. ()
Since pyo3-log is initialized very early in the Python start-up
it caches the state of the loggers before they're fully initialized
(and thus are essentially disabled). Whenever we reload the
logging configuration we now also tell pyo3-log to discard
any cached logging configuration it has; it will refetch the
current logging configuration from Python at the next point
it logs.

This fixes Rust log lines not appearing in the homeserver logs.
2023-02-03 08:27:31 -05:00
Patrick Cloke
2a51f3ec36
Implement MSC3952: Intentional mentions ()
MSC3952 defines push rules which searches for mentions in a list of
Matrix IDs in the event body, instead of searching the entire event
body for display name / local part.

This is implemented behind an experimental configuration flag and
does not yet implement the backwards compatibility pieces of the MSC.
2023-01-27 10:16:21 -05:00
Andrew Morgan
a7b54ca8d8
Implement MSC3930: polls push rules () 2023-01-19 12:47:10 +00:00
Erik Johnston
b50c008453
Re-enable some linting ()
* Re-enable some linting

* Newsfile

* Remove comment
2023-01-12 10:52:07 +00:00
Patrick Cloke
071f8b0f9b
Factor out common code in tests and fix comments. () 2023-01-11 13:36:41 -05:00
Patrick Cloke
7f2cabf271
Fix-up type hints for tests.push module. () 2023-01-11 07:35:40 -05:00
reivilibre
62ed877433
Improve validation of field size limits in events. () 2022-12-13 13:19:19 +00:00
Travis Ralston
9ccc09fe9e
Support MSC1767's content.body behaviour; Add base rules from MSC3933 ()
* Support MSC1767's `content.body` behaviour in push rules

* Add the base rules from MSC3933

* Changelog entry

* Flip condition around for finding `m.markup`

* Remove forgotten import
2022-11-28 18:02:41 -07:00
Travis Ralston
3da6450327
Initial support for MSC3931: Room version push rule feature flags ()
* Add support for MSC3931: Room Version Supports push rule condition

* Create experimental flag for future work, and use it to gate MSC3931

* Changelog entry
2022-11-28 16:29:53 -07:00
Andrew Morgan
f844b470f6
Fix stub return type of PushRuleEvaluator.run () 2022-11-16 12:03:05 +00:00
DeepBlueV7.X
2d0ba3f89a
Implementation for MSC3664: Pushrules for relations () 2022-10-25 14:38:01 +01:00
Patrick Cloke
09be8ab5f9
Remove the experimental implementation of MSC3772. ()
MSC3772 has been abandoned.
2022-10-12 06:26:39 -04:00
Patrick Cloke
e70c6b720e
Disable pushing for server ACL events (MSC3786). ()
Switches to the stable identifier for MSC3786 and enables it
by default.

This disables pushes of m.room.server_acl events.
2022-10-04 07:08:27 -04:00
Erik Johnston
ebd9e2dac6
Implement push rule evaluation in Rust. () 2022-09-29 16:12:09 +01:00
Erik Johnston
42d261c32f
Port the push rule classes to Rust. () 2022-09-20 12:10:31 +01:00