* adds ProofMetadata
* adds EPOCH_INTERVAL
* adds messageLog field
* adds updateLog, toEpoch, fromEpoch, getEpoch, compareTo
* adds unit test for toEpoch and fromEpoch
* adds unit test for Epoch comparison
* adds result codes for updateLog
* adds unit test for update log
* renames epoch related consts
* modifies updateLog with new return type and new logic of spam detection
* adds unit text for the modified updateLog
* changes max epoch gap type size
* splits updateLog into two procs isSpam and updateLog
* updates unittests
* fixes a bug, returns false when the message is not spam
* renames messageLog to nullifierLog
* renames isSpam to hasDuplicate
* updates the rln validator, adds comments
* adds appendRLNProof proc plus some code beatification
* unit test for validate message
* adds unhappy test to validateMessage unit test
* renames EPOCH_UNIT_SECONDS
* renames MAX_CLOCK_GAP_SECONDS
* WIP: integration test
* fixes compile errors
* sets a real epoch value
* updates on old unittests
* adds comments to the rln relay tests
* adds more comments
* makes rln import conditional
* adds todos
* adds more todos
* adds rln-relay mount process into chat2
* further todos
* logs contentTopic
* introduces rln relay configs
* changes default pubsub topic
* adds contentTopic config
* imports rln relay dependencies
* consolidates imports
* removes module identifier from ContentTopic
* adds contentTopic field
* adds contentTopic argument to mountRlnRelay calls
* appends rln proof to chat2 messages
* changes the default chat2 contentTopic
* adds missing content topic fields
* fixes a bug
* adds a new logic about empty content topics
* appends proof only when rln flag is active
* removes unnecessary todos
* fixes an indentation issue
* adds log messages
* verifies the proof against the concatenation of msg payload and content topic
* a bug fix
* WIP
* removes duplicate epoch time calculation
* converts echo to log
* invokes handler
* bug fix
* prints calculated epoch
* changes the format of printed epoch
* updates log levels
* logs the input buffer supplied to the generate_proof
* replaces echos with logs
* changes log level to trace
* resets the log level of chat2 to INFO
* upgrades log level to debug
* exports toRLNSignal and adds a doc string
* updates log level
* enables all test2
* removes an echo statement
* modifies a comment
* further updates on the log level
* a minor update
* invokes the spam handler when provided
* checks for payload version
* deletes a redundant check
* deletes a rendant check
* updates default rln-relay cht2 content topic
* adds a todo and log
* changes the case of testnet content topic
* removes a flaky check
* adds ProofMetadata
* adds EPOCH_INTERVAL
* adds messageLog field
* adds updateLog, toEpoch, fromEpoch, getEpoch, compareTo
* adds unit test for toEpoch and fromEpoch
* adds unit test for Epoch comparison
* adds result codes for updateLog
* adds unit test for update log
* renames epoch related consts
* modifies updateLog with new return type and new logic of spam detection
* adds unit text for the modified updateLog
* changes max epoch gap type size
* splits updateLog into two procs isSpam and updateLog
* updates unittests
* fixes a bug, returns false when the message is not spam
* renames messageLog to nullifierLog
* renames isSpam to hasDuplicate
* updates the rln validator, adds comments
* adds appendRLNProof proc plus some code beatification
* unit test for validate message
* adds unhappy test to validateMessage unit test
* renames EPOCH_UNIT_SECONDS
* renames MAX_CLOCK_GAP_SECONDS
* WIP: integration test
* fixes compile errors
* sets a real epoch value
* updates on old unittests
* adds comments to the rln relay tests
* adds more comments
* makes rln import conditional
* adds todos
* adds more todos
* adds rln-relay mount process into chat2
* further todos
* logs contentTopic
* introduces rln relay configs
* changes default pubsub topic
* adds contentTopic config
* imports rln relay dependencies
* consolidates imports
* removes module identifier from ContentTopic
* adds contentTopic field
* adds contentTopic argument to mountRlnRelay calls
* appends rln proof to chat2 messages
* changes the default chat2 contentTopic
* adds missing content topic fields
* fixes a bug
* adds a new logic about empty content topics
* appends proof only when rln flag is active
* removes unnecessary todos
* fixes an indentation issue
* adds log messages
* verifies the proof against the concatenation of msg payload and content topic
* a bug fix
* removes duplicate epoch time calculation
* updates log level to trace
* updates default rln-relay content topic
* adds support for empty content topics
* updates changelog
* changelog updates
* removes a commented code block
* updates addRLNRelayValidator string doc
* replaces uint with MembeshipIndex type
* fixes rln relay mem index config message
* adds rln relay setup proc
* decouples relay and rln-relay
* uses MemIndexType instead of uint
* brings back the rlnRelayEnabled flag to mountRlnRelay
* deletes commented codes
* adds rln relay topic validator inside updates rln relay mounting procedure
* adds rln-relay-pubsub-topic cli option
* adds a static rln-relay topic
* deletes rlnrelayEnabled argument
* adds pubsub topic for rln-relay
* deletes static pubsub topic
* mounts relay before rlnrelay in the tests
* logs rln relay pubsub topic
* cleans up the code
* edits rlnrelay setup
* uninitializes the input parameter of rlnrelay setup
* adds comments
* removes unused comments
* compiles addRLNRelayValidtor when RLN compilation flag is set
* adds comment about topic validator
* minor
* mode modifications on the description of add validator
* Checks whether rln relay pubsub topic is within the supported topics of relay protocol
* minor
* addresses comments
membeshipindex to membershipindex,
adds default value for rln topic
adds missing return
* Fix nim-waku config inconsistencies
* Revert staticnode to singular form
* Fix reference to deprecated config item
* Revert nodekey config item to be consistent with Waku v1
made resulting changes to waku_filter
Made changes to wakunode2, filter_api and waku_filter
Update waku v2 test scripts referencing Content Topics
Update ContentFilter in chat example
Remove unneccesary loops from filter api
closes#496
Apply keep-alive for chat2 (#525)
Makes the arguments of the store jsonrpc api optional (#526)
* makes pubsubTopic filter optional
* makes contentFilter optional
* append Option
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Update Changelog with changes to ContentFilter
Fix indentation and code semantics
Enables perssist-message flag in the store protocol for wakunode2 (#519)
* enables perssistmessage flag
* disables in memory storage when persist-messages is false
* adds the persistMessages input to the mountStore
* defaults the store flag to true
* adds the missing argument
* persists messages in memory conditioned to the persistMessages flag
* adds persistmessages flag to the config_bridge
* defaults persistmessages to true
* defaults the store flag to true and persist-messages to false
* updates store.md
* updates chat2 instructions about --store flag
* removes --store flag from chat2 command execution
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Fix: light-mode relay for all light protocols (#529)
* Fix: light-mode relay for all light protocols
* Clear up confusing use of overloaded concepts
Fix ContentFilter Schema in wakunode test script
Enables perssist-message flag in the store protocol for wakunode2 (#519)
* enables perssistmessage flag
* disables in memory storage when persist-messages is false
* adds the persistMessages input to the mountStore
* defaults the store flag to true
* adds the missing argument
* persists messages in memory conditioned to the persistMessages flag
* adds persistmessages flag to the config_bridge
* defaults persistmessages to true
* defaults the store flag to true and persist-messages to false
* updates store.md
* updates chat2 instructions about --store flag
* removes --store flag from chat2 command execution
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Fix: light-mode relay for all light protocols (#529)
* Fix: light-mode relay for all light protocols
* Clear up confusing use of overloaded concepts
Fix resulting issues after merge
* enables perssistmessage flag
* disables in memory storage when persist-messages is false
* adds the persistMessages input to the mountStore
* defaults the store flag to true
* adds the missing argument
* persists messages in memory conditioned to the persistMessages flag
* adds persistmessages flag to the config_bridge
* defaults persistmessages to true
* defaults the store flag to true and persist-messages to false
* updates store.md
* updates chat2 instructions about --store flag
* removes --store flag from chat2 command execution
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* 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
* clarifies the use of content topic in store api
* clarifies the use of contentTopic in the init method of HistoryContentFilter
* Accounting WIP: Swap access through Store
* Fix order bug and comment scenario + typo
* WIP
* Accounting: Account for receiving store node
- Turn accountFor function into credit and debit
- Misc formatting
* Accounting: Fix bugs related to mount and test
* Accounting: Simplify query signature
We already have a ref to wakuSwap through wakuStore now.
* Resolve rebase issues
* Refactor: Move waku_store into its own folder
* Refactor: Move waku store types to new home (WIP)
* Refactor: Fix errors and recursive imports
* Fix rebase errors
* Refactor: More rebase import fixes
* Accounting: Add config flag (default to false)
Also fix bug where query function is called twice when flag is set.
* Accounting: test state update after store req
* Change folder structure to {v1,v2,common}/...
Addresses https://github.com/status-im/nim-waku/issues/261
* Update waku.nimble paths
* Flatten paths
* Fix import paths
* Pull out utils folder for nat
* Pull out waku_types to top level for v2
* Fix test import paths
* Remove old READMEs and replace with one liner
* Update README and split v1 and v2
* Skeleton READMEs
* Update README.md
Co-authored-by: Kim De Mey <kim.demey@gmail.com>
* Update README.md
Co-authored-by: Kim De Mey <kim.demey@gmail.com>
Co-authored-by: Kim De Mey <kim.demey@gmail.com>