* 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>
* updates the fields numbers of proof and timestamp
* clarifies that proof is not part of waku message specs
* Update waku/v2/protocol/waku_message.nim
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
* fixes indentation
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
* 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>
* adds rlnlib dependency
* clones the full-node branch of rln repository
* moves rlnlib dependency to the deps target
* changes rlnlib path
* adds test_rln_relay_wrappers to the v2 tests
* loads rlnlib with different extensions based on the OS
* deletes unnecessary imports
* changes rlnlib extension to .exe for windows
* minor
* list files in rln/target/debug
* edits rln lib name for windows
* removes unnecessary commands
* edits some comments
* fetches specific commit of rln library
* 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
* enhancement/cleanup-warnings (#290)
Accounting: Move flag to config and add basic test for accounting state (#284)
* 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
Refactor: waku_types separation of concern (trial with waku_swap) (#282)
* waku_types refactor: Accounting types to waku_swap
* waku_types refactor: Separate waku_swap_types file
* Fix import path for waku_swap
adds the test file for waku rln relay
WIP: adds some initial code
commented out the rln-relay test code
refactor/db-message-store-split (#280)
* fixes
* fic
* fix
* fix
* fix
* fixed
* fix
* fixes
* fixes, using sqlite lib fully
* fix
* Update sqlite.nim
Waku v2 JSON-RPC REST API: Store protocol proof of concept (#263)
* Waku V2 history query POC
* Fix folder structure
* Improve test clarity
* Improve imports, returns and some naming
* Changed naming conventions. Refactor & improve.
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Refactor types store (#291)
* 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 credit receiving node (#292)
* 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
enhancement/remove-flood (#295)
* removes flood
* rm
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Updated submodules (#303)
add Jenkinsfile and some Makefile targets for CI (#302)
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Accounting: End to end with Cheque PoC (#304)
Added some basic debug and relay json-rpc calls (#305)
Uncomment and call empty rln test
adds the membership contract to the test file
adds a test utils for contract deployment
increases the gas limit for group management contract
* removes some files
* WIP: adds the interface of membership contract
* uncomments the interface of getNumber contract
* adds tests for interaction with the membership contract
* send is replaced with call
* replaces call with send
* enhancement/cleanup-warnings (#290)
Accounting: Move flag to config and add basic test for accounting state (#284)
* 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
Refactor: waku_types separation of concern (trial with waku_swap) (#282)
* waku_types refactor: Accounting types to waku_swap
* waku_types refactor: Separate waku_swap_types file
* Fix import path for waku_swap
adds the test file for waku rln relay
WIP: adds some initial code
commented out the rln-relay test code
refactor/db-message-store-split (#280)
* fixes
* fic
* fix
* fix
* fix
* fixed
* fix
* fixes
* fixes, using sqlite lib fully
* fix
* Update sqlite.nim
Waku v2 JSON-RPC REST API: Store protocol proof of concept (#263)
* Waku V2 history query POC
* Fix folder structure
* Improve test clarity
* Improve imports, returns and some naming
* Changed naming conventions. Refactor & improve.
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Refactor types store (#291)
* 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 credit receiving node (#292)
* 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
enhancement/remove-flood (#295)
* removes flood
* rm
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Updated submodules (#303)
add Jenkinsfile and some Makefile targets for CI (#302)
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
Accounting: End to end with Cheque PoC (#304)
Added some basic debug and relay json-rpc calls (#305)
Uncomment and call empty rln test
adds the membership contract to the test file
adds a test utils for contract deployment
increases the gas limit for group management contract
* removes some files
* WIP: adds the interface of membership contract
* uncomments the interface of getNumber contract
* adds tests for interaction with the membership contract
* send is replaced with call
* replaces call with send
* adds a todo
* removes empty lines
* adds some comments
* adds a todo
* adds the solidity code of the NumberContract
* fixes a bug: replaces call with send
* removes store test comments
* removes excess spaces
* 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>