218 Commits

Author SHA1 Message Date
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 d0ca4447c6c5642830354740d045f453eb3e77e8.
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
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
yqrashawn
6cf0162877
feat: render initials avatar using media server (#3513) 2023-08-14 21:04:04 +08: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
Richard Ramos
b1a6607dbb chore: upgrade libp2p 2023-05-30 10:49:52 -04:00
Richard Ramos
3e4fe1e12f refactor: move circuit relay code to go-waku 2023-05-30 10:49:52 -04:00
Lukáš Tinkl
f3c826275e
[go-sqlcipher] replace AES implementation with mbedtls (#3518)
HW accelerated versions provided for x86_64 and arm64, with compile time
guards and runtime detection

needed for status-im/status-desktop#10726

---------

Co-authored-by: Alex Jbanca <alexjb@status.im>
2023-05-25 11:30:11 +02:00
Vitaliy Vlasov
ddfd0c5b14 Add lc-proxy-wrapper dep 2023-05-24 18:48:16 +03:00
Andrea Maria Piana
efb1036429 update go-waku v0.6.0 2023-05-17 18:23:27 +01:00
Alex Jbanca
62e3e9bd62
performance(sqlcipher): provide optimized versions of sha1_compress (#3490)
* performance(sqlcipher): provide optimized versions of sha1_compress
- on ARM, use Neon/ACLE extensions (a 3x-4x perf improvement)
- on x64 use a plain C implementation from nayuki (a 2x-3x perf gain)

Unfortunately, we can't use the dedicated `SHA1` extension on x64 as this
became widely available only recently (esp. on AMD CPUs)
2023-05-16 20:18:38 +02:00
Alex Jbanca
ac837365be performance(sqlcipher): Fix burn_stack performance issue
Implements a cross-platform version of https://github.com/OP-TEE/optee_os/pull/3102

1. Remove recursion
2. Use memset instead of while loop
2023-05-12 09:08:39 +03:00
Richard Ramos
acad6e4958 chore: bump go-waku 2023-05-09 17:26:29 -04:00
Sale Djenic
31144ed5a3 chore: password removed from the DeleteAccount function
Asking for a password when removing a key is not necessary.
2023-05-09 10:48:44 +02:00
Samuel Hawksby-Robinson
17bc1e9f5d Rough initial proof of concept for udp network checking 2023-04-17 12:01:38 +01:00
RichΛrd
ba1ba1ac02
chore: use go 1.19 and bump go-libp2p (#3371)
* chore: use go 1.19 and bump go-libp2p

* chore: bump golangci-lint

* chore: update go version in shell.nix
2023-04-07 20:23:07 +02:00
Richard Ramos
a6d33b9912 chore: bump go-waku to fix mem leak 2023-03-27 10:56:23 -04:00
Ibrahem Khalil
cd96f557f9
Allow underscores for status-tags (#3286) 2023-03-14 17:31:15 +02:00
Richard Ramos
cbb016ac00 feat: update go-waku to introduce meta field and deterministic hashing 2023-03-13 21:03:34 -04:00