Michael Telatynski
72d70bb929
Improve types and their safety ( #3290 )
...
* Improve types and their safety
* Iterate
2023-04-18 07:32:40 +00:00
Michael Weimann
9a504af18e
Changes for v24.0.0
2023-03-28 11:22:02 +01:00
Clark Fischer
ddce1bcd28
Add async setImmediate util
...
Adds an async/promise-based version of `setImmediate`. Note that, despite being
poorly adopted, `setImmediate` is polyfilled, and should be more performant
than `sleep(0)`.
Signed-off-by: Clark Fischer <clark.fischer@gmail.com >
2023-01-16 10:11:37 -08: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
Robin Townsend
f46ecf970c
Refactor GroupCall participant management
...
This refactoring brings a number of improvements to GroupCall, which I've unfortunately had to combine into a single commit due to coupling:
- Moves the expiration timestamp field on call membership state to be per-device
- Makes the participants of a group call visible without having to enter the call yourself
- Enables users to join group calls from multiple devices
- Identifies active speakers by their call feed, rather than just their user ID
- Plays nicely with clients that can be in multiple calls in a room at once
- Fixes a memory leak caused by the call retry loop never stopping
- Changes GroupCall to update its state synchronously, and write back to room state asynchronously
- This was already sort of halfway being done, but now we'd be committing to it
- Generally improves the robustness of the state machine
- It means that group call joins will appear instant, in a sense
For many reasons, this is a breaking change.
2022-11-21 12:16:44 -05:00
Michael Telatynski
c0f7df8c3b
Update eslint-plugin-matrix-org and improve visibilities & types ( #2887 )
2022-11-18 09:20:53 +00: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
Janne Mareike Koschinski
068fbb7660
Loading threads with server-side assistance ( #2735 )
...
* Fix bug where undefined vs null in pagination tokens wasn't correctly handled
* Fix bug where thread list results were sorted incorrectly
* Allow removing the relationship of an event to a thread
* Implement feature detection for new threads MSCs and specs
* Prefix dir parameter for threads pagination if necessary
* Make threads conform to the same timeline APIs as any other timeline
* Extract thread timeline loading out of thread class
* fix thread roots not being updated correctly
* fix jumping to events by link
* implement new thread timeline loading
* Fix fetchRoomEvent incorrect return type
Co-authored-by: Germain <germains@element.io >
Co-authored-by: Germain <germain@souquet.com >
2022-10-28 13:48:14 +02:00
Michael Telatynski
b44787192d
Replace instanceof Array with Array.isArray ( #2812 )
2022-10-26 17:59:16 +01: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
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
Michael Telatynski
30570bcce6
Remove node-specific crypto bits, use Node 16's WebCrypto ( #2762 )
2022-10-17 17:54:54 +01:00
Michael Telatynski
34c5598a3f
Modernize http-api - move from browser-request to fetch ( #2719 )
2022-10-12 18:59:04 +01:00
Travis Ralston
029280b9d9
Update hidden characters regex ( #2738 )
2022-10-06 22:41:57 -06:00
Germain
21a6f61b7b
Add support for unread thread notifications ( #2726 )
2022-10-05 10:37:45 +01:00
Michael Telatynski
f349663329
Add CI to protect against mixing src and lib imports ( #2704 )
2022-09-30 09:05:28 +01:00
Šimon Brandner
fb565f301b
Remove support for unstable private read receipts ( #2624 )
2022-09-12 18:04:14 +02:00
David Teller
917e8c01d8
Base support for MSC3847: Ignore invites with policy rooms ( #2626 )
...
* Base support for MSC3847: Ignore invites with policy rooms
Type: enhancement
* Base support for MSC3847: Ignore invites with policy rooms
Type: enhancement
* WIP: Applying feedback
* WIP: Applying feedback
* WIP: CI linter gives me different errors, weird
* WIP: A little more linting
2022-09-06 22:17:42 -06:00
3nprob
e87ce873b0
utils: Fix bug in deepCompare which would incorrectly return objects with disjoint keys as equal ( #2586 )
...
* utils: Fix bug in deepCompare which would incorrectly return objects with disjoint keys as equal
* Fix bugs in sync test
This test wrongly asserted that `initialSyncLimit` would be used to make a filter
It is used only for the initial sync inline filter, and not in POST /filter
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com >
2022-09-01 21:36:24 +00:00
RiotRobot
bbaa0e6536
Merge branch 'master' into develop
2022-08-31 16:26:39 +01:00
Travis Ralston
8716c1ab9b
Convert several internal maps to real maps
2022-08-31 09:21:46 -06:00
Michael Telatynski
8e646ea584
Add static analysis for tsc --strict ( #2615 )
...
* Initial attempt at CI to annotate new TSC errors
* Make tsconfig file valid
* enable debug
* Specify commit
* Fix commit specification
* Switch back to main
* Tweak permissions
* Add strict mode failure
* Attempt number two
* Fix ts-extra-args
* Add static analysis for tsc --strict
2022-08-23 14:02:50 +01: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
6316a6ae44
Add support for stable prefixes for MSC2285 ( #2524 )
...
Co-authored-by: Travis Ralston <travisr@matrix.org >
2022-08-05 17:33:49 +02:00
Šimon Brandner
c4f7e4d5aa
Remove dead code ( #2510 )
2022-07-11 09:46:50 +02:00
Michael Telatynski
64c6c477dc
Revert "Fix request, crypto, and bs58 imports ( #2414 )" ( #2422 )
...
This reverts commit 05dd3c4967 .
2022-05-30 15:46:59 +01:00
Michael Telatynski
05dd3c4967
Fix request, crypto, and bs58 imports ( #2414 )
2022-05-30 13:49:25 +00:00
Michael Telatynski
706b4d6054
Improve typing ( #2352 )
...
* Fix typing of the store interface
* Fix typed s'more
* re-add check
* Be less dumb
* arg
* Fix types
2022-05-09 11:58:52 +01:00
Michael Telatynski
8be30acb11
Apply suggestions from SonarQube ( #2340 )
2022-05-03 15:40:57 -06:00
Michael Telatynski
b896111269
Apply corrections identified by SonarQube ( #2336 )
...
* Apply corrections identified by SonarQube
* Apply corrections identified by SonarQube
* Make type more flexible
2022-05-02 03:23:17 +01:00
CommanderRoot
cde935629d
Replace deprecated String.prototype.substr() ( #2298 )
...
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated
Signed-off-by: Tobias Speicher <rootcommander@gmail.com >
2022-04-14 15:23:27 -06:00
Kerry
f963feab0f
Live location sharing - Aggregate beacon locations on beacons ( #2268 )
...
* add timestamp sorting util
Signed-off-by: Kerry Archibald <kerrya@element.io >
* basic wiring
Signed-off-by: Kerry Archibald <kerrya@element.io >
* quick handle for redacted beacons
Signed-off-by: Kerry Archibald <kerrya@element.io >
* remove fdescribe
Signed-off-by: Kerry Archibald <kerrya@element.io >
* test adding locations
Signed-off-by: Kerry Archibald <kerrya@element.io >
* tidy comments
Signed-off-by: Kerry Archibald <kerrya@element.io >
* test client
Signed-off-by: Kerry Archibald <kerrya@element.io >
* fix monitorLiveness for update
Signed-off-by: Kerry Archibald <kerrya@element.io >
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-04-08 12:26:05 +01:00
Michael Telatynski
5d54bf558c
Fix defer not supporting resolving with a Promise<T> ( #2216 )
2022-03-03 21:41:23 +00:00
Michael Telatynski
169b6b5572
Filter out falsey opts in /relations API hits ( #2059 )
2021-12-13 15:38:03 +00:00
Aaron R
80aaa6c32b
Fix imports to work with new lint rules ( #2003 )
...
* Add eslint-plugin-import
Signed-off-by: Aaron Raimist <aaron@raim.ist >
* Autofix
Signed-off-by: Aaron Raimist <aaron@raim.ist >
* Manual fix
Signed-off-by: Aaron Raimist <aaron@raim.ist >
2021-12-09 15:57:43 -07:00
Michael Telatynski
f8097221e6
Improve typing ( #2055 )
2021-12-09 14:22:58 +00:00
David Baker
59b3960a42
Strip direction override characters from display names ( #1992 )
...
Strip RLO and LRO characters from name and rawDisplayName so they
can safely be embedded into other text without messing up the text
ordering.
Fixes https://github.com/vector-im/element-web/issues/1712
2021-10-20 17:08:40 +01:00
Michael Telatynski
0ad5ef4e9b
Merge branch 'develop' of github.com:matrix-org/matrix-js-sdk into t3chguy/ts/12
2021-08-10 10:21:13 +01:00
David Baker
aef89e4a26
Merge pull request #1812 from SimonBrandner/feature/muting
...
Support for MSC3291: Muting in VoIP calls
2021-08-02 17:20:42 +01:00
Michael Telatynski
f2da3ba6ae
Apply hidden char check to rawDisplayName too
2021-07-29 11:00:30 +01:00
Šimon Brandner
87fd3521ea
Fix types
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com >
2021-07-28 20:11:51 +02:00
Šimon Brandner
b3c66848e2
Handle missing params
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com >
2021-07-28 19:06:24 +02:00
Šimon Brandner
ca7a457094
Add recursivelyAssign()
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com >
2021-07-28 17:56:51 +02:00
Michael Telatynski
c2b5b14d26
Merge branch 'develop' of github.com:matrix-org/matrix-js-sdk into t3chguy/ts/12
...
Conflicts:
src/client.ts
src/interactive-auth.ts
src/models/search-result.ts
2021-07-23 23:46:15 +01:00
Germain
e85038e888
Merge pull request #1801 from matrix-org/gsouquet/localecompare-perf
...
Improve calculateRoomName performances by using Intl.Collator
2021-07-21 15:28:22 +01:00
Germain Souquet
f708c47385
Improve calculateRoomName performances by using Intl.Collator
2021-07-21 14:18:22 +02:00
Michael Telatynski
5cf6684129
Conform to new typescript eslint rules
2021-07-19 22:47:32 +01:00
Michael Telatynski
9b81b805be
create utility to decode qs into objects
2021-07-16 13:07:01 +01:00