Skip to content
  1. Oct 19, 2019
    • Andrew Dirksen's avatar
      e479a512
    • Ashley's avatar
      Move sr-arithmetic to a new crate and add in a fuzzer (#3799) · dccaf161
      Ashley authored
      
      
      * Split up sr_arithmetic.rs
      
      * Add some basic fuzzing
      
      * Add more tests
      
      * Add printing to fuzzing
      
      * Clean things up
      
      * Remove arbitrary
      
      * Remove comments
      
      * More cleaning, fix small error that was causing a panic
      
      * Add rational128
      
      * Remove old random tests
      
      * introduce panic
      
      * fuzzing should panic properly
      
      * Bit of cleanup
      
      * Add a test uncovered via fuzzing that fails!
      
      * Few small changes
      
      * Move sr-arithmetic to its own crate
      
      * Fix fuzzing
      
      * Got rid of fuzzer Cargo.lock
      
      * Added no_std
      
      * re-export assert_eq_error_rate
      
      * bump impl and spec version
      
      * re add convert into
      
      * Add an ignore to the test
      
      * Enabled benchmarking
      
      * Reindent
      
      * Clean up biguint fuzzer
      
      * Clean up biguint more
      
      * shuffle sr-primitives/traits about
      
      * Remove unused dependencies
      
      * Apply clippy suggestions
      
      * upgrade primitive-types versions
      
      * Run tests against num-bigint
      
      * Get rid of allocation in assert_biguints_eq
      
      * Add an optimisation to multiply_by_rational
      
      * rename parts_per_x -> per_things
      
      * Change fuzzer cargo.toml
      
      * Remove allocation from BigUint PartialEq impl
      
      * Remove accidental indentation
      
      * Renmove Lazy and Convert traits
      
      * Copy assert_eq_error_rate macro back to sr-primitives
      
      * Add documentation to fuzzers
      
      * fix sr-primitives assert_eq_error_rate
      
      * add cfg(test)
      
      * Update core/sr-arithmetic/src/traits.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Update core/sr-arithmetic/src/traits.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Update core/sr-arithmetic/fuzzer/src/biguint.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Allow rounding up in rational128
      
      * Make changes to biguint.rs
      
      * Update core/sr-arithmetic/src/traits.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Final touches
      
      * Convert to num_bigint::BigUint to compare
      
      * remove unused mut
      
      * more small changes
      
      * shuffle sr-primitives trait imports
      
      * more code review
      
      * move assert_eq_error_rate to lib.rs
      
      * Update core/sr-arithmetic/fuzzer/src/biguint.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Get rid of S
      
      * Simplify rational128 honggfuzz link
      
      * Insignificantly change rational128 fuzzing code
      
      * Slightly tidy up some of the arithmetic logic
      
      * Get rid of sr_arithmetic again(?) and fix sr-primitives/weights
      
      * Apply updates to sr_arithmetic.rs to crate
      dccaf161
  2. Oct 18, 2019
  3. Oct 17, 2019
  4. Oct 16, 2019
  5. Oct 15, 2019
  6. Oct 12, 2019
  7. Oct 10, 2019
  8. Oct 09, 2019
    • Demi Obenour's avatar
      Bump dependencies (#3787) · e44bd441
      Demi Obenour authored
      * Update dependencies, respecting semver
      
      * Bump dependencies
      
      * Don’t patch tiny-bip39 dependency
      e44bd441
    • Bastian Köcher's avatar
      Move `Externalities` into its own crate (#3775) · 79c776af
      Bastian Köcher authored
      * Move `Externalities` into `substrate-externalities`
      
      - `Externalities` now support generic extensions
      - Split of `primtives-storage` for storage primitive types
      
      * Move the externalities scoping into `substrate-externalities`
      
      * Fix compilation
      
      * Review feedback
      
      * Adds macro for declaring extensions
      
      * Fix benchmarks
      
      * Introduce `ExtensionStore` trait
      
      * Last review comments
      
      * Implement it for `ExtensionStore`
      79c776af
  9. Oct 08, 2019
  10. Oct 07, 2019
  11. Oct 04, 2019
  12. Oct 03, 2019
    • Wei Tang's avatar
      Cumulative fixes to make working with consensus-pow easier (#3617) · ddd7368b
      Wei Tang authored
      
      
      * consensus-pow: add difficulty data to auxiliary
      
      * Timestamp api
      
      * Implement FinalityProofProvider for ()
      
      * Add DifficultyApi
      
      * Remove assumption that Difficulty is u128
      
      * Use a separate trait for add instead of hard-code it as Saturating
      
      * Some convenience functions to work with PowVerifier
      
      * Try to fix mining unstability
      
      * Fix generic resolution
      
      * Unused best_header variable
      
      * Fix hash calculation
      
      * Remove artificial sleep
      
      * Tweak proposer waiting time
      
      * Revert sleep removal
      
      The reason why it was there is because when mine_loop returns, it means an error
      happened. In that case, we'd better sleep for a moment before trying again,
      because immediately trying would most likely just fail.
      
      * Pass sync oracle to mining
      
      So that it does not mine when major syncing
      
      * Expose build time as a parameter
      
      Instead of hardcode it as previously 100ms.
      
      * Update lock file
      
      * Fix compile
      
      * Support skipping check_inherents for ancient blocks
      
      For PoW, older blocks are secured by the work, and can mostly be considered to
      be finalized. Thus we can save both code complexity and validation time by
      skipping checking inherents for them.
      
      * Move difficulty fetch function out of loop
      
      To make things faster
      
      * Remove seed from mining
      
      Each engine can use its own Rng source.
      
      * Better comments
      
      * Add TotalDifficulty definition for U256 and u128
      
      * Update core/consensus/pow/src/lib.rs
      
      Co-Authored-By: default avatarAndré Silva <[email protected]>
      
      * Rename TotalDifficulty::add -> increment
      
      * Use SelectChain to fetch the best header/hash
      
      * Update lock file
      ddd7368b
  13. Oct 02, 2019
    • DemiMarie-parity's avatar
      Upgrade dependencies whenever “easy” (#3556) · 0cfe7438
      DemiMarie-parity authored
      * Update all dependencies
      
      * Upgrade dependencies whenever “easy”
      
      “easy” means that there are no major changes required.
      
      * Fix build and bump paste dependency to 0.1.6
      
      * Remove dead code
      
      * Re-add = dependency for futures-preview
      
      * Add missing std features for runtime-io
      
      * Remove git dependencies
      
      as updated versions have been published to crates.io
      
      * try to debug bug
      
      * For sr-io, "std" should imply "no_oom" and "no_panic_handler".
      
      Otherwise, rustc complains (correctly) about duplicate lang items.
      
      * Add missing "runtime-io/std" features
      
      * Fix compilation errors
      
      * Prevent duplicate lang items
      
      Rust does not allow duplicate lang items.  When compiled without the
      `std` feature, `sr-io` defines two lang items.  Therefore, `sr-io`
      compiled without `feature = "std"` must not be linked with `std`.
      
      However, `pwasm-utils` and `wasmi-validation` both bring in `std` unless
      compiled with `default-features = "false"`.  This caused a duplicate
      lang item error.  Building both with `default-features = "false"`
      prevents this error.  When building with `feature = "std"`, they should
      both be built with the `std` feature, so this feature needs to be
      explicitly depended on.
      
      * Bump `impl_version`
      
      * Make tests pass
      
      Three tests used 1 less gas than they had previously.
      
      * Try to un-break build
      
      * Add a Cargo.lock file
      
      * Revert offchain code
      
      * Revert "Revert offchain code"
      
      This reverts commit d216d08c
      
      .
      
      * Don’t try to send a body with a GET request
      
      without adding a Transfer-Encoding or Content-Length header.
      
      This has always been wrong, but hyperium/hyper#1925 hid the bug until
      hyper was upgraded to 0.12.35.
      
      * Change some more GET requests to POST requests
      
      * Fix excess line width and remove an `extern crate`
      
      * Delete commented-out extern crate
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      
      * Fix regression in Cargo.toml files
      
      dev-dependencies need `default-features = false`, too.
      
      * Bump parity-wasm dependency
      
      * Bump `futures-preview`
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update Cargo.lock files
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update core/service/src/chain_ops.rs
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      0cfe7438
    • Marcio Diaz's avatar
      Optimize tree route to sync faster (#3665) · d7be2906
      Marcio Diaz authored
      * Introduce HeaderMetadata and use it for tree_route. Add lowest_common_ancestor.
      * Add tests.
      d7be2906
    • Tomasz Drwięga's avatar
      Move offchain worker http helpers to `sr-primitives`. (#3733) · 223554e5
      Tomasz Drwięga authored
      * Move offchain helpers to sr-primitives.
      
      * Add some docs and fix tests.
      
      * Refresh cargo.lock
      
      * Bump runtime.
      
      * Don't run offchain http example.
      223554e5
  14. Oct 01, 2019
    • thiolliere's avatar
      Use EncodeLike for storages traits (#3676) · db417ffd
      thiolliere authored
      
      
      * impl
      
      * patch
      
      * lock
      
      * some refactor
      
      * some avoided copy
      
      * new api without ref for doublemap
      
      * fix
      
      * version bump
      
      * fix
      
      * point to incoming release
      
      * use codec latest
      
      * bumpd impl version
      
      * fix unused
      
      * fix
      
      * Update srml/support/src/storage/mod.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      db417ffd
    • Max Inden's avatar
      srml/authority-discovery: Abstract session key type (#3698) · 7fc0a91e
      Max Inden authored
      * srml/authority-discovery: Abstract session key type
      
      Previously `srml/authority-discovery` dependet on the `srml/im-online`
      session key type directly. With this patch `srml/authority-discovery` is
      generic over the session key type it is going to use, as long as it
      implements the RuntimeAppPublic trait.
      
      With this patch one can use the `srml/authority-discovery` module
      without the `srml/im-online` module.
      
      Next to the above, this patch configures `node/runtime` to use the babe
      session keys for the authority discovery module.
      
      * srml/authority-discovery: Fix line length
      
      * srml/authority-discovery/Cargo: Move babe to dev-dependencies
      
      * node/runtime: Bump implementation version
      
      * srml/authority-discovery: Add doc comment for authority discovery Trait
      7fc0a91e
    • Svyatoslav Nikolsky's avatar
      Prepare for asynchronous transaction validation in tx pool (#3650) · 55c9d145
      Svyatoslav Nikolsky authored
      
      
      * async txpool API
      
      * Update core/rpc/src/author/mod.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Update core/transaction-pool/graph/src/pool.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Pool -> Pool + ValidatedPool
      
      * removed lost block_on when importing xt from network
      
      * fix grumbles
      
      * alias for future::Executor in rpc
      
      * removed executor from Author RPCs
      
      * Pool + SharedValidatedPool -> Pool
      
      * fix compilation after merge
      
      * another fix
      
      * another fix
      55c9d145
    • Ashley's avatar
      Add an Error type to Aura (#3688) · 559f5701
      Ashley authored
      
      
      * Add an Error type to Aura
      
      * Add Cargo.lock
      
      * AuRa -> Aura
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      559f5701
  15. Sep 30, 2019
    • Pierre Krieger's avatar
      111def9e
    • Max Inden's avatar
      core/sr-api-macros/Cargo.toml: Pin protobuf version (#3723) · 4af0fe7c
      Max Inden authored
      * Cargo.toml: Pin protobuf version
      
      The protobuf crate introduced a breaking change within its semver minor
      update from 2.8.1 to 2.9.0. This commit ensures Substrate uses anything
      within the 2.8 minor releases.
      
      * Cargo.lock: Update
      
      * core/sr-api-macros/Cargo.toml: Pin protobuf version
      
      The protobuf crate introduced a breaking change within its semver minor
      update from 2.8.1 to 2.9.0. This commit ensures Substrate uses anything
      within the 2.8 minor releases.
      
      * Revert "Cargo.toml: Pin protobuf version"
      
      This reverts commit 4e293c74.
      
      * core/sr-api-macros/Cargo.toml: Pin protobuf within dev-dependencies
      
      * core/sr-api-macros/Cargo.toml: Add comment and link to Githu issue
      4af0fe7c
  16. Sep 28, 2019
    • Tomasz Drwięga's avatar
      ChainSpec extensions (#3692) · d1401df7
      Tomasz Drwięga authored
      * Add some chainspec tests and make sure we validate it.
      
      * Manual implementation of Extension + Forks definitions.
      
      * Move chain spec to separate crate.
      
      * Allow using ChainSpec with extensions.
      
      * Renames.
      
      * Implement Extension derive.
      
      * Implement Extension for Forks.
      
      * Support specifying fork blocks.
      
      * make for_blocks work
      
      * Support forks correctly.
      
      * Add a bunch of docs.
      
      * Make fork blocks optional.
      
      * Add missing docs.
      
      * Fix build.
      
      * Use struct for check_block params.
      
      * Fix tests?
      
      * Clean up.
      d1401df7
  17. Sep 27, 2019
  18. Sep 24, 2019
  19. Sep 23, 2019
    • Ashley's avatar
      use pdqselect for median_algorithm selection (#3636) · 1f158003
      Ashley authored and asynchronous rob's avatar asynchronous rob committed
      
      
      * use pdqselect for median_algorithm selection instead of sorting the whole vec
      
      * Make use of pqdselect clearer
      
      Co-Authored-By: default avatarAndré Silva <[email protected]>
      
      * Make use of pqdselect clearer
      
      Co-Authored-By: default avatarAndré Silva <[email protected]>
      1f158003
    • asynchronous rob's avatar
      Fixing BABE epochs to change between blocks (#3583) · 426c26b8
      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
      426c26b8
  20. Sep 21, 2019
  21. Sep 20, 2019
  22. Sep 19, 2019
    • Kian Paimani's avatar
      srml-module: Phragmen election (#3364) · e8334c27
      Kian Paimani authored
      
      
      * phragmen election module.
      
      * Add new files.
      
      * Some doc update
      
      * Update weights.
      
      * bump and a few nits.
      
      * Performance improvement.
      
      * Master.into()
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Fix build
      
      * Some fixes.
      
      * Fix build.
      
      * Proper outgoing and runner-up managment.
      
      * Bit more sensical weight values.
      
      * Update srml/elections-phragmen/src/lib.rs
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * fix lock file
      
      * Fix build.
      
      * Remove runner-ups
      
      * Some refactors.
      
      * Add support for reporting voters.
      
      * Fix member check.
      
      * Remove equlize.rs
      
      * Update srml/elections-phragmen/src/lib.rs
      
      * Update srml/elections-phragmen/src/lib.rs
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Bring back runner ups.
      
      * use decode_len
      
      * Better weight values.
      
      * Update bogus doc
      
      * Bump.
      
      * Update srml/elections-phragmen/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Review comments.
      
      * One more test
      
      * Fix tests
      
      * Fix build
      
      * .. and fix benchmarks.
      
      * Update srml/elections-phragmen/src/lib.rs
      
      * Version bump
      e8334c27
  23. Sep 18, 2019
  24. Sep 17, 2019
  25. Sep 13, 2019