Richard van der Hoff
b4672e26ec
Use client logger in more places (core code) ( #4899 )
...
* Use client logger for sync
Use the logger attached to the MatrixClient when writing log messages out of
the sync api. This helps figure out what's going on when multiple clients are
running in the same JS environment.
* Use client logger for to-device message queue
* Use client logger in `PushProcessor.rewriteDefaultRules`
* use client logger in `ServerCapabilities`
* Mark global `logger` as deprecated
2025-07-03 09:58:01 +01:00
Michael Telatynski
1e92c13a75
Improve PushProcessor::getPushRuleGlobRegex ( #4764 )
...
* Improve PushProcessor::getPushRuleGlobRegex
Fix cache key not taking non-pattern parameters into account
Use lookarounds to ensure the word boundary isn't treated as part of the match
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Add tests
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2025-03-21 10:57:14 +00:00
Michael Telatynski
8061fa924d
Export push processor & method for converting matrix glob to regexp ( #4763 )
...
* Export push processor method for converting matrix glob to regexp
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Export pushProcessor from MatrixClient
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Add capturing group around pattern match
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Improve comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2025-03-21 09:11:04 +00:00
Hugh Nimmo-Smith
ff1db2b538
Bump eslint-plugin-matrix-org to enable @typescript-eslint/consistent-type-imports rule ( #4680 )
...
* Bump eslint-plugin-matrix-org to enable @typescript-eslint/consistent-type-imports rule
* Re-lint after merge
2025-02-05 12:15:20 +00:00
Johannes Marbach
05ba27f36b
Change imports for Node.js compatibility ( #4377 )
...
* Change imports for Node.js compatibility
Fixes : #4287
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org >
* Run prettier
* Run prettier (again)
* Add comment
* Update babel.config.cjs
---------
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org >
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
2024-08-29 15:56:32 +00:00
Michael Telatynski
06e083874a
Iterate
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2024-03-28 14:59:52 +00:00
Michael Telatynski
0f25429849
Iterate
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2024-03-28 13:41:31 +00:00
Michael Telatynski
32ddf2813d
Iterate
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2024-03-28 12:55:44 +00:00
Michael Telatynski
1ed082f3d4
Fix merging of default push rules
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2024-03-28 11:58:52 +00:00
Michael Telatynski
3031152444
Add .m.rule.is_room_mention push rule to DEFAULT_OVERRIDE_RULES ( #4100 )
...
* Add intentional mentions push rules to DEFAULT_OVERRIDE_RULES
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
* Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2024-03-08 20:21:12 +00:00
Kerry
c672cad1a1
remove IsUserMention and IsRoomMention from DEFAULT_OVERRIDE_RULES ( #3752 )
2023-09-26 21:33:41 +00:00
Kerry
3b88ea19b7
Stabilize support for MSC3952: intentional mentions ( #3397 )
...
* use stable identifiers for MSC3952: intentional mentions
* add matrix version to feature support for intentional mentions
2023-07-11 22:04:06 +00:00
Kerry
4f67e59692
Annotate events with executed push rule ( #3284 )
...
* unit test paginating /notifications
* add push rule to event
* 1% more test coverage
2023-04-17 21:35:56 +00:00
Michael Telatynski
f5bf6b1be6
Update types to match reality ( #3271 )
2023-04-12 17:49:16 +00:00
Patrick Cloke
fc55c4c72a
Implement MSC3952: intentional mentions ( #3092 )
...
* Add experimental push rules.
* Update for changes to MSC3952: Use event_property_is and event_property_contains.
* Revert custom user/room mention conditions.
* Skip legacy rule processing if mentions exist.
* Add client option for intentional mentions.
* Fix tests.
* Test leagcy behavior with intentional mentions.
* Handle simple review comments.
2023-03-22 20:22:34 +00:00
Patrick Cloke
bcf3bba44e
Implement MSC3966: a push rule condition to check if an array contains a value ( #3180 )
...
* Support MSC3966 to match values in an array in push rule conditions.
* Update to stable identifiers.
* Appease the linter.
2023-03-07 16:36:06 +00:00
Patrick Cloke
b4cdc5a923
Implement MSC3758: a push rule condition to match event properties exactly ( #3179 )
...
* Add some comments.
* Support MSC3758 to exactly match values in push rule conditions.
* Update to stable prefix.
2023-03-06 14:52:43 +00:00
Kerry
933a0c9909
Polls push rules ( #3181 )
...
* add poll push rule ids
* add getPushRuleAndKindById method to pushprocessor
2023-03-01 20:30:40 +00:00
Patrick Cloke
c8a4d9b88a
Implement MSC3873 to handle escaped dots in push rule keys ( #3134 )
...
* Add comments.
* Implment MSC3873 to handle escaped dots in keys.
* Add some comments about tests.
* Clarify spec behavior.
* Fix typo.
* Don't manually iterate string.
* Clean-up tests.
* Simplify tests.
* Add more tests & fix bug with empty parts.
* Add more edge cases.
* Add a regular expression solution.
This is ~80% slower than the basic split(".").
* Split on a simpler regular expression.
This is ~50% slower than a simple split(".").
* Remove redundant case in regex.
* Enable sticky regex.
* Rollback use of regex.
* Cache values in the PushProcessor.
* Use more each in tests.
* Pre-calculate the key parts instead of caching them.
* Fix typo.
* Switch back to external cache, but clean out obsolete cached values.
* Remove obsolete property.
* Remove more obsolete properties.
2023-03-01 12:23:40 +00:00
Michael Weimann
349c2c2587
Apply prettier formatting
2022-12-09 09:38:20 +01:00
Michael Telatynski
c4006d752a
Improve tsdoc types ( #2940 )
...
* Install eslint-plugin-jsdoc
* Enable lint rule jsdoc/no-types
* Make tsdoc more valid, add required hyphens and s/return/returns/g
* Stash tsdoc work
* Fix mistypes
* Stash
* Stash
* More tsdoc work
* Remove useless doc params
* Fixup docs
* Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Update src/crypto/verification/request/ToDeviceChannel.ts
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Update src/client.ts
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Update src/client.ts
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Update src/client.ts
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
* Iterate
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com >
2022-12-07 18:01:54 +00:00
Michael Telatynski
8d018f9c2d
Enable noImplicitAny ( #2895 )
...
* Stash noImplicitAny work
* Enable noImplicitAny
* Update olm
* Fun
* Fix msgid stuff
* Fix tests
* Attempt to fix Browserify
2022-12-06 18:21:44 +00:00
Michael Telatynski
c0f7df8c3b
Update eslint-plugin-matrix-org and improve visibilities & types ( #2887 )
2022-11-18 09:20:53 +00:00
Šimon Brandner
b454318684
Use an underride rule for Element Call notifications ( #2873 )
2022-11-14 11:42:51 +01:00
Michael Telatynski
6c543382e6
Make SonarCloud happier ( #2850 )
...
* Make SonarCloud happier
* Revert one change due to lack of strict mode upstream
* Fix typo
2022-11-07 12:16:48 +00:00
Michael Telatynski
db49cd8d13
Make the js-sdk conform to tsc --strict ( #2835 )
...
Co-authored-by: Faye Duxovni <fayed@matrix.org >
2022-11-03 12:50:05 +00:00
Michael Telatynski
9f2f08dfd3
Fix more typescript --strict violations ( #2795 )
...
* Stash tsc fixes
* Iterate
* Iterate
* Iterate
* Fix tests
* Iterate
* Iterate
* Iterate
* Iterate
* Add tests
2022-10-25 18:31:40 +01:00
Šimon Brandner
a12e6185f9
Update call notification push rule to match MSC3914 ( #2781 )
2022-10-21 15:17:34 +00:00
Michael Telatynski
867a0ca7ee
Apply more strict typescript around the codebase ( #2778 )
...
* Apply more strict typescript around the codebase
* Fix tests
* Revert strict mode commit
* Iterate strict
* Iterate
* Iterate strict
* Iterate
* Fix tests
* Iterate
* Iterate strict
* Add tests
* Iterate
* Iterate
* Fix tests
* Fix tests
* Strict types be strict
* Fix types
* detectOpenHandles
* Strict
* Fix client not stopping
* Add sync peeking tests
* Make test happier
* More strict
* Iterate
* Stabilise
* Moar strictness
* Improve coverage
* Fix types
* Fix types
* Improve types further
* Fix types
* Improve typing of NamespacedValue
* Fix types
2022-10-21 11:44:40 +01:00
Šimon Brandner
6e5326f9c8
Add custom notification handling for MSC3401 call events ( #2720 )
2022-10-06 16:40:30 +02:00
3nprob
3f6f5b69c7
Improve test coverage and modernize style for interactive-auth ( #2574 )
...
* style: address no-mixed-operators errors,minor style improvements
* test: Fix async interactive-auth tests, add test case
* tests: Fix incorrectly stringified mock response
* pushprocessor: style update
* use async primitives in interactive-auth-spec
* lint
* fixup: remove duplicate test
* add test case for no-flow-with-session for interactive-auth
* interactive-auth: handle non-existing error.data
* async test fix
* test: add dummyauth test
* add testing for errcode
* Revert "pushprocessor: style update"
This reverts commit 3ed0fdfb73 .
* add testcase for missing error data
* test: move sessionId assignment
* Add tests to improve coverage for interactive-auth
* pushprocessor: style update
2022-08-11 15:29:53 +01:00
Šimon Brandner
012f6c56e6
Update MSC3786 implementation: Check the state_key ( #2429 )
2022-06-03 06:06:48 +02:00
Šimon Brandner
01eee96b29
Remove dont_notify from the .m.rule.room.server_acl rule ( #2395 )
2022-05-23 20:45:52 +02:00
Travis Ralston
e9e8e90a94
Remove default push rule override for MSC1930 ( #2376 )
...
Folks have had since Matrix 1.0 (June 2019) to upgrade to a compatible server
2022-05-17 00:13:43 -06:00
Šimon Brandner
1cde686a13
MSC3786: Add a default push rule to ignore m.room.server_acl events ( #2333 )
...
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com >
2022-05-04 16:22:43 +02:00
Michael Telatynski
8be30acb11
Apply suggestions from SonarQube ( #2340 )
2022-05-03 15:40:57 -06:00
Michael Telatynski
9e4f109e80
Fix wrongly asserting that PushRule::conditions is non-null ( #2217 )
2022-03-04 08:36:00 +00:00
Michael Telatynski
69ba32683c
Iterate PR based on feedback
2021-08-11 21:45:51 +01:00
Michael Telatynski
9b50455049
Iterate PR, merge types with @types/PushRules
2021-08-10 11:03:05 +01:00
Michael Telatynski
e775bcac3c
Convert SearchResult, InteractiveAuth, PushProcessor and Scheduler to Typescript
2021-07-07 11:08:54 +01:00