Skip to content
  1. Aug 04, 2022
  2. Aug 02, 2022
  3. Jul 29, 2022
    • Adrian Catangiu's avatar
      Lean BEEFY to Full BEEFY - don't skip (older) mandatory blocks and import justifications (#11821) · 1c6867c6
      Adrian Catangiu authored
      
      
      * client/beefy: don't accept vote for older rounds
      
      * client/beefy: clean up and reorg the worker struct
      
      * client/beefy: first step towards Full BEEFY
      
      The first step from Lean->Full BEEFY is to have the worker
      enforce uninterrupted line of BEEFY finalized mandatory blocks.
      
      There is one mandatory block per session (the first block in the
      session). As such, votes processing and votes generation now
      enforces that all mandatory blocks are finalized in strict
      monotonically increasing sequence and no block 'N' will be worked
      on if there is any GRANDPA finalized but BEEFY non-final mandatory
      block 'M', where 'M < N'.
      
      Implementation details:
      
      - Introduced 'VoterOracle' to separate the voting decisions logic,
        and track new/pending sessions.
      
      - New sessions get queued up with the worker operating either:
        1. up-to-date - all mandatory blocks leading up to current GRANDPA
           finalized: queue has ONE element, the 'current session' where
           `mandatory_done == true`,
        2. lagging behind GRANDPA: queue has [1, N] elements, where all
           `mandatory_done == false`.
           In this state, everytime a session gets its mandatory block
           BEEFY finalized, the session is popped off the queue,
           eventually getting to operating mode `1. up-to-date`.
      
      - Votes get triaged and those that fall withing the `VoterOracle`
        allowed window get processed, the others get dropped if stale,
        or buffered for later processing (when they reach the window).
      
      - Worker general code was also updated to fall in one of two roles:
        1. react to external events and change internal 'state',
        2. generate events/votes based on internal 'state'.
      
      Signed-off-by: default avataracatangiu <[email protected]>
      
      * client/beefy: sketch idea for block import and sync
      
      Signed-off-by: default avataracatangiu <[email protected]>
      
      * client/beefy: add BEEFY block import
      
      * client/beefy: process justifications from block import
      
      * client/beefy: add TODOs for sync protocol
      
      * client/beefy: add more docs and comments
      
      * client/beefy-rpc: fix RPC error
      
      * client/beefy: verify justification validity on block import
      
      * client/beefy: more tests
      
      * client/beefy: small fixes
      
      - first handle and note the self vote before gossiping it,
      - don't shortcircuit on err when processing pending votes.
      
      * client/beefy: remove invalid justifications at block import
      
      * todo: beefy block import tests
      
      * RFC: ideas for multiple justifications per block
      
      * Revert "RFC: ideas for multiple justifications per block"
      
      This reverts commit 8256fb07d3124db69daf252720b3c0208202624d.
      
      * client/beefy: append justif to backend on block import
      
      * client/beefy: groundwork for block import test
      
      * client/beefy: groundwork2 for block import test
      
      * client/beefy: groundwork3 for block import test
      
      * client/beefy: add block import test
      
      * client/beefy: add required trait bounds to block import builder
      
      * remove client from beefy block import, backend gets the job done
      
      Signed-off-by: default avataracatangiu <[email protected]>
      1c6867c6
  4. Jul 26, 2022
    • Sebastian Kunert's avatar
      Prepare for rust 1.62.1 (#11903) · 9f409dc0
      Sebastian Kunert authored
      
      
      * Update UI test output for rust 1.62.1
      
      * switch ci to staging image to check that everything works
      
      * fix artifacts node-bench-regression-guard
      
      * Imeplement `scale_info::TypeInfo` manually to silence aggressive rust warning
      
      * Fix more clippy lints
      
      * Make clippy happy by relying on auto-deref were possible
      
      * Add tracking issue to the comments
      
      * pin ci image
      
      Co-authored-by: default avataralvicsam <[email protected]>
      9f409dc0
  5. Jul 25, 2022
  6. Jul 12, 2022
    • Nazar Mokrynskyi's avatar
      Network sync refactoring (part 4) (#11412) · 5896072b
      Nazar Mokrynskyi authored
      
      
      * Remove direct dependency of `sc-network` on `sc-network-light`
      
      * Move `WarpSyncProvider` trait and surrounding data structures into `sc-network-common`
      
      * Move `WarpSyncProvider` trait and surrounding data structures into `sc-network-common`
      
      * Create `sync` module in `sc-network-common`, create `ChainSync` trait there (not used yet), move a bunch of associated data structures from `sc-network-sync`
      
      * Switch from concrete implementation to `ChainSync` trait from `sc-network-common`
      
      * Introduce `OpaqueStateRequest`/`OpaqueStateResponse` to remove generics from `StateSync` trait
      
      * Introduce `OpaqueBlockRequest`/`OpaqueBlockResponse`, make `scheme` module of `sc-network-sync` private
      
      * Surface `sc-network-sync` into `sc-service` and make `sc-network` not depend on it anymore
      
      * Remove now unnecessary dependency from `sc-network`
      
      * Replace crate links with just text since dependencies are gone now
      
      * Remove `warp_sync` re-export from `sc-network-common`
      
      * Update copyright in network-related files
      
      * Address review comments about documentation
      
      * Apply review suggestion
      
      * Rename `extra_requests` module to `metrics`
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      5896072b
  7. Jun 20, 2022
  8. Jun 14, 2022
  9. May 21, 2022
  10. May 17, 2022
  11. May 11, 2022
  12. May 10, 2022
    • David's avatar
      jsonrpsee integration (#8783) · 29c0c6a4
      David authored
      
      
      * Add tokio
      
      * No need to map CallError to CallError
      
      * jsonrpsee proc macros (#9673)
      
      * port error types to `JsonRpseeError`
      
      * migrate chain module to proc macro api
      
      * make it compile with proc macros
      
      * update branch
      
      * update branch
      
      * update to jsonrpsee master
      
      * port system rpc
      
      * port state rpc
      
      * port childstate & offchain
      
      * frame system rpc
      
      * frame transaction payment
      
      * bring back CORS hack to work with polkadot UI
      
      * port babe rpc
      
      * port manual seal rpc
      
      * port frame mmr rpc
      
      * port frame contracts rpc
      
      * port finality grandpa rpc
      
      * port sync state rpc
      
      * resolve a few TODO + no jsonrpc deps
      
      * Update bin/node/rpc-client/src/main.rs
      
      * Update bin/node/rpc-client/src/main.rs
      
      * Update bin/node/rpc-client/src/main.rs
      
      * Update bin/node/rpc-client/src/main.rs
      
      * Port over system_ rpc tests
      
      * Make it compile
      
      * Use prost 0.8
      
      * Use prost 0.8
      
      * Make it compile
      
      * Ignore more failing tests
      
      * Comment out WIP tests
      
      * fix nit in frame system api
      
      * Update lockfile
      
      * No more juggling tokio versions
      
      * No more wait_for_stop ?
      
      * Remove browser-testing
      
      * Arguments must be arrays
      
      * Use same argument names
      
      * Resolve todo: no wait_for_stop for WS server
      Add todo: is parse_rpc_result used?
      Cleanup imports
      
      * fmt
      
      * log
      
      * One test passes
      
      * update jsonrpsee
      
      * update jsonrpsee
      
      * cleanup rpc-servers crate
      
      * jsonrpsee: add host and origin filtering (#9787)
      
      * add access control in the jsonrpsee servers
      
      * use master
      
      * fix nits
      
      * rpc runtime_version safe
      
      * fix nits
      
      * fix grumbles
      
      * remove unused files
      
      * resolve some todos
      
      * jsonrpsee more cleanup (#9803)
      
      * more cleanup
      
      * resolve TODOs
      
      * fix some unwraps
      
      * remove type hints
      
      * update jsonrpsee
      
      * downgrade zeroize
      
      * pin jsonrpsee rev
      
      * remove unwrap nit
      
      * Comment out more tests that aren't ported
      
      * Comment out more tests
      
      * Fix tests after merge
      
      * Subscription test
      
      * Invalid nonce test
      
      * Pending exts
      
      * WIP removeExtrinsic test
      
      * Test remove_extrinsic
      
      * Make state test: should_return_storage work
      
      * Uncomment/fix the other non-subscription related state tests
      
      * test: author_insertKey
      
      * test: author_rotateKeys
      
      * Get rest of state tests passing
      
      * asyncify a little more
      
      * Add todo to note #msg change
      
      * Crashing test for has_session_keys
      
      * Fix error conversion to avoid stack overflows
      Port author_hasSessionKeys test
      fmt
      
      * test author_hasKey
      
      * Add two missing tests
      Add a check on the return type
      Add todos for James's concerns
      
      * RPC tests for state, author and system (#9859)
      
      * Fix test runner
      
      * Impl Default for SubscriptionTaskExecutor
      
      * Keep the minimul amount of code needed to compile tests
      
      * Re-instate `RpcSession` (for now)
      
      * cleanup
      
      * Port over RPC tests
      
      * Add tokio
      
      * No need to map CallError to CallError
      
      * Port over system_ rpc tests
      
      * Make it compile
      
      * Use prost 0.8
      
      * Use prost 0.8
      
      * Make it compile
      
      * Ignore more failing tests
      
      * Comment out WIP tests
      
      * Update lockfile
      
      * No more juggling tokio versions
      
      * No more wait_for_stop ?
      
      * Remove browser-testing
      
      * Arguments must be arrays
      
      * Use same argument names
      
      * Resolve todo: no wait_for_stop for WS server
      Add todo: is parse_rpc_result used?
      Cleanup imports
      
      * fmt
      
      * log
      
      * One test passes
      
      * Comment out more tests that aren't ported
      
      * Comment out more tests
      
      * Fix tests after merge
      
      * Subscription test
      
      * Invalid nonce test
      
      * Pending exts
      
      * WIP removeExtrinsic test
      
      * Test remove_extrinsic
      
      * Make state test: should_return_storage work
      
      * Uncomment/fix the other non-subscription related state tests
      
      * test: author_insertKey
      
      * test: author_rotateKeys
      
      * Get rest of state tests passing
      
      * asyncify a little more
      
      * Add todo to note #msg change
      
      * Crashing test for has_session_keys
      
      * Fix error conversion to avoid stack overflows
      Port author_hasSessionKeys test
      fmt
      
      * test author_hasKey
      
      * Add two missing tests
      Add a check on the return type
      Add todos for James's concerns
      
      * offchain rpc tests
      
      * Address todos
      
      * fmt
      
      Co-authored-by: default avatarJames Wilson <[email protected]>
      
      * fix drop in state test
      
      * update jsonrpsee
      
      * fix ignored system test
      
      * fix chain tests
      
      * remove some boiler plate
      
      * Port BEEFY RPC (#9883)
      
      * Merge master
      
      * Port beefy RPC (ty @niklas!)
      
      * trivial changes left over from merge
      
      * Remove unused code
      
      * Update jsonrpsee
      
      * fix build
      
      * make tests compile again
      
      * beefy update jsonrpsee
      
      * fix: respect rpc methods policy
      
      * update cargo.lock
      
      * update jsonrpsee
      
      * update jsonrpsee
      
      * downgrade error logs
      
      * update jsonrpsee
      
      * Fix typo
      
      * remove unused file
      
      * Better name
      
      * Port Babe RPC tests
      
      * Put docs back
      
      * Resolve todo
      
      * Port tests for System RPCs
      
      * Resolve todo
      
      * fix build
      
      * Updated jsonrpsee to current master
      
      * fix: port finality grandpa rpc tests
      
      * Move .into() outside of the match
      
      * more review grumbles
      
      * jsonrpsee: add `rpc handlers` back (#10245)
      
      * add back RpcHandlers
      
      * cargo fmt
      
      * fix docs
      
      * fix grumble: remove needless alloc
      
      * resolve TODO
      
      * fmt
      
      * Fix typo
      
      * grumble: Use constants based on BASE_ERROR
      
      * grumble: DRY whitelisted listening addresses
      grumble: s/JSONRPC/JSON-RPC/
      
      * cleanup
      
      * grumbles: Making readers aware of the possibility of gaps
      
      * review grumbles
      
      * grumbles
      
      * remove notes from niklasad1
      
      * Update `jsonrpsee`
      
      * fix: jsonrpsee features
      
      * jsonrpsee: fallback to random port in case the specified port failed (#10304)
      
      * jsonrpsee: fallback to random port
      
      * better comment
      
      * Update client/rpc-servers/src/lib.rs
      
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      
      * Update client/rpc-servers/src/lib.rs
      
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      
      * address grumbles
      
      * cargo fmt
      
      * addrs already slice
      
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      
      * Update jsonrpsee to 092081a0a2b8904c6ebd2cd99e16c7bc13ffc3ae
      
      * lockfile
      
      * update jsonrpsee
      
      * fix warning
      
      * Don't fetch jsonrpsee from crates
      
      * make tests compile again
      
      * fix rpc tests
      
      * remove unused deps
      
      * update tokio
      
      * fix rpc tests again
      
      * fix: test runner
      
      `HttpServerBuilder::builder` fails unless it's called within tokio runtime
      
      * cargo fmt
      
      * grumbles: fix subscription aliases
      
      * make clippy happy
      
      * update remaining subscriptions alias
      
      * cleanup
      
      * cleanup
      
      * fix chain subscription: less boiler plate (#10285)
      
      * fix chain subscription: less boiler plate
      
      * fix bad merge
      
      * cargo fmt
      
      * Switch to jsonrpsee 0.5
      
      * fix build
      
      * add missing features
      
      * fix nit: remove needless Box::pin
      
      * Integrate jsonrpsee metrics (#10395)
      
      * draft metrics impl
      
      * Use latest api
      
      * Add missing file
      
      * Http server metrics
      
      * cleanup
      
      * bump jsonrpsee
      
      * Remove `ServerMetrics` and use a single middleware for both connection counting (aka sessions) and call metrics.
      
      * fix build
      
      * remove needless Arc::clone
      
      * Update to jsonrpsee 0.6
      
      * lolz
      
      * fix metrics
      
      * Revert "lolz"
      
      This reverts commit eed6c6a56e78d8e307b4950f4c52a1c3a2322ba1.
      
      * fix: in-memory rpc support subscriptions
      
      * commit Cargo.lock
      
      * Update tests to 0.7
      
      * fix TODOs
      
      * ws server: generate subscriptionIDs as Strings
      
      Some libraries seems to expect the subscription IDs to be Strings, let's not break
      this in this PR.
      
      * Increase timeout
      
      * Port over tests
      
      * cleanup
      
      * Using error codes from the spec
      
      * fix clippy
      
      * cargo fmt
      
      * update jsonrpsee
      
      * fix nits
      
      * fix: rpc_query
      
      * enable custom subid gen through spawn_tasks
      
      * remove unsed deps
      
      * unify tokio deps
      
      * Revert "enable custom subid gen through spawn_tasks"
      
      This reverts commit 5c5eb70328fe39d154fdb55c56e637b4548cf470.
      
      * fix bad merge of `test-utils`
      
      * fix more nits
      
      * downgrade wasm-instrument to 0.1.0
      
      * [jsonrpsee]: enable custom RPC subscription ID generatation (#10731)
      
      * enable custom subid gen through spawn_tasks
      
      * fix nits
      
      * Update client/service/src/builder.rs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * add Poc; needs jsonrpsee pr
      
      * update jsonrpsee
      
      * add re-exports
      
      * add docs
      
      Co-authored-by: default avatarDavid <[email protected]>
      
      * cargo fmt
      
      * fmt
      
      * port RPC-API dev
      
      * Remove unused file
      
      * fix nit: remove async trait
      
      * fix doc links
      
      * fix merge nit: remove jsonrpc deps
      
      * kill namespace on rpc apis
      
      * companion for jsonrpsee v0.10 (#11158)
      
      * companion for jsonrpsee v0.10
      
      * update versions v0.10.0
      
      * add some fixes
      
      * spelling
      
      * fix spaces
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      
      * send error before subs are closed
      
      * fix unsubscribe method names: chain
      
      * fix tests
      
      * jsonrpc server: print binded local address
      
      * grumbles: kill SubscriptionTaskExecutor
      
      * Update client/sync-state-rpc/src/lib.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update client/rpc/src/chain/chain_full.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update client/rpc/src/chain/chain_full.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * sync-state-rpc: kill anyhow
      
      * no more anyhow
      
      * remove todo
      
      * jsonrpsee:  fix bad params in subscriptions. (#11251)
      
      * update jsonrpsee
      
      * fix error responses
      
      * revert error codes
      
      * dont do weird stuff in drop impl
      
      * rpc servers: remove needless clone
      
      * Remove silly constants
      
      * chore: update jsonrpsee v0.12
      
      * commit Cargo.lock
      
      * deps: downgrade git2
      
      * feat: CLI flag max subscriptions per connection
      
      * metrics: use old logging format
      
      * fix: read WS address from substrate output (#11379)
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      Co-authored-by: default avatarJames Wilson <[email protected]>
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      Co-authored-by: default avatarMaciej Hirsz <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      29c0c6a4
  13. May 04, 2022
    • Shawn Tabrizi's avatar
      Basic TOML Lint (#11348) · 7d520234
      Shawn Tabrizi authored
      * basic lint
      
      * lint ordering
      7d520234
    • Web3 Smith's avatar
      Update MMR Runtime API with functionality to generate MMR proof for a series... · fd45676d
      Web3 Smith authored
      
      Update MMR Runtime API with functionality to generate MMR proof for a series of leaf indices  (#10635)
      
      * updated mmr rpc api with functions for batch generation of proof
      
      * update code comments
      
      * fix build errors
      
      * added tests to mmr-rpc
      
      * add tests to pallet-mmr
      
      * update comments
      
      * minor comment fix
      
      * remove unused variables
      
      * fix rust doc errors
      
      * refactor mmr runtime api
      
      * fix tests
      
      * minor fix
      
      * minor fix
      
      * fix node-runtime
      
      * revert to initial api
      
      * impl from proof fot batchproof
      
      * minor fix
      
      * minor fix
      
      * use explicit functions to convert btw batch proof and single proof
      
      * minor fix
      
      * add new variant to mmr error
      
      * fmt
      
      * update conversion to single leaf proof
      
      * fix style nit
      
      Co-authored-by: default avatarAdrian Catangiu <[email protected]>
      fd45676d
    • Adrian Catangiu's avatar
      BEEFY voter bugfixes (#11335) · 1e2424ec
      Adrian Catangiu authored
      
      
      * beefy: gadget should always use current validator set
      
      The gadget/client-voter was using previous' session validator set
      to sign the 1st block in the new session (to have chained validator
      set handoffs).
      
      This is not necessary because:
      1. BEEFY piggy-backs on GRANDPA and only works on canonical chain,
         so it need not concern itself with the validity of the block header
         (which contains digest with the new session's validator set). It
         can safely assume header is valid and simply use new validator set.
      2. The BEEFY payload itself already contains a merkle root for the
         next validator set keys. So at the BEEFY-payload layer we already
         have a validated/trusted hand-off of authority.
      
      Signed-off-by: default avataracatangiu <[email protected]>
      
      * beefy: buffer votes for not yet finalized blocks
      
      Signed-off-by: default avataracatangiu <[email protected]>
      
      * beefy: add buffered votes regression test
      1e2424ec
  14. Apr 30, 2022
  15. Apr 28, 2022
  16. Apr 21, 2022
  17. Apr 13, 2022
    • Adrian Catangiu's avatar
      Expose MMR root through runtime API - use it in BEEFY client (#11183) · 80ce5c57
      Adrian Catangiu authored
      * beefy-gadget: allow custom runtime api provider
      
      * beefy-gadget: use mock runtime api in tests
      
      * pallet-mmr: expose mmr root from state through runtime API
      
      * beefy-gadget: get mmr root from runtime state
      
      * pallet-beefy-mmr: remove MmrRoot from header digests
      
      * frame/mmr: move mmr primitives out of frame
      
      * frame/mmr: completely move primitives out of frame
      
      * address review comments
      
      * beefy-mmr: bring back mmr root from header digest
      
      * clippy fixes for rustc 1.60
      
      * address review comments
      80ce5c57
  18. Apr 03, 2022
  19. Mar 25, 2022
    • Adrian Catangiu's avatar
      Implement Lean BEEFY (#10882) · 498e8c18
      Adrian Catangiu authored
      
      
      Simplified BEEFY worker logic based on the invariant that GRANDPA
      will always finalize 1st block of each new session, meaning BEEFY
      worker is guaranteed to receive finality notification for the
      BEEFY mandatory blocks.
      
      Under these conditions the current design is as follows:
      - session changes are detected based on BEEFY Digest present in
        BEEFY mandatory blocks,
      - on each new session new `Rounds` of voting is created, with old
        rounds being dropped (for gossip rounds, last 3 are still alive
        so votes are still being gossiped),
      - after processing finality for a block, the worker votes if
        a new voting target has become available as a result of said
        block finality processing,
      - incoming votes as well as self-created votes are processed
        and signed commitments are created for completed BEEFY voting
        rounds,
      - the worker votes if a new voting target becomes available
        once a round successfully completes.
      
      On worker startup, the current validator set is retrieved from
      the BEEFY pallet. If it is the genesis validator set, worker
      starts voting right away considering Block #1 as session start.
      
      Otherwise (not genesis), the worker will vote starting with
      mandatory block of the next session.
      
      Later on when we add the BEEFY initial-sync (catch-up) logic,
      the worker will sync all past mandatory blocks Signed Commitments
      and will be able to start voting right away.
      
      BEEFY mandatory block is the block with header containing the BEEFY
      `AuthoritiesChange` Digest, this block is guaranteed to be finalized
      by GRANDPA.
      
      This session-boundary block is signed by the ending-session's
      validator set. Next blocks will be signed by the new session's
      validator set. This behavior is consistent with what GRANDPA does
      as well.
      
      Also drop the limit N on active gossip rounds. In an adversarial
      network, a bad actor could create and gossip N invalid votes with
      round numbers larger than the current correct round number. This
      would lead to votes for correct rounds to no longer be gossiped.
      
      Add unit-tests for all components, including full voter consensus
      tests.
      
      Signed-off-by: default avatarAdrian Catangiu <[email protected]>
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      Co-authored-by: David Salami <Wizdave97>
      498e8c18
  20. Mar 18, 2022
  21. Mar 04, 2022
  22. Mar 01, 2022
  23. Feb 24, 2022
    • wigy's avatar
      Upgrading parity-scale-codec to v3 (#10825) · 535325d2
      wigy authored
      * Upgraded dependencies
      
      * Adapting code to scale v3
      
      * Empty commit to trigger CI
      
      * Triggering CI
      
      * Fixing UI test
      
      * Remove superfluous dev-dep added by #9228
      
      * Cryout for CI
      535325d2
  24. Feb 09, 2022
    • Koute's avatar
      Add a new host function for reporting fatal errors; make WASM backtraces... · 9a31b2c3
      Koute authored
      Add a new host function for reporting fatal errors; make WASM backtraces readable when printing out errors (#10741)
      
      * Add a new host function for reporting fatal errors
      
      * Fix one of the wasmtime executor tests
      
      * Have `#[runtime_interface(wasm_only)]` actually mean WASM-only, and not no_std-only
      
      * Print out errors through `Display` instead of `Debug`
      
      * Switch one more trait to require `Error` for its error instead of only `Debug`
      
      * Align to review comments
      9a31b2c3
  25. Feb 08, 2022
  26. Feb 01, 2022
    • Alexander Theißen's avatar
      Release `pallet-contracts-primitives` (#10772) · 3938c1cb
      Alexander Theißen authored
      * Bump sp-storage
      
      * Bump sp-rpc
      
      * Bump sp-io
      
      * Bump sp-trie
      
      * Bump sp-state-machine
      
      * Bump sp-externalities
      
      * Bump sp-keystore
      
      * Bump sp-application-crypto
      
      * Bump pallet-contracts-primitives
      
      * Bump sp-core
      
      * Bump sp-runtime-interface
      
      * Bump sp-wasm-interface
      
      * Bump sp-runtime
      
      * Bump sp-storage
      
      * Update lock file
      
      * Revert "Bump sp-storage"
      
      This reverts commit f86c6db1ae334e28207b658fd90714ade0332e3b.
      
      * Update lock file
      3938c1cb
  27. Jan 31, 2022
  28. Jan 25, 2022
  29. Jan 20, 2022
  30. Jan 06, 2022
    • Adrian Catangiu's avatar
      Add BEEFY `latestFinalized` RPC and deduplicate code between BEEFY and GRANDPA (#10568) · fe8d2bc7
      Adrian Catangiu authored
      
      
      * beefy: add dummy latest_finalized() RPC
      
      * beefy: rpc latest_best_beefy() using shared mem
      
      * beefy: rpc populate latest_best_beefy()
      
      * beefy: rpc handle readiness
      
      * beefy: best block over channel - wip
      
      Not working because channel can't be simply opened and receiver passed
      to `rpc_extensions_builder` because `rpc_extensions_builder` has to be
      `Fn` and not `FnOnce`... and and Receiver side of mpsc can't be cloned
      
      yay!..
      
      * beefy: make notification channels payload-agnostic
      
      * beefy: use notification mechanism instead of custom channel
      
      * beefy: add tracing key to notif channels
      
      * sc-utils: add notification channel - wip
      
      * beefy: use sc-utils generic notification channel
      
      * grandpa: use sc-utils generic notification channel
      
      * fix grumbles
      
      * beefy-rpc: get best block header instead of number
      
      * beefy-rpc: rename to `beefy_getFinalizedHead`
      
      * fix nitpicks
      
      * client-rpc-notifications: move generic Error from struct to fn
      
      * beefy: use header from notification instead of getting from database
      
      * beefy-rpc: get best block hash instead of header
      
      * beefy-rpc: fix and improve latestHead test
      
      * beefy-rpc: bubble up errors from rpc-handler instantiation
      
      * update lockfile
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * fix errors and warnings
      
      * fix nit
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      fe8d2bc7
  31. Jan 05, 2022
  32. Jan 04, 2022
  33. Jan 03, 2022
  34. Dec 26, 2021