Skip to content
  1. Jan 24, 2020
  2. Jan 23, 2020
  3. Jan 22, 2020
    • Bastian Köcher's avatar
      Move "wasm" allocator into its own crate (#4716) · 22887d5e
      Bastian Köcher authored and Sergey Pepyakin's avatar Sergey Pepyakin committed
      This moves the wasm-allocator (`FreeingBumpHeapAllocator`) into its own
      crate `sp-allocator`. This new crate can theoretically provide multiple
      different allocators. Besides moving the allocator, this pr also makes
      `FreeingBumpHeapAllocator` compile on `no_std`.
      22887d5e
    • Bastian Köcher's avatar
      Support `u128`/`i128` in runtime interface (#4703) · ef578cd5
      Bastian Köcher authored
      * Support `u128`/`i128` in runtime interface
      
      This implements support for `u128`/`i128` as parameters/return value in
      runtime interfaces. As we can not pass them as identity, as for the
      other primitives types, we pass them as an pointer to an `[u8; 16]` array.
      
      * Remove some unsafe code usage
      ef578cd5
  4. Jan 21, 2020
    • Bastian Köcher's avatar
      Make debug builds more usable (#4683) · cb9c1818
      Bastian Köcher authored
      * Make debug builds more usable
      
      This pr makes debug builds more usable in terms of `cargo run -- --dev`.
      
      1. `--dev` activates `--execution native`, iff `--execution` is not
      given or no sub `--execution-*` is given.
      2. It was probably a mistake to compile WASM in debug for a debug build.
      So, we now build the WASM binary always as `release` (if not requested
      differently by the user). So, we trade compilation time for a better
      debug experience.
      
      * Make sure we only overwrite default values
      
      * Make it work
      
      * Apply suggestion
      cb9c1818
  5. Jan 20, 2020
    • Bastian Köcher's avatar
      Only support ECDSA compressed public keys (#4667) · 5cd952bb
      Bastian Köcher authored
      Some fixes after: https://github.com/paritytech/substrate/pull/4502
      
      This removes the unwanted `expect`s from `MultiSigner`. Instead we
      convert from full to compressed in `TryFrom` and can return an error on
      invalid input.
      5cd952bb
  6. Jan 19, 2020
  7. Jan 18, 2020
  8. Jan 17, 2020
  9. Jan 16, 2020
    • Svyatoslav Nikolsky's avatar
      Allow updating configuration of changes tries (#3201) · 8e986433
      Svyatoslav Nikolsky authored
      
      
      * DigestItem::ChangesTrieSignal
      
      * introduce changes_trie::State
      
      * introduce config activation block
      
      * ChangesTrieSignal::as_new_configuration
      
      * moved well_known_cache_keys to client
      
      * extracted DbChangesTrieStorage to separate file
      
      * change meaning of none in blockchain cache
      
      * changes trie config (FULL) cache draft
      
      * eliminating const ChangesTrieConfiguration
      
      * delay pruning
      
      * continue elimination
      
      * do not prune CT config from cache
      
      * removed redundant code
      
      * fix some TODOs
      
      * introduce ConfigurationRange
      
      * use Configuration range in build
      
      * build skewed digest
      
      * remove debug print
      
      * extracted surface iterator
      
      * key_changes works with skewed digests
      
      * fix client build
      
      * add test for NeverPrune
      
      * fix TODO
      
      * fixed some TODOs
      
      * more tests
      
      * fixing TODOs
      
      * fixed compilation
      
      * update runtime version
      
      * git rid of large tuple
      
      * too long lines
      
      * config_activation_block -> zero
      
      * obsolete TODO
      
      * removed unjustified expect
      
      * update TODOs with issue number
      
      * new CT pruning algorithm
      
      fixed cache + multiple blocks finalization
      
      track CT configuraiton on light clients
      
      support CT configuration change revert
      
      revert CT config test
      
      new CT pruning algorithm
      
      fixed cache + multiple blocks finalization
      
      track CT configuraiton on light clients
      
      support CT configuration change revert
      
      revert CT config test
      
      * BlockIdOrHeader isn't really required
      
      * removed debug leftovers + some docs
      
      * more docs
      
      * more post-merge fixes
      
      * more post-merge fixes
      
      * revertes some unnecessary changes
      
      * reverted unnecessary changes
      
      * fix compilation + unnecessary changes
      
      * (restart CI)
      
      * fix cache update when finalizing multiple blocks
      
      * fixed tests
      
      * collect_extrinsics -> set_collect_extrinsics
      
      * restore lost test
      
      * do not calculate block number twice
      
      * Update primitives/blockchain/src/error.rs
      
      Co-Authored-By: default avatarcheme <[email protected]>
      
      * map_err -> unwrap_or
      
      * document get_at Result
      
      * delete abandoned file
      
      * added weight for set_changes_trie_config
      
      * prefer_configs -> fail_if_disabled
      
      * Update client/api/src/backend.rs
      
      Co-Authored-By: default avatarcheme <[email protected]>
      
      * Update client/db/src/changes_tries_storage.rs
      
      Co-Authored-By: default avatarcheme <[email protected]>
      
      * CommitOperation+merge -> CommitOperations
      
      * fixed test compilation
      
      * merged two different CTRange structs
      
      * lost file
      
      * uggrade db from v0 to v1 (init CT cache + add column)
      
      * fix after merge
      
      Co-authored-by: default avatarcheme <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      8e986433
    • Bastian Köcher's avatar
      Implement runtime version checks in `set_code` (#4548) · 879e28ae
      Bastian Köcher authored
      * Implement runtime version checks in `set_code`
      
      Check that the new runtime code given to `set_code` fullfills some
      requirements:
      
      - `spec_name` matches
      - `spec_version` does not decreases
      - `impl_version` does not decreases
      - Either `spec_version` and `impl_version` increase
      
      * Make tests almost work
      
      * Some fixes after master merge
      
      * Fix tests
      
      * Add missed file
      
      * Make depedency check happy?
      
      * Remove leftover `sc-executor`
      
      * AHHHHH
      
      * Reset debug stuff
      
      * Remove some 'static
      
      * More 'static
      
      * Some docs
      
      * Update `Cargo.lock`
      879e28ae
  10. Jan 15, 2020
  11. Jan 13, 2020
  12. Jan 11, 2020
  13. Jan 10, 2020
    • Igor Matuszewski's avatar
      Remove now unused `lang_items` feature in IO primitives (#4596) · 8dc5675b
      Igor Matuszewski authored
      We don't use any explicit `#[lang = ...]` items anymore (`panic_fmt`
      is replaced with now-stable `#[panic_implementation]`, OOM is handled
      via `alloc_error_handler` directly etc.), so I thought it'd be good to
      remove it for clarity to limit used nightly features.
      8dc5675b
    • Bastian Köcher's avatar
      Remove requirement on `Hash = H256`, make `Proposer` return `StorageChanges` and `Proof` (#3860) · 4ed0ad6f
      Bastian Köcher authored
      
      
      * Extend `Proposer` to optionally generate a proof of the proposal
      
      * Something
      
      * Refactor sr-api to not depend on client anymore
      
      * Fix benches
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Apply suggestions from code review
      
      * Introduce new `into_storage_changes` function
      
      * Switch to runtime api for `execute_block` and don't require `H256`
      anywhere in the code
      
      * Put the `StorageChanges` into the `Proposal`
      
      * Move the runtime api error to its own trait
      
      * Adds `StorageTransactionCache` to the runtime api
      
      This requires that we add `type NodeBlock = ` to the
      `impl_runtime_apis!` macro to work around some bugs in rustc :(
      
      * Remove `type NodeBlock` and switch to a "better" hack
      
      * Start using the transaction cache from the runtime api
      
      * Make it compile
      
      * Move `InMemory` to its own file
      
      * Make all tests work again
      
      * Return block, storage_changes and proof from Blockbuilder::bake()
      
      * Make sure that we use/set `storage_changes` when possible
      
      * Add test
      
      * Fix deadlock
      
      * Remove accidentally added folders
      
      * Introduce `RecordProof` as argument type to be more explicit
      
      * Update client/src/client.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Update primitives/state-machine/src/ext.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Integrates review feedback
      
      * Remove `unsafe` usage
      
      * Update client/block-builder/src/lib.rs
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * Update client/src/call_executor.rs
      
      * Bump versions
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      Co-authored-by: default avatarBenjamin Kampmann <[email protected]>
      4ed0ad6f
    • Tomasz Drwięga's avatar
      Add documentation to SubmitSignedTransaction and actually make it work (#4200) · 89743498
      Tomasz Drwięga authored
      
      
      * Add documentation to signed transactions and actually make them work.
      
      * Fix naming and bounds.
      
      * Forgotten import.
      
      * Remove warning.
      
      * Make accounts optional, fix logic.
      
      * Split the method to avoid confusing type error message.
      
      * Move executor tests to integration.
      
      * Add submit transactions tests.
      
      * Make `submit_transaction` tests compile
      
      * Remove a file that was accidently committed
      
      * Add can_sign helper function.
      
      * Fix compilation.
      
      * Add a key to keystore.
      
      * Fix the tests.
      
      * Remove env_logger.
      
      * Fix sending multiple transactions.
      
      * Remove commented code.
      
      * Bring back criterion.
      
      * Remove stray debug log.
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Make sure to initialize block correctly.
      
      * Initialize block for offchain workers.
      
      * Add test for transaction validity.
      
      * Fix tests.
      
      * Review suggestions.
      
      * Remove redundant comment.
      
      * Make sure to use correct block number of authoring.
      
      * Change the runtime API.
      
      * Support both versions.
      
      * Bump spec version, fix RPC test.
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      89743498
  14. Jan 09, 2020
  15. Jan 07, 2020
  16. Jan 06, 2020
  17. Jan 05, 2020
  18. Jan 04, 2020
  19. Jan 03, 2020
  20. Jan 02, 2020
  21. Dec 31, 2019
  22. Dec 30, 2019
  23. Dec 25, 2019
  24. Dec 24, 2019
    • Sergey Pepyakin's avatar
      Remove unnecessary unsafe. (#4494) · 0e9db868
      Sergey Pepyakin authored
      0e9db868
    • Sergey Pepyakin's avatar
      Extract execution engines definitions into their own crates (#4489) · 963b7be0
      Sergey Pepyakin authored
      * Clean imports in wasmi_execution
      
      * Replace `interpret_runtime_api_result` with `pointer_and_len_from_u64`.
      
      * Extract sc-executor-common crate
      
      * Extract `sc-executor-wasmi` into its own crate
      
      * Extract `sc-executor-wasmtime` into its own crate.
      
      * Add missing headers.
      
      * Clean and docs
      
      * Docs for sc-executor-wasmi
      
      * Expand a comment about sandboxing
      
      * Fix assert_matches
      
      * Rename (un)pack_ptr_and_len and move them into util module
      
      * Remove wasmtime errors in sc-executor-common
      963b7be0
  25. Dec 22, 2019