Skip to content
  1. Jun 29, 2020
  2. Jun 25, 2020
  3. Jun 24, 2020
    • Shawn Tabrizi's avatar
      Add DB Read/Write Tracking to Benchmarking Pipeline (#6386) · 7f5dd736
      Shawn Tabrizi authored
      * initial mockup
      
      * add and wipe
      
      * track writes
      
      * start to add to pipeline
      
      * return all reads/writes
      
      * Log reads and writes from bench db
      
      * causes panic
      
      * Allow multiple commits
      
      * commit before ending benchmark
      
      * doesn't work???
      
      * fix
      
      * Update lib.rs
      
      * switch to struct for `BenchmarkResults`
      
      * add to output
      
      * fix test
      
      * line width
      
      * @Kianenigma
      
       review
      
      * Add Whitelist to DB Tracking in Benchmarks Pipeline (#6405)
      
      * hardcoded whitelist
      
      * Add whitelist to pipeline
      
      * Remove whitelist pipeline from CLI, add to runtime
      
      * clean-up unused db initialized whitelist
      
      * Add regression analysis to DB Tracking (#6475)
      
      * Add selector
      
      * add tests
      
      * debug formatter for easy formula
      
      * Update client/db/src/bench.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      Co-authored-by: default avatararkpar <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      7f5dd736
    • Alexander Theißen's avatar
      seal: Refactor ext_gas_price (#6478) · 971e52fb
      Alexander Theißen authored
      * seal: Refactor ext_gas_price
      
      * Remove seals dependency on pallet_transaction_payment
      * Add weight as an argument to ext_gas_price
      
      * Fixed documentation nits from review
      
      * Do not use unchecked math even in test code
      971e52fb
  4. Jun 23, 2020
    • Sergey Pepyakin's avatar
      pallet-contracts: migrate to nested storage transaction mechanism (#6382) · 9a9b248b
      Sergey Pepyakin authored
      
      
      * Add a simple direct storage access module
      
      * WIP
      
      * Completely migrate to the transactional system.
      
      * Format
      
      * Fix wasm compilation
      
      * Get rid of account_db module
      
      * Make deposit event eager
      
      * Make restore_to eager
      
      * It almost compiles.
      
      * Make it compile.
      
      * Make the tests compile
      
      * Get rid of account_db
      
      * Drop the result.
      
      * Backport the book keeping.
      
      * Fix all remaining tests.
      
      * Make it compile for std
      
      * Remove a stale TODO marker
      
      * Remove another stale TODO
      
      * Add proof for `terminate`
      
      * Remove a stale comment.
      
      * Make restoration diverging.
      
      * Remove redudnant trait: `ComputeDispatchFee`
      
      * Update frame/contracts/src/exec.rs
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      
      * Introduce proper errors into the storage module.
      
      * Adds comments for contract storage module.
      
      * Inline `ExecutionContext::terminate`.
      
      * Restore_to should not let sacrifice itself if the contract present on the stack.
      
      * Inline `transfer` function
      
      * Update doc - add "if succeeded"
      
      * Adapt to TransactionOutcome changes
      
      * Updates the docs for `ext_restore_to`
      
      * Add a proper assert.
      
      * Update frame/contracts/src/wasm/runtime.rs
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      9a9b248b
    • 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
    • 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
    • Alexander Theißen's avatar
      Implement nested storage transactions (#6269) · 5a102f7c
      Alexander Theißen authored
      
      
      * Add transactional storage functionality to OverlayChanges
      
      A collection already has a natural None state. No need to
      wrap it with an option.
      
      * Add storage transactions runtime interface
      
      * Add frame support for transactions
      
      * Fix committed typo
      
      * Rename 'changes' variable to 'overlay'
      
      * Fix renaming change
      
      * Fixed strange line break
      
      * Rename clear to clear_where
      
      * Add comment regarding delete value on mutation
      
      * Add comment which changes are covered by a transaction
      
      * Do force the arg to with_transaction return a Result
      
      * Use rust doc comments on every documentable place
      
      * Fix wording of insert_diry doc
      
      * Improve doc on start_transaction
      
      * Rename value to overlayed in close_transaction
      
      * Inline negation
      
      * Improve wording of close_transaction comments
      
      * Get rid of an expect by using get_or_insert_with
      
      * Remove trailing whitespace
      
      * Rename should to expected in tests
      
      * Rolling back a transaction must mark the overlay as dirty
      
      * Protect client initiated storage tx from being droped by runtime
      
      * Review nits
      
      * Return Err when entering or exiting runtime fails
      
      * Documentation fixup
      
      * Remove close type
      
      * Move enter/exit runtime to excute_aux in the state-machine
      
      * Rename Discard -> Rollback
      
      * Move child changeset creation to constructor
      
      * Move child spawning into the closure
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Fixup for code suggestion
      
      * Unify re-exports
      
      * Rename overlay_changes to mod.rs and move into subdir
      
      * Change proof wording
      
      * Adapt a new test from master to storage-tx
      
      * Suggestions from the latest round of review
      
      * Fix warning message
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      5a102f7c
  5. Jun 20, 2020
  6. Jun 19, 2020
  7. Jun 18, 2020
    • Toralf Wittner's avatar
      Update `libp2p-ping`. (#6412) · caf9fbe0
      Toralf Wittner authored
      Bugfix release, see [CHANGELOG].
      
      [CHANGELOG]: https://github.com/libp2p/rust-libp2p/blob/master/protocols/ping/CHANGELOG.md
      caf9fbe0
    • 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
    • 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
    • Wei Tang's avatar
      Pallet: Atomic Swap (#6349) · bd72cb62
      Wei Tang authored
      
      
      * Init atomic swap pallet
      
      * Implement module swap operations
      
      * Add successful swap test
      
      * Bump node spec_version
      
      * Fix storage name
      
      * Add ProofLimit parameter to prevent proof size being too large
      
      * Add missing events
      
      * Basic weight support
      
      * Add basic docs
      
      * Mark swap on claim
      
      This handles the additional case if `repatriate_reserved` fails.
      
      * Add additional expire handler
      
      * Update frame/atomic-swap/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Add docs on ProofLimit
      
      * Fix test
      
      * Return Ok(()) even when the transfer fails
      
      Because we need to mark the swap as claimed no matter what.
      
      * Remove retry logic
      
      It's overkill. Swap is about something being executed, not necessarily successful.
      Although there should be logic (reserve and unreserve) to make it so that both parties *believes*
      that the execution is successful.
      
      * succeed -> succeeded
      
      * Add docs on duration -- revealer should use duration shorter than counterparty
      
      * Missing trait type
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      bd72cb62
    • Arkadiy Paronyan's avatar
      Allow empty values in the storage (#6364) · b02101e9
      Arkadiy Paronyan authored
      * Allow empty values in the storage
      
      * Bump trie-bench
      
      * Bump trie-bench
      b02101e9
  8. Jun 17, 2020
  9. Jun 16, 2020
  10. Jun 10, 2020
  11. Jun 09, 2020
  12. Jun 08, 2020
    • Benjamin Kampmann's avatar
      Intent to release rc3 (#6290) · e287915e
      Benjamin Kampmann authored
      e287915e
    • Shawn Tabrizi's avatar
      Weights for Indices Pallet (#6282) · f0eef06c
      Shawn Tabrizi authored
      * fix multisig benchmarking
      
      * add indices benchmarks
      
      * fix compile
      
      * Weights for indices
      f0eef06c
    • Hernando Castano's avatar
      Use Subscription Manager from `jsonrpc-pubsub`: The Sequel (#6254) · 3cb05a1e
      Hernando Castano authored
      
      
      * Bump jsonrpc pubsub, core, http, and ws
      
      Right now these are the packages which _need_ to be updated
      so I can just the latest `jsonrpc-pubsub` code. Once a release
      it cut upstream the rest of the dependencies should be updated
      as well.
      
      * Use jsonrpc-pubsub's SubscriptionManager
      
      This places sc-rpc-api::Subscriptions
      
      * Bump jsonrpc-core outside of sc-rpc-*
      
      * Update client/rpc tests
      
      Right now one of the `author` tests is failing, I
      need to think a bit about how best to fix it.
      
      * Remove Subscriptions manager
      
      There's no need for this implementation since we're
      using the one from `jsonrpc-pubsub` now
      
      * Fix author RPC test
      
      This test used to check for a numerial subscription ID,
      whereas now it uses a string based ID which is the default
      provided by `jsonrpc-pubsub`'s subscription manager.
      
      * Remove unused NumericIdProvider
      
      * Add missing bracket
      
      Removed one too many with that last one, lol
      
      * Bump `jsonrpc` to v14.2
      
      There's an exception though. `jsonrpc-derive` cannot be bumped
      past v14.0.5 just yet since it has a dependency on `quote` pinned
      to v1.0.1. This means that at the moment it won't build on Substrate
      since it's using v1.0.3.
      
      * Track `jsonrpc-derive` master branch
      
      * Bump `quote` version to v1.0.6
      
      * Bump `jsonrpc-derive` to v14.2.1
      
      This includes support for `quote` v1.0.6
      
      * Use exact version for jsonrpc crates
      
      Doing this to make sure any updates in jsonrpc don't
      accidently trickle down to Polkadot.
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      3cb05a1e
    • Gavin Wood's avatar
      Introduce stacked filtering (#6273) · 39a3372a
      Gavin Wood authored
      
      
      * Introduce stacked filtering.
      
      * Benchmarks
      
      * Remove unneeded crates
      
      * Fix proxy type's permissiveness checks.
      
      * Repot multisig to make utility stateless.
      
      * Repot filter stack impl into macro
      
      * Fix wasm build
      
      * Tests
      
      * Final test.
      
      * Tests for the macro
      
      * Fix test
      
      * Line width
      
      * Fix
      
      * Update frame/multisig/src/benchmarking.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update primitives/std/with_std.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Grumble
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update frame/support/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update frame/multisig/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/multisig/src/tests.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Grumble
      
      * Migration
      
      * Grumble
      
      * Comments
      
      * Migration
      
      * Fix
      
      * Fix
      
      * Line width
      
      * Allow unused
      
      * Update frame/multisig/src/lib.rs
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Fix up grumble.
      
      * Remove Utility constraint in NonTransfer
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      39a3372a
    • Bastian Köcher's avatar
      Fix transaction pruning in tx-pool (#6276) · 9fe0da54
      Bastian Köcher authored
      The `tree_route` generated by the import notification is only from the
      old best block to the new best parent. This means, it does not contain
      the new best block in `enacted()`. We need to prune the transactions of
      the new best block "manually" to fix this bug.
      
      Besides that, this pr also changed the `id` parameter of the `NewBlock`
      chain event to `hash`. The hash of a block is unique in contrast to the
      block number. (Block id can either be number or hash)
      9fe0da54
  13. Jun 05, 2020
  14. Jun 04, 2020
    • André Silva's avatar
      bf9e58cd
    • Hernando Castano's avatar
      Use Subscription Manager from `jsonrpc-pubsub` (#6208) · f028a509
      Hernando Castano authored
      * Bump jsonrpc pubsub, core, http, and ws
      
      Right now these are the packages which _need_ to be updated
      so I can just the latest `jsonrpc-pubsub` code. Once a release
      it cut upstream the rest of the dependencies should be updated
      as well.
      
      * Use jsonrpc-pubsub's SubscriptionManager
      
      This places sc-rpc-api::Subscriptions
      
      * Bump jsonrpc-core outside of sc-rpc-*
      
      * Update client/rpc tests
      
      Right now one of the `author` tests is failing, I
      need to think a bit about how best to fix it.
      
      * Remove Subscriptions manager
      
      There's no need for this implementation since we're
      using the one from `jsonrpc-pubsub` now
      
      * Fix author RPC test
      
      This test used to check for a numerial subscription ID,
      whereas now it uses a string based ID which is the default
      provided by `jsonrpc-pubsub`'s subscription manager.
      
      * Remove unused NumericIdProvider
      
      * Add missing bracket
      
      Removed one too many with that last one, lol
      
      * Bump `jsonrpc` to v14.2
      
      There's an exception though. `jsonrpc-derive` cannot be bumped
      past v14.0.5 just yet since it has a dependency on `quote` pinned
      to v1.0.1. This means that at the moment it won't build on Substrate
      since it's using v1.0.3.
      
      * Track `jsonrpc-derive` master branch
      
      * Bump `quote` version to v1.0.6
      
      * Bump `jsonrpc-derive` to v14.2.1
      
      This includes support for `quote` v1.0.6
      f028a509
  15. Jun 03, 2020
  16. Jun 02, 2020
    • Gavin Wood's avatar
      Generalised proxies (#6156) · 342caad3
      Gavin Wood authored
      
      
      * Initial work
      
      * It should work
      
      * Fix node
      
      * Fix tests
      
      * Initial test
      
      * Tests
      
      * Expunge proxy functionality from democracy and elections
      
      * Allow different proxy types
      
      * Repotted
      
      * Build
      
      * Build
      
      * Making a start on weights
      
      * Undo breaking change
      
      * Line widths.
      
      * Fix
      
      * fix tests
      
      * finish benchmarks?
      
      * Storage name!
      
      * Utility -> Proxy
      
      * proxy weight
      
      * add proxy weight
      
      * remove weights
      
      * Update transfer constraint
      
      * Again, fix constraints
      
      * Fix negation
      
      * Update frame/proxy/Cargo.toml
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Remove unneeded event.
      
      * Grumbles
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      342caad3
  17. May 28, 2020
    • Bastian Köcher's avatar
      Wasm-builder `runtime-wasm` feature (#6177) · 5b4ed426
      Bastian Köcher authored
      * Enable the `runtime-wasm` for wasm builds
      
      This enables the `runtime-wasm` feature for wasm builds. The feature is
      not mandatory and will only be activated if it exists in the
      `Cargo.toml`.
      
      * Fix compilation
      
      * Update docs
      
      * Uprgade version
      
      * Apply suggestions from code review
      5b4ed426
  18. May 26, 2020
    • Bastian Köcher's avatar
      Fixes `wasm-builder` rerun if changed logic (#6144) · dee1bfbd
      Bastian Köcher authored
      There was a bug which related in required files not being tracked of
      being modified. This pr fixes this bug by making sure we ignore version
      requirements for path dependencies and git dependencies. This also
      ensures that we only track `.rs` or `.toml` files. Another improvement
      is that we only include paths which don't contain a `Cargo.toml` if this
      `Cargo.toml` does not belongs to the package being processed. This
      prevents that sub-crates are added to the tracked files, while not being
      part of the dependencies.
      dee1bfbd
    • Benjamin Kampmann's avatar
      Releasing rc2 (#6136) · 45b9f0a9
      Benjamin Kampmann authored
      2 tags
      45b9f0a9
  19. May 25, 2020