* RUSTSEC-2021-0076 bump libsecp256k1 libsecp256k1 allows overflowing signatures https://rustsec.org/advisories/RUSTSEC-2021-0076 Changes were made to conform to libsecp256k1 version differences. Closes #9356 * parse_standard_slice() -> parse_overflowing_slice() * Added v2 host function for ecdsa_verify * Add feature tag over helpers * Added ecdsa_verify v2 to test runner * PR feedback - Spaces -> tabs - renamed two helper functions * Fixed imports after rebasing * Bump rest of libsecp256k1 (and libp2p) libp2p also uses libsecp256k1 so it is required to be bumped too, along with all the version difference changes. * Add version2 for ecdsa pubkey recovery * libp2p rebase master fixes * Fix test panic when non Behaviour event is returned * Update bin/node/browser-testing/Cargo.toml * Update primitives/core/src/ecdsa.rs * Update primitives/core/src/ecdsa.rs * Update Cargo.lock Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
sc-telemetry
Substrate's client telemetry is a part of substrate that allows ingesting telemetry data with for example Polkadot telemetry.
It works using Tokio's tracing library. The telemetry
information uses tracing's logging to report the telemetry data which is then retrieved by a
tracing Layer. This layer will then send the data through an asynchronous channel to a
background task called [TelemetryWorker] which will send the information to the configured
remote telemetry servers.
If multiple substrate nodes are running in the same process, it uses a tracing::Span to
identify which substrate node is reporting the telemetry. Every task spawned using sc-service's
TaskManager automatically inherit this span.
Substrate's nodes initialize/register with the [TelemetryWorker] using a [TelemetryHandle].
This handle can be cloned and passed around. It uses an asynchronous channel to communicate with
the running [TelemetryWorker] dedicated to registration. Registering can happen at any point
in time during the process execution.
License: GPL-3.0-or-later WITH Classpath-exception-2.0