* Add basic encode/decode test
* Use Stream for trait instead of Iterator
* Removed unnecessary pin
* Add custom fountain error
* Add failing path to tests
* Added docs
* Normalized chunks to bytes
* Added settings initialization for fountain codes trait
* Pipe fountain code through consensus
* Implement broadcast block and block reconstruction for Member Overlay
* Fix failing raptor test
* Use seed for raptorq tests
* Use const for topics instead of static
* Clippy happy
* Refactor mempool naming and added settings to backend trait
* Implement mempool networking traits and waku backend
* Transaction networking plumbing in mempool service
* Make TransactionMsg generic
Use bincode to deserialize tx messages
* Make wakuadapter generic over tx and tx-id
* Fix wrong backend type bound
* Adapt to waku beta2
* Thread tx and id together for adapter and pool
* Panic on subscribing error
* Prune unnecessary Id type bounds
* Remove transaction placeholder
* Remove Id bound from waku adapter
* Remove empty transactions module
* ci: add Jenkins and Docker file for PR and doc builds
* Fixing waku-bindings dependacy definitions
* Add post cleanup and musl-dev to Jenkinsfile
* Add go to the Dockerfile for ci
* GOCACHE set to tmp for ci builds
* Use slim-bullseye docker image for ci builds
* Update ci/Jenkinsfile.docs
Co-authored-by: Jakub <i+github@always.fail>
* Add image version and env vars for docs build
* Remove duplicated environment section
* Add missing rust dependencies
* Split jenkins file into linux and macos targets
* Removing github actions for PR checks
* Add explicit versions to the shell.nix dependencies
* Add jenkins libs required for nix
* Use default rust-bin version that includes clippy and fmt
* Add readme to ci folder
Co-authored-by: Jakub <i+github@always.fail>
Using logos-co/Overwatch CI scripts for tests and linting in PRs.
The idea is to use this for now, and later gather all common action definitions into one dedicated repository.
* Copied CI test, clippy and fmt steps from Overwatch
* Added go 1.19 to an action setup (required for building waku-rust-bindigs dep)
* Add Waku network backend
Add Waku as the first supported network backend and rework API.
In particular, the network message now depends on the underlying
network backend so that it can properly reflects specificities
of the protocol.
Another choice could have been to hardwire domain-specific actions
in the network message type (e.g. send block, send message, ...)
but was discarded in favor of a more general network service.
* address review comments
* add debug impl
* add Serialize/Deserialize to network settings
* add waku functionalities
* add a little bit of documentation
* Added storage main files and trait
* Pipe skeleton for StorageService
* Implement running StorageService
* Add sled module
* Refactor error reporting
* Missing logging todo
* Implement mock storage
* Add channel for auto-converting types on channel replies
* Simplify StorageBackend trait
* Refactor mock backend and use HashMap
* Remove sled for now
* Refactor serialization scheme
* Add storage traits docs
* Make transaction a custom trait. This way we can return stuff from the transactions themselves if needed.