nwaku/CHANGELOG.md
Sanaz Taheri Boshrooyeh 50a54cb4ee
Enabling pubsub topic filter in history queries (#492)
* replaces topics with seq of ContentFilters

* update topics to contentFilter

* updates the contentFilter  structure

 one content  topic per content filter instead of a sequence of topics

* updates store json rpc api

* renames ContentFilter to HistoryContentFilter

* unit test for a query with several content filters

* makes shortcut for store api

* updates chat2

* clean up

* renames topic to contentTopic

* adds pubsub topic to the history query

updates message store interface to return the pubsub topic
updates waku message store implementation
updates database schema to hold pubsub topi per waku message

* clarifies the use of content topic in store api

* clarifies the use of contentTopic in the init method of HistoryContentFilter

* simplifies the test and add comments

* lowers the field number of pubsub topic in historyQuery  protobuf

* captures an empty contentFilter case

* test pubsub topic filter for the entire history and no message match

* demoves duplicates

* adds TODO

* fix a broken comment line

* updates waku store codec

* swaps the order of pubsub topic and content topic in protobuf

* Update waku/v2/protocol/waku_store/waku_store_types.nim

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>

* updates the pubsub topic to the default value

* bumps protocol id

* moves the comment close to IndexedWakuMessage

* adds checks to the store put method

* makes table title a constant variable and retitles the table to Message

* updates the changelog

* minor update

* minor

* beta2 to beta3

* minor

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
2021-04-27 16:52:24 -07:00

3.0 KiB

Changelog

Next version

  • Refactor: Split out waku_types types into right place; create utils folder.
  • Docs: Add information on how to query Status test fleet for node addresses; how to view logs and how to update submodules.
  • PubSub topic subscribe and unsubscribe no longer returns a future (removed async designation)
  • Added a peer manager for relay, filter, store and swap peers.
  • relay, filter, store and swap peers are now stored in a common, shared peer store and no longer in separate sets.
  • Admin API now provides a post method to connect to peers on an ad-hoc basis
  • Added persistent peer storage. A node will now attempt to reconnect to relay peers after a restart.
  • Changed contentTopic back to a string
  • Fixed: content filtering now works on any PubSub topic and not just the waku default.
  • Added the pubsubTopic field to the HistoryQuery. Now, the message history can be filtered and queried based on the pubsubTopic.
  • Added a new table of Message to the message store db. The new table has an additional column of pubsubTopic and will be used instead of the old table messages. The message history in the old table messages will not be accessed and have to be removed.

2021-01-05 v0.2

This release contains the following changes:

  • Calls to publish a message on wakunode2 now await instead of discard dispatched WakuRelay procedures.
  • StrictNoSign enabled.
  • Add JSON-RPC API for external access to wakunode2 functionality:
    • Admin API retrieves information about peers registered on the wakunode2.
    • Debug API exposes debug information about a wakunode2.
    • Filter API saves bandwidth by allowing light nodes to filter for specific content.
    • Private API enables symmetric or asymmetric cryptography to encrypt/decrypt message payloads.
    • Relay API allows basic pub/sub functionality.
    • Store API retrieves historical messages.
  • Add tutorial on how to use JSON-RPC API.
  • Refactor: Move waku_filter protocol into its own module.

The Waku v2 implementation, and most protocols it consist of, are still in a draft/beta state. The Waku v1 implementation is stable but not under active development.

2020-11-30 v0.1

Initial beta release.

This release contains:

  • A Nim implementation of the Waku v1 protocol.
  • A Nim implementation of the Waku v2 protocol.
  • CLI applications wakunode and wakunode2 that allows you to run a Waku v1 or v2 node.
  • Examples of Waku v1 and v2 usage.
  • Various tests of above.

Currenty the Waku v2 implementation, and most protocols it consist of, are in a draft/beta state. The Waku v1 implementation is stable but not under active development.

Feedback welcome!