Skip to content
  1. Jul 02, 2020
  2. Jul 01, 2020
    • cheme's avatar
      Restrict `Protected` to some heap types. (#6471) · 8ef1ac0e
      cheme authored
      * Restrict `Protected` to some heap types.
      
      * Comment abut Protected usage.
      
      * Remove Protected from crypto, use secrecy crate for existing uses.
      
      * use a parse function
      
      * fix error convert
      
      * Rename and move secretY string function.
      
      * std result
      8ef1ac0e
    • David's avatar
      Fix mocking multiple http calls in the same function call (#6510) · d855a5e9
      David authored
      
      
      * Fix mocking multiple http calls in the same function call
      
      Fixes an issue where a function call would perform more than one http request and wait for each to complete before proceeding. The `RequestId` comes from the length of the `requests` collection in the `OffchainState` and if a request is completed before the next one starts it will be removed and the "next expected" will be off by one. This PR tries to fix that by using a request counter that tracks how many requests have been performed so that we can `remove()` items from the `expected_requests` at the right index.
      
      I suspect that this is a sub-optimal soluton and perhaps requests and their mocks should live side by side in the same collection, e.g. in a tuple of `(PendingRequest, Option<ExpectedRequest>)`.
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * Panic on overflow
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Use a Deque and push/pop expected requests
      
      * fix test
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      d855a5e9
  3. Jun 30, 2020
    • André Silva's avatar
      grandpa: minor cleanups in communication module (#6371) · 996a86ca
      André Silva authored
      * grandpa: replace Result<(), ()> with Option<()>
      
      * grandpa: replace &Option<T> with Option<&T>
      
      * grandpa: cleanup local id and keystore usages
      
      * grandpa: return bool on check_message_signature
      
      * grandpa: fix erroneous log message on startup
      
      * grandpa: fix test
      996a86ca
    • Bastian Köcher's avatar
      Support synching of blocks that are not `new_best` (#6508) · e8f90186
      Bastian Köcher authored
      * Start
      
      * Remove debug println
      
      * Add tests
      e8f90186
    • Ashley's avatar
      Remove the service, replacing it with a struct of individual chain components (#6352) · ec2ab797
      Ashley authored
      * WIP
      
      * Making progress
      
      * Almost ready
      
      * Get service tests compiling
      
      * Fix node screenshot
      
      * Line widths
      
      * Fix node cli tests
      
      * Fix node cli warning
      
      * ChainComponents -> ServiceComponents, fix tests
      
      * make spawn_handle public
      
      * Remove spawnnamed impl for taskmanager
      
      * Move the keep alive stuff to the task manager
      
      * Move the telemetry, base path, rpc keep_alive to the service builder
      
      * Make the task manager keep alive an internal detail
      
      * Rewrite the browser start_client future
      
      * Remove run_node etc
      
      * Revert my personal changes to browser-demo/build.sh
      
      * use |config|
      
      * Add a runtime_version function to SubstrateCli
      
      * Reexport role and runtime version from sc cli
      
      * Update Cargo.lock
      
      * runtime_version -> native_runtime_version
      
      * Pass chain spec to native_runtime_version for polkadot
      
      * Fix line widths
      
      * Traitify ServiceComponents Client
      ec2ab797
    • Bastian Köcher's avatar
      Fix tx-pool returning the same transaction multiple times (#6535) · 4eaea348
      Bastian Köcher authored
      
      
      * Fix tx-pool returning the same transaction multiple times
      
      This fixes a bug that lead to returning the same transaction multiple
      times when iterating the `ready` iterator. Internally the transaction
      was kept in the `best` list and could be duplicated in that list be
      re-inserting it again. This `best` list is using a `TransactionRef`
      which internally uses a `insertion_id`. This `insertion_id` could lead
      to the same transaction being inserted multiple times into the `best`
      list.
      
      * Update client/transaction-pool/src/testing/pool.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      4eaea348
    • Toralf Wittner's avatar
      Update to libp2p v0.20.1 (#6465) · fd55c45a
      Toralf Wittner authored
      
      
      * Update to libp2p-0.20.0
      
      * Update to `libp2p-0.20.1`.
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      fd55c45a
  4. Jun 26, 2020
  5. Jun 25, 2020
  6. Jun 24, 2020
  7. Jun 23, 2020
    • Cecile Tonglet's avatar
      Ensure the listen addresses are consistent with the transport (#6436) · d59281fa
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: 0c42ceda
      
      
      No parent branch.
      
      * Ensure the listen addresses are consistent with the transport
      
      * Update client/network/src/error.rs
      
      * Update client/network/src/service.rs
      
      * Better implementation
      
      * Fix bad previous impl
      
      * add boot_nodes
      
      * reserved nodes
      
      * test boot nodes
      
      * reserved nodes tests
      
      * add public_addresses and make specific error type
      
      * Update client/network/src/error.rs
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      d59281fa
    • Max Inden's avatar
      client/network/service: Add primary dimension to connection metrics (#6472) · 4c03656a
      Max Inden authored
      * client/network/service: Add primary dimension to connection metrics
      
      Two nodes can be interconnected via one or more connections. The first
      of those connections is called the primary connection.
      
      This commit adds another dimension to the
      `sub_libp2p_connections_{closed,opened}_total` metrics to differentiate
      primary and non-primary connections being opened / closed.
      
      By intuition more than one connection between two nodes is rare.
      Tracking the fact whether a connection is primary or not will help prove
      or disprove this intuition.
      
      * .maintain/monitoring: Ensure to sum over all connections_closed variants
      
      * client/network/service: Rename is_primary to is_first
      
      * client/network/service: Split by metric name with two additional metrics
      
      * Revert ".maintain/monitoring: Ensure to sum over all connections_closed variants"
      
      This reverts commit 2d2f93e4.
      
      * client/network/service: Remove labels from distinct metrics
      4c03656a
    • Ashley's avatar
      Fix the browser node and ensure it doesn't colour the informant output (#6457) · ad7b5ef7
      Ashley authored
      * Fix browser informant
      
      * Fix documentation
      
      * Add an informant_output_format function to the cli config
      
      * Wrap informant output format in an option
      
      * Revert batch verifier
      
      * Remove wasm-timer from primitives io cargo lock
      
      * Drop informant_output_format function
      
      * derive debug for output format
      ad7b5ef7
    • Cecile Tonglet's avatar
      impl Debug for sc_service::Configuration (#6400) · 6221146c
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: d735e4d0
      
      
      No parent branch.
      
      * Make sc_service::Configuration derive Debug
      
      * Replace task_executor fn's input by proper TaskExecutor type (cleaner)
      
      * impl From<Fn> for TaskExecutor
      
      * Update client/cli/src/runner.rs
      
      * Add some doc, examples and tests
      
      * Replace Deref by fn spawn as suggested
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      6221146c
    • pscott's avatar
      Optimize offchain worker api by re-using http-client (#6454) · fed834c8
      pscott authored
      * Fix typo in offchain's docs
      
      * Use Self keyword in AsyncApi::new()
      
      * Move httpclient to be part of OffchainWorkers to optimize block import
      
      * Fix compilation errors for tests
      
      * Add wrapper struct for HyperClient
      
      * Use lazy_static share SharedClient amongst OffchainWorkers. Remove the need to raise the fd limit
      
      * Revert "Use lazy_static share SharedClient amongst OffchainWorkers. Remove the need to raise the fd limit"
      
      This reverts commit 7af97498.
      
      * Add lazy_static for tests
      fed834c8
    • Roman Borschel's avatar
      Avoid panic on dropping a `sc_network::service::out_events::Receiver`. (#6458) · 19826b97
      Roman Borschel authored
      * Avoid panic on dropping a `Receiver`.
      
      * CI
      19826b97
  8. Jun 22, 2020
  9. Jun 21, 2020
  10. Jun 19, 2020
    • Bastian Köcher's avatar
      Fix Babe secondary plain slots claiming (#6451) · 80323210
      Bastian Köcher authored
      We need to check that the public key of an authority exists in our
      keystore before we can successfully claim a plain secondary slot.
      80323210
    • Arkadiy Paronyan's avatar
      Validate encoding of extrinsics passed to runtime (#6442) · d0ab405f
      Arkadiy Paronyan authored
      * Validate encoding of extrinsics passed to runtime
      
      * Bump codec version explicitly
      d0ab405f
    • Nikolay Volf's avatar
      add network propagated metrics (#6438) · c8c16d18
      Nikolay Volf authored
      c8c16d18
    • Max Inden's avatar
      client/authority-discovery: Compare PeerIds and not Multihashes (#6414) · 4c67aeec
      Max Inden authored
      In order to tell whether an address is the local nodes address the
      authority discovery module previously compared the Multihash within the
      `p2p` Multiaddr protocol.
      
      rust-libp2p recently switched to a new PeerId representation (see [1]).
      Multihashes of the same PeerId in the new and the old format don't
      equal.
      
      Instead of comparing the Multihashes, this patch ensures the module
      compares the PeerIds
      
      [1] https://github.com/libp2p/rust-libp2p/issues/555
      4c67aeec
    • Bastian Köcher's avatar
      Update sync chain info on own block import (#6424) · 26aec420
      Bastian Köcher authored
      Before we only updated the chain info of sync when we have imported
      something using the import queue. However, if you import your own
      blocks, this is not done using the import queue and so sync is not
      updated. If we don't do this, it can lead to sync switching to "major
      sync" mode because sync is not informed about new blocks. This
      especially happens on Cumulus, where a collator is selected multiple
      times to include its block into the relay chain and thus, sync switches
      to major sync mode while the node is still building blocks.
      26aec420
    • Cecile Tonglet's avatar
      More descriptive error message when invalid slot duration is used (#6430) · a2c493d4
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: d735e4d0
      No parent branch.
      
      * Errors if slot_duration is zero
      
      * Errors if slot_duration is zero
      
      * Revert "Errors if slot_duration is zero"
      
      This reverts commit a9e9820e
      
      .
      
      * Update client/consensus/slots/src/lib.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      a2c493d4
    • Bastian Köcher's avatar
      Track last blocks in informant display (#6429) · 97583766
      Bastian Köcher authored
      This implements tracking of the last seen blocks in informant display
      to prevent printing the import message twice. In Cumulus we first import
      blocks as part of the block building with `new_best == false` and set
      the best block after we know which one was included by the relay chain.
      This leads to printing the import messages two times. This pr solves the
      problem by track the latest seen blocks to not print the message twice.
      97583766
  11. Jun 18, 2020
    • Pierre Krieger's avatar
      7a4bd762
    • Rakan Alhneiti's avatar
      Babe VRF Signing in keystore (#6225) · 9b08492e
      Rakan Alhneiti authored
      * Introduce trait
      
      * Implement VRFSigner in keystore
      
      * Use vrf_sign from keystore
      
      * Convert output to VRFInOut
      
      * Simplify conversion
      
      * vrf_sign secondary slot using keystore
      
      * Fix RPC call to claim_slot
      
      * Use Public instead of Pair
      
      * Check primary threshold in signer
      
      * Fix interface to return error
      
      * Move vrf_sign to BareCryptoStore
      
      * Fix authorship_works test
      
      * Fix BABE logic leaks
      
      * Acquire a read lock once
      
      * Also fix RPC acquiring the read lock once
      
      * Implement a generic way to construct VRF Transcript
      
      * Use make_transcript_data to call sr25519_vrf_sign
      
      * Make sure VRFTranscriptData is serializable
      
      * Cleanup
      
      * Move VRF to it's own module
      
      * Implement & test VRF signing in testing module
      
      * Remove leftover
      
      * Fix feature requirements
      
      * Revert removing vec macro
      
      * Drop keystore pointer to prevent deadlock
      
      * Nitpicks
      
      * Add test to make sure make_transcript works
      
      * Fix mismatch in VRF transcript
      
      * Add a test to verify transcripts match in babe
      
      * Return VRFOutput and VRFProof from keystore
      9b08492e
    • Pierre Krieger's avatar
      44978b9b
    • Arkadiy Paronyan's avatar
      Revert "Block packet size limit" · 0bb3001a
      Arkadiy Paronyan authored
      This reverts commit 9a5892e1.
      0bb3001a
    • Arkadiy Paronyan's avatar
      Block packet size limit · 9a5892e1
      Arkadiy Paronyan authored
      9a5892e1
    • mattrutherford's avatar
      Runtime interface to add support for tracing from wasm (#6381) · 81ba3e28
      mattrutherford authored
      
      
      * Add span recording to tracing implementation
      
      * Add tracing proxy
      
      * switch to rustc_hash::FxHashMap
      
      * Replace lazy_static and hashmap with thread_local and vec.
      
      * fix marking valid span as invalid while removing invalid spans
      
      * refactor, add wasm_tracing module in `support`
      
      * update registered spans
      
      * tidy up
      
      * typos
      
      * refactor
      
      * update flag name to signal lost trace - `is_valid_trace`
      
      * update flag name to signal lost trace - `is_valid_trace`
      
      * update docs
      
      * update docs
      
      * Use tracing Field recording to store the actual `name` and `target`
      from wasm traces.
      
      * fix debug log in subscriber + small refactor
      
      * add tests
      
      * handle misuse in case trying to exit span not held
      
      * Implement filter for wasm traces, simplify field recording for primitive types
      
      * remove superfluous warning
      
      * update docs
      
      * Update primitives/tracing/src/proxy.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * update docs, apply suggestions
      
      * move Proxy from thread_local to `Extension`, rename macro
      
      * fix test
      
      * unify native & wasm span macro calls
      
      * implement wasm tracing control facility in primitives and frame
      
      * add cli flag `--wasm-tracing`
      
      * fix
      
      * switch to `Option<u4>` (possible performance degradation), switch
      to static mut bool
      
      * performance improvement using u64 vs Option<u64>
      
      * performance improvement moving concat to client
      
      * update docs
      
      * Update client/cli/src/params/import_params.rs
      
      Co-authored-by: default avatarCecile Tonglet <[email protected]>
      
      * performance improvement
      
      * Revert "performance improvement"
      
      This reverts commit cff0aa26
      
      .
      
      * small refactor
      
      * formatting
      
      * bump impl_version
      
      * Update client/cli/src/config.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * update docs
      
      * small fixes, remove pub static
      
      * nit
      
      * add integration tests and refactor Subscriber
      
      * tests
      
      * revert formatting
      
      * try fix test that works locally but not in CI
      
      * try fix test that works locally but not in CI
      
      * debug test that works locally but not in CI
      
      * fix test that works locally but not in CI
      
      * remove pub visibility from bool in runtime
      
      * make TracingSpanGuard #[cfg(not(feature = "std"))], update docs, comments
      
      * make TracingProxy drop implementation conditional on !empty state
      
      * add docs for TraceHandler
      
      * remove blank line
      
      * update expect message
      
      * update tests
      
      * rename cli option to tracing_enable_wasm
      
      * rename cli option to tracing_enable_wasm
      
      * fix
      
      * ensure wasm-tracing features are wasm only
      
      * bump impl_version
      
      * bump impl_version
      
      * add `"pallet-scheduler/std"` to `[features]` `std` in node/runtime
      
      * refactor service to remove sp_tracing dependency
      
      * refactor: line width, trait bounds
      
      * improve LogTraceHandler output
      
      * fix test
      
      * improve tracing log output
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * swap wasm indication from trace name to a separate value
      
      * Update client/tracing/src/lib.rs
      
      * add docs
      
      * remove runtime features
      
      remove wasm_tracing option from CLI
      
      remove wasm_tracing flag from ProfilingSubscriber
      
      Co-authored-by: default avatarMatt Rutherford <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarCecile Tonglet <[email protected]>
      81ba3e28
    • Pierre Krieger's avatar
      a2653e87
  12. Jun 16, 2020