* feat(telemetry)_: publish peerId
* fix_: fix goimports lint error in waku
* fix_: trim extra slash, use the right Waku service
* fix_: update protocol/messenger.go
Co-authored-by: richΛrd <info@richardramos.me>
* fix_: panic when PeerID is called on wakuv1
* fix_: use option instead of additional param for PeerID
---------
Co-authored-by: Arseniy Klempner <arseniyk@status.im>
Co-authored-by: richΛrd <info@richardramos.me>
* feat_: hash based query for outgoing messages.
* chore_: more logs
* chore_: fix comments
* chore_: do not lock when send queries
* chore_: use constant for magic number
* chore_: remove message ids from query queue after ack
* chore_: fix ack clean process
* chore_: fix message resend test
* chore_: add test for waku confirm message sent.
* chore_: fix tests.
* chore_: fix more
* chore_: set store peer id when mailserver updates
* fix_: tests
* chore_: increase max hash query length
* chore_: remove debug log of ack message
* chore_: remove automatic peer selection
* chore_: mark raw message to sent after ack
* chore_: fix test
* chore_: fix test
- 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
refactor: associate chats to pubsub topics and populate these depending if the chat belongs to a community or not
refactor: add pubsub topic to mailserver batches
chore: ensure default relay messages continue working as they should
refactor: mailserver functions should be aware of pubsub topics
fix: use []byte for communityIDs
* chore: upgrade go-waku to v0.5
* chore: add println and logs to check what's being stored in the enr, and preemptively delete the multiaddr field (#3219)
* feat: add wakuv2 test (#3218)
When discovery fails to be seeded with bootstrap/fallback nodes, it
never recovers.
This commit changes the behavior so that status-go retries fetching
bootnodes, and restarts discovery when that happens.
Usually, message IDs are generated by their payload and signature and
in receiving nodes calculated in based on the same data as well.
There's no ID attached to messages in-flight.
This turns out to be a bit of a problem for messages that are being
imported from third party systems like discord, as the conversion
and saving of such messages and handling of their possible assets and
attachments are done in separate steps, which changes the message
payloads after their IDs have been generated.
Hence, we're introducing a `ThirdPartyID` property to `common.Message`
and `protobuf.WakuMessage` so receiving nodes of such messages (via the
archive protocol primarily) can easily detect third party/imported
messages and give them special treatment.
This introduces logic needed to:
- Create WakuMessageArchives and and indices from store waku messages
- History archive torrent data to disk and create .torrent file from
that
- Seed and unseed history archive torrents as necessary
- Starting/stopping the torrent client
- Enabling/disabling community history support for individual components
and starting/stopping the routine intervals accordingly
This does not yet handle magnet links (#2568)
Closes#2567