* Fill watcher start block only in active mode
* Fix sync status update in historical processing
* Upgrade package versions
* Upgrade package versions in codegen template
* Fix graph-node test indexer
* Find minimum start block number
* Perform fill if db is empty
* Make getStartBlock method public in GraphWatcher
* Use dataSources property
* Update server template to fill block on start
* Avoid passing graphWatcher from generated watcher
* Ensure block filling for non-subgraph watchers as well
* Remove getStartBlock method from GraphWatcher
* Remove graphWatcher property from ServerCmd
---------
Co-authored-by: neeraj <neeraj.rtly@gmail.com>
* Wait for events queue to be empty before continuing historical processing
* Make historicalLogsBlockRange and historicalMaxFetchAhead configurable
* Perform single RPC request for multiple addresses
* Upgrade nitro-node to v0.1.15
* Upgrade packages version to v0.2.66
* Add default value for Nitro node store path
---------
Co-authored-by: neeraj <neeraj.rtly@gmail.com>
* Upgrade @cerc-io/nitro-node dependency
* Add a separate config option for chain URL used by Nitro node
* Avoid adding ETH RPC method to request URL as no longer needed
* Update package versions
* Add config option for upstream RPC mutation endpoint
* Use mutation endpoint as chain URL for Nitro node
* Add a method to setup an upstream payment channel
* Add a method to send payments to upstream Nitro node
* Upgrade package versions
* Add support for setting gossipsub direct peers
* Use string array for direct peers config
* Handle empty nitro and consensus config
* Increase consensus write retry attempts
* Rename config option for watcher party peers file
* Handle directPeers array being passed undefined
* Upgrade package versions
---------
Co-authored-by: Shreerang Kale <shreerangkale@gmail.com>
* Add Consensus class with placeholders
* Implement Consensus constructor
* Move PubsubType to peer package
* Implement remaining methods in Consensus class
* Use existing consensus stream if it exists
* Setup send and receive pipes on consensus streams
* Refactor P2P and consensus setup in server command
* Add Nitro node initialization in server command
* Return objects from server initializations
* Use dynamic imports for ES modules in util package
* Fix util deps
* Change target to es6 to allow creating a Mokka instance
* Set moduleResolution to node16 in util for dynamic imports
* Upgrade @cerc-io/nitro-node package
* Implement retries while sending consensus messages
* Use bunyan for consensus logs and subscribe to state changes
* Use debug for logging state change events
* Handle empty watcher party file path
* Return object from initP2P
* Upgrade @cerc-io/nitro-node package
* Update package versions
* Replace floodsub with gossipsub
* Add a pubsub flag to support both floodsub and gossipsub
* Fix deps
* Handle empty string values
* Upgrade @cerc-io/libp2p dependency
* Upgrade package versions
* Add a custom payments plugin in server process
* Fix voucher channel read in voucher subscription
* Use voucher hash and signature for payment authentication
* Use a LRU hash map for storing received vouchers
* Avoid hoisting level types to resolve build errors
* Upgrade ts-nitro packages
* Add payments related logs
* Upgrade package versions
* Always allow latestBlock query
* Upgrade ts-nitro packages
* Block connections from blacklisted multiaddrs in relay node
* Block connections from blacklisted multiaddrs in peer nodes
* Block dials for blacklisted multiaddrs
* Update package version
* Refactor discovery handler
* Broadcast peer info over floodsub on requests
* Broadcast peer info from relay nodes
* Make debug reponse handler optional
* Register debug info request handler on peer init
* Move debug info types to types dir
* Return method to unsubscribe from the debug topic
* Make debug info flag optional for relay nodes
* Restructure peer connection info data
* Refactor getting peer info to be used in react app
* Refactor duplicate code to utils
* Rename peer methods
---------
Co-authored-by: nabarun <nabarun@deepstacksoft.com>
* Improve connection check with peers by retrying ping on failures
* Use DEFAULT_PING_INTERVAL in cli
* Log only error message
* Add config option to pass peer id file path
* Finish retrying pings before connection check interval duration
* Handle duplicate connections to relay nodes
* Increase default max dial retries from one relay to another
* Update connection manager config for relay nodes
* Use debug for logs in relay node
---------
Co-authored-by: prathamesh0 <prathamesh.musale0@gmail.com>
* Pass initialization options when starting a peer
* Update config used for relay and peer nodes in watcher
* Rename types
* Refactor mobymask libp2p message parsing
* Enable laconic debug logs in server command
* Add an option to run relay node with watcher server
* Add a v2 mobymask-watcher
* Add an option to run peer node with watcher server
* Ignore ts error when importing types from peer package
* Rename mobymask v2 watcher
* Parse mobymask libp2p messages
* Refactor and add comments
* Add a note in peer package about nodejs exports
* Update copyright
* Move graph-database from graph-node to util
* Refactor and remove graph-node dependency from cli package
* Modify dependencies using depcheck
* Implement CLI refactoring changes in other watchers
* Review changes to remove eden comment and fix local import in util
* Import GraphDatabase from util instead of graph-node
* Move graph-node non assemblyscript code to util package
* Implement CLI refactoring changes in codegen
* Fix graph-node tests after refactoring
* Move fromStateEntityValues to graph state utils