• Andronik Ordian's avatar
    NetworkBridge: validator (authorities) discovery api (#1699) · b84f3c03
    Andronik Ordian authored
    
    
    * stupid, but it compiles
    
    * redo
    
    * cleanup
    
    * add ValidatorDiscovery to msgs
    
    * sketch network bridge code
    
    * ConnectToAuthorities instead of validators
    
    * more stuff
    
    * cleanup
    
    * more stuff
    
    * complete ConnectToAuthoritiesState
    
    * Update node/network/bridge/src/lib.rs
    Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
    
    * Collator protocol subsystem (#1659)
    
    * WIP
    
    * The initial implementation of the collator side.
    
    * Improve comments
    
    * Multiple collation requests
    
    * Add more tests and comments to validator side
    
    * Add comments, remove dead code
    
    * Apply suggestions from code review
    Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
    
    * Fix build after suggested changes
    
    * Also connect to the next validator group
    
    * Remove a Future impl and move TimeoutExt to util
    
    * Minor nits
    
    * Fix build
    
    * Change FetchCollations back to FetchCollation
    
    * Try this
    
    * Final fixes
    
    * Fix build
    Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
    
    * handle multiple in-flight connection requests
    
    * handle cancelled requests
    
    * Update node/core/runtime-api/src/lib.rs
    Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
    
    * redo it again
    
    * more stuff
    
    * redo it again
    
    * update comments
    
    * workaround Future is not Send
    
    * fix trailing spaces
    
    * clarify comments
    
    * bridge: fix compilation in tests
    
    * update more comments
    
    * small fixes
    
    * port collator protocol to new validator discovery api
    
    * collator tests compile
    
    * collator tests pass
    
    * do not revoke a request when the stream receiver is closed
    
    * make revoking opt-in
    
    * fix is_fulfilled
    
    * handle request revokation in collator
    
    * tests
    
    * wait for validator connections asyncronously
    
    * fix compilation
    
    * relabel my todos
    
    * apply Fedor's patch
    
    * resolve reconnection TODO
    
    * resolve revoking TODO
    
    * resolve channel capacity TODO
    
    * resolve peer cloning TODO
    
    * resolve peer disconnected TODO
    
    * resolve PeerSet TODO
    
    * wip tests
    
    * more tests
    
    * resolve Arc TODO
    
    * rename pending to non_revoked
    
    * one more test
    
    * extract utility function into util crate
    
    * fix compilation in tests
    
    * Apply suggestions from code review
    Co-authored-by: Fedor Sakharov's avatarFedor Sakharov <fedor.sakharov@gmail.com>
    
    * revert pin_project removal
    
    * fix while let loop
    
    * Revert "revert pin_project removal"
    
    This reverts commit ae7f529d
    
    .
    
    * fix compilation
    
    * Update node/subsystem/src/messages.rs
    
    * docs on pub items
    
    * guide updates
    
    * remove a TODO
    
    * small guide update
    
    * fix a typo
    
    * link to the issue
    
    * validator discovery: on_request docs
    Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
    Co-authored-by: Fedor Sakharov's avatarFedor Sakharov <fedor.sakharov@gmail.com>
    Co-authored-by: default avatarBernhard Schuster <bernhard@ahoi.io>
    b84f3c03