Skip to content
  1. Sep 23, 2019
    • asynchronous rob's avatar
      Fixing BABE epochs to change between blocks (#3583) · c200ce75
      asynchronous rob authored
      
      
      * always fetch epoch from runtime
      
      * node integration tests don't test light nodes
      
      * give stand-in full node a FULL role
      
      * rejig babe APIs
      
      * introduce next-epoch-descriptor type
      
      * overhaul srml-BABE epoch logic
      
      * ensure VRF outputs end up in the right epoch-randomness
      
      * rewrite `do_initialize` to remove unnecessary loop
      
      * begin accounting for next epoch in epoch function
      
      * slots passes header to epoch_data
      
      * pass slot_number to SlotWorker::epoch_data
      
      * begin extracting epoch-change logic into its own module
      
      * aux methods for block weight
      
      * aux methods for genesis configuration
      
      * comment-out most, refactor header-check pipeline
      
      * mostly flesh out verifier again
      
      * reinstantiate babe BlockImport implementation
      
      * reinstate import-queue instantiation
      
      * reintroduce slot-worker implementation
      
      * reinstate pretty much all the rest
      
      * move fork-choice logic to BlockImport
      
      * fix some, but not all errors
      
      * patch test-runtime
      
      * make is_descendent of slightly more generic
      
      * get skeleton compiling when passing is_descendent_of
      
      * make descendent-of-builder more succinct
      
      * restore ordering of authority_index / slot_number
      
      * start fiddling with tests
      
      * fix warnings
      
      * improve initialization architecture and handle genesis
      
      * tests use correct block-import
      
      * fix BABE tests
      
      * fix some compiler errors
      
      * fix node-cli compilation
      
      * all crates compile
      
      * bump runtime versions and fix some warnings
      
      * tweak fork-tree search implementation
      
      * do backtracking search in fork-tree
      
      * node-cli integration tests now work
      
      * fix broken assumption in test_connectivity
      
      * babe tests fail for the right reasons.
      
      * test genesis epoch logic for epoch_changes
      
      * test that epochs can change between blocks
      
      * First BABE SRML test
      
      * Testing infrastructure for BABE
      
      Also includes a trivial additional test.
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * A little more test progress
      
      * More work on BABE testing
      
      * Try to get the tests working
      
      * Implement `UintAuthorityId`-based test mocks
      
      * Fix compilation errors
      
      * Adjust to upstream changes
      
      * Block numbers are ignored in BABE epoch calculation
      
      * authority_index() should ignore invalid authorities
      
      * Fix compile error
      
      * Add tests that session transitions happen
      
      * Check if BABE produces logs
      
      It currently does not.
      
      * Fix test suite
      
      This was really nasty, due to a type confusion that showed up as an
      off-by-1 buffer error.
      
      * Add additional tests
      
      Most of these were derived from the current output, so they are only
      useful to guard against regressions.
      
      * Make the tests more readable
      
      Also bump impl_version.
      
      * Fix excessive line width
      
      * Remove unused imports
      
      * Update srml/babe/src/lib.rs
      
      Co-Authored-By: default avatarAndré Silva <[email protected]>
      
      * try to fix imports
      
      * Fix build errors in test suite
      
      * tests did not pass
      
      * Try to get at least one digest to be output
      
      Currently, the code emits either no digests (if I don’t call
      `Session::rotate_session()` or two digests (if I do), which is wrong.
      
      * More tests
      
      They still don’t work, but this should help debugging.
      
      * fix silly error
      
      * Don’t even try to compile a broken test
      
      * remove broken check_epoch test and add one for genesis epoch
      
      * Check that the length of the pre-digests is correct
      
      * Bump `impl_version`
      
      * use epoch_for_descendent_of even for genesis
      
      * account for competing block 1s
      
      * finish srml-babe docs
      
      Co-Authored-By: default avatarAndré Silva <[email protected]>
      
      * address grumbles
      c200ce75
    • Ashley's avatar
      Rename more things related to contract instantiation (#3664) · 0a469666
      Ashley authored and Sergey Pepyakin's avatar Sergey Pepyakin committed
      * Rename more things related to contract instantiation
      
      * rename `creator_ch`
      
      * Fix node runtime
      
      * fix contracts tests
      
      * Little fix
      0a469666
  2. Sep 21, 2019
    • Joshy Orndorff's avatar
      Remove unused key types sr25 and ed25 (#3659) · 210290f8
      Joshy Orndorff authored
      * Remove unused key types sr25 and ed25.
      
      * Restore in specific files to fix build.
      
      * Fix runtime tests
      
      * Fix keystore test
      
      * Revert typo
      
      * Move keytypes to primitives/src/testing.rs
      
      * More missed items.
      
      * Getting close now.
      
      * Fix example in documentation.
      
      * Update core/application-crypto/src/ed25519.rs
      
      * Update core/application-crypto/src/sr25519.rs
      
      * Bump impl version.
      210290f8
    • thiolliere's avatar
      Make staking inflation curve configurable. (#3644) · c25d7386
      thiolliere authored
      
      
      * Draft for new design of NPoS rewards
      
      * finish code
      
      * fix test
      
      * add tests
      
      * improve log test
      
      * version bump
      
      * Update srml/staking/reward-curve/Cargo.toml
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * u128 -> u64
      
      * make conversion to smaller type safe
      
      * Update core/sr-primitives/src/curve.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      c25d7386
  3. Sep 20, 2019
  4. Sep 19, 2019
  5. Sep 18, 2019
  6. Sep 17, 2019
  7. Sep 13, 2019
    • Tomasz Drwięga's avatar
      RPC call to get all RPC methods (#3613) · c45a15e5
      Tomasz Drwięga authored
      * Add meta rpc_methods call.
      
      * Sort methods.
      
      * Bump runtime.
      
      * Change format a bit to support versioning.
      c45a15e5
    • Bastian Köcher's avatar
      Clean up sr-io (#3609) · 45d64a71
      Bastian Köcher authored
      * Move trait `Printable` into `sr-primitives`
      
      * Cleanup runtime io trie_root interfaces
      
      * Remove last generic bits from sr-io interface
      
      * Fix srml-sudo after master merge
      
      * Fix benchmarks
      
      * Runtime bump
      45d64a71
    • Michael Müller's avatar
      Fixes for allocator + factory + misc improvements (#3534) · 5cb8c0dc
      Michael Müller authored
      
      
      * Clear up import/export misunderstandings
      
      * Fetch minimum period from runtime
      
      * Remove unnecessary comment
      
      This variable is already fetched from the runtime
      in the line below.
      
      * Fix bug in factory
      
      The `best_block_id` stayed the same, it was always the
      genesis hash. This resulted in the factory failing after
      4096 blocks, since `client/db` discards hashes (in this
      case the genesis hash) after 4096 blocks from the database.
      
      * Fix tense in error message
      
      * Improve allocator documentation
      
      * Fix bug in allocator
      
      Under certain circumstances an invalid pointer was
      returned: when the `ptr` was calculated as equal
      to the `max_heap_size`. This is an invalid pointer
      since there is no access allowed after the heap limit.
      
      The way to provoke this was to repeatedly allocate
      with sizes which were previously not allocated and
      immediately deallocate right afterwards. What this
      did was to increment the `bumper` with each allocation,
      whilst keeping the `total_size` of the heap `0`.
      If this repeated allocation/deallocation scheme resulted
      in `max_heap_size == ptr` the `ptr` was still returned.
      
      The allocator only checked if the `total_size` was
      still within the `max_heap_size` limits, and not
      if the resulting `ptr` was still within the valid
      heap region.
      
      This commit introduces a check to validate if the
      calculated `ptr` is within the heap.
      
      * Add test for zero byte allocation and document behavior
      
      * Improve code readability by introducing a const
      
      * Fix error message in test
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Fix code review suggestions
      
      * Replace early return with assertion
      
      * Remove test for zero size allocations
      
      * Shorten test code
      
      * Shorten comment
      
      * Make bump() return Result
      
      * Add comment for bump()
      
      * Remove ambiguous comment
      
      * Replace value with const
      
      * Use proof for panic message
      
      * Fix merge
      
      * Add comment regarding minimum allocation size
      5cb8c0dc
    • Tomasz Drwięga's avatar
      Fix tracking validator set in ImOnline (#3596) · b7c6bc1e
      Tomasz Drwięga authored
      
      
      * Use session::validators instead of staking::current_elected
      
      * Basic test framework.
      
      * Initialize validators, attempt to heartbeat.
      
      * Use dummy crypto for im-online testing.
      
      * Remove printlns.
      
      * Finish test, make it invalid.
      
      * Add reporting test.
      
      * Finalize the test.
      
      * Remove dumbness.
      
      * Updates.
      
      * Update AuRa
      
      * Update srml/im-online/src/tests.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Derive Ord
      
      * Add some more tests.
      
      * Remove stray todo.
      
      * Bump runtime version.
      
      * Bump impl-trait-for-tuples.
      
      * Enforce new version of trait-for-tuples.
      b7c6bc1e
    • Kian Paimani's avatar
      Fix Staking and Democracy locking (#3606) · a7f35680
      Kian Paimani authored
      * Fix locking.
      
      * Some reformattings.
      
      * Fix build.
      
      * Fix doc comment.
      
      * Bump.
      a7f35680
  8. Sep 12, 2019
  9. Sep 11, 2019
  10. Sep 10, 2019
  11. Sep 06, 2019
    • Max Inden's avatar
      core/authority-discovery: Enable authorities to discover each other (#3452) · 027d8879
      Max Inden authored
      With the *authority-discovery* module an authoritative node makes itself
      discoverable and is able to discover other authorities. Once discovered, a node
      can directly connect to other authorities instead of multi-hop gossiping
      information.
      
      1. **Making itself discoverable**
      
          1. Retrieve its external addresses
      
          2. Adds its network peer id to the addresses
      
          3. Sign the above
      
          4. Put the signature and the addresses on the libp2p Kademlia DHT
      
      2. **Discovering other authorities**
      
          1. Retrieve the current set of authorities
      
          2. Start DHT queries for the ids of the authorities
      
          3. Validate the signatures of the retrieved key value pairs
      
          4. Add the retrieved external addresses as ~reserved~ priority nodes to the
             peerset
      
      
      * node/runtime: Add authority-discovery as session handler
      
      The srml/authority-discovery module implements the OneSessionHandler in
      order to keep its authority set in sync. This commit adds the module to
      the set of session handlers.
      
      * core/network: Make network worker return Dht events on poll
      
      Instead of network worker implement the Future trait, have it implement
      the Stream interface returning Dht events.
      
      For now these events are ignored in build_network_future but will be
      used by the core/authority-discovery module in subsequent commits.
      
      * *: Add scaffolding and integration for core/authority-discovery module
      
      * core/authority-discovery: Implement module logic itself
      027d8879
  12. Sep 04, 2019
    • Sergey Pepyakin's avatar
      srml-contracts: Fix values used for state rent (#3550) · 932e51ff
      Sergey Pepyakin authored
      * Fix units for srml-contracts
      
      * Bump node runtime version.
      932e51ff
    • Bastian Köcher's avatar
      Custom runtime module errors (#3433) · c6f37980
      Bastian Köcher authored
      
      
      * srml-system checks
      
      * wip
      
      * more modules compiles
      
      * node-runtime checks
      
      * build.sh passes
      
      * include dispatch error in failed event
      
      * revert some unnecessary changes
      
      * refactor based on comments
      
      * more compile error fixes
      
      * avoid unnecessary into
      
      * reorder code
      
      * fixes some tests
      
      * manually implement encode & decode to avoid i8 workaround
      
      * more test fixes
      
      * more fixes
      
      * more error fixes
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * address comments
      
      * test for DispatchError encoding
      
      * tyep alias for democracy
      
      * make error printable
      
      * line width
      
      * fix balances tests
      
      * fix executive test
      
      * fix system tests
      
      * bump version
      
      * ensure consistent method signature
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * changes based on review
      
      * Add issue number for TODOs
      
      * fix
      
      * line width
      
      * fix test
      
      * Update core/sr-primitives/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update core/sr-primitives/src/traits.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update srml/council/src/motions.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update srml/council/src/motions.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * update based on review
      
      * More concrete macro matching
      
      * fix test build issue
      
      * Update hex-literal dependency version. (#3141)
      
      * Update hex-literal dep version.
      
      * Update lock file.
      
      * Start to rework the new error handling
      
      * More work to get it back compiling
      
      * Start to fix after master merge
      
      * The great transaction error handling refactoring
      
      * Make `decl_error` errors convertible to `&'static str`
      
      * Make srml-executive build again
      
      * Fix `sr-primitives` tests
      
      * More fixes
      
      * Last round of fix ups
      
      * Fix build
      
      * Fix build
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Rename some stuff
      
      * Fixes after master merge
      
      * Adds `CheckBlockGasLimit` signed extension
      
      * Remove debug stuff
      
      * Fix srml-balances test
      
      * Rename `InvalidIndex` to `CannotLookup`
      
      * Remove weird generic parameters
      
      * Rename function again
      
      * Fix import
      
      * Document the signed extension
      
      * Change from `Into` to `From`
      
      * Update srml/contracts/src/lib.rs
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      
      * Fix compilation
      
      * Update srml/contracts/src/lib.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Update core/sr-primitives/src/transaction_validity.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Remove unused code
      
      * Fix compilation
      
      * Some cleanups
      
      * Fix compile errors
      
      * Make `TransactionValidity` a `Result`
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Beautify the code a little bit and fix test
      
      * Make `CannotLookup` an inherent error declared by `decl_error!`
      
      * Adds some documentation
      
      * Make `ApplyOutcome` a result
      
      * Up the spec_version
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      c6f37980
  13. Sep 02, 2019
  14. Sep 01, 2019
  15. Aug 30, 2019
    • Benjamin Kampmann's avatar
      Remove `client.backend` (#2960) · 0cae7217
      Benjamin Kampmann authored
      
      
      * generalize tree_root to remove client.backend dependency
      
      * replace client.backend.blockchain.header with client.header
      
      * move used_state_cache_size into client info
      
      * Create intermediate Setup State. Fixes #1134
      
      * remove client.backend from finality proof
      
      * update node-template
      
      * move memory backend into test helper mode
      
      * move test helper into client
      
      * starting the big refactor, remove unused functions
      
      * apply_finality
      
      * apply_finality
      
      * replacing more .backend from environment with client directly
      
      * remove .backend from grandpa by using traits
      
      * remove .backend from babe
      
      * remove .backend from tests where it is not needed
      
      * remove .backend from tests
      
      * fixing tests
      
      * fixing tests
      
      * fixing more tests
      
      * fixing tests
      
      * fix all forks test
      
      * fix style
      
      * fixing unnecessary allocation
      
      * remove old test.
      
      * fix service docs
      
      * apply suggestion
      
      * minor clean ups
      
      * turns out the test-helper features actually is being used!
      
      * fixing line length.
      
      * fix line length
      
      * minor cleaning
      
      * Apply suggestions from code review
      
      thanks, @Basti
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * address grumbles
      
      * simplify finalize block on client
      
      * move block back into inner function
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * use as.ref instead of match
      
      * Update core/client/src/backend.rs
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      0cae7217
  16. Aug 29, 2019
  17. Aug 28, 2019
  18. Aug 27, 2019