1. Mar 01, 2022
  2. Feb 28, 2022
    • Kian Paimani's avatar
    • Roman Gafiyatullin's avatar
      #10576: generic utility to unsubscribe from broadcast upon drop of the rx-side. (#10708) · 40091488
      Roman Gafiyatullin authored
      * #10576: refactor `sc-utils::notification` and `sc-client-api::notifications`, so that they use common subscribe/unsubscribe routines
      
      * Add some docs. Reorganise `sc-utils::notification`
      
      * `sc-clent-api::notifications` and `sc-utils::notification` — ensure the SubscriptionGuard is dropped before the Rx-channel
      
      * `sc-utils::pubsub::SubscriptionGuard` make it a bit more ergonomic.
      
      Let the `Rx` to be put inside of the `SubscriptionGuard`, so that the latter shall guarantee the order:
      - first unsubscribe;
      - then drop the `Rx`.
      
      * Being less zealous with splitting the modules into little pieces
      
      * rework pubsub: the concrete usage should only define a good registry type
      
      * sc-client-api::notifications: make it comply with the reworked pubsub
      
      * cargo fmt
      
      * make sc-client-api tests work
      
      * Address the review notes
      
      * cargo fmt
      
      * Describe the behaviour of pubsub registry
      
      * Doc-comments for module `sc-utils::pubsub`
      
      * Fix: it used to send notifications regardless of the filter setup during subscription
      
      * `sc-client-api::StorageNotifications` the API does not have to require mut-self-reference.
      
      As a result `sc-service::Client` does not have to wrap its `storage_notifications` into a Mutex.
      
      * cargo fmt
      
      * Several changes addressing the notes by @bckhr.
      
      - Remove the `impl Default for StorageNotifications<Block>`;
      - no need for groupping the `remove_from` and `listen_from` into a separate `helpers` module;
      - remove unnecessary import `use registry::SubscribeOp`.
      
      * Add a doc-comment to the `sc-client::notifications::SubscribeOp`
      
      * As per @bkchr note on the unproven assertion: behave gracefully upon receiving a duplicate subscription-ID.
      
      * sc-utils::pubsub: log when a registry yields an ID that does point to an existing sink
      
      * `sc-utils::notifications`: payload materialized lazily
      
      * Update Cargo.lock (after adding `log` as a dependency to the `sc-utils`)
      
      * `sc-client-api::notifications`: introduce a struct (instead of a type def) for the notification message
      
      * Get rid of `sc-utils::pubsub::Channel` trait (instead just use the `sc-utils::mpsc`)
      
      * The SubsID is no more generic: the fact it is a `Copy` is known — no need to pass it by ref
      
      * sc-utils::pubsub internals do not have to be generic over the channel type
      
      * Rename Hub::dispatch into Hub::send
      
      * That method was unnecessary (`SubscriberSink::render_notification`)
      
      * cargo fmt
      
      * No need for a separate UnsubscribeGuard type
      
      * Ditch the type-def of SubsID in the sc-utils::pubsub, instead — just use the crate::id_sequence::SeqID
      
      * Return the <Registry as Dispatch>::Ret when sending an item
      
      * Make the `Hub<M, R>::lock_registry(...)` method more ergonomic
      
      * cargo doc links
      
      * cargo doc links
      
      * Use a simpler name for the type
      
      * cargo doc links
      
      * Derive `Default` rather than implement it
      
      * Derive `Default` rather than implement it
      
      * Remove an unnecessary usage of type_name
      
      * Define a more cautious order between sinks.remove->registry.unsubscribe and registry.subscribe->sinks.insert
      
      * Hub: lock_registry_for_tests->map_registry_for_tests — a safer choice for a public API
      
      * Replace Mutex over the shared Registry with a ReentrableMutex+RefCell
      
      * sc-utils::pubsub: add tests for a panicking registry
      
      * Add the missing copyright headers
      
      * Arc<Vec<_>> -> Arc<[_]>
      40091488
    • Ross Bulat's avatar
      doc corrections (#10936) · 89b5dafc
      Ross Bulat authored
      89b5dafc
    • omadoyeabraham's avatar
      Integrate try-runtime into substrate node template (#10909) · 05877df7
      omadoyeabraham authored
      * [10892-integrate-try-runtime-into-node-template] - Integrated try-runtime into node template
      
      * [10892-integrate-try-runtime-into-node-template] Added match arms for try-runtime in command.rs
      
      * [10892-integrate-try-runtime-into-node-template] Added match arms for try-runtime in command.rs
      
      * Added feature flag for try-runtime in node-template/node and enabled try-runtime for node-template/runtime
      
      * Added missing type annotations for try-runtime SubCommand in node-template
      
      * Added missing type annotations for try-runtime SubCommand in node-template
      
      * Implemented frame_try_runtime::TryRuntime<Block> for the node-template Runtime
      05877df7
  3. Feb 26, 2022
    • Davide Galassi's avatar
      Replace libsecp256k1 with secp256k1 (#10798) · 4aab84cc
      Davide Galassi authored
      * Replace libsecp256k1 with secp256k1
      
      * Wipe ecdsa secret key from memory on drop
      
      * Some comments for a known issue
      
      * Safer core crypto primitives `from_slice` constructor
      
      Previous version panics if slice lenght is not the expected one.
      
      * Unit test fix
      
      * Enable use of global secp256k1 context
      
      * Better comments for ecdsa `Pair` drop
      
      * Replace `libsecp256k1` with `seco256k1` in `beefy-mmr`
      
      Used to convert ecdsa public key to ETH address
      
      * Replace `libsecp256k1` with `secp256k1` in FRAME `contracts`benchmarks
      
      * Temporary rollback of `beefy-mmr` to libsecp256k1
      
      Check for detected build issues
      
      * Cargo fmt
      
      * Rollback of FRAME `contracts` benchmarks to `libsecp256k1`
      
      * Rollback for unrelated changes
      
      * Typo fix
      
      * Add comments for deprecated `ecdsa_verify` and `secp256k1_ecdsa_recover`
      4aab84cc
    • Kian Paimani's avatar
      Minor improvements to `bounded_vec` and `defensive`. (#10873) · b77d3f91
      Kian Paimani authored
      
      
      * Fix a few things in bounded_vec
      
      * add test for try_extend
      
      * Update frame/support/src/storage/bounded_vec.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * some review comments
      
      * use swap
      
      * remove clone
      
      * use pop instead of truncate
      
      * remove warn
      
      * review comments
      
      * Update frame/support/src/storage/bounded_vec.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * fix rustdoc
      
      * fix links
      
      * undo link
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      b77d3f91
  4. Feb 25, 2022
  5. Feb 24, 2022
  6. Feb 23, 2022
  7. Feb 22, 2022
  8. Feb 21, 2022
  9. Feb 20, 2022
  10. Feb 19, 2022
  11. Feb 18, 2022
  12. Feb 17, 2022
  13. Feb 16, 2022