Skip to content
  1. Jan 16, 2020
    • 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
    • Tomasz Drwięga's avatar
      Rename basic-authority to basic-authorship (#4640) · 47c36e6e
      Tomasz Drwięga authored
      * Rename basic-authority to basic-authorship
      
      * Revert weird tab.
      
      * Fix rename.
      47c36e6e
  2. Jan 15, 2020
  3. Jan 14, 2020
    • Bastian Köcher's avatar
      Add `pallet-society` and `pallet-recovery` to substrate node (#4622) · 8cb71bd9
      Bastian Köcher authored and Shawn Tabrizi's avatar Shawn Tabrizi committed
      * Add `pallet-society` and `pallet-recovery` to substrate node
      
      * Add `OnReapAccount`
      
      * Fixes and replaces nicks with identity
      8cb71bd9
    • Ashley's avatar
      Update the service to std futures (#4447) · 410ce114
      Ashley authored
      * Switch service to futures03
      
      * Fix tests
      
      * Fix service test and cli
      
      * Re-add Executor trait to SpawnTaskHandle
      
      * Fix node-service
      
      * Update babe
      
      * Fix browser node
      
      * Update aura
      
      * Revert back to tokio-executor to fix runtime panic
      
      * Add todo item
      
      * Fix service tests again
      
      * Timeout test futures
      
      * Fix tests
      
      * nits
      
      * Fix service test
      
      * Remove zstd patch
      
      * Re-add futures01 to aura and babe tests as a dev-dep
      
      * Change failing test to tee
      
      * Fix node
      
      * Upgrade tokio
      
      * fix society
      
      * Start switching grandpa to stable futures
      
      * Revert "Start switching grandpa to stable futures"
      
      This reverts commit 9c197634
      
      .
      
      * Fix utils
      
      * Revert substrate service test
      
      * Revert gitlab
      
      Co-authored-by: default avatarthiolliere <[email protected]>
      410ce114
  4. Jan 13, 2020
    • Shawn Tabrizi's avatar
      A Social Account Recovery Pallet (#4531) · 3ed7c8b3
      Shawn Tabrizi authored
      * Initial sketch of social recovery pallet
      
      * Fix compilation issues
      
      * Use a single total delay, rename stuff
      
      * Check possible overflow
      
      * Copyright bump
      
      * Add mock for tests
      
      * Add basic end to end test
      
      * Add `create_recovery` tests
      
      * Add malicious recovery lifecycle test
      
      * Make clear we check for sorted and unique friends
      
      * Work on some tests, clean up imports
      
      * Change `if let Some(_)` to `ok_or()`
      
      * More tests
      
      * Finish tests, except issue with `on_free_balance_zero`
      
      * Fix `on_free_balance_zero`
      
      * Pallet docs
      
      * Add function/weight docs
      
      * Fix merge master
      
      * OnReapAccount for System too
      
      * Update weight docs
      
      * Allow passthrough to support fee-less extrinsics
      3ed7c8b3
  5. Jan 10, 2020
    • Gavin Wood's avatar
      Society pallet (#4170) · cdceee24
      Gavin Wood authored
      
      
      * Introduce efficient Hash-based RNG streamer
      
      * Initial draft of the society module
      
      * Introduce a test
      
      * Dual-pot logic
      
      * Vouching
      
      * Use chacha
      
      * Half way through moving to cliff payout.
      
      * Fixes
      
      * Add some tests
      
      * Remove printlns
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Fix `slash_payout`, add test
      
      * Test for multi-slash_payout
      
      * Add docs to `put_bid` function and `bidding_works` test
      
      * Add strikes to test
      
      * Add comments to `rotate_period`
      
      * Implement `suspend_member`
      
      * Off chain iteration of suspended members using linked_map
      
      * Half of suspended candidate
      
      * Finish suspend_candidate, need tests
      
      * Resolve mistakes and feedback, add `suspended_candidate_rejected` test
      
      * Remove logic which increases payout time after un-suspension
      
      * Fix error in `slash_suspended_candidates`, add member check to `vote`
      
      * Fix vouch rewards, dont create zero payouts, add tests for vouch
      
      * Test unvouch
      
      * Unbid tests
      
      * Add lifecycle events, fix `add_member` to update `MembershipChanged`
      
      * Head cannot be removed from society
      
      * Use `add_member` in `found` to ensure `MembershipChanged` is triggered
      
      * Use `Judgement` enum for suspended candidate judgement
      
      * Make society instantiable
      
      * Implement challenges
      
      * Remove extra text in test
      
      * Remove `BlockNumber` return from `slash_payout`
      
      * Add bad vote causes slash test
      
      * Update frame/society/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Add consts to module metadata
      
      * Check `suspended_member` cant bid
      
      * Increase strength of payout check, **must** be a member.
      
      * Start pallet documentation
      
      * Finish docs
      
      * Update library names, use decl_error
      
      * Prevent double bids, add test
      
      * Use `map` for vouching member, and introduce banned vouchers
      
      * Remove leftover docs
      
      * Vouching handles removed member lifecycles w/ tests
      
      * `take` the votes when tallying, add comprehensive checks before vouch or bid
      
      * Check votes are cleaned up
      
      * Check vote is for a valid candidate, add vote event
      
      * Defender vote event
      
      * Fix `judge_suspended_candidate`, add weight docs
      
      * First pass fixes (blank lines, formatting, no operational)
      
      * Bump copyright year
      
      * Make `add_member` infallible
      
      * More feedback updates
      
      * Add storage access complexity
      
      * Fix logic for AutoUnbid
      
      * Complete weight documentation
      
      * Optimize logic which used to result in double storage read.
      
      * Use Bid struct rather than tuple
      
      * Introduce `MaxMembers` configuration constant
      
      * Add comment about fringe scenario where `MaxMembers` could go over, NBD
      
      * Change MaxMembership to configurable storage item with ability for root to update
      
      * Make membership challenges skew toward failure.
      
      If no one at all votes, or the vote is tied, the user will be suspended from society. This means, that the user simply needs to vote for themselves to stay in society assuming no one else participates.
      
      * Refactor `is_candidate`as to avoid possible double storage reads in the future.
      
      * Blank lines
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarthiolliere <[email protected]>
      cdceee24
    • 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
  6. Jan 09, 2020
    • Pierre Krieger's avatar
      Update networking code to libp2p 0.14 (#4383) · 1ec08e88
      Pierre Krieger authored
      * Entirely update substrate-telemetry to futures 0.3
      
      * Add a Closed error
      
      * Update to libp2p 0.14
      
      * More work
      
      * More work
      
      * More work
      
      * More work
      
      * Fix warnings
      
      * Remove unwrap()
      
      * Work on tests fixing
      
      * Fix network tests
      
      * Fix external network tests
      
      * Update libp2p and restore Yamux in discovery test
      
      * Ignore DNS if initializatio nfails
      
      * Restore variables ordering
      
      * Forgot browser-utils
      
      * Fix downfall after merge
      
      * Fix tests
      1ec08e88
  7. Jan 07, 2020
  8. Jan 03, 2020
    • Nikolay Volf's avatar
      Update kvdb-* and trie (#4483) · 5842f6eb
      Nikolay Volf authored
      5842f6eb
    • Max Inden's avatar
      client/authority-discovery: Limit number of connections to authorities (#4487) · bdf6043f
      Max Inden authored
      * client/authority-discovery: Limit number of connections to authorities
      
      Instead of connecting to all sentry nodes of all authorities, with this
      patch the authority discovery module does the following:
      
      - Choose one sentry node per authority at random.
      
      - Choose MAX_NUM_AUTHORITY_CONN out of the above at random.
      
      The module uses randomness to prevent hot spots, e.g. all nodes trying
      to connect to a single node. If the authority discovery module would
      choose the nodes to connect to at random on each new address that it
      learns of, the node would go through a lot of connection churn.  Instead
      it creates a random seed at start up and uses this seed for its RNG on
      each update cycle.
      
      * client/authority-discovery: Extract address cache into own module
      
      * client/authority-discovery/src/addr_cache: Add basic unit tests
      
      * client/authority-discovery: Replace unwrap with expect on [u8] cmp
      
      * .maintain/sentry-node/docker-compose.yml: Prefix endpoint flags
      
      * client/authority-discovery/src/addr_cache: Use sort_unstable and cmp
      
      * client/authority-discovery: Use BTreeMap in addr_cache for sorted iter
      
      To reduce connection churn it is preferrable to have `get_subset` of the
      `addr_cache` to return the same result on repeated calls. `get_subset`
      iterates a map. To make the process of iteration deterministic, use a
      `BTreeMap` instead of a `HashMap`.
      bdf6043f
  9. Jan 02, 2020
  10. Dec 30, 2019
  11. Dec 28, 2019
    • Bastian Köcher's avatar
      Fix cli for structopt 0.3.7 and pin to that version (#4509) · 43ee8a35
      Bastian Köcher authored
      * Fix cli for structopt 0.3.7 and pin to that version
      
      This is just some hotfix to make everything compile. In the future it
      will require another pr to not depend on internals of StructOpt, but
      that will probably also require some additions to StructOpt itself. To
      not break the code again with another StructOpt, this also pins the
      StructOpt version.
      
      * Fix benches
      
      * Fix for fix
      43ee8a35
  12. Dec 27, 2019
  13. Dec 24, 2019
    • 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
  14. Dec 21, 2019
  15. Dec 20, 2019
  16. Dec 19, 2019
  17. Dec 17, 2019
  18. Dec 16, 2019
    • Tomasz Drwięga's avatar
      [big refactor] Remove crate aliasing. (#4395) · 40a16efe
      Tomasz Drwięga authored
      * Rename: Phase 1.
      
      * Unify codec.
      
      * Fixing: Phase 2
      
      * Fixing: Phase 3.
      
      * Fixing: Phase 4.
      
      * Fixing: Phase 5.
      
      * Fixing: Phase 6.
      
      * Fixing: Phase 7.
      
      * Fixing: Phase 8. Tests
      
      * Fixing: Phase 9. Tests!!!
      
      * Fixing: Phase 10. Moar tests!
      
      * Finally done!
      
      * More fixes.
      
      * Rename primitives:: to sp_core::
      
      * Apply renames in finality-grandpa.
      
      * Fix benches.
      
      * Fix benches 2.
      
      * Revert node-template.
      
      * Fix frame-system in our modules.
      40a16efe
  19. Dec 13, 2019
    • Pierre Krieger's avatar
      Extract consensus_gossip.rs and put it in its own crate (#4284) · 723148f1
      Pierre Krieger authored
      
      
      * Extract gossiping system from network
      
      * Finish porting GRANDPA tests
      
      * Try put correct engine ID
      
      * Fix messages encoding
      
      * Fix communication tests
      
      * Use a threads pool to spawn stuff
      
      * Fix compilation everywhere
      
      * Fix bad merge conflict
      
      * Remove dependency on async-std
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * More suggestions
      
      * Remove network startup GP future
      
      * Update to futures_timer
      
      * adjust wait_when_behind test
      
      * Pass correct Roles after handshake
      
      * Revert "adjust wait_when_behind test"
      
      This reverts commit 9e310244.
      
      * Crate root documentation
      
      * Remove MessageRecipient
      
      * Address concerns
      
      * Fix more concerns
      
      * Forgot Cargo.lock
      723148f1
  20. Dec 11, 2019
    • Benjamin Kampmann's avatar
      Fix folder names in client and test (#4360) · b5414b65
      Benjamin Kampmann authored
      * client/rpc/api -> client/rpc-api
      
      * client/util/wasm-builder-runner -> utils/wasm-builder-runner
      
      * client/grafana-data-source -> utils/grafana-data-source
      
      * test/utils -> test-utils
      
      * fix moved path
      
      * Update Cargo.lock
      
      * Update Cargo.lock
      b5414b65
    • Benjamin Kampmann's avatar
      Clean up crate names and locations (#4361) · 9ce7e1f7
      Benjamin Kampmann authored
      * rename crate: sp-transaction-pool-api -> sp-transaction-pool
      
      * move primitives/core/derive-debug -> primitives/derive-debug; primitives/core/storage -> primitives/storage
      
      * rename crate sp-core-storage -> sp-storage
      
      * rename and move: test/utils/transaction-factory -> client/transaction-factory
      
      * move transaction-factory -> node/transaction-factory
      
      * fix missing rename
      
      * Move chain-spec-builder into bin/utils
      
      * move subkey into bin/utils
      
      * Update new subkey location
      
      * Update docs to reflect new location for utils
      
      * fixing import name
      9ce7e1f7
    • Benjamin Kampmann's avatar
      Fix a bunch of low work dependency cycles (#4354) · 19835b41
      Benjamin Kampmann authored
      * take test-client off sp-consensus
      
      * use test primitives rather than test client in authority discovery tests
      
      * move runtime-interface tests
      
      * don't forget to remove the dev-dependency
      
      * remove more unneeded dev deps
      
      * add changes_trie_config to test prrimitives
      
      * Separate network crates from its integration tests
      
      * Fix up consensus crates for networking test changes
      
      * remove unnecessary dependencies
      
      * remove unused addition
      
      * remove unnecessary dev-dependencies
      
      * fixing finality grandpa tests
      
      * removing unnecessary executor dependencies
      19835b41
    • Bastian Köcher's avatar
      Fix cycle dependency in `sp-runtime-interface` (#4353) · de037777
      Bastian Köcher authored
      * Fix cycle dependency in `sp-runtime-interface`
      
      * Fixes tests
      de037777
  21. Dec 10, 2019
  22. Dec 09, 2019