Commit Graph

22 Commits

Author SHA1 Message Date
Patryk Osmaczko 2d4ef8b2e0 chore(communities)_: cover ERC721 based permissions reevaluation with tests 2024-06-07 23:46:20 +02:00
Patryk Osmaczko ec9e29ef92 chore(communities)_: reevaluate permissions with pre-fetched owners
That's an optimisation. Instead of fetching collectibles owners for each
member, it is fetched once, before members iteration.

It should significantly reduce amount of queries to providers.

closes: 
2024-06-07 23:46:20 +02:00
Mikhail Rogachev b5f8f792d5
chore: fix flaky tests in 'TestMessengerProfileShowcase' ()
* chore_: fix flaky tests in 'TestMessengerProfileShowcase'

Close 

* chore_: fix flaky `TestShareShowcasePreferences`

Close 
2024-04-30 19:46:42 +02:00
Mikhail Rogachev 3baaac3e63
chore_: move grant exiration to a new test () 2024-04-19 16:23:27 +02:00
Mikhail Rogachev 6da423fc71
feat: Add an expiration and periodical publishing for community grants ()
* feat_: add periodical publishing for community grants
feat_: Validate grant when receiving it
feat_: add expiration for grants
feat_: add test for grants expiration
fix_: move grants test to profile showcase, fix a few bugs
* feat_: use one group mesage to update grants
* chore_: review fixes
2024-04-17 16:53:51 +02:00
Mikhail Rogachev 30e143ca40
Fix(Profile): Remove profile showcase from general response via signal ()
* Fix(Profile): Remove profile showcase from general responce via signal

* Fix(Profile): Restore community membership validation for the prodile showcase

* feat: Make profile validation optional

* fix: review fixes
2024-03-29 11:22:44 +01:00
Mikhail Rogachev e878f89b65
fix: Remove proof of membership for the profile showcase communities ()
https://github.com/status-im/status-desktop/issues/14084
2024-03-22 21:50:15 +01:00
Mikhail Rogachev 6522d52016
Feat: Simplify profile showcase preferences ()
* Feat: simplify profile showcase preferences

* Feat: remove old profile showcase preferences on save

* Feat: add getters for showcase entries limits
2024-03-08 17:20:23 +01:00
Patryk Osmaczko 0a1a66afa7 fix: prevent messenger being started twice
Previously, Messenger was `Start`ed multiple times, which resulted in
the shutdown process not being invoked on previously initialized
Messenger's sub-instances. This led to the failure of MVDS instance
shutdown causing massive error logs due to the attempts to read from a
closed database.
2024-02-27 11:00:29 +01:00
Patryk Osmaczko 5aed0d178f chore: unskip flaky tests 2024-02-27 11:00:29 +01:00
Mikhail Rogachev 7cc4c12642
Feat: Add social links to the profile showcase ()
* feat: add social links to the profile showcase

* fix: deprecate old social links, add synced profile showcase to response
2024-02-26 16:53:40 +03:00
Mikhail Rogachev eb5bad4868
Feat: Profile showcase validate collectible ownership ()
* feat: profile showcase checks then presenting collectibles

* chore: more obvious CollectiblesManager configuration
2024-02-22 11:08:58 +03:00
Patryk Osmaczko 30f4edf48d fix: keep flaky tests compilable and easy to find 2024-02-19 21:46:35 +01:00
Patryk Osmaczko 1fca1e1743 Revert "Comment out flaky tests ()"
This reverts commit 582927868d.
2024-02-19 21:46:35 +01:00
Roman Volosovskyi 582927868d
Comment out flaky tests () 2024-02-19 10:10:37 +01:00
Igor Sirotin 85c0e282ae
feature: profile showcase preferences sync&backup () 2024-02-17 18:07:20 +00:00
Mikhail Rogachev 526e3d74f1
Feat: proof of membership for profile showcase communities ()
* 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 605fe40e32 Fix encryption metadata issues
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 fb98ee93ce
Correct profile showcase tokens and collectibles ()
* feat: add profile showcase collectibles & assets missing fileds

* feat: resolve collectible identification issue

* feat: add validation for collectible visibility relative account

* feat: separate profile showcase assets on verified and unverified tokens

* fix: make chainId uint64, comment collectible account check

* chore: re-generate protobuf binaries with right protoc version

* Update protocol/messenger_profile_showcase.go

Co-authored-by: Igor Sirotin <sirotin@status.im>
2024-01-25 20:48:27 +04:00
Patryk Osmaczko 4086e24365 fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
Mikhail Rogachev 03c32f620f
feat: Profile showcase data sharing ()
* feat: Add profile showcase messaging part with ecrypted data

* feat: Separate profile showcase categories to provide ablity to store custom data

* fix: review fixes

* feat: move profile showcase out of contact data

* fix: create index on contact id for profile tables

* chore: remove logger from link preview
2023-11-09 22:59:01 +04:00
Mikhail Rogachev 1be356af93
feat: Profile showcase backend ()
* feat: profile showcase preferences basic impl

(squashed)

* feat: save preferences in batch for profile showcase

* chore: add validation for profile showcase settings request

and fix migration order
2023-10-24 14:43:18 +04:00