1644 Commits

Author SHA1 Message Date
Igor Sirotin
85c0e282ae
feature: profile showcase preferences sync&backup (#4729) 2024-02-17 18:07:20 +00:00
Igor Sirotin
f0e6fd31de
chore: TestFetchingHistoryWhenOnline (#4701) 2024-02-16 18:34:04 +00:00
Igor Sirotin
add46fbda0
chore: make generate with nix-shell (#4745) 2024-02-16 12:48:27 +00:00
Igor Sirotin
789ee81201
fix: saved addresses sync (TestSyncDeletesOfSavedAddresses flaky test) (#4742) 2024-02-16 09:45:10 +00:00
Mikhail Rogachev
526e3d74f1
Feat: proof of membership for profile showcase communities (#4713)
* chore: move profile showcase structures to the indentity package

* feat: implement proof of membership for unecrypted communities

* feat: implement proof of membership for encrypted communties with grants
2024-02-15 22:13:12 +03:00
Andrea Maria Piana
27f0884b51 Exclude watch only accounts from permissions checks 2024-02-14 17:03:28 +00:00
Jonathan Rainville
3a0fe0e62f
fix: fix contact not updating when an ID verif is canceled (#4719)
Fixes https://github.com/status-im/status-desktop/issues/13412
2024-02-13 14:34:56 -05:00
Sale Djenic
598d58f0d6 fix: a proper clock set when dispatching saved addresses 2024-02-13 17:39:10 +01:00
Jonathan Rainville
2bdc7ec0f4
fix(handler): fix CR received from a removed contact removed (#4708)
Fixes https://github.com/status-im/status-desktop/issues/13488

The problem was that when you add a contact, it create the chat. Then, if you remove them, it doesn't remove the chat, so `chat.Active` is true.
Now I check in that case if it's a 1x1 chat and if so, if we are contact.
2024-02-13 10:15:42 -05:00
Igor Sirotin
5149976ce0
fix: improve messenger offline detection (#4703) 2024-02-13 13:12:59 +00:00
Andrea Maria Piana
598e3217ba Signal user if the networks are not supported 2024-02-13 12:09:46 +00:00
Igor Sirotin
5e905518aa
fix: missing fields in Communtiy CreateDeepCopy (#4718) 2024-02-12 23:26:32 +00:00
Igor Sirotin
432bfeea2f
fix: flaky MessengerStoreNodeRequestSuite (#4721) 2024-02-12 22:30:19 +00:00
Jonathan Rainville
1c42c07760
feat(discord_import): send signal when the import was cleaned up (#4693)
This is to let the front end know that the community was deleted so it can also delete it from the UI
2024-02-12 16:04:12 -05:00
Igor Sirotin
44c39d345e
chore: testWakuV2Config (#4704)
* chore: testWakuV2Config

* renamed to `NewTestWakuV2`
2024-02-12 12:53:15 +00:00
Igor Sirotin
8d4f4904c6
fix: better calculation of from/to mailserver batch parameters (#4702) 2024-02-12 12:20:56 +00:00
Andrea Maria Piana
daef5c56e2 Add HighestRole & ordered roles to permission response
This commit adds HighestRole & a list of permissions in order of
importance to the CheckPermissionToJoinResponse.

This simplify client code so that it doesn't need to be calculated on
the client.
2024-02-12 12:18:56 +00:00
Mikhail Rogachev
3ea2002904
Feat: Modify grants for profile showcase use (#4694)
* chore: regenerate proto binaries

* feat: remove unused grant code for community's canPost
2024-02-11 15:11:04 +03:00
osmaczko
ec1238e020
fix: adapt to response.RequestsToJoinCommunity interface change (#4705)
fixes tests build
2024-02-09 18:23:24 +00:00
Michal Iskierko
cc66f43713 fix: fix permissions checker
Improve CheckPermissions function.
Check separately member and admin+tokenmaster permissions..

Issue #12884
2024-02-09 19:00:43 +01:00
Patryk Osmaczko
87199a8c99 chore: cover community events eventual consistency with test
It proves eventual consistency is broken for contact request events.

iterates: status-im/status-desktop#13387
2024-02-09 16:02:17 +01:00
Patryk Osmaczko
a0e7b1374e feat: introduce MessagesOrderController
Enables controlling order of messages in tests. Useful for deterministic
reproduction of out-of-order messages.

Required for: status-im/status-desktop#13387
2024-02-09 16:02:17 +01:00
Patryk Osmaczko
a8b7854ce9 feat: introduce testWakuWrapper and testPublicWakuAPIWrapper
Enables `PublicWakuAPI` introspection.
2024-02-09 16:02:17 +01:00
Patryk Osmaczko
7e8b61f888 feat: introduce MessagesIterator
Enables customization of iteration strategy for retrieved messages.
2024-02-09 16:02:17 +01:00
Mikhail Rogachev
9b7926b23b
feat: delete profile showcase community entry on community leave or kicked (#4686) 2024-02-09 12:37:54 +03:00
Mikhail Rogachev
2350461818
feat: Dispatch profile showcase message on mutual/verified contacts change (#4678) 2024-02-09 12:36:54 +03:00
Andrea Maria Piana
c49a0fc314 [Fixes: #4687] Change requestsToJoinCommunity to a map
The test was flaky because of re-receiving the message, which resulted
in multiple identical requestsToJoin being added to messengerResponse.

We should in general avoid using arrays in messengerResponse and prefer
maps for exactly this reason.
2024-02-08 11:18:53 +00:00
Icaro Motta
e7e6782241 Fix: linter error 2024-02-07 20:10:49 +00:00
Icaro Motta
31277f1e9e Fix: cover case where criteria doesn't have token IDs 2024-02-07 20:10:49 +00:00
Icaro Motta
b727f1e14b Extract entire permissioned balances logic to separate file 2024-02-07 20:10:49 +00:00
Icaro Motta
105703e2eb Remove zombie code from experiments 2024-02-07 20:10:49 +00:00
Icaro Motta
4f8a66fc07 Create endpoint to get permissioned balances 2024-02-07 20:10:49 +00:00
Jonathan Rainville
18e7b6c331
Fix Discord Import getting stuck (#4681)
* fix(community_import): fix import getting stuck in case of error in msgs

Fixes #13438 and #13439

* fix(community_import): fixes a bug with the timestamp format

The importer didn't like `-` time zones like `-4`. Using the standard date format makes it work.
2024-02-07 13:02:47 -05:00
Mohsen
70ee70a19a
feat: implement new endpoint to set customization color (#4568) 2024-02-07 18:20:54 +03:00
Andrea Maria Piana
605fe40e32 Fix encryption metadata issues #4613
This commit fixes a few issues with communities encryption:

Key distribution was disconnected from the community description, this created a case where the key would arrive after the community description and that would result in the client thinking that it was kicked.
To overcome this, we added a message that signals the user that is kicked. Also, we distribute the key with the community description so that there's no more issues with timing.
This is a bit expensive for large communities, and it will require some further optimizations.

Key distribution is now also connected to the request to join response, so there are no timing issues.

Fixes an issue with key distribution (race condition) where the community would be modified before being compared, resulting in a comparison of two identical communities, which would result in no key being distributed. This commit only partially address the issue.
2024-02-07 10:25:41 +00:00
Mikhail Rogachev
47b9978525
Feat: Save and dispatch profile showcase on wallet account change (#4674)
* Feat: Save and dispatch profile showcase on wallet account change
* Feat: Remove entry and dispatch profile showcase on wallet account removal
2024-02-07 12:30:56 +03:00
Ivan Belyakov
33c46dd59d fix(protocol): crash in concurrent map write/read 2024-02-05 15:21:44 +01:00
Roman Volosovskyi
2dc1b48968
[#4671] Increase interval between calls to Directory contract (#4672) 2024-02-05 14:01:59 +01:00
richΛrd
e9b10c4beb
chore: sync history regardless of connection type (#4656) 2024-02-02 13:03:55 -04:00
Roman Volosovskyi
9b10b29da2
[#4630] Add wallet_fetchOrGetCachedWalletBalances method (#4666) 2024-02-02 11:42:56 +01:00
Mohsen
9879b1ea77
fix: set display name issue (#4642) 2024-02-01 19:13:41 +03:30
Igor Sirotin
0c2a935578
fix: fetch history when back online (#4651) 2024-01-30 18:13:18 +00:00
richΛrd
98c1ebec05
fix: handle community shard unassignment and update (#4627) 2024-01-30 13:56:59 -04:00
Igor Sirotin
1f0fc2935c
fix: clear waku envelopes cache when deleting a chat (#4621)
* chore: extract `ErrPermissionToJoinNotSatisfied`
* chore: disable resending messages in communities tests
* chore: move newTestMessenger extraOptions to testMessengerConfig
* chore: `WithTestStoreNode` messenger option
* feat: waku `ClearEnvelopesCache` method
* fix: call `ClearEnvelopesCache` when deleting chat
* chore: `TestBecomeMemberPermissions` checks messages after rejoin
2024-01-30 13:43:34 +00:00
Michal Iskierko
73a5189398 feat(BridgeMessage): Add new type of chat message content: BridgeMessage
BridgeMessage is a type of chat message content which will be sent from  Matterbridge.
It contains fields:
- bridge name - depends on the used bridge, eg. "discord", "slack", etc...
- user name - username the message was received from
- content - message content
- user avatar
- message id
- parent message id - used in case of replies

Message is saved to a separated table: bridge_messages, similarly to discord messages.
The user_messages table is untouched.
bridge_messages table contains user_messages_id in order to join with user_messages table.

Issue #13098
2024-01-30 12:14:54 +01:00
Patryk Osmaczko
4a7d15b36d fix: use CommunityShardKey's clock rather than community's clock 2024-01-29 21:31:11 +01:00
Patryk Osmaczko
ac81c15805 fix: ignore outdated COMMUNITY_SHARD_KEY messages
This mitigates issue where community shard on client's side was not in
sync with owner's.

relates to: status-im/status-desktop#13217
2024-01-29 18:21:51 +01:00
Patryk Osmaczko
67e18a8ff0 chore: introduce unhandledMessagesTracker 2024-01-29 18:21:51 +01:00
Sale Djenic
6403a7413b feat: new endpoint added which returns accounts of all contacts that match the passed address 2024-01-29 13:15:24 +01:00
Igor Sirotin
ab641c0c78
fix: remove store node envelopes ordering hotfix (#4622) 2024-01-27 13:02:12 +00:00