mirror of
https://github.com/status-im/status-go.git
synced 2025-02-03 02:15:18 +00:00
bd816f1e29
chore(wallet)_: split getWalletTokenBalances into multiple functions Removed some unused balances methods from wallet API chore(wallet)_: refactored FetchOrGetWalletTokenBalances - getWalletTokenBalances only returns cached ones - update of balances is done in a separate method chore(wallet)_: fix isVisible in getWalletTokenBalances is overwritten It is overwritten and in some cases its value is desrespected chore(wallet)_: simplify getWalletTokenBalance even further chore(wallet)_: remove accountsDB from wallet.Reader Call GetTestNetworkEnabled from NetworkManager instead chore(wallet)_: remove rpc.Client from wallet.Reader. Added GetActiveNetworks() method for NetworkManager Removed adding native tokens from networks, as this is done already in NetworkManager chore(wallet)_: moved Persistence to token package As it works with token_balances table, moved Persistence to token package. Fixed TokenManager's Mark/Get previously owned tokens to use persistence storage instead of direct SQL calls. Introduced StorageToken that aggregates Token type, because when Persistence moved to token package, names clash test(wallet)_: tests for wallet.Reader.FetchorGetCachedBalances
status-go/protocol
This is an implementation of the secure transport and payloads which are a part of the Status Client specification.
This implementation uses SQLite and SQLCipher for persistent storage.
The payloads are encoded using protocol-buffers.
Content
messenger.go
is the main file which exportsMessenger
struct. This is a public API to interact with this implementation of the Status Chat Protocol.protobuf/
contains protobuf files implementing payloads described in the Payloads spec.encryption/
implements the Secure Transport spec.transport/
connects the Status Chat Protocol with a wire-protocol which in our case is either Whisper or Waku.datasync/
is an adapter for MVDS.applicationmetadata/
is an outer layer wrapping a payload with an app-specific metadata like a signature.identity/
implements details related to creating a three-word name and identicon.migrations/
contains implementation specific migrations for the sqlite database which is used byMessenger
as a persistent data store.
History
Originally this package was a dedicated repo called status-protocol-go
and was migrated into status-go
. The new status-go/protocol
package maintained its own dependencies until sub modules were removed and the root go.mod file managed all dependencies for the entire status-go
repo.