* adds resume function
* unittest for findLastSeen
* fixes a bug in find last seen unit test
* argument type change to indexed waku message
* relocates findLastSeen
* adds unit test for resume
* adds comments
* adds a TODO
* adds offset
* cleans up
* modifies some of tests title and deletes a duplicate unit test
* more condition on running resume()
* adds more detailed docstring and simplifies if statement
* Update waku/v2/protocol/waku_store/waku_store.nim
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* new doc string
* Update waku/v2/protocol/waku_store/waku_store.nim
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* fixes a bug
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* WIP
* stores version in db, edits error messages
* fixes a bug
* reverts edit messages
* converts uint32 storage to int64
* unit tests for various version numbers
* minor comments edit
* removes debugging messages
* updates changelog
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
* 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
* adds pubsubtopic to the store json rpc api
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
* 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>
* lightpush conf and mount with relay from node
* mount lightpush after relay
* lightpush relay integration wip
* lightpush node integrate and test node
* clean
* 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
* handles initial paging query for history of size one
* adds two more tests to fetch the entire history in the initial paging request
* increases the pageSize
* adds time based query
* handling temporal history queries
* more tests for corner cases
* edits tests comments
* further comments
* updates the time query logic
queries with zero-size window will result in an empty response
* returns no messages for invalid time queries
* comment update
* converts contentTopics from int to string
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* Force chronological message history
* Fix start/end index computation
* Sleep before RPC call
* Lower default max cache sizes on APIs
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* changes pageSize to uint64
* WIP
* reworks tests and indexing proc to match uint64 pageSize
* minor simplification
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* entirely replaces the prior rln header, the var variables are changed to ptr
* updates the unittest of key_gen
* adds test for update_next_member
* updates membershipKeyGen internals and prototype
* adds createRLNInstance
* adds helpers methods
* adds generateKeyPairBuffer
* cleans up the test and adds comments
* renames merkleTreeDepth to d
* fixes a buf re decoding the keys into sk and pk
* adds getSKPK proc
* unifies key gen helper procs, adds todos
* comments out the createRLNInstance
* refactors the code based on the updated createRLNInstance interface
* adds the test for the verify proc
* fixes a variable name and replaces random key gen with the real key gen
* tests a simple hash
* adds get_root method
* fixes the data pointer issue and adds the proof breakdown
* adds rln
* adds unit tests for Merkle tree
* adds a sample hash test
* fixes the hash bug and comments out unused part of proof gen test
* cleans up the proof gent test
* replaces unsafeAddr with addr
* fixes an issue in key gen
* updates rln submodule
* fixes the verification problem
* adds a failed test
* replaces an old test scenario with a new one
* handles createRLNInstance output
* working createRLNInstance2
* refactors the code by replacing the old createRLNInstance
* renames createRLNInstance2
* adds documentation and reorganizes rln.nim
* replace echo with debug, renames vars, adds a bad proof test
* minor
* minor
* edits var names
* adds one more check
* adds one more test to the hash
* enforcing exception handling
* adds pacman -Sy
* removes update:true
* activates update
* Bump nim-chronos and fix exception tracking issues
* Bump other Nim submodules to latest
* Fix repeatMessage properly through proc type fix in nim-eth
Also add and use unittest2 through testutils to avoid extra
annotations.
* entirely replaces the prior rln header, the var variables are changed to ptr
* updates the unittest of key_gen
* adds test for update_next_member
* updates membershipKeyGen internals and prototype
* adds createRLNInstance
* adds helpers methods
* adds generateKeyPairBuffer
* cleans up the test and adds comments
* renames merkleTreeDepth to d
* fixes a buf re decoding the keys into sk and pk
* adds getSKPK proc
* unifies key gen helper procs, adds todos
* comments out the createRLNInstance
* refactors the code based on the updated createRLNInstance interface
* adds the test for the verify proc
* fixes a variable name and replaces random key gen with the real key gen
* tests a simple hash
* adds get_root method
* fixes the data pointer issue and adds the proof breakdown
* adds rln
* adds unit tests for Merkle tree
* deletes unnecessary comments
* updates createRLNInstance to return bool indicating the success of call
* updates create RLN Instance interface
* minor
* clean up
* removes unused imports
* adds documentation
* adds comments
* adds byteutils
* removes extra spaces
* updates rln submodule
* deletes genSKPK
* fixes a bug in membershipKeyGen
* unsafeAddr to addr
* Update waku/v2/protocol/waku_rln_relay/rln.nim
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* clean up
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* adds the proof field to the WakuMessage
* adds a basic zkProof api
* adds proof gen to the publish proc
* relocates the proofGen and proofVrfy to rln_relay_utils
* wip: test of proof gen
* adds a procedure to pass rln-relay message validator, adds the proof gen
* tests the proof gen and verify
* relocates zkp API
* adds documentation and todos
* adds todos and documentations
* removes an unnecessary comment
* adds todos
* adds a test for topic validators
* edits the import
* edits the comments
* further edits on the comments
* mode comments on the test
* checks the pubsub topic in the validator
* adds a fix
* changes the sleep time to 2 secs
* Fix balance JSON resp
* Resultify swap contract calls for error handling
* More resultify and fixup tests
* More results
* resultify waku swap handling
* re-enable waku swap test
should not crash now, even if it fails to settle (tested separately)
* fix balance test
* move waku swap contracts into own module
* Move more to separate waku swap contracts
* move erc20address
* Improve cmd/task util
* fix redeem part too
* sign cheque hardcode
* add signature field, send cheque
* echo->debug
* disable waku swap test
it calls contracts, which isnt integrated
* cleans up imported modules
* adds uploadContract proc and consolidates rln-relay test files
* deletes test_rln_relay_wrappers
* deletes wrappers tests
* adds waku_rln_relay_utils
* adds the unit test for the membership key generation
* adds the key generation procedure
* adds unit test of key gen proc
* adds RLNRelayPeer data type
* adds the register proc
* adds the register proc unit test
* minor
* edits registration test
* adds comments to the registration unit test and relocates some constants
* defines constants variables for membership contract inputs and adds todos
* fixes a typo
* enables signed transaction
* adds registration into waku rln relay
* adds a TODO
* adds debug notes
* WIP add registration test
* integrates rln relay inputs into the mountRelay proc
* minor
* adds mountRelay
* renames RlnRelayPeer to WakuRlnRelay
* adds debugging notes
* changes the test title
* adds rln to gitignore
* cleans up tests, fixes a bug
* exposes mountRlnrelay, adds some comments
* fixes a bug
* deletes async pragma from mountRelay
* exposes the wakuRlnRelay field
* adds bash command to delete any existing rln directory before cloning the rln repo
* removes -v verbose flag from rln removal
* replaces await with WaitFor
* embed mountRlnRelay inside mountRelay
* cleans up imported modules
* adds uploadContract proc and consolidates rln-relay test files
* deletes test_rln_relay_wrappers
* deletes wrappers tests
* adds waku_rln_relay_utils
* adds the unit test for the membership key generation
* adds the key generation procedure
* adds unit test of key gen proc
* adds RLNRelayPeer data type
* adds the register proc
* adds the register proc unit test
* minor
* edits registration test
* adds comments to the registration unit test and relocates some constants
* defines constants variables for membership contract inputs and adds todos
* fixes a typo
* adds rln to gitignore
* moves all the types to the top
* adds contracts inputs to the utils module
* adds a TODO
* adds some comments
* removes newline! adds some comments
* cleans up imported modules
* adds uploadContract proc and consolidates rln-relay test files
* deletes test_rln_relay_wrappers
* deletes wrappers tests
* adds waku_rln_relay_utils
* adds the unit test for the membership key generation
* adds the key generation procedure
* adds unit test of key gen proc
* removes extra spaces
* Update tests/v2/test_waku_rln_relay.nim
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* deletes the newline
* adds rln to gitignore
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Swap contracts use JSON interface
Check Alice address returned correctly
Sign cheque test with arg and resp
Add network to operate against persistant node
Get erc20 balance
Redeem cheque and check balance
* adds the initial rln.nim wrapper
* adds test_rln_wrapper
* WIP: initial test (not working)
* changes RLNBn256 data type
* updates parameters type
* adds the wrappers and fixes the bugs
* adds tests
* replaces echo with debug