status-go/protocol
Siddarth Kumar 1551c98f96
chore_: override DNS for iOS as well (#5093)
We need to apply the DNS override hack for iOS as well.

This PR -> https://github.com/status-im/status-mobile/pull/19798 in status-mobile fixes the DNS resolution issue for
iOS ARM Simulators and for Android x86 Emulators.
But we still need this change to ensure storenodes are found on real iOS devices and on Android arm Emulators.
2024-04-26 14:14:17 +02:00
..
anonmetrics chore: make generate with custom `-modtime` (#4896) 2024-03-08 09:25:17 +00:00
audio
common feat_: introduce forward error correction in segmentation layer 2024-04-17 22:05:53 +02:00
communities chore_: log revealed addresses on join/edit (#5073) 2024-04-24 18:54:25 -07:00
datasync Add basic peersyncing 2024-01-23 12:46:17 +00:00
discord feat(discord): Import single channel from discord (#4160) 2023-10-25 12:32:21 -04:00
encryption feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
ens fix: use proper migrations for protocol's test database 2023-10-03 15:11:58 +02:00
identity Fix(Profile): Remove profile showcase from general response via signal (#4982) 2024-03-29 11:22:44 +01:00
internal/sqlite
migrations feat_: introduce forward error correction in segmentation layer 2024-04-17 22:05:53 +02:00
peersyncing Add basic peersyncing 2024-01-23 12:46:17 +00:00
protobuf feat_: introduce forward error correction in segmentation layer 2024-04-17 22:05:53 +02:00
pushnotificationclient chore: make generate with custom `-modtime` (#4896) 2024-03-08 09:25:17 +00:00
pushnotificationserver chore: make generate with custom `-modtime` (#4896) 2024-03-08 09:25:17 +00:00
requests chore: refactor status cli (#5010) 2024-04-09 18:44:43 +03:00
sqlite Add basic peersyncing 2024-01-23 12:46:17 +00:00
storenodes enable custom community storenodes (#4532) 2024-02-20 17:49:39 +02:00
subscription
transport chore_: bump go to 1.20 (#5027) 2024-04-18 18:48:02 +02:00
tt chore: introduce silent test logger config 2024-02-27 11:00:29 +01:00
urls feat: add parsing for new links format (#3665) 2023-07-04 17:48:52 +04:00
v1 Always set PubsubTopic in filters 2023-11-18 02:26:34 +02:00
verification fix: use proper migrations for protocol's test database 2023-10-03 15:11:58 +02:00
wakusync Feat: Add social links to the profile showcase (#4775) 2024-02-26 16:53:40 +03:00
zaputil
LICENSE
README.md
activity_center.go chore: fix ban/unban flow and delete all messages feature (#4743) 2024-02-22 11:25:13 +01:00
activity_center_persistence.go chore_: bump go to 1.20 (#5027) 2024-04-18 18:48:02 +02:00
activity_center_persistence_test.go only sync decisions/state of AC notifications (#3979) 2023-10-22 17:41:20 +08:00
chat.go add image to chat preview (#4888) 2024-04-09 17:39:14 +02:00
chat_group_proxy.go
chat_test.go Fix contact details large image is always empty (#4864) 2024-03-06 09:25:19 -08:00
communities_events_eventual_consistency_test.go fix: ensure community events eventual consistency 2024-02-20 21:07:01 +01:00
communities_events_owner_without_community_key_test.go feat: admins can delete all members messages during the ban (#4834) 2024-02-29 18:54:17 +01:00
communities_events_token_master_test.go feat: admins can delete all members messages during the ban (#4834) 2024-02-29 18:54:17 +01:00
communities_events_utils_test.go feat: get and delete community member messages API (#4932) 2024-03-19 20:44:49 +01:00
communities_key_distributor.go feat: encrypt `CommunityDescription` fields 2023-12-22 18:17:06 +01:00
communities_messenger_admin_test.go feat: admins can delete all members messages during the ban (#4834) 2024-02-29 18:54:17 +01:00
communities_messenger_helpers_test.go fix: Update and improve `TestFetchRealCommunity` (#4949) 2024-03-20 18:10:02 +00:00
communities_messenger_signers_test.go chore: unskip flaky tests 2024-02-29 21:58:36 +01:00
communities_messenger_test.go Return request to join acceptance notifications (#4909) 2024-04-09 21:32:03 +02:00
communities_messenger_token_permissions_test.go fix_: token-permitted channel input not locked (#5046) 2024-04-10 10:51:58 -07:00
contact.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
contact_test.go Compute emojiHash on-the-fly 2023-03-06 13:22:40 +02:00
delete_message.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
edit_message.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
emoji_reaction.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
errors.go fix(archives): Skip importing the archives for community when user not a member (#4006) 2023-09-15 10:42:28 +03:00
group_chat_invitation.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
group_chat_system_messages.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
identity_images.go feat: Profile showcase data sharing (#4209) 2023-11-09 22:59:01 +04:00
linkpreview_unfurler.go feature: Unfurl status links (#4033) 2023-10-13 13:25:34 +01:00
linkpreview_unfurler_image.go fix(ImageUnfurler): set title for image links (#4215) 2023-10-26 17:52:52 +01:00
linkpreview_unfurler_oembed.go feature: Unfurl status links (#4033) 2023-10-13 13:25:34 +01:00
linkpreview_unfurler_opengraph.go Add favicons to external link previews (#4788) 2024-03-12 22:47:51 +02:00
linkpreview_unfurler_status.go chore: fetch contact with `StoreNodeRequestManager` (#4484) 2023-12-20 12:49:12 +00:00
local_notifications.go feat: new deeplink status-im->status-app (#4198) 2023-11-02 13:56:06 +08:00
message_builder.go
message_persistence.go chore_: bump go to 1.20 (#5027) 2024-04-18 18:48:02 +02:00
message_validator.go fix: validate display name on account creation (#4994) 2024-03-28 16:57:59 +01:00
message_validator_test.go feat(BridgeMessage): Add new type of chat message content: BridgeMessage 2024-01-30 12:14:54 +01:00
messages_iterator.go feat: introduce `MessagesIterator` 2024-02-09 16:02:17 +01:00
messenger.go feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
messenger_activity_center.go feat: Community token received notification (#4682) 2024-02-19 14:55:38 +01:00
messenger_activity_center_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_auto_message.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
messenger_backup.go fix_: Remove rpc client from push notification servers and avoid panic 2024-04-11 17:12:14 +01:00
messenger_backup_handler.go fix: race condition on updating account.Name during handle BackupData 2024-03-07 20:18:50 +08:00
messenger_backup_test.go chore: skip TestBackupSettings 2024-03-06 18:05:40 +01:00
messenger_base_test.go fix: clear waku envelopes cache when deleting a chat (#4621) 2024-01-30 13:43:34 +00:00
messenger_bookmarks.go
messenger_bridge_message_test.go feat(BridgeMessage): Add new type of chat message content: BridgeMessage 2024-01-30 12:14:54 +01:00
messenger_browsers.go
messenger_browsers_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_builder_test.go chore: disable curated communities loop in tests (#4894) 2024-03-09 09:42:06 +00:00
messenger_chat_context_test.go Fix contact details large image is always empty (#4864) 2024-03-06 09:25:19 -08:00
messenger_chats.go add image to chat preview (#4888) 2024-04-09 17:39:14 +02:00
messenger_collapsed_community_categories.go Add collapsed community categories 2023-03-14 17:13:21 +00:00
messenger_collapsed_community_categories_test.go Fix collapsed tests 2023-03-16 13:40:20 +00:00
messenger_communities.go chore_: log revealed addresses on join/edit (#5073) 2024-04-24 18:54:25 -07:00
messenger_communities_import_discord.go feat: Add HideIfPermissionsNotMet to CommunityChat struct 2024-03-18 15:01:29 +01:00
messenger_communities_sharding_test.go fix: waku connection status subscription lock (#4762) 2024-02-19 23:44:38 +00:00
messenger_community_for_mobile_testing.go feat: New field in TokenCriteria proto 2024-02-27 16:25:26 +01:00
messenger_community_for_mobile_testing_test.go fix: sometimes channels do not randomly appear in test community after its creation (#4669) 2024-02-23 10:16:51 +08:00
messenger_community_metrics.go chore: remove boilerplate check of `communities.GetByID` clients 2024-01-10 18:58:17 +01:00
messenger_community_metrics_test.go refactor: update community access enum naming 2023-10-25 17:34:37 +02:00
messenger_community_shard.go enable custom community storenodes (#4532) 2024-02-20 17:49:39 +02:00
messenger_community_storenodes.go enable custom community storenodes (#4532) 2024-02-20 17:49:39 +02:00
messenger_config.go chore: disable curated communities loop in tests (#4894) 2024-03-09 09:42:06 +00:00
messenger_config_test.go chore: disable curated communities loop in tests (#4894) 2024-03-09 09:42:06 +00:00
messenger_contact_requests_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_contact_update_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_contact_verification.go fix_: Add contact to removeTrustStatus response (#5058) 2024-04-18 19:28:44 +04:00
messenger_contact_verification_test.go fix_: Add contact to removeTrustStatus response (#5058) 2024-04-18 19:28:44 +04:00
messenger_contacts.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_contacts_test.go fix: self-contact related flaky tests (#4312) 2023-11-13 20:07:35 +00:00
messenger_curated_communities.go chore: disable curated communities loop in tests (#4894) 2024-03-09 09:42:06 +00:00
messenger_delete_message_for_everyone_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_delete_message_for_me_test.go Revert "Comment out all logged flaky tests" 2024-02-27 11:00:29 +01:00
messenger_delete_messages_test.go feat: get and delete community member messages API (#4932) 2024-03-19 20:44:49 +01:00
messenger_discv5.go
messenger_edit_message_test.go fix: handle bridge message edits 2024-04-07 23:24:46 +02:00
messenger_emoji_reactions.go feature: view only channel reactions (#4820) 2024-03-01 17:15:38 +00:00
messenger_emoji_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_ens.go
messenger_group_chat.go only sync decisions/state of AC notifications (#3979) 2023-10-22 17:41:20 +08:00
messenger_group_chat_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_handler.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_handler_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_handlers.go feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
messenger_identity.go fix_: bio length check (#5074) 2024-04-24 20:41:08 +03:00
messenger_identity_display_name_test.go chore: refactor status cli (#5010) 2024-04-09 18:44:43 +03:00
messenger_identity_image_test.go Fix contact details large image is always empty (#4864) 2024-03-06 09:25:19 -08:00
messenger_identity_social_links_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_installations_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_keycard.go chore: synchronization improvements applied to keycards 2023-07-11 15:14:49 +02:00
messenger_linkpreview.go feat: new `GetTextURLsToUnfurl` endpoint which extends GetURLs (#4294) 2023-11-17 13:32:37 +00:00
messenger_linkpreview_test.go Add favicons to external link previews (#4788) 2024-03-12 22:47:51 +02:00
messenger_mailserver.go enable custom community storenodes (#4532) 2024-02-20 17:49:39 +02:00
messenger_mailserver_cycle.go chore_: override DNS for iOS as well (#5093) 2024-04-26 14:14:17 +02:00
messenger_mailserver_processMailserverBatch_test.go chore: store node requests manager (#4446) 2023-12-15 19:50:12 +00:00
messenger_maps.go fix: don't store ourselves as a contact (#3627) 2023-07-12 12:46:56 +03:00
messenger_mention.go [mention] fix relate issues to input segments (#3766) 2023-07-25 16:47:24 +08:00
messenger_mention_test.go [mention] fix relate issues to input segments (#3766) 2023-07-25 16:47:24 +08:00
messenger_messages.go fix: handle bridge message edits 2024-04-07 23:24:46 +02:00
messenger_messages_order_controller_test.go feat: introduce `MessagesOrderController` 2024-02-09 16:02:17 +01:00
messenger_messages_tracking_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_mute_test.go fx: deprecate profile and timeline chats (#3809) 2023-08-03 17:16:11 +03:00
messenger_offline_test.go chore: faster TestCommunityOfflineEdit (#4800) 2024-02-27 19:38:40 +00:00
messenger_peers.go feat: use protected topics for communities 2023-08-23 13:56:00 -04:00
messenger_peersyncing.go Peer syncing toggle (#4758) 2024-03-05 11:44:09 +01:00
messenger_peersyncing_test.go chore: skip TestMessengerPeersyncingSuite 2024-03-06 18:05:40 +01:00
messenger_pin_message_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_pin_messages.go feature: view only channel reactions (#4820) 2024-03-01 17:15:38 +00:00
messenger_profile_showcase.go feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
messenger_profile_showcase_proto_conversions.go Feat: Simplify profile showcase preferences (#4854) 2024-03-08 17:20:23 +01:00
messenger_profile_showcase_test.go chore_: move grant exiration to a new test (#5078) 2024-04-19 16:23:27 +02:00
messenger_remove_message_test.go feat: get and delete community member messages API (#4932) 2024-03-19 20:44:49 +01:00
messenger_reply_test.go Use base test messenger suite 2023-07-13 14:01:55 +01:00
messenger_response.go Fix(Profile): Remove profile showcase from general response via signal (#4982) 2024-03-29 11:22:44 +01:00
messenger_response_test.go
messenger_saved_address.go fix: saved addresses sync (`TestSyncDeletesOfSavedAddresses` flaky test) (#4742) 2024-02-16 09:45:10 +00:00
messenger_send_images_album_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_settings.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_settings_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_share_image_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_share_urls.go chore: remove boilerplate check of `communities.GetByID` clients 2024-01-10 18:58:17 +01:00
messenger_share_urls_test.go Fix/community tags indices (#4992) 2024-03-26 20:02:12 +00:00
messenger_status_updates.go feat: use protected topics for communities 2023-08-23 13:56:00 -04:00
messenger_status_updates_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_store_node_request_manager.go chore: improve StoreNodeRequestManager for community custom storenodes (#4860) 2024-03-04 20:46:25 +00:00
messenger_store_node_request_manager_config.go fix: remove store node envelopes ordering hotfix (#4622) 2024-01-27 13:02:12 +00:00
messenger_storenode_comunity_test.go chore: skip flaky TestSetStorenodeForCommunity_fetchMessagesFromNewStorenode 2024-03-11 22:02:07 +01:00
messenger_storenode_request_test.go fix: Update and improve `TestFetchRealCommunity` (#4949) 2024-03-20 18:10:02 +00:00
messenger_switcher_cards.go
messenger_sync_activity_center_test.go New way of sharing communities (#4341) 2023-12-15 13:55:32 +02:00
messenger_sync_bookmark_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_sync_chat_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_sync_clear_history_test.go Use base test messenger suite 2023-07-13 14:01:55 +01:00
messenger_sync_contact_request_decision_test.go Fix/duplicate accept cr messages (#4367) 2023-12-05 12:22:20 +08:00
messenger_sync_customization_color_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_sync_keycard_change_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_sync_keycards_state_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_sync_profile_picture_test.go Use base test messenger suite 2023-07-13 14:01:55 +01:00
messenger_sync_raw_messages.go Feat: Add social links to the profile showcase (#4775) 2024-02-26 16:53:40 +03:00
messenger_sync_saved_addresses_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_sync_settings.go fix (@status-go/stickers) Stickers still show in the recent list after being uninstalled (#4474) 2023-12-21 10:05:30 -08:00
messenger_sync_settings_test.go fix: clear waku envelopes cache when deleting a chat (#4621) 2024-01-30 13:43:34 +00:00
messenger_sync_verification_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_sync_wallets_test.go Revert "Comment out all logged flaky tests" 2024-02-27 11:00:29 +01:00
messenger_test.go Add favicons to external link previews (#4788) 2024-03-12 22:47:51 +02:00
messenger_testing_utils.go Fix(Profile): Remove profile showcase from general response via signal (#4982) 2024-03-29 11:22:44 +01:00
messenger_unread_test.go feat: Return seen/unseen messages count in MessnegerResponse (#4461) 2023-12-25 13:25:22 +07:00
messenger_waku_wrapper_test.go feat: introduce `testWakuWrapper` and `testPublicWakuAPIWrapper` 2024-02-09 16:02:17 +01:00
messenger_wallet.go Feat: Save and dispatch profile showcase on wallet account change (#4674) 2024-02-07 12:30:56 +03:00
messenger_walletconnect.go
messenger_walletconnect_test.go Use base test messenger suite 2023-07-13 14:01:55 +01:00
persistence.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
persistence_collapsed_community_categories.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
persistence_metrics.go feat: Collecting community messages count metrics (#3802) 2023-08-01 17:08:57 +04:00
persistence_profile_showcase.go feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
persistence_profile_showcase_test.go Feat: Simplify profile showcase preferences (#4854) 2024-03-08 17:20:23 +01:00
persistence_quoted_message_test.go fix: process empty albumId in albumMessages (#4874) (#4898) 2024-03-08 13:48:22 +00:00
persistence_test.go feat: get and delete community member messages API (#4932) 2024-03-19 20:44:49 +01:00
push_notification_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
status_update.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
switcher_card.go
transaction_validator.go
transaction_validator_test.go
waku_builder_test.go fix: Update and improve `TestFetchRealCommunity` (#4949) 2024-03-20 18:10:02 +00:00

README.md

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 exports Messenger 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 by Messenger 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.