Commit Graph

1385 Commits

Author SHA1 Message Date
Cuteivist d35a73a94f
chore: Optimize number of sql calls () 2024-03-18 09:37:05 +01:00
Roman Volosovskyi 38183ab335
Fix balance cache on switching to testnet () 2024-03-15 13:37:00 +01:00
Ivan Belyakov 2c634a2b45 fix(wallet): flaky test TestUpdateCollectionsData 2024-03-15 13:35:32 +01:00
Cuteivist afd72ace28
Chore: Remove fetching community data () 2024-03-13 17:33:01 +01:00
Sale Djenic f69ee07593 fix: calculating next nonce for optimism chain improved to align with calculation on mainnet and arbitrum 2024-03-13 15:21:33 +01:00
Michal Iskierko 43bc6e4b83 fix: Compute deployment fees dynamically
Issue 
2024-03-12 20:05:25 +01:00
Jonathan Rainville 3da9abfeb5 fix: set canPost to true for non-community channels 2024-03-12 11:04:45 -04:00
Jonathan Rainville e3810148d8 feat: add ViewersCanPostReactions to Chat object
Needed https://github.com/status-im/status-desktop/issues/13523
2024-03-12 11:04:45 -04:00
Roman Volosovskyi 2be9bfc304
Fix balances cache () 2024-03-11 14:48:40 +01:00
Anthony Laibe 2dfbe3099a fix: swap and send to l1 2024-03-11 12:04:14 +01:00
Stefan e1c7c715aa fix(wallet): fix activity filter updates special case
This commit fixes a special case where the activity filter incremental
updates were reported as new even that they were present in a previous
update.

Updates status-desktop 
2024-03-11 09:37:05 +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
Dario Gabriel Lipicar fcde7ccafe fix: ensure no duplicate results when checking for missing collectible/collection ids in the db 2024-03-08 10:49:06 -03:00
Cuteivist 6c792a0e73
feat: Pass 1 day balance change () 2024-03-08 13:52:39 +01:00
Anthony Laibe 477283e960 fix: buying ens from sepolia 2024-03-08 09:43:26 +01:00
Roman Volosovskyi 6f753617de
[] Use findNewBlocksCommand for checking recent history () 2024-03-07 15:51:21 +01:00
Dario Gabriel Lipicar 4bf6f27b26 fix: handle collectibles owned by multiple accounts 2024-03-06 20:45:42 -03:00
Dario Gabriel Lipicar 55e8fd4554 fix: ensure atomic collectibles ownership updates 2024-03-06 20:45:42 -03:00
Dario Gabriel Lipicar 71377a50d7 feat: fetch collectibles balances 2024-03-06 20:45:42 -03:00
Sale Djenic 846a59b40f chore: tokenstore details for usdc for sepolia and arbitrum sepolia updated 2024-03-06 19:38:35 +01:00
Khushboo-dev-cpp 580f697f57
fix: Fix send Erc 1155 flow () 2024-03-06 11:16:20 +01:00
Alexander 26bc564b38
Peer syncing toggle ()
* Peer syncing toggle

* bindata.go
2024-03-05 11:44:09 +01:00
Ivan Belyakov 440779fc8c fix: flaky test TestController_watchAccountChanges by making sure
to check the database transfer after removal event is processed.
2024-03-04 10:36:33 +01:00
Igor Sirotin bdb2b261a6
feature: view only channel reactions ()
* CommunityMember channel role

* make generate
2024-03-01 17:15:38 +00:00
Mikhail Rogachev 5d29c20f94
Feat: Add 'IsDisplayNameDupeOfCommunityMember' endpoint ()
* feat: Add 'TestScanCommunitiesMembersForName' endpoint

* feat: validate display name amoung community members
2024-03-01 15:46:48 +03:00
Anthony Laibe 011a170a03 fix: dup tx
Remove duplicate gas only TX
Remove Send and Receive from self, only the send row is kept
2024-03-01 09:43:47 +01:00
Stefan a63d33e04a feat(wallet) process all the events and debounce updates
Process missing events

Throttle down downloader's events to avoid overloading the CPU with
change detection.

Updates status-desktop 
2024-02-29 17:06:40 +01:00
Stefan eecde4c27f feat(wallet) activity filter incremental updates on filter clear
Add an intermediary state to the session to keep track of the changes
made when the filter was applied.

Updates status-desktop 
2024-02-29 13:27:05 +01:00
Cuteivist 03b903fd64
feat: Pass community id for wallet activity () 2024-02-29 11:22:14 +01:00
Sale Djenic bb3006d747 feat: rpc request limiter 2024-02-29 08:26:10 +01:00
Stefan ae9b697eda feat(wallet) implement mixed incremental updates for activity filter
Refactor the activity filter session API to account for the new structure

Also:

- Refactor test helpers to mock for different chains with mixed answers
- Test implementation

Updates status-desktop 
2024-02-28 22:14:21 +01:00
Mikhail Rogachev 577db512c6
Feat: add endpoint for getting latest pending CR for a contact () 2024-02-28 23:00:35 +03:00
Dario Gabriel Lipicar 9fef2d3558 fix: properly setup collectible providers exponential backoff 2024-02-27 18:26:55 -03:00
Patryk Osmaczko 1f42f2582a Revert "Comment out all logged flaky tests"
This reverts commit 0bd4a06edc.
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
Dario Gabriel Lipicar 54ea0981a5 fix: properly handle tokenID 0 when filtering activity by collectibles 2024-02-23 09:43:20 -03:00
Anthony Laibe 972a4f9df9 feat: sepolia default 2024-02-23 11:26:31 +01:00
Cuteivist 83678042f4
chore: Pass tx ID instead of hash () 2024-02-22 23:40:36 +01:00
Sale Djenic 0e8143db76 feat(savedaddresses): mixedcase address added to the saved address struct 2024-02-22 10:16:12 +01: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
Anthony Laibe 0856efff6f fix: resolve first tx of block
This is a workaround when fetching unknown tx without receiver
2024-02-21 13:28:26 +01:00
Pablo Lopez 3f19972c8e
enable custom community storenodes ()
* enable custom community store nodes

* fix

* fix

* fix

* fix

* cleanup

* fix

* migration

* fix

* cleanup

* fix

* cleanup

* fix

* fix

* cleanup

* message to update the community storenodes

* rename

* fix test

* wait for availability only if global storenode

* fix test

* fix typo

* sync community storenodes

* remove unused

* add tests

* fix imports

* fix todo

* unused

* pr comments

* pr feedback

* revert merge deleted

* fix lint

* fix db and perform ms request

* typo

* fix log

* fix go imports

* refactor handle message

* cleanup public message

* add tests

* fix test

* cleanup test

* fix test

* avoid making one file to big to keep codeclimate from complaining

* fix lint

* revert

* Update protocol/storenodes/database.go

Co-authored-by: richΛrd <info@richardramos.me>

* Update protocol/messenger_mailserver_cycle.go

Co-authored-by: richΛrd <info@richardramos.me>

* PR comment

* fix tx

* proto files

* pr comment

---------

Co-authored-by: richΛrd <info@richardramos.me>
2024-02-20 17:49:39 +02:00
Roman Volosovskyi cc708ce0ce
[] Nilable block range values for proper ranges management () 2024-02-19 16:50:07 +01:00
Cuteivist a866b8025e
feat: Community token received notification () 2024-02-19 14:55:38 +01:00
Omar Basem 54d0cf28c7
feat: mobile status.go - getRandomMnemonic ()
* feat: mobile status.go - getRandomMnemonic ()
2024-02-19 16:53:01 +04:00
Roman Volosovskyi 9e36df449e
Fix range for ERC20/1155/721 tx detection () 2024-02-19 11:50:03 +01:00
Igor Sirotin 85c0e282ae
feature: profile showcase preferences sync&backup () 2024-02-17 18:07:20 +00:00
Mohsen 8a3e71378f
feat: add setBio endpoint () 2024-02-16 15:57:41 +03:00
Igor Sirotin 789ee81201
fix: saved addresses sync (`TestSyncDeletesOfSavedAddresses` flaky test) () 2024-02-16 09:45:10 +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
Dario Gabriel Lipicar 12d70e0ce4 fix: notify collectible data update when transferID is set 2024-02-15 12:05:07 -03:00
Roman Volosovskyi 7f6f8b3f7c
Add tokens metadata on FetchOrGetCachedWalletBalances call 2024-02-15 14:19:19 +01:00
Anthony Laibe e0814a488f feat: add sepolia token 2024-02-14 11:11:46 +01:00
Sale Djenic 598d58f0d6 fix: a proper clock set when dispatching saved addresses 2024-02-13 17:39:10 +01:00
Stefan e9ff0fbefe feat(wallet) add GetMoreForFilterSession API method
Also fix StopFilterSession to always notify client

Updates 
2024-02-13 17:37:44 +01:00
Jonathan Rainville 1c42c07760
feat(discord_import): send signal when the import was cleaned up ()
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
Stefan ca973b4aa6 feat(wallet) use sql activity filter for incremental updates
Switch from the prototype of duplicating the SQL filter as a runtime
and keeping them in sync on each event that might invalidate the current
filtered entries to a simpler approach of requesting the filter again
and doing the diff to detect the new changes.

Also add a new reset API to model the new entries design requirements.

The new approach shows less corner-case to handle and follows one source
of truth concept making debugging and future maintenance easier.

Other changes

- Fix pending mocking to work with multiple calls
- Refactor tests to account for the new changes

Updates status-desktop 
2024-02-12 19:29:15 +01:00
Roman Volosovskyi af16669787
Fetch balances when db cache doesn't exist (second attempt) () 2024-02-12 13:29:31 +01:00
Roman Volosovskyi 76d58ba7f0
Fetch balances when db cache doesn't exist () 2024-02-12 10:10:28 +01:00
Roman Volosovskyi 005e7e6ee4
Fix nonce change detection () 2024-02-08 12:54:04 +01:00
Icaro Motta dd03b628af Add function docstring 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
Dario Gabriel Lipicar 9c89409c94 fix: use opensea only as last resort collectibles provider
Fixes 
2024-02-07 12:27:23 -03:00
Mohsen 70ee70a19a
feat: implement new endpoint to set customization color () 2024-02-07 18:20:54 +03:00
Anthony Laibe 101f1aeca3 feat: add support for erc1155 2024-02-07 11:59:32 +01:00
Dario Gabriel Lipicar 058fa629a0 feat(wallet): add contract type to collectibles 2024-02-06 13:35:01 -03:00
Roman Volosovskyi d5a10a97f1
[] Return l2 block number when calling BalanceChecker on Arbitrum () 2024-02-02 12:52:52 +01:00
Roman Volosovskyi 9b10b29da2
[] Add wallet_fetchOrGetCachedWalletBalances method () 2024-02-02 11:42:56 +01:00
Anthony Laibe 9c131edfaa feat: token list updated at global 2024-02-02 11:30:42 +01:00
Stefan 812910f087 feat(wallet): Add session-based activity API for dynamic updates
This commit introduces the first steps towards implementing a session-based activity API to support dynamic updates of the current visualized filter in the wallet activity service. This change is necessary to move away from static paginated filtering, which was previously done in SQL, to a more dynamic approach that can handle updates in real-time.

The main changes include:
- Add basic `EventActivitySessionUpdated` support for pending transactions.
- Added a `TODO.md` file outlining the plan and requirements for dynamic activity updates.
- New session-related API to the `activity.Service`
- `session.go` contains the logic for session management and event processing related to activity updates.
- Add test case for incremental filter updates.

The commit also includes:

- various other minor changes and refactoring to support the new session-based approach.
- Deprecation notices added to the `api.go` file for methods that are no longer used by the status-desktop application.
- Clarification comments added to the `scheduler.go` file regarding replacement policies.

Updates: 

ghstack-source-id: a61ef74184
Pull Request resolved: https://github.com/status-im/status-go/pull/4480
2024-02-01 19:55:06 +01:00
Stefan 21e6914a3c fix(wallet) fix reading amount for pending transactions
The reading of the amount for pending transactions was done in the same
way as for transfers table. However, the transfers table has a string
hex representation of the amount, while the pending transactions table
has a binary representation of the amount (*big.Int). This was
triggering the not int warning and value was missing.

Updates status-desktop 
2024-02-01 18:28:55 +01:00
Roman Volosovskyi 241595a871
[] Do not restart reactor when it is already running () 2024-02-01 17:26:40 +01:00
Stefan 31a2d403ef fix(wallet) prioritize type SendAT for pending entries in activity
In case both to/from addresses are present in the list we were using
the same logic as for transfers. However, this doesn't make sense given
that we can have only one entry in pending activity.

The following cases are still covered

- When the receiver is in addresses we get received
- When both receiver and sender are in the list will get sent
- When the sender is on the list we will get sent

Updates status-desktop 
2024-02-01 16:59:09 +01:00
Ivan Belyakov e4745d01b4 fix(wallet): handle BlobTxType transaction.
Update go-ethereum version

Closes 
2024-01-31 10:06:14 +01:00
Ivan Belyakov 7d1927396a fix(wallet): do not return gas-only ETH entries of transfers table for
activities request

Closes 
2024-01-30 11:37:53 +01:00
Roman Volosovskyi dad2ec3f66
[] Temporary fetch l2 block number for Arbitrum networks separately from BalanceChecker () 2024-01-30 10:09:44 +01:00
Anthony Laibe 0808b780f7 feat: add sepolia optimism 2024-01-30 08:57:06 +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
Ivan Belyakov f6c219c839 fix(wallet): Made loadBlocksAndTransfers command FiniteCommand to
keep restarting on error non-stop, removed some tests accordingly.
Fixed a flaky test for loadBlocksAndTransfers command.
Added tests for async.AtomicGroup.
Made tranfersCommand FiniteCommandWithErrorCounter to prevent infinite
restart.
2024-01-26 17:50:31 +01:00
Ivan Belyakov 95b148a247 fix(wallet): handle errors in findBlocksCommand and
findNewBlocksCommand gracefully.
Add ErrorCounter type for async package.
Add tests

Closes https://github.com/status-im/status-desktop/issues/11074
2024-01-26 17:50:31 +01:00
Roman Volosovskyi 71ae7ca1a0
[] Skip balance requests on checking nonce () 2024-01-26 13:57:16 +01:00
Roman Volosovskyi 9b7eec0edb
[] Get rid of fetchLatestBlockNumberCommand () 2024-01-25 13:05:59 +01:00
Roman Volosovskyi 647c3b0fd8
[] Skip nonce check when possible during tx detection 2024-01-24 11:31:14 +01:00
Anthony Laibe 1017d2bc16 fix: query only header for fees 2024-01-23 15:24:39 +01:00
Patryk Osmaczko bf5dcacdeb refactor: introduce `newTestMessenger`
This avoids duplication and enables better configuration possibilities
for clients.

Next step is to cleanup all `newMessenger` derivatives in tests.
2024-01-22 13:08:58 +01:00
Ibrahem Khalil 436d229856
Add last opened at key for community () 2024-01-21 12:55:14 +02:00
Roman Volosovskyi 9c0526f7d9
[] Detect balance and erc20 transfers by a single contract call () 2024-01-19 16:57:04 +01:00
Siddarth Kumar 926f6a3c72 Revert "test: bump go-libp2p"
This reverts commit d0ca4447c6.
2024-01-18 20:29:33 +00:00
Dario Gabriel Lipicar 0d2c3cef7c feat: implement token management settings for collectibles 2024-01-18 11:46:35 -03:00
Richard Ramos d0ca4447c6
test: bump go-libp2p 2024-01-18 14:28:06 +00:00
Dario Gabriel Lipicar b38e2c9278 feat(wallet): add collectibles filter option tokenIDs 2024-01-18 11:14:02 -03:00
Roman Volosovskyi 0bd4a06edc Comment out all logged flaky tests 2024-01-18 06:36:12 +00:00
IvanBelyakoff 3a4dfff20b
fix(wallet): fix blocks ranges update error, add tests ()
Fixes 
2024-01-17 12:08:56 +01:00
Dario Gabriel Lipicar 1924828f8d fix: disable Goerli in the OpenSea client 2024-01-16 12:05:06 -03:00
Roman Volosovskyi 9aef13f83e
[] Enable prevention of tx detection on unrevealed mnemonic/address () 2024-01-16 15:17:02 +01:00
Mykhailo Prakhov 94bee02ef7
chore: fetch comunity token metadata during handling community description () 2024-01-16 09:08:56 +01:00
Dario Gabriel Lipicar ee6621b066 feat: link owned collectibles with latest matching transfer
Part of 
2024-01-15 12:55:47 -03:00
Dario Gabriel Lipicar 3a00c3fb9d fix: avoid losing cached community collectibles data 2024-01-12 08:55:38 -03:00
Dario Gabriel Lipicar 250b8eea87 fix: update the list of chains supported by opensea 2024-01-11 19:30:56 -03:00
Dario Gabriel Lipicar d4f4d47cdb fix: properly detect relevant incoming token transfers
Fixes 
2024-01-10 16:03:55 -03:00
Sale Djenic 280f48877d chore(savedaddresses)!: favourite property removed and primary key updated
- favourite column removed from the saved_addresses table
- favourite property removed from the SavedAddress struct
- ens name removed from the primary key, the primary key now is composed of address and is_test columns
- ens parameter removed from wakuext_deleteSavedAddress
- wallet_getSavedAddresses moved to wakuext_getSavedAddresses (to keep them all in a single place)
- saved addresses related endpoints removed from the wallet service, even they logically belong there, a reason for that
is avoiding emitting sync message if one uses calls from the wallet service, while that's not the case in ext service. Once
we refactor this and introduce devices syncing mechanism in the wallet service, we should not only these but other wallet
related endpoints move there (removed: wallet_getSavedAddresses, wallet_addSavedAddress and wallet_deleteSavedAddress).

Affected area:
Saved addresses
2024-01-10 19:30:56 +01:00
Dario Gabriel Lipicar 781a2c7c8e fix: ensure needed community tokens are available in the db
Fixes 
2024-01-10 12:57:10 -03:00
Dario Gabriel Lipicar 9d9c40b7cf fix: make fetchCommunity return latest available community
Fixes 
2024-01-08 18:09:21 -03:00
Anthony Laibe 6599be1721 feat: balance endoint without market data 2024-01-08 10:23:44 +01:00
Cuteivist 846a4e2363
feat: Community token received notification () 2024-01-04 13:22:06 +01:00
Sale Djenic a8357dceac feat: color field added to saved address
- `color` column added to `saved_addresses` table
- `colorId` parameter exposed via `SavedAddress` struct

Affected area - saved addresses.

The following endpoints return or receive `SavedAddress` instance:
- `UpsertSavedAddress`
- `GetSavedAddresses`
- `AddSavedAddress`
2023-12-29 10:39:52 +01:00
Sale Djenic 6bfc1bed08 chore: read and use nonce from network instead from the local cache when sending tx
Reading the Nonce from the local cache may be incorrect if the tx is made out of the Status app or
if Status app sends a tx prepared by the dapp (via WalletConnect). A submitted tx with a wrong Nonce
results in a failing tx, that's why we need to read the Nonce from the network.
2023-12-29 08:43:03 +01:00
Igor Sirotin 195982c950
fix_(StoreNodeRequestManager): various fixes and improvements () 2023-12-27 13:53:19 +00:00
Mikhail Rogachev 843bae5659
feat: Return seen/unseen messages count in MessnegerResponse () 2023-12-25 13:25:22 +07:00
Cuteivist dac7a0daf9
feat: Fetch community data for tokens () 2023-12-22 10:43:19 +01:00
Godfrain Jacques 29ade0f817
fix (@status-go/stickers) Stickers still show in the recent list after being uninstalled ()
fixes 
2023-12-21 10:05:30 -08:00
Cuteivist 6bfe626558
feat: Use media server for community token images () 2023-12-21 16:05:29 +01:00
Cuteivist 313375e215
feat: Save previously owned tokens () 2023-12-21 15:12:50 +01:00
Anthony Laibe 8cbdc80758 feat: expose token balance API 2023-12-21 08:52:29 +01:00
Igor Sirotin 92f0479a0c
chore: fetch contact with `StoreNodeRequestManager` () 2023-12-20 12:49:12 +00:00
Dario Gabriel Lipicar 959dcbdea5 feat: lazy load collectibles metadata 2023-12-19 21:27:20 -03:00
Dario Gabriel Lipicar b1e000ed59 feat: add balance to collectibles api 2023-12-18 18:24:21 -03:00
Dario Gabriel Lipicar 9dea2e8875 feat: always include community image in community collectibles 2023-12-16 08:49:58 -03:00
Dario Gabriel Lipicar b3cc73aa7f feat: use media server for community collectible images 2023-12-16 08:49:58 -03:00
Cuteivist 7af313cd53
feat: Add community manager and fetch cached community metadata () 2023-12-14 17:50:46 +01:00
Ivan Belyakov 81073b208e fix(wallet): Made an interface for BlockRangesSequentialDAO to
mock it in tests.
Made a configurable timeout interval for Commander interface.
Added tests to verify loadBlocksAndTransfers command is stopped
correctly on max errors limit reached
2023-12-14 16:49:23 +01:00
Ivan Belyakov 670954b71b feat(wallet): separated finite and infinite commands in transfers for
proper handling of errors and commands restart.
Now:
- Infinite commands started only once and never restarted, stoped on
context.Done.
- Finite commands are joined into AtomicGroup to stop the rest in the
  group in case one command fails. Otherwise other commands in the group
  will continue running and the failed command is not retried to
  restart. Fixed goroutine leakage in case of failure of some commands
2023-12-14 16:49:23 +01:00
Sale Djenic d2ae23f466 chore(walletconnect)_: record wallet sessions instead of pairings 2023-12-14 12:58:27 +01:00
Sale Djenic fd16942b20 feat(walletconnect)_: support for eth_signTypedData v3 and v4 2023-12-13 08:15:55 +01:00
Cuteivist dfe6baed9b
feat: Fetch community token image () 2023-12-12 08:37:57 +01:00
Godfrain Jacques 0f98a1294c
feature(@desktop/chat) Enhance message context menu with mark as unread ()
fixes 

linked with PR 

- Adds capacity to mark a message as unread
- Adds capacity to mark a message with mention as unread
- Adds persistence to the marking of the message (change can be seen at
  after reboot)
- Adds marking in right click contextual menu
2023-12-11 02:17:01 -06:00
Ivan Belyakov 71b27394bb fix(wallet): fixed BalanceAt not called for all but first account
when new blocks are searched
2023-12-09 10:10:01 +01:00
Ivan Belyakov 5882705a21 fix(wallet): quick fix for eating RPC requests. Proper fix TBD 2023-12-09 10:10:01 +01:00
Ivan Belyakov 6e666f7c27 fix(wallet): accessing tokens block range nil on empty acc.
Fixed a crash in local notification service on a nil block number
in HistoryReady event
2023-12-07 21:40:02 +01:00
Anthony Laibe f502d991b7 fix: prevent crash when erc20 tx is contract creation 2023-12-07 09:50:41 +01:00
Sale Djenic 12ba1bdf69 feat(walletconnect)_: support for auth request 2023-12-06 17:28:09 +01:00
Ivan Belyakov b8c006843b fix(wallet): use mnemonic displayed check for 'findNewBlocksCommand'
Fixed some tests to use wrong sql DB for account DB
2023-12-06 14:07:52 +01:00
Ivan Belyakov 761aa64e04 test(wallet): add tests for findNewBlocks command 2023-12-06 12:08:18 +01:00
Ivan Belyakov 82185b54b5 feat(wallet): separate ETH and tokens search ranges to allow calling
`getLogs` for multiple accounts simultaneously. For now only used for
new transfers detection. Detection of `new` transfers has been changed,
now they are searched from head and forward. Previously they were
searched from last scanned block forward.
2023-12-05 16:09:56 +01:00
Mykhailo Prakhov 04c533b8d5
chore: API for getting all non-approved requests to join for all communities () 2023-12-05 15:50:45 +01:00
Dario Gabriel Lipicar f08e6f7137 feat: add support for Opt Sepolia in the Alchemy client 2023-12-04 12:21:32 -03:00
Anthony Laibe 485c1d8742 feat: add STT to sepolia 2023-12-04 15:34:05 +01:00
Mohsen 76b6745666
fix: 'Join Community' notification is not getting dismissed () 2023-12-04 14:48:28 +03:00
Sale Djenic cfa542378d chore(walletconnect)_: various improvements applied
- `WalletConnectTransfer` identified as a new transfer type
- Wallet-related endpoints that logically belong to the wallet moved from the wallet connect service
- Wallet connect service now receives `transfer.TransactionManager` instead of `transactions.Transactor`
- Deadlock issue when trying to send the tx with the wrong nonce fixed
2023-12-04 11:18:38 +01:00
Cuteivist 04873ef880
feat: token order API () 2023-12-04 11:18:05 +01:00
Roman Volosovskyi aee111e5ab
[] Avoid tx watching for addresses which were not exposed 2023-12-01 12:30:42 +01:00
Ivan Belyakov 9acabc6995 fix(wallet): start transfer controller to activate leftovers cleanup 2023-11-30 12:37:52 +01:00
Cuteivist 79f0d8a5ec
bug: Added missing out chain data () 2023-11-30 12:37:32 +01:00
Stefan Dunca c433908834 fix(wallet) ignoring err in RowsAffected()
Co-authored-by: saledjenic <86303051+saledjenic@users.noreply.github.com>
2023-11-29 19:22:38 +01:00
Stefan 99f4d621e0 feat(wallet): add Wallet Connect state change API
Updates status-desktop 
2023-11-29 19:22:38 +01:00
Ivan Belyakov c0f2f76e9a feat(wallet): remove transfers data on account removal
Closes:  
2023-11-29 16:17:21 +01:00
Sale Djenic 5e6768a42a feat(ens-usernames)_: preparing release transaction data 2023-11-29 15:34:44 +01:00
Sale Djenic adb79c5a82 chore(stickers)_: unused stickers_buy endpoint removed 2023-11-29 15:34:44 +01:00
Sale Djenic dea0b62650 feat(wallet)_: common endpoints added to wallet api
- `SignMessage`
- `BuildTransaction`
- `SendTransactionWithSignature`
2023-11-29 15:34:44 +01:00
Dario Gabriel Lipicar 8b539cd400 feat: refresh balances when Eth or ERC20 transfer is detected 2023-11-29 09:16:03 -03:00
Cuteivist ecbb1cb4e0
fix: Handle balance for all accounts () 2023-11-29 12:20:18 +01:00
Andrea Maria Piana 3ab1afaae8 feat_: Allow to set custom nodes & log level 2023-11-29 09:31:02 +00:00
Andrea Maria Piana f48f9cccc6 feat_: Allow to set light client 2023-11-29 09:31:02 +00:00
Andrea Maria Piana e1f61515ef feat_: Add sync chat endpoint 2023-11-29 09:31:02 +00:00
Dario Gabriel Lipicar 472e4bdb77 feat: implement support for collectible provider Rarible 2023-11-27 20:30:18 -03:00
Mikhail Rogachev 31d0782f66
feat: Sync Mentions and Replies AC notifications and messages ()
* feat: Marking Mentions and Replies AC notifications as read also marks corresponding message as seen

* feat: Marking message as seen marks as read corresponding notification (if there is so)

* chore: make messenger activity center test less flaky

* Update VERSION
2023-11-27 15:22:24 +04:00
Sale Djenic 8641ec5dd5 feat(walletconnect)_: ethereum rpc calls support
Reference: https://docs.walletconnect.com/advanced/rpc-reference/ethereum-rpc
2023-11-27 10:49:23 +01:00
Sale Djenic d4ca8616fc feat(walletconnect)_: support for session proposal for wc 2.0 2023-11-27 10:49:23 +01:00
Igor Sirotin e32c5546e1
test: request community from storenode ()
* feat: request community info from storenode test

* shutdownWaitGroup

* fix requestCommunityInfoFromMailserver timestamp roundin
2023-11-25 23:24:20 +00:00
Stefan a855f9e3e8 feat(wallet) WalletConnect: track pairings in DB
Add new APIs to track if valid pairings are available to be used
by application not to run WalletConnect SDK if not needed.

Closes status-desktop: 
2023-11-24 09:44:27 +01:00
Sale Djenic 5e2af9e4fa feat(walletconnect)_: support the tx and personal signing from within the app or keycard 2023-11-22 09:46:50 +01:00
Sale Djenic 5555f98dd5 chore(accounts)_: added two convenient functions to accounts
- `IsWalletNonWatchOnlyAccount`
- `IsWalletAccountReadyForTransaction`
2023-11-22 09:46:50 +01:00
Sale Djenic e9f11f70dd chore(wallet)_: proper release of locked nonce (unlock function call) 2023-11-22 09:46:50 +01:00
Dario Gabriel Lipicar 03cdb49c4c feat: enable support for Arbitrum Sepolia in Opensea 2023-11-21 16:20:05 -03:00
Dario Gabriel Lipicar 00f412e4ac feat: enable support for Arbitrum Sepolia in Alchemy 2023-11-21 16:20:05 -03:00
Dario Gabriel Lipicar 14a8df8948 feat: support alchemy sepolia api keys 2023-11-21 16:20:05 -03:00
Vitaly Vlasov 1794b93c16 Always set PubsubTopic in filters 2023-11-18 02:26:34 +02:00
Dario Gabriel Lipicar c88ab45d76 fix: pass context in FindOrCreateTokenByAddress 2023-11-17 16:17:50 -03:00
Dario Gabriel Lipicar 5933376eda feat: unify collectibles struct 2023-11-17 16:17:50 -03:00
Dario Gabriel Lipicar 6f84207d3a feat: allow specifying fetch criteria for owned collectibles 2023-11-17 16:17:50 -03:00
Dario Gabriel Lipicar 823fe76fc3 feat: allow different data types in collectibles requests 2023-11-17 16:17:50 -03:00
Dario Gabriel Lipicar a51f8aa13c feat: backoff wallet community fetches after a failure 2023-11-17 10:35:30 -03:00
Dario Gabriel Lipicar e17d4606b1 fix: implement cancellable collectibles requests 2023-11-17 10:35:30 -03:00
Igor Sirotin 2fef9a8f8f
feat: new `GetTextURLsToUnfurl` endpoint which extends GetURLs () 2023-11-17 13:32:37 +00:00
Dario Gabriel Lipicar 92a604f471 fix: fix alchemy collectible traits parsing 2023-11-16 15:49:13 -03:00
Anthony Laibe cd03dd949e fix: send erc20 2023-11-16 13:40:04 +01:00
Ivan Belyakov f4fc0ea324 feat(wallet): remove old OnDemand transfer fetch strategy as it not
functional and not maintained any more and we will work on improvement
of SequentialFetchStrategy
2023-11-16 12:59:47 +01:00
Ivan Belyakov b6ade53603 feat(wallet): detect ERC1155 batch transfers.
Refactored transfers loading to reduce blockchain RPC requests (getBaseFee, getTransaction,
getTransactionReceipt) by reusing preloaded transaction and block fee.
Split extraction of subtransaction from logs and from ETH transfer into
different methods.
Refactored log_parser to extract sender and receiver addresses
uniformly for different transfer types.
Replaced info logs with debug where needed.

closes 
2023-11-16 09:37:09 +01:00
Stefan b994cedfc3 feat(wallet) implement Wallet Connect sign APIs
add WalletConnect support for signing session events

- implement `eth_sendTransaction`
- implement `personal_sign`

Also fix exposing unusable accounts

Updates status-desktop 
2023-11-15 15:52:02 +01:00
Anthony Laibe 5381ec4a76 feat: add token list 2023-11-15 09:02:36 +01:00
Anthony Laibe 0345612a31 fix: use real id of token to estimate gas 2023-11-14 14:24:51 +01:00
Ivan Belyakov 57e370e7b9 feat(wallet): Added detection of ERC1155 SingleTransfer events 2023-11-13 20:19:57 +01:00
osmaczko a584ab086a
Fix/timesource offline ()
* fix: add missing callback cleanup in timesource

fixes: "panic: sync: negative WaitGroup counter"

part of: 

* fix: ensure timesource.GetCurrentTime is non-blocking

closes: 
2023-11-13 14:06:32 -05:00
Stefan 36da204282 feat(wallet) add WalletConnect pair API
Updates 
2023-11-13 10:19:06 +01:00
Igor Sirotin a178d724b1
fix: correct parsing shared url without data () 2023-11-10 16:33:37 +00:00
Anthony Laibe dc2d179692 fix: estimate gas for erc721 2023-11-10 16:11:05 +01:00
richΛrd 2c954d42cf
feat: replace DefaultPubsubTopic by Shard 32 () 2023-11-09 20:29:15 -04: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
Dario Gabriel Lipicar 337f3aefec fix: add missing error check in currency service 2023-11-09 13:12:25 -03:00
Michal Iskierko d909faf504 feat: add AC messages for setting signer operations
Issue 
2023-11-08 12:54:29 +01:00
Michal Iskierko 02e4cc6e1f feat: Send envelopes to telemetry service
Issue 
2023-11-08 11:34:10 +01:00
Boris Melnik 1d08b403e6
feat(discord): Split import channel signals and community import signals () 2023-11-07 13:44:10 +03:00
Sale Djenic ce121710d9 fix: unlock local nonce when an error occurs and increment only when the tx is sent for real 2023-11-06 18:30:42 +01:00
Sale Djenic 05baec8bec fix: estimate gas function resoved that it uses real network estimation instead of hardcoded value 2023-11-06 18:30:42 +01:00
Cuteivist 05530f57bd
feat: Return only community tokens () 2023-11-03 13:08:32 +01:00
Igor Sirotin c27384680a
feat: new configurable endpoint RequestCommunityInfoFromMailserverV2 ()
* StatusUnfurler: use shard from url
2023-11-03 10:30:24 +00:00
Patryk Osmaczko 25f25e9853 chore: populate Community with PubsubTopicPrivateKey
part of: 
2023-11-03 11:27:43 +01:00
Anthony Laibe a0bd3c9a94 Fix: allow zero tx
If bonder fees are 0 there is no need to check if  bonder fees are bigger or equal to amount to prevent impossible transaction
2023-11-03 09:22:29 +01:00
Sale Djenic 11a3612290 feat: support signing of a join/edit community request from within the app or keycard 2023-11-03 07:49:01 +01:00
Dario Gabriel Lipicar 25d8c52dd5 feat: implement generalized collectibles filter 2023-11-02 11:14:20 -03:00
Dario Gabriel Lipicar c17829bf8d fix: properly fill collectible community data 2023-11-02 11:14:20 -03:00
Cuteivist f57c6a26b5
fix: Correct skip check statement () 2023-11-02 09:11:48 +01:00
yqrashawn b65eda3f42
feat: new deeplink status-im->status-app () 2023-11-02 13:56:06 +08:00
Mykhailo Prakhov eb437e9d8d
feat: kick all members after ownership change and auto-accept after sharing the address ()
feat: kick all members after the ownership change and auto-accept after sharing the address
2023-10-31 15:20:40 +01:00
Cuteivist 3c5b0529c7
fix: Add network id for multi tx () 2023-10-30 10:03:29 +01:00
Cuteivist fa5765cf83
fix: Update timestamp when upserting multi tx () 2023-10-30 07:53:22 +01:00
Dario Gabriel Lipicar a38b34ae49 feat: cache community metadata in wallet
Fixes 
2023-10-26 17:36:45 -03:00
Dario Gabriel Lipicar dca38d1d32 fix: small openseaV2 client fix 2023-10-26 17:36:45 -03:00
Cuteivist e5fbe40b9a
fix: Show community token mint as Mint tx type () 2023-10-26 20:39:31 +02:00
Cuteivist debf3b6e4d
feat: Added ERC20 community id () 2023-10-25 18:49:18 +02:00
Boris Melnik 8ae6e3035b
feat(discord): Import single channel from discord () 2023-10-25 12:32:21 -04:00
Roman Volosovskyi 9d59d889f6
[] Increase intreval of new blocks detection command 2023-10-25 14:45:06 +02:00
Mykhailo Prakhov b08125890e
fix: SetSignerPublicKey return address with 0x prefix () 2023-10-24 22:17:02 +02:00
Andrea Maria Piana bafdf08529 Fix account not being stored 2023-10-24 19:01:46 +01: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
Jonathan Rainville b6acf16fd1
fix(chat/api): make community chat creation more forgiving and accurate ()
Fixes https://github.com/status-im/status-desktop/issues/12418
2023-10-23 15:08:28 -04:00
Patryk Osmaczko 345851c396 feat: ensure unique control node across devices
closes: 
2023-10-22 21:50:41 +02:00
frank 624996a7e9
only sync decisions/state of AC notifications () 2023-10-22 17:41:20 +08:00
Roman Volosovskyi 42527723f2
[] Omit history scanning on generated multiacc creation 2023-10-19 15:07:34 +02:00
Cuteivist 9b44cf65ed
Update community solidity contracts () 2023-10-19 08:17:54 +02:00
Michal Iskierko 8ac26f8810 feat: use owner&master token addresses when deploying assets
Issue 
2023-10-18 14:09:05 +02:00
Patryk Osmaczko 0881d8cdb0 Add queue for processing community description & configurable control node 2023-10-17 21:00:24 +01:00
Sale Djenic b348cca15c feat: added functionality to ask a client to sign a transaction and an endpoint to continue sending using provided signature
This functionality is needed in case the user wants to send a transaction and
signs it using the signature provided by the keycard (or any other compatible way).
2023-10-17 19:42:06 +02:00
Anthony Laibe 21ddaa4b9f feat: arbitrum sepolia 2023-10-17 09:28:13 +02:00
Michal Iskierko f2464cccfd fix: HandleCommunityTokensMetadata
Add all tokens in the loop.
Get MaxSupply instead of TotalSupply

Issue 
2023-10-15 20:32:47 +02:00
Igor Sirotin aded258ccb
feature: Unfurl status links () 2023-10-13 13:25:34 +01:00
Richard Ramos de5c7b8e5b feat: shard fleet
Adds shard.test fleet and changes the non protected shard index to 64
2023-10-12 17:07:57 -04:00
Jonathan Rainville de34ea37f2
fix(keycard_pairings): don't write the pairing file if content is empty ()
Fixes https://github.com/status-im/status-desktop/issues/12342
2023-10-12 16:44:41 -04:00
richΛrd ba5ed725ce
waku2: static shards ()
- use protected topics for communities
- associate chats to pubsub topics and populate these depending if the chat belongs to a community or not
- mailserver functions should be aware of pubsub topics
- generate private key for pubsub topic protection when creating a community
- add shard cluster and index to communities
- setup shards for existing communities
- distribute pubsubtopic password
- fix: do not send the requests to join and cancel in the protected topic
- fix: undefined shard values for backward compatibility
- refactor: use shard message in protobuffers
2023-10-12 15:21:49 -04:00
Dario Gabriel Lipicar 2a5327d8d2 feat: emit event on received community collectibles 2023-10-12 15:42:45 -03:00
Roman Volosovskyi 778753bb57
Fix checking of ERC20 tail on new blocks scanning 2023-10-12 16:21:09 +02:00
Dario Gabriel Lipicar 28cfeb4bc8 feat: refresh collectibles when testnet mode setting changes 2023-10-12 10:18:25 -03:00
Dario Gabriel Lipicar 6d19e165d9 feat: send settings event when a setting is set through the API 2023-10-12 10:18:25 -03:00
Dario Gabriel Lipicar c2ff377585 chore: moved accounts event watcher to accountsevent package 2023-10-12 10:18:25 -03:00
Cuteivist 5674a010cd
feat: Handle Status Mint transaction () 2023-10-12 12:21:03 +02:00
Dario Gabriel Lipicar 094228871e feat: trigger collectibles refresh on transfer 2023-10-11 15:22:46 -03:00
Dario Gabriel Lipicar addf6e4aaf feat: implemented openseaV2 api changes 2023-10-11 14:41:18 -03:00
Dario Gabriel Lipicar 544e2ea76f feat: removed soon-to-be-deprecated openseaV1 client 2023-10-11 14:41:18 -03:00
Dario Gabriel Lipicar bc33f6d54c feat: removed soon-to-be-deprecated Infura client 2023-10-11 14:41:18 -03:00
Dario Gabriel Lipicar d1f63a8d71 feat: exponential backoff for Alchemy 2023-10-11 14:41:18 -03:00
Dario Gabriel Lipicar 94ae683bc2 fix: ensure full collectible list is fetched from a single provider 2023-10-11 14:41:18 -03:00
Cuteivist 6798d1ac5c
feat: Handled token mint activity () 2023-10-11 07:10:08 +02:00
Anthony Laibe 39676c8c01 feat: add sepolia toggle 2023-10-09 12:55:29 +02:00
Ivan Belyakov 01526c344a fix(wallet): new blocks were not found 2023-10-06 15:51:57 +02:00
Anthony Laibe 305b520994 fix: token balance 2023-10-06 11:47:23 +02:00
Roman Volosovskyi d82c50b50a
[] Prevent repeated eth_getLogs calls (ERC20 history tail) 2023-10-05 19:45:40 +02:00
Dario Gabriel Lipicar 80f25d5ff7 fix: misc collectibles fixes 2023-10-05 09:40:18 -03:00
Roman Volosovskyi 6a110ca3df
[] Make sure eth_getLogs for outgoing transfers are not executed for erc20 tail 2023-10-05 11:44:09 +02:00
IvanBelyakoff 9d6577049f
Implemented balance history based on transfers ()
* feat(wallet): implement balance history based on fetched transfers
* Added vendor 'ttlcache'
2023-10-04 15:00:12 +03:00
Michal Iskierko c85a110a31 feat(CommunityTokens): New deployment contracts and handling signer pub key
New contracts and contract go functions.
Adjust owner&master tokens deployment flow.
Create deployment signature.
CommunityTokens API for handling signer pubkey.

Issue 
2023-10-04 11:33:57 +02:00