1. Oct 10, 2019
    • Kian Paimani's avatar
      Multi-limb arithmetic for runtime (#3743) · 66042f1c
      Kian Paimani authored
      
      
      * First working version of all operations.
      
      * New and improved version of everything.
      
      * Minor cleanup.
      
      * Fix build
      
      * Finalize nignum
      
      * Some final works on refactors and tests.
      
      * fix build
      
      * Some review comments
      
      * Bench, better try into and nits
      
      * mutify the API
      
      * rename to big_uint
      
      * unmutify.
      
      * Remove resize
      
      * Apply suggestions from code review
      
      * Update core/sr-primitives/src/sr_arithmetic.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * BEtter proof
      
      * Fix panic doc.
      
      * Bump.
      66042f1c
  2. Oct 08, 2019
  3. Oct 05, 2019
  4. Oct 04, 2019
  5. Oct 03, 2019
  6. 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
    • thiolliere's avatar
      Fix quantization from OnDilution in treasury (#3736) · 27a86ed7
      thiolliere authored
      * fix
      
      * bump version
      
      * remove println
      27a86ed7
  7. 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
    • André Silva's avatar
      srml: system: add kill_prefix (#3729) · aae1a9e2
      André Silva authored
      * srml: system: add kill_prefix
      
      * node: bump spec_version
      aae1a9e2
  8. Sep 30, 2019
  9. Sep 28, 2019
    • Xiliang Chen's avatar
      refactor contracts to use Time trait (#3717) · e84f6158
      Xiliang Chen authored and Sergey Pepyakin's avatar Sergey Pepyakin committed
      * refactor contracts to use Time trait
      
      * bump version
      e84f6158
    • 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
  10. Sep 27, 2019
  11. Sep 25, 2019
  12. Sep 24, 2019
  13. Sep 23, 2019
    • 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
    • Ashley's avatar
      Rename more things related to contract instantiation (#3664) · f570abe2
      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
      f570abe2
  14. Sep 21, 2019
    • Joshy Orndorff's avatar
      Remove unused key types sr25 and ed25 (#3659) · a2df8002
      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.
      a2df8002
    • thiolliere's avatar
      Make staking inflation curve configurable. (#3644) · de90fe7f
      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]>
      de90fe7f
  15. Sep 19, 2019
    • Tomasz Drwięga's avatar
      Force new era only if 1/3 validators is disabled. (#3533) · d320249e
      Tomasz Drwięga authored
      
      
      * Force new era only when over third validators is disabled.
      
      * Update srml/session/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update srml/staking/src/lib.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Parametrize the threshold.
      
      * Bump runtime version.
      
      * Update node/runtime/src/lib.rs
      
      * Fix build.
      
      * Fix im-online test.
      d320249e
    • 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
  16. Sep 18, 2019
    • Ashley's avatar
      Update parity-wasm to 0.40 (#3631) · 5c9a84a1
      Ashley authored and Sergey Pepyakin's avatar Sergey Pepyakin committed
      * updated direct dependencies to parity-wasm
      
      * fixed tests and incremented impl_version of the runtime
      
      * update wasmi to 0.5.1 in sr-sandbox, bringing all parity-wasm deps up to 0.40
      5c9a84a1
  17. Sep 13, 2019
    • Tomasz Drwięga's avatar
      RPC call to get all RPC methods (#3613) · 6d48cce2
      Tomasz Drwięga authored
      * Add meta rpc_methods call.
      
      * Sort methods.
      
      * Bump runtime.
      
      * Change format a bit to support versioning.
      6d48cce2
    • Bastian Köcher's avatar
      Clean up sr-io (#3609) · ea2644a2
      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
      ea2644a2
    • Tomasz Drwięga's avatar
      Fix tracking validator set in ImOnline (#3596) · 1a59e8ce
      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.
      1a59e8ce
    • Kian Paimani's avatar
      Fix Staking and Democracy locking (#3606) · 2fc627d4
      Kian Paimani authored
      * Fix locking.
      
      * Some reformattings.
      
      * Fix build.
      
      * Fix doc comment.
      
      * Bump.
      2fc627d4
  18. Sep 12, 2019
  19. Sep 11, 2019
  20. Sep 06, 2019
    • Max Inden's avatar
      core/authority-discovery: Enable authorities to discover each other (#3452) · 7fc21cea
      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
      7fc21cea
  21. Sep 04, 2019