status-go/services
Icaro Motta dbed69d155
perf(login)!: Set-up messenger filters outside login flow (#5229)
Fixes the slow login in mobile devices when users have joined large communities,
such as the Status one. A user would get stuck for almost 20s in some devices.

We identified that the step to set-up filters in the messenger is potentially
expensive and that it is not critical to happen before the node.login signal is
emitted. The solution presented in this PR is to set-up filters inside
messenger.Start(), which the client already calls immediately after login.

With this change, users of the mobile app can login pretty fast even when they
joined large communities. They can immediately interact with other parts of the
app even if filter initialization is running in the background, like Wallet,
Activity Center, Settings, and Profile.

Breaking changes: in the mobile repository, we had to change where the endpoint
wakuext_startMessenger was called and the order of a few events to process
chats. So essentially ordering, but no data changes.

- Root issue https://github.com/status-im/status-mobile/issues/20059
- Related mobile PR https://github.com/status-im/status-mobile/pull/20173
2024-06-10 12:02:42 -03:00
..
accounts fix: proper usage of CreateAccount RootDataDir (#5284) 2024-06-05 14:03:34 +01:00
appmetrics fix(tests): moved test db setup to a common place 't/helpers', created 2023-08-18 09:00:56 +02:00
browsers fix(tests): moved test db setup to a common place 't/helpers', created 2023-08-18 09:00:56 +02:00
chat refactor(chat)_: remove concept of ChannelGroup and remove api functions (#4997) 2024-05-13 15:06:21 -04:00
communitytokens fix_: Publish token actions to privileged members 2024-06-03 12:19:19 +02:00
ens chore_: `Bridge` interface renamed to `PathProcessor` interface and necessary changes applied due to that change 2024-06-07 15:50:38 +02:00
ext perf(login)!: Set-up messenger filters outside login flow (#5229) 2024-06-10 12:02:42 -03:00
gif fix(tests): moved test db setup to a common place 't/helpers', created 2023-08-18 09:00:56 +02:00
local-notifications Return request to join acceptance notifications (#4909) 2024-04-09 21:32:03 +02:00
mailservers chore(all)_: remove obsolete eth.staging fleet 2024-05-17 20:21:00 +02:00
peer Fix hash & start moving to lifecycle 2021-07-20 10:57:38 +02:00
permissions fix(tests): moved test db setup to a common place 't/helpers', created 2023-08-18 09:00:56 +02:00
personal feat: Rpc client manage multiple eth client (#2359) 2021-09-22 13:49:20 -04:00
rpcfilters feat(wallet): Move pending transactions to `transactions` module. 2023-07-11 16:07:42 +02:00
rpcstats feat(wallet)_: Fixed account limit period for history to infinite instead of per day 2024-05-28 13:44:40 +02:00
shhext Remove group members (#3011) 2022-12-10 08:26:51 +04:00
status Always set PubsubTopic in filters 2023-11-18 02:26:34 +02:00
stickers fix (@status-go/stickers) Stickers still show in the recent list after being uninstalled (#4474) 2023-12-21 10:05:30 -08:00
subscriptions feat: Rpc client manage multiple eth client (#2359) 2021-09-22 13:49:20 -04:00
typeddata fix: metamask test 2022-10-26 09:39:30 +02:00
updates feat: add service for checking if there are new versions available (#2552) 2022-06-08 08:38:26 -04:00
utils feat: new deeplink status-im->status-app (#4198) 2023-11-02 13:56:06 +08:00
wakuext fix: proper usage of CreateAccount RootDataDir (#5284) 2024-06-05 14:03:34 +01:00
wakuv2ext feat: fetch curated communities from smart contract on optimism (#2685) 2022-06-02 08:17:52 -04:00
wallet chore_: making contract type param internal to hop bridge processor type 2024-06-10 16:38:38 +02:00
web3provider fix_: skip tests using infura (#5086) 2024-04-24 16:41:42 +02:00