Commit Graph

1340 Commits

Author SHA1 Message Date
ganfra
8266902ec2 Merge pull request #5908 from element-hq/feature/fga/space_settings_iteration
Change : space settings iteration
2025-12-16 22:41:03 +01:00
ganfra
10b61df11b quality: fix tests after latest changes 2025-12-16 20:34:26 +01:00
Benoit Marty
028741d81c Format files. 2025-12-16 16:13:25 +01:00
ganfra
591eac83bd Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-15 16:06:06 +01:00
ganfra
5bb71db3b1 Merge pull request #5879 from element-hq/feature/fga/room_permissions_rework
misc : rework power levels apis
2025-12-15 12:19:54 +01:00
Jorge Martin Espinosa
aaf788b448 Fix crash when calling Room.predecessorRoom when the room is destroyed (#5894)
* Fix crash when calling `Client.predecessorRoom` when the room is destroyed

* Handle the root cause of this crash: destroying the room on activity recreation
2025-12-15 10:25:08 +01:00
ganfra
5c8fd831e3 misc(power level) : update tests following api change 2025-12-12 11:52:24 +01:00
ganfra
29c1f33638 misc(power level) : remove old api 2025-12-12 11:26:54 +01:00
ganfra
2dc8018c37 misc(power level) : introduce RoomPermissions 2025-12-12 11:26:54 +01:00
Jorge Martín
9723a7c426 Add missing trace log packs 2025-12-10 16:27:53 +01:00
Jorge Martín
289c0751d5 Fix broken API changes: use Room.latestEvent, which will keep its name, but it'll be using the logic previously in Room.newLatestEvent 2025-12-10 16:27:53 +01:00
ganfra
03dd89a77f change(room permissions): support space management 2025-12-10 15:29:50 +01:00
Jorge Martín
7e3acd6b58 Add Sentry transaction so we can check how long it takes to vacuum and if there were any errors when doing it 2025-12-10 15:22:16 +01:00
Jorge Martín
09cab10abc Fix dependency injection 2025-12-10 15:22:16 +01:00
Jorge Martín
d78e28be5e Make sure we schedule the vacuum task only if there isn't an existing one 2025-12-10 15:22:16 +01:00
Jorge Martín
482d7e0648 Add a periodic DB vacuuming task 2025-12-10 15:22:16 +01:00
Jorge Martín
9c72310cb4 Add developer option to optimize the SDK DBs 2025-12-10 15:22:16 +01:00
ganfra
0befce4743 misc(power level) : clean up code 2025-12-10 11:26:07 +01:00
ganfra
c87a8e9cff misc(power level) : remove old api 2025-12-08 22:23:17 +01:00
Benoit Marty
4cfd8907dd Merge pull request #5852 from element-hq/renovate/io.nlopez.compose.rules-detekt-0.x
fix(deps): update dependency io.nlopez.compose.rules:detekt to v0.5.1
2025-12-08 15:05:12 +01:00
Benoit Marty
ad366c63ec Merge pull request #5855 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-25.x
fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.12.4
2025-12-08 14:24:24 +01:00
Jorge Martín
f745f2ca1e Add SessionRestorationException, make sure ClientException can expose it through the cause property 2025-12-05 17:42:57 +01:00
ganfra
9b056f8aec misc(power level) : introduce RoomPermissions 2025-12-05 12:53:58 +01:00
Benoit Marty
096b8768ea Fix warning "Throwable should be first argument" 2025-12-05 09:48:26 +01:00
Benoit Marty
72b3decf4c Detekt: enable rule exceptions.SwallowedException and fix existing issue. 2025-12-05 09:45:23 +01:00
Jorge Martín
5d88a04ab0 Add missing abstractions and fakes 2025-12-04 18:02:59 +01:00
Jorge Martín
e814906ba1 Restore disabled tests with FFI fakes 2025-12-04 16:55:22 +01:00
ganfra
07d02fd076 Merge branch 'develop' into feature/fga/space_invite_notification 2025-12-04 15:53:49 +01:00
ganfra
a27e31b01b change(notification): handle invite notification for spaces 2025-12-04 12:25:30 +01:00
Jorge Martín
739f12d603 Replace AnalyticsSdkSpanFactory with AnalyticsSdkManager.
`AnalyticsSdkManager` also enables and disables Sentry logging in the SDK based on analytics user content.
2025-12-04 12:17:52 +01:00
Jorge Martín
11f41629c1 Allow bridging Sentry spans to the SDK ones.
Add distributed tracing for `Room.timelineWithConfiguration`, so we can inspect the associated Rust trace.
2025-12-04 12:17:52 +01:00
Jorge Martín
53ab38d990 Enable Sentry in the SDK: add SDK Sentry DSN value
This is provided to the SDK in `PlatformInitializer`.
2025-12-04 12:17:52 +01:00
Jorge Martin Espinosa
33694f0ff0 Upgrade the Rust SDK to v25.12.2 (#5838)
* Upgrade the Rust SDK to `v25.12.2`
2025-12-02 17:12:56 +00:00
Jorge Martin Espinosa
77be19bf3b Load JoinedRoom in home screen, pass it to the room flow (#5817)
* Load `JoinedRoom` in `HomeFlowNode.navigateToRoom`, then pass it to the next navigation nodes

* Add delayed loading indicator for cases when loading the room takes too long

* Avoid an extra FFI call in `RustRoomFactory`.

Use `RoomInfo.membership` instead.

Also use `computation` dispatcher, since it should reduce the delay when switching contexts.

* Remove the dispatcher usage when loading the room in `HomeFlowNode`, we immediately call a method that changes the dispatcher used

* Make sure only a single room is opened at a time
2025-12-02 15:22:55 +00:00
Jorge Martín
29117ce93d Add AnalyticsService.cancelLongRunningTransaction and AnalyticsService.finishLongRunningTransaction 2025-11-28 14:15:54 +01:00
Jorge Martín
93feed38bf Add transaction trees for opening a room so we can have a nice trace view 2025-11-28 14:15:54 +01:00
Jorge Martín
766c23721e Have long running analytic transactions return actual transactions.
Also add `AnalyticsService.getLongRunningTransaction` and change `AnalyticsService.stopLongRunningTransaction` to `removeLongRunningTransaction`.
2025-11-28 14:15:54 +01:00
Benoit Marty
74b04f47ed Room list: enable latest event sorter. 2025-11-27 14:55:19 +01:00
ganfra
c432a3080e deps: fix api break 2025-11-26 17:03:27 +01:00
ganfra
ca526580fd misc : use new_latest_event api (+ some renaming) 2025-11-26 10:58:16 +01:00
ganfra
8a599a1e51 deps(sdk) : add fallbackToServer on userIdentity api. 2025-11-24 20:22:11 +01:00
ganfra
f4f129f420 Merge branch 'develop' into renovate/org.matrix.rustcomponents-sdk-android-25.x 2025-11-19 13:10:18 +01:00
ganfra
f5d450e68b deps(sdk): fix api usages 2025-11-19 13:07:59 +01:00
Jorge Martin Espinosa
c6c2f4a267 Add some performance metrics for Sentry (#5760)
- Add `AnalyticsService.startTransaction(...)` to start a logging transaction that can be uploaded to Sentry if the user enabled the analytics upload.
- Add `AnalyticsTransaction` wrapper to abstract the Sentry ones.
- Added several helper methods to improve the UX around these transactions.
- Then measure:
  - Time until the first sync, and how it ended.
  - Time until the first rooms are displayed.
  - Time to load a room or a preview.
  - Time to load a timeline.
2025-11-19 11:42:55 +00:00
Benoit Marty
d8cacba43a Improve API: use RoomId instead of String. 2025-11-19 10:14:03 +01:00
Benoit Marty
b54b077125 Merge pull request #5755 from element-hq/feature/bma/cleanupDb
Remove unused `slidingSyncProxy` from DB.
2025-11-18 17:42:09 +01:00
Benoit Marty
7cbc616bef Remove unused import. 2025-11-18 16:42:34 +01:00
Benoit Marty
de2ab5a557 Merge pull request #5722 from element-hq/feature/bma/moduleCleanup
Module cleanup
2025-11-18 16:14:10 +01:00
Benoit Marty
5728452e68 Remove unused slidingSyncProxy from DB. 2025-11-18 15:58:22 +01:00
Jorge Martin Espinosa
5a5c0b16ca Revert "Stop overriding the homeserver when restoring a Client (#5753)" (#5754)
This reverts commit a0a3a30aa3.
2025-11-18 15:16:34 +01:00