Commit Graph

244 Commits

Author SHA1 Message Date
Vit∀ly Vlasov 68acef62d4
feat: Simplify FilterManager and move subscription management to waku (#4665)
* feat_: simplify filter management

fix_: try using shard as a default topic

fix_: filter test to work with shards.staging fleet

* fix_: handle connection status change and manage filter subscriptions better

* chore_: bump go-waku to latest and with some fixes

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

* chore_: disabling pxClient so that only fleet nodes are used for now

---------

Co-authored-by: Prem Chaitanya Prathi <chaitanyaprem@gmail.com>
Co-authored-by: richΛrd <info@richardramos.me>
2024-06-14 18:11:45 +05:30
richΛrd 3996d6fece
chore_: bump go-waku (#5289) 2024-06-05 16:10:03 -04:00
kaichao 1c116589cd
chore_: bump go-waku (#5269) 2024-06-03 21:19:18 +08:00
Andrea Maria Piana 0061c563f2
bug_: fix resend type for private group messages (#5258)
* chore_: bump go-waku

* fix_: fix resend type for private group messages

---------

Co-authored-by: Richard Ramos <info@richardramos.me>
2024-05-30 14:18:54 +02:00
Siddarth Kumar fb88f541f2
chore_: upgrade go to 1.21 (#5216) 2024-05-30 14:22:57 +05:30
kaichao 89cf317641
chore_: bump mvds (#5239) 2024-05-29 12:38:25 +08:00
kaichao 03de0a2c6e
chore_: bump mvds (#5165) 2024-05-16 16:42:32 +08:00
richΛrd 9e0fb30f8d
chore_: bump go-waku (#5150) 2024-05-15 19:15:00 -04:00
Patryk Osmaczko 4f2adc0ced chore_: add `klauspost/reedsolomon` module 2024-04-17 22:05:53 +02:00
richΛrd 3de2756660
refactor_: expire envelope cache (#5061) 2024-04-17 08:19:03 -04:00
frank d246699c5e fix_: logout deadlock 2024-04-16 17:26:38 +08:00
Jonathan Rainville 9d12856329 chore(markdown): up markdown to get fix for statusTags
Fixes https://github.com/status-im/status-desktop/issues/14221
2024-04-04 16:15:22 -04:00
richΛrd 492f0b1242
fix: udp port 0 in go-waku (#4973) 2024-03-22 16:38:40 -04:00
frank 163b583b0d chore: make lint-fix 2024-03-07 20:31:28 +08:00
frank a7b0732cc7
apply go-waku fix watchMultiaddressChange (#4851) 2024-03-01 20:20:27 +08:00
richΛrd f650915a49
chore: bump go-waku to fix high cpu usage by peer exchange (#4777) 2024-02-21 11:05:58 -04:00
Ivan Belyakov e4745d01b4 fix(wallet): handle BlobTxType transaction.
Update go-ethereum version

Closes #4636
2024-01-31 10:06:14 +01:00
frank 69948a7024
fix: endless logout (#4563) 2024-01-30 19:45:08 +08:00
Andrea Maria Piana e65760ca85 Add basic peersyncing
This commit adds basic syncing capabilities with peers if they are both
online.

It updates the work done on MVDS, but I decided to create the code in
status-go instead, since it's very tight to the application (similarly
the code that was the inspiration for mvds, bramble, is all tight
together at the database level).

I reused parts of the protobufs.

The flow is:

1) An OFFER message is sent periodically with a bunch of message-ids and
   group-ids.
2) Anyone can REQUEST some of those messages if not present in their
   database.

3) The peer will then send over those messages.

It's disabled by default, but I am planning to add a way to set up the
flags.
2024-01-23 12:46:17 +00:00
Siddarth Kumar 926f6a3c72 Revert "test: bump go-libp2p"
This reverts commit d0ca4447c6.
2024-01-18 20:29:33 +00: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
richΛrd 1ac99c2dcb
chore: bump go-waku (#4505) 2024-01-05 16:43:05 -04:00
Boris Melnik 6d77fb771a
fix(windows-build): Remove free space check for archives (#4485) 2023-12-20 21:21:02 +03:00
Siddarth Kumar a6df2be92e
fix crash on x86_64 android emulators (#4233)
Due to presence of syscall to `epoll_wait` android emulators after Android 10 would crash.
This commit has added `amd64` fallback implementations in 2 spots

- `tcp-shaker` ref : 571aa46f35
- `notify` ref : 0eb36e6c1a

The build flags are updated for fallback implementation to only be used in case of `x86_64` simulators.

status-mobile PR : https://github.com/status-im/status-mobile/pull/17773
2023-12-14 19:02:38 +05:30
richΛrd 3874e47840
bump: go-waku (#4426) 2023-12-06 13:43:20 -04:00
kaichao e28eca1c54
Bump waku version (#4407)
* chore: make vendor

* chore: fix data types

* Update wakuv2/common/message.go

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

* Update wakuv2/common/message.go

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

* Update wakuv2/persistence/dbstore.go

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

* chore: use safe method to get timestamp.

* chore: use proto.Uint64 to convert reference

* chore: manual fix lint issue when import dependency

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-12-05 12:29:27 +08:00
Jonathan Rainville ecbacb0a7f
fix(markdown): fix system mentions when text is too long (#4319)
Fixes https://github.com/status-im/status-desktop/issues/11520
2023-11-14 16:56:40 -05:00
richΛrd 2c954d42cf
feat: replace DefaultPubsubTopic by Shard 32 (#4161) 2023-11-09 20:29:15 -04:00
frank 51a1a9940f
print origins for log (#4277) 2023-11-09 14:35:59 +08: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
Vitaliy Vlasov abac55c778 fix waku2 FilterManager.pingPeers() range variable issue; modify logs 2023-10-17 17:24:33 +03:00
Dario Gabriel Lipicar d1f63a8d71 feat: exponential backoff for Alchemy 2023-10-11 14:41:18 -03:00
IvanBelyakoff 9d6577049f
Implemented balance history based on transfers (#4022)
* feat(wallet): implement balance history based on fetched transfers
* Added vendor 'ttlcache'
2023-10-04 15:00:12 +03:00
Vitaliy Vlasov 356b2f5ca3 Refactor filter health checks; add debugging logs 2023-10-04 00:39:33 +03:00
Siddarth Kumar 15369f26dd
chore: bump go-waku to latest commit (#4000)
This includes the fix for panic we saw in regards to Relay connections
issue in go-waku : waku-org/go-waku#713
2023-09-07 20:59:28 +05:30
Andrea Maria Piana 6f4f57b7a8
Handle nil error on request to join 2023-08-29 13:04:00 +01:00
Prem Chaitanya Prathi b3a93fff12
chore: bumped go-waku to recent commit which contains changes for improved peer management 2023-08-29 13:02:19 +01:00
Stefan 39fbaca5a9 chore(wallet) add stretchr/testify/mock to dependencies 2023-08-22 18:39:42 +02:00
Dario Gabriel Lipicar 57424e076c chore: moved collectibles ownership cache to db 2023-07-27 12:12:03 -03:00
Dario Gabriel Lipicar 383de2a7df chore: update golang dependencies 2023-07-27 12:12:03 -03:00
Andrea Maria Piana df2a5d8e21 Update go waku & Shorten shutdown 2023-07-17 14:44:32 +01:00
Dario Gabriel Lipicar e6711c8cc8 feat(wallet): detect ETH L1 to L2 bridge transactions 2023-07-10 09:59:05 -03:00
Andrea Maria Piana 67050429df Bump go-waku 2023-07-07 14:49:40 +01:00
Andrea Maria Piana c3ae0e98fe Enable lightclient 2023-07-07 14:49:40 +01:00
Mikhail Rogachev 511d6bfc54
feat: add parsing for new links format (#3665)
* feat(share-links): Add protobuf and encode/decode url data methods

* feat(new-links-format): Adds generators for new links format

* feat: add parsing for new links format

* feat: add messenger-level pubkey serialization and tests

* feat: fix and test CreateCommunityURLWithChatKey

* feat: impl and test parseCommunityURLWithChatKey

* feat: fix and test CreateCommunityURLWithData

* feat:  impl and test parseCommunityURLWithData (not working)

* feat: UrlDataResponse as response share urls api

* feat: impl& tested ShareCommunityChannelURLWithChatKey

* feat: impl & tested ParseCommunityChannelURLWithChatKey

* fix: bring urls to new format

* feat: add regexp for community channel urls

* feat: impl & test contact urls with chatKey, Ens and data

* fix: encodeDataURL/encodeDataURL patch from Samyoul

* fix: fix unmarshalling protobufs

* fix: fix minor issues, temporary comment TestParseUserURLWithENS

* fix: allow url to contain extra `#` in the signature

* fix: check signatures with SigToPub

* chore: lint fixes

* fix: encode the signature

* feat: Check provided channelID is Uuid

* fix(share-community-url): Remove if community encrypted scope

* fix: review fixes

* fix: use proto.Unmarshal instead of json.Marshal

* feat(share-urls): Adds TagsIndices to community data

* feat: support tag indices to community url data

---------

Co-authored-by: Boris Melnik <borismelnik@status.im>
2023-07-04 17:48:52 +04:00
Stefan c61a4000d8 feat(wallet) make remaining filter apis async
Implement activity.Scheduler to serialize and limit the number of
calls on the activity service. This way we protect form inefficient
parallel queries and easy support async and rate limiting based on the
API requirements.

Refactor the activity APIs async and use the Scheduler for managing
the activity service calls configured with one of the two rules: cancel
ignore.

Updates status-desktop #11170
2023-07-03 16:50:48 +02:00
Richard Ramos 28229faec0 chore: bump libp2p related dependencies 2023-06-30 14:23:08 -04:00
Richard Ramos e53c2c0a6d chore: bump go-waku 2023-06-09 12:54:22 -04:00
Alex Jbanca e8c4b7647f
chore(upgradeSQLCipher): Upgrading SQLCipher to version 5.4.5 (#3559)
* chore(upgradeSQLCipher): Upgrading SQLCipher to version 5.4.5

Changes:
### github.com/mutecomm/go-sqlcipher
1. The improved crypto argorighms from go-sqlcipher v3 are merged in v4
	Tags:
	v4.4.2-status.1 - merge `burn_stack` improvement
	v4.4.2-status.2 - merge `SHA1` improvement
	v4.4.2-status.4- merge 'AES' improvement
2. Fixed `go-sqlcipher` to support v3 database in compatibility mode (`sqlcipher` already supports this) (Tag: v4.4.2-status.3)
3. Upgrade `sqlcipher` to v5.4.5 (Tag: v4.5.4-status.1)

### github.com/status-im/migrate/v4
1. Upgrade `go-sqlcipher` version in `github.com/status-im/migrate/v4`

### status-go
1. Upgrade `go-sqlcipher` and `migrate` modules in status-go
2. Configure the DB connections to open the DB in v3 compatibility mode

* chore(upgradeSQLCipher): Use sqlcipher v3 configuration to encrypt a plain text database

* chore(upgradeSQLCipher): Scanning NULL BLOB value should return nil

Fixing failing tests: TestSyncDeviceSuite/TestPairingSyncDeviceClientAsReceiver;  TestSyncDeviceSuite/TestPairingSyncDeviceClientAsSender

Considering the following configuration:
1. Table with BLOB column has 1 NULL value
2. Query the value
3. Rows.Scan(&dest sql.NullString)

Expected: dest.Valid == false; dest.String == nil
Actual: dest.Valid == true; dest.String == ""

* chore: Bump go-sqlcipher version to include NULL BLOB fix
2023-06-07 08:58:01 +03:00