Skip to content
  1. Aug 20, 2019
    • Tomasz Drwięga's avatar
      Custom RPC implementation for `node`. (#3109) · db5f4948
      Tomasz Drwięga authored
      * Allow RPCs to be customized.
      
      * Implement node-rpc extensions.
      
      * Working on a test.
      
      * Add node-testing crate.
      
      * Fix genesis test config
      
      * Fix nonce lookups.
      
      * Clean up.
      
      * Fix expected block type.
      
      * Make the RPC extension function optional.
      
      * Fix service doc test.
      
      * Bump jsonrpc.
      
      * Bump client version.
      
      * Update Cargo.lock
      
      * Update jsonrpc.
      
      * Fix build.
      
      * Remove unused imports.
      
      * Fix signed extra.
      
      * Post merge clean up.
      
      * Fix tests.
      
      * Patch hashmap-core.
      
      * Fix build.
      
      * Fix build.
      
      * Remove hashmap_core patches.
      db5f4948
  2. Aug 19, 2019
    • Michael Müller's avatar
      Introduce srml/scored-pool (#3381) · b9027af5
      Michael Müller authored
      
      
      * Introduce srml/scored-pool
      
      * Bump impl_version
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Remove unnecessary pub use
      
      * Remove unnecessary import
      
      * Adapt to InitializeMembers
      
      * Bump impl_version
      
      * Implement remarks (shortens code)
      
      * Improve complexity of score()
      
      Search and remove and search again for the
      new spot and insert then => O(2LogN).
      
      * Get rid of a clone()
      
      * Reduce complexity of issue_candidacy()
      
      * Add CandidateScored event + Improve comments
      
      * Fix naming
      
      * Use Lookup instead of AccountId as param
      
      * Use set_members_sorted instead of computing diff
      
      * Remove function which is only used during genesis
      
      * Get rid of rev() by changing sort order of Pool
      
      * Rename issue_candidacy to submit_candidacy
      
      * Shorten code
      
      * Remove find_in_pool() and have transactor submit index
      
      * Remove unnecessary dependency
      
      * Improve error messages
      
      * Improve naming
      
      * Improve comments
      
      * Make code clearer wrt which receiver to invoke
      
      * Adapt to new system trait
      
      * Refactor to request CandidateDeposit only once
      
      * Refactor to request Pool only once
      
      * Improve structure and comments
      b9027af5
  3. Aug 16, 2019
    • Tomasz Drwięga's avatar
      Offences reporting and slashing (#3322) · 5d992d80
      Tomasz Drwięga authored
      
      
      * Remove offline slashing logic from staking.
      
      * Initial version of reworked offence module, can report offences
      
      * Clean up staking example.
      
      * Commit SlashingOffence
      
      * Force new era on slash.
      
      * Add offenders in the SlashingOffence trait.
      
      * Introduce the ReportOffence trait.
      
      * Rename `Offence`.
      
      * Add on_before_session_ending handler.
      
      * Move offence related stuff under sr-primitives.
      
      * Fix cargo check.
      
      * Import new im-online implementation.
      
      * Adding validator count to historical session storage as it's needed for slash calculations
      
      * Add a comment about offence.
      
      * Add BabeEquivocationOffence
      
      * GrandpaEquivocationOffence
      
      * slash_fraction and fix
      
      * current_era_start_session_index
      
      * UnresponsivnessOffence
      
      * Finalise OnOffenceHandler traits, and stub impl for staking.
      
      * slash_fraction doesn't really need &self
      
      * Note that offenders count is greater than 0
      
      * Add a test to ensure that I got the math right
      
      * Use FullIdentification in offences.
      
      * Use FullIndentification.
      
      * Hook up the offences module.
      
      * Report unresponsive validators
      
      * Make sure eras have the same length.
      
      * Slashing and rewards.
      
      * Fix compilation.
      
      * Distribute rewards.
      
      * Supply validators_count
      
      * Use identificationTuple in Unresponsivness report
      
      * Fix merge.
      
      * Make sure we don't slash if amount is zero.
      
      * We don't return an error from report_offence anymo
      
      * We actually can use vec!
      
      * Prevent division by zero if the reporters is empty
      
      * offence_forces_new_era/nominators_also_get_slashed
      
      * advance_session
      
      * Fix tests.
      
      * Update srml/staking/src/lib.rs
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * slashing_performed_according_exposure
      
      * Check that reporters receive their slice.
      
      * Small clean-up.
      
      * invulnerables_are_not_slashed
      
      * Minor clean ups.
      
      * Improve docs.
      
      * dont_slash_if_fraction_is_zero
      
      * Remove session dependency from offences.
      
      * Introduce sr-staking-primitives
      
      * Move offence under sr_staking_primitives
      
      * rename session_index
      
      * Resolves todos re using SessionIndex
      
      * Fix staking tests.
      
      * Properly scale denominator.
      
      * Fix UnresponsivnessOffence
      
      * Fix compilation.
      
      * Tests for offences.
      
      * Clean offences tests.
      
      * Fix staking doc test.
      
      * Bump spec version
      
      * Fix aura tests.
      
      * Fix node_executor
      
      * Deposit an event on offence.
      
      * Fix compilation of node-runtime
      
      * Remove aura slashing logic.
      
      * Remove HandleReport
      
      * Update docs for timeslot.
      
      * rename with_on_offence_fractions
      
      * Add should_properly_count_offences
      
      * Replace ValidatorIdByIndex with CurrentElectedSet
      
      ValidatorIdByIndex was querying the current_elected set in each call, doing loading (even though its from cache), deserializing and cloning of element.
      
      Instead of this it is more efficient to use `CurrentElectedSet`. As a small bonus, the invariant became a little bit easier: now we just rely on the fact that `keys` and `current_elected` set are of the same length rather than relying on the fact that `validator_id_by_index` would work similar to `<[T]>::get`.
      
      * Clarify babe equivocation
      
      * Fix offences.
      
      * Rename validators_count to validator_set_count
      
      * Fix squaring.
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Docs for CurrentElectedSet.
      
      * Don't punish only invulnerables
      
      * Use `get/insert` instead of `mutate`.
      
      * Fix compilation
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update srml/offences/src/lib.rs
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * Update srml/im-online/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update srml/im-online/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update srml/im-online/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update srml/babe/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update core/sr-staking-primitives/src/offence.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Add aura todo.
      
      * Allow multiple reports for single offence report.
      
      * Fix slash_fraction calculation.
      
      * Fix typos.
      
      * Fix compilation and tests.
      
      * Fix staking tests.
      
      * Update srml/im-online/src/lib.rs
      
      Co-Authored-By: default avatarLogan Saether <[email protected]>
      
      * Fix doc on time_slot
      
      * Allow slashing only on current era (#3411)
      
      * only slash in current era
      
      * prune journal for last era
      
      * comment own_slash
      
      * emit an event when old slashing events are discarded
      
      * Pave the way for pruning
      
      * Address issues.
      
      * Try to refactor collect_offence_reports
      
      * Other fixes.
      
      * More fixes.
      5d992d80
  4. Aug 07, 2019
    • Arkadiy Paronyan's avatar
      Set uncles inherent (#3317) · d6eb5dd8
      Arkadiy Paronyan authored
      * Include uncles
      
      * Filter missing uncles
      
      * Moved inherent registration to a new crate
      
      * Ignore invalid inherent encoding
      d6eb5dd8
    • Gavin Wood's avatar
      Refactor key management (#3296) · ed61b1fd
      Gavin Wood authored
      
      
      * Add Call type to extensible transactions.
      
      Cleanup some naming
      
      * Merge Resource and BlockExhausted into just Exhausted
      
      * Fix
      
      * Another fix
      
      * Call
      
      * Some fixes
      
      * Fix srml tests.
      
      * Fix all tests.
      
      * Refactor crypto so each application of it has its own type.
      
      * Introduce new AuthorityProvider API into Aura
      
      This will eventually allow for dynamic determination of authority
      keys and avoid having to set them directly on CLI.
      
      * Introduce authority determinator for Babe.
      
      Experiment with modular consensus API.
      
      * Work in progress to introduce KeyTypeId and avoid polluting API
      with validator IDs
      
      * Finish up drafting imonline
      
      * Rework offchain workers API.
      
      * Rework API implementation.
      
      * Make it compile for wasm, simplify app_crypto.
      
      * Fix compilation of im-online.
      
      * Fix compilation of im-online.
      
      * Fix more compilation errors.
      
      * Make it compile.
      
      * Fixing tests.
      
      * Rewrite `keystore`
      
      * Fix session tests
      
      * Bring back `TryFrom`'s'
      
      * Fix `srml-grandpa`
      
      * Fix `srml-aura`
      
      * Fix consensus babe
      
      * More fixes
      
      * Make service generate keys from dev_seed
      
      * Build fixes
      
      * Remove offchain tests
      
      * More fixes and cleanups
      
      * Fixes finality grandpa
      
      * Fix `consensus-aura`
      
      * Fix cli
      
      * Fix `node-cli`
      
      * Fix chain_spec builder
      
      * Fix doc tests
      
      * Add authority getter for grandpa.
      
      * Test fix
      
      * Fixes
      
      * Make keystore accessible from the runtime
      
      * Move app crypto to its own crate
      
      * Update `Cargo.lock`
      
      * Make the crypto stuff usable from the runtime
      
      * Adds some runtime crypto tests
      
      * Use last finalized block for grandpa authority
      
      * Fix warning
      
      * Adds `SessionKeys` runtime api
      
      * Remove `FinalityPair` and `ConsensusPair`
      
      * Minor governance tweaks to get it inline with docs.
      
      * Make the governance be up to date with the docs.
      
      * Build fixes.
      
      * Generate the inital session keys
      
      * Failing keystore is a hard error
      
      * Make babe work again
      
      * Fix grandpa
      
      * Fix tests
      
      * Disable `keystore` in consensus critical stuff
      
      * Build fix.
      
      * ImOnline supports multiple authorities at once.
      
      * Update core/application-crypto/src/ed25519.rs
      
      * Merge branch 'master' into gav-in-progress
      
      * Remove unneeded code for now.
      
      * Some `session` testing
      
      * Support querying the public keys
      
      * Cleanup offchain
      
      * Remove warnings
      
      * More cleanup
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * More cleanups
      
      * JSONRPC API for setting keys.
      
      Also, rename traits::KeyStore* -> traits::BareCryptoStore*
      
      * Bad merge
      
      * Fix integration tests
      
      * Fix test build
      
      * Test fix
      
      * Fixes
      
      * Warnings
      
      * Another warning
      
      * Bump version.
      ed61b1fd
  5. Jul 22, 2019
  6. Jul 20, 2019
    • Michael Müller's avatar
      Introduce srml/im-online (#3079) · aa8c06a0
      Michael Müller authored
      
      
      * Fix grammar and typo
      
      * Extend network service
      
      * Extend offchain API
      
      * Support creating unsigned UncheckedExtrinsic
      
      * Introduce srml/im-online
      
      * Bump impl and spec version
      
      * Fix web-wasm test
      
      * Apply suggestions from code review
      
      Remove parity-multiaddr dependency
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Replace transmute with from_raw_parts
      
      * Replace PeerId.to_string() with .to_base58()
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Update Cargo.lock
      
      * Bump impl and spec version (again)
      
      It was updated in master in the meantime.
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      
      * Address comments
      
      * Add public function is_online_in_current_session()
      
      * Bump spec_version
      
      * Fix doc tests
      
      * Improve comments
      
      * Remove superfluous line
      
      * Name parameters consistently
      
      * Implement comments
      
      * Switch From to TryFrom
      
      * Use Vec instead of HashSet
      
      * Fix tests
      
      * Revert me: local testing
      
      * Fix check if already sent during session
      
      We gossip each session, hence we need to check
      if already sent in this session (not era).
      
      * Fix typos
      
      * Consistent terminology
      
      * Revert "Revert me: local testing"
      
      This reverts commit 73fbc29f.
      
      * Introduce IsMember trait
      
      * Implement misc comments
      
      * Remove unused function
      
      * Fix test
      
      * Fix external_addresses being written
      
      * Fix test
      
      * Add necessary trait bound
      
      * Do not increment version
      
      * Update lib.rs
      aa8c06a0
  7. Jul 11, 2019
  8. Jul 10, 2019
    • Gavin Wood's avatar
      Technical Committee (#3041) · 43dac628
      Gavin Wood authored
      * Add copy of council seats as elections module.
      
      * Split council into collective and elections modules.
      
      Make collective instanceable.
      
      * Propagate changes to the runtime and fix origin/event
      
      * insert_ref and put_ref to avoid copies.
      
      * Add tests
      
      * Fix up collective's tests
      
      * One more test
      
      * Fix elections module tests
      
      * Missed merge line
      
      * Minor fix
      
      * Test fixes
      
      * Line widths
      
      * Line widths
      
      * Rntime version
      
      * Remove comment
      
      * Deduplicate
      
      * Bump runtime again
      
      * Fix test
      43dac628
  9. Jul 04, 2019
    • Bastian Köcher's avatar
      Build WASM binaries as part of cargo build (#2868) · 108704a2
      Bastian Köcher authored
      
      
      * Introduce `wasm-builder` and `wasm-builder-runner` to retire `build.sh`
      
      Make use of `wasm-builder` in `test-runtime`.
      
      * Add build script and remove the wasm project
      
      * Port `node-runtime` to new wasm-builder
      
      * Make `substrate-executor` tests work with `wasm-builder`
      
      * Move `node-template` to `wasm-builder`
      
      * Remove `build.sh` :)
      
      * Remove the last include_bytes
      
      * Adds the missing build.rs files
      
      * Remove `build.sh` from CI
      
      * Debug CI
      
      * Make it work in CI
      
      * CI attempt 3
      
      * Make `substrate-runtime-test` compile on stable
      
      * Ahhh, some missed `include_bytes!`
      
      * AHH
      
      * Add suggestions
      
      * Improve search for `Cargo.lock` and don't panic if it is not found
      
      * Searching from manifest path was no good idea
      
      * Make the `wasm-builder` source better configurable
      
      * Expose the bloaty wasm binary as well
      
      * Make sure to rerun WASM recompilation on changes in dependencies
      
      * Introduce new `WASM_BUILD_TYPE` env and make sure to call `build.rs` on
      changes to env variables
      
      * Remove `build.sh` from READMEs
      
      * Rename the projects
      
      * Fixes CI
      
      * Update lock file
      
      * Fixes merge-conflict
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTriplEight <[email protected]>
      
      * Try to make windows happy
      
      * Replace all back slashes in paths with slashes
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Use cargo from `CARGO` env variable
      
      * Fix compilation
      
      * Use `rustup` for running the nightly build
      
      * Make individual projects skipable
      
      * Fix compilation
      
      * Fixes compilation
      
      * Build all WASM projects in one workspace
      
      * Replace more back slashes!
      
      * Remove `inlcude_bytes!`
      
      * Adds some documentation
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarShawn Tabrizi <[email protected]>
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarShawn Tabrizi <[email protected]>
      
      * More review comments
      
      * Update `Cargo.lock`
      
      * Set license
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * More review comments + adds `TRIGGER_WASM_BUILD` env
      
      * Fix doc tests
      
      * Increase version + update README
      
      * Switch crates.io version of `wasm-builder`
      
      * Update README
      
      * Switch to released version of `wasm-builder-runner`
      108704a2
  10. Jun 26, 2019
  11. Jun 19, 2019
  12. Jun 14, 2019
    • Gavin Wood's avatar
      New sessions, kill consensus module (#2802) · dbf32262
      Gavin Wood authored
      
      
      * Draft of new sessions
      
      * Reintroduce tuple impls
      
      * Move staking module to new session API
      
      * More work on staking and grandpa.
      
      * Use iterator to avoid cloning and tuple macro
      
      * Make runtime build again
      
      * Polish the OpaqueKeys devex
      
      * Move consensus logic into system & aura.
      
      * Fix up system module
      
      * Get build mostly going. Stuck at service.rs
      
      * Building again
      
      * Update srml/staking/src/lib.rs
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Refactoring out Consensus module, AuthorityIdOf, &c.
      
      * Refactored out DigestItem::AuthoritiesChanged. Building.
      
      * Remove tentative code
      
      * Remove invalid comment
      
      * Make Seal opaque and introduce nice methods for handling opaque items.
      
      * Start to use proper digest for Aura authorities tracking.
      
      * Fix up grandpa, remove system::Raw/Log
      
      * Refactor Grandpa to use new logging infrastructure.
      
      Also make authorityid/sessionkey static. Switch over to storing
      authorities in a straight Vec.
      
      * Building again
      
      * Tidy up some AuthorityIds
      
      * Expunge most of the rest of the AuthorityKey confusion.
      
      Also, de-generify Babe and re-generify Aura.
      
      * Remove cruft
      
      * Untangle last of the `AuthorityId`s.
      
      * Sort out finality_tracker
      
      * Refactor median getting
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * Session tests works
      
      * Update core/sr-primitives/src/generic/digest.rs
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Session tests works
      
      * Fix for staking from @dvc94ch
      
      * log an error
      
      * fix test runtime build
      
      * Some test fixes
      
      * Staking mock update to new session api.
      
      * Fix build.
      
      * Move OpaqueKeys to primitives.
      
      * Use on_initialize instead of check_rotate_session.
      
      * Update tests to new staking api.
      
      * fixup mock
      
      * Fix bond_extra_and_withdraw_unbonded_works.
      
      * Fix bond_with_little_staked_value_bounded_by_slot_stake.
      
      * Fix bond_with_no_staked_value.
      
      * Fix change_controller_works.
      
      * Fix less_than_needed_candidates_works.
      
      * Fix multi_era_reward_should_work.
      
      * Fix nominating_and_rewards_should_work.
      
      * Fix nominators_also_get_slashed.
      
      * Fix phragmen_large_scale_test.
      
      * Fix phragmen_poc_works.
      
      * Fix phragmen_score_should_be_accurate_on_large_stakes.
      
      * Fix phragmen_should_not_overflow.
      
      * Fix reward_destination_works.
      
      * Fix rewards_should_work.
      
      * Fix sessions_and_eras_should_work.
      
      * Fix slot_stake_is_least_staked_validator.
      
      * Fix too_many_unbond_calls_should_not_work.
      
      * Fix wrong_vote_is_null.
      
      * Fix runtime.
      
      * Fix wasm runtime build.
      
      * Update Cargo.lock
      
      * Fix warnings.
      
      * Fix grandpa tests.
      
      * Fix test-runtime build.
      
      * Fix template node build.
      
      * Fix stuff.
      
      * Update Cargo.lock to fix CI
      
      * Re-add missing AuRa logs
      
      Runtimes are required to know about every digest they receive ― they
      panic otherwise.  This re-adds support for AuRa pre-runtime digests.
      
      * Update core/consensus/babe/src/digest.rs
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Kill log trait and all that jazz.
      
      * Refactor staking tests.
      
      * Fix ci runtime wasm check.
      
      * Line length 120.
      
      * Make tests build again
      
      * Remove trailing commas in function declarations
      
      The `extern_functions!` macro doesn’t like them, perhaps due to a bug in
      rustc.
      
      * Fix type error
      
      * Fix compilation errors
      
      * Fix a test
      
      * Another couple of fixes
      
      * Fix another test
      
      * More test fixes
      
      * Another test fix
      
      * Bump runtime.
      
      * Wrap long line
      
      * Fix build, remove redundant code.
      
      * Issue to track TODO
      
      * Leave the benchmark code alone.
      
      * Fix missing `std::time::{Instant, Duration}`
      
      * Indentation
      
      * Aura ConsensusLog as enum
      dbf32262
  13. Jun 11, 2019
    • Tomasz Drwięga's avatar
      Make test-client generic over runtime (#2824) · 6df8a813
      Tomasz Drwięga authored
      * Make test-client generic over runtime.
      
      * Make sure genesis storage is constructed correctly.
      
      * Use prelude in tests.
      
      * Add an example of how to use test-client with node/runtime.
      
      * Bump version.
      
      * Rename test-clients.
      6df8a813
  14. Jun 04, 2019
    • Tomasz Drwięga's avatar
      JSON-RPC client generation (#2778) · e8739300
      Tomasz Drwięga authored
      * Bump jsonrpc & generate clients.
      
      * Initial version of JSON-RPC client.
      
      * Re-wort
      
      * Remove spurious `#[derive(Encode, Decode)]`
      
      They did not compile, since `Encode` and `Decode` are deliberately not
      implemented for `usize`.
      
      Fixes #2742.
      
      * Re-write rpc-client example.
      
      * Update to jsonrpc=12.0.0
      
      * Remove unnecessary import
      
      * Bump version.
      
      * Revert version bump.
      
      * Bump again.
      e8739300
  15. May 24, 2019
    • Tomasz Drwięga's avatar
      Expunge error-chain (feat. tomaka) (#2662) · d713fbc3
      Tomasz Drwięga authored
      * Remove error_chain
      
      * Expunge error-chain from rpc and service.
      
      * Expunge from transaction pool.
      
      * Expunge from node/cli
      
      * Expunge from keystore.
      
      * Remove some boilerplate.
      
      * Fix remaining stuff.
      
      * Improve on deprecation message.
      
      * Fix issues.
      
      * Fix trnsaction pool tests.
      
      * Fix the rest.
      
      * Fix borked merge.
      
      * Update lock
      d713fbc3
  16. May 10, 2019
  17. May 09, 2019
  18. Apr 15, 2019
    • DemiMarie-parity's avatar
      Add basic BABE consensus type (#2165) · dd2225d5
      DemiMarie-parity authored
      
      
      * Add basic BABE consensus type
      
      * Update core/consensus/babe/slots/Cargo.toml
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Fix parameterization and run `rustfmt`
      
      * Respond to review comments
      
      * Update various Cargo.lock files
      
      * Revert "Update various Cargo.lock files"
      
      This reverts commit af53d762
      
      .
      
      * `BabeSealSignature` → `BabeSeal`
      
      * Move slot code to its own crate
      
      This was highly non-trivial, due to cyclic dependencies.
      
      * Remove redundancy between AuRa and BABE
      
      Some of the code duplication was removed using a macro.
      
      * Fix build error
      
      * Avoid non-`#[doc(hidden)]` re-exports
      
      Also, bump some library versions in `Cargo.toml`.
      
      * Remove dead code in AuRa
      
      * Remove impl_slot macro
      
      It was more trouble than it was worth.
      
      Also, delete useless dependencies on Serde.
      
      * AuRa and BABE need different DB keys
      
      * Bring back `aura::Network`, but deprecate it.
      
      * Improve docs and add `slot_duration` inherent method
      
      * Add docs to `substrate_consensus_aura::SlotDuration`
      
      * Add missing documentation and #![forbid(missing_docs, unsafe_code)]
      
      * Add a #![forbid(missing_docs)]
      
      * Remove dependency of `test-runtime` on `slots`
      
      * Update core/consensus/babe/src/lib.rs
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Remove wrongly added file
      
      * Fix copyright notice
      
      Co-Authored-By: default avatarDemiMarie-parity <[email protected]>
      
      * Bump `impl_version` and `spec_version`
      
      * Fix deprecation version; remove spurious carets
      
      * Update Cargo.lock
      
      * Update dependencies
      dd2225d5
  19. Apr 02, 2019
    • cheme's avatar
      no_std support for substrate trie (#2146) · f4ced940
      cheme authored
      * no_std trie compile in test_runtime (require to set nightly feature due
      to the way hashbrown currently works).
      
      * No nightly with hashmap_core.
      
      * using crate elastic-array
      
      * switch to publish trie crates
      
      * fix default array decl
      
      * bump impl_version for ci
      
      * set all semver when possible wasm, and remove redundant code.
      
      * Actually test use_trie function
      
      * impl version +1
      
      * Bump impl version
      f4ced940
  20. Apr 01, 2019
    • Gav Wood's avatar
      Bump version to 1.0.0 globally (#2149) · d57202d5
      Gav Wood authored
      * Bump versionb globally
      
      * Rebuild and fix
      
      * Rename fixes
      
      * Rebuild
      
      * Minor fix and code formatting for validator election
      
      * Fix tests
      
      * More test fixes
      
      * Fix several bugs in phragmen elections.
      
      * Rebuild, remove pointless closures
      d57202d5
  21. Mar 23, 2019
  22. Mar 21, 2019
    • Pierre Krieger's avatar
      Add a substrate-peerset crate (#2042) · c1d342a3
      Pierre Krieger authored and asynchronous rob's avatar asynchronous rob committed
      * Add a substrate-peerset crate
      
      * Some adjustements
      
      * More adjustements
      
      * Use a temporary libp2p branch
      
      * Add back-off mechanism
      
      * Fix RPC tests
      
      * Some adjustements
      
      * Another libp2p bugfix
      
      * Do a round-robin in the peerset
      
      * Use a real dependency instead of a patch for libp2p
      
      * Initialize reserved nodes correctly
      
      * Better diagnostic for no address
      
      * Don't allocate slots if in reserved only
      
      * Ban node on dial failure
      
      * Fix indentation
      c1d342a3
  23. Mar 20, 2019
    • Gav Wood's avatar
      Introduce safe types for handling imbalances (#2048) · cc8f93c0
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Be a little safer with total issuance.
      
      * PairT instead of _Pair
      
      * Remove rev causing upset
      
      * Remove fees stuff.
      
      * Fix build (including tests)
      
      * Update runtime, bump version
      
      * Fix
      
      * Handle gas refunds properly.
      
      * Rename identifier
      
      ala #2025
      
      * Address grumbles
      
      * New not-quite-linear-typing API
      
      * Slimmer API
      
      * More linear-type test fixes
      
      * Fix tests
      
      * Tidy
      
      * Fix some grumbles
      
      * Keep unchecked functions private
      
      * Remove another less-than-safe currency function and ensure that
      contracts module can never create cash.
      
      * Address a few grumbles and fix tests
      cc8f93c0
  24. Mar 18, 2019
    • Shawn Tabrizi's avatar
      Remove upgrade-key module from SRML (#2018) · 31a398f7
      Shawn Tabrizi authored
      * Remove upgrade-key from SRML. Update chain spec builder text
      
      * bump spec_version, rebuild wasm
      
      * Remove upgrade-key from SRML. Update chain spec builder text
      
      * bump spec_version, rebuild wasm
      
      * Rebase, Rebuild
      
      * Rebuild wasm
      31a398f7
  25. Mar 15, 2019
    • thiolliere's avatar
      Implement parameterisable modules (#1800) · 7c95fb0b
      thiolliere authored
      * first implementation
      
      * remove done comment
      
      * origin done
      
      * impl log for instance
      
      * impl inherent for instance
      
      * Fix wasm build + full example build
      
      this requires parity codec implements codec for core::marker::PhantomData
      
      * patch parity-codec link to github branch
      
      * improve internal names and fix instance prefix
      
      * Fix in macros
      
      * add test modules for support
      
      this allow to test for construct_runtime as well.
      
      The reason to have put that in another crate is:
      * if we put test in `tests/` dir of srml/support then decl_storage fails to get
        srml-support access because it believes it is inside srml-support
        crate and so derive access to `quote!{ crate }` but this is wrong
        (and I don't see any way to prevent that, and it only bother us so I
        don't think that matters that much)
      * if we put test inside lib.rs then contruct_runtime cannot be used
        because it call some macros that are defined with macros
        (decl_outer_event and decl_outer_origin) and thus rustc complains.
      
      * defaultinstance to its own struct to avoid errors
      
      * enforce <T, I> for Event and Config, impl test
      
      * add origin, log, inherent to test
      
      * test more code generation
      
      * basic storage test
      
      * fix typo
      
      * rename a few imports and field
      
      * delete wip test in example and runtime
      
      * change default prefix to make it backward compatible with test
      
      * rename Instance to I and Instantiable to Instance
      
      note: the name of generic parameter I is only enforce by decl_module!
      and this could be rewritten
      
      * doc
      
      * clean old TODOs
      
      * update parity-codec to 3.2
      
      * update node impl version + builds
      
      * fix warning
      
      * fix unrelated grandpa test
      
      * refactor code
      7c95fb0b
  26. Mar 05, 2019
    • asynchronous rob's avatar
      Offline fallback for GRANDPA (#1619) · 4399e579
      asynchronous rob authored
      
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * skeleton for finality tracker
      
      * dispatch events when nothing finalized for a long time
      
      * begin integrating finality tracker into grandpa
      
      * add delay field to pending change
      
      * add has_api_with function to sr_version for querying APIs
      
      * partially integrate new force changes into grandpa
      
      * implement forced changes
      
      * get srml-grandpa compiling
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * Update core/finality-grandpa/src/authorities.rs
      
      Co-Authored-By: default avatarrphmeier <[email protected]>
      
      * remove explicit dependence on CoreApi
      
      * increase node runtime version
      
      * integrate grandpa forced changes into node runtime
      
      * add some tests to finality-tracker
      
      * integrate finality tracking into node-runtime
      
      * test forced-change logic
      
      * test forced changes in the authority-set handler
      
      * kill some unneeded bounds in client
      
      * test forced-changes in finality-grandpa and fix logic
      
      * build wasm and finality-tracker is no-std
      
      * restart voter on forced change
      
      * allow returning custom error type from lock_import_and_run
      
      * extract out most DB logic to aux_schema and use atomic client ops
      
      * unify authority set writing
      
      * implement set pausing
      
      * bump runtime version
      
      * note on DB when we pause.
      
      * core: grandpa: integrate forced changes with multiple pending standard changes
      
      * core: grandpa: fix AuthoritySet tests
      
      * runtime: bump impl_version
      
      * core: clear pending justification requests after forced change import
      
      * srml: finality-tracker: use FinalizedInherentData
      
      * core: log requests for clearing justification requests
      
      * core, node: update runtimes
      
      * core: grandpa: fix tests
      
      * core: grandpa: remove todos and add comments
      
      * core: grandpa: use has_api_with from ApiExt
      
      * core: fix tests
      
      * core: grandpa: remove unnecessary mut modifier
      
      * core: replace PostImportActions bitflags with struct
      
      * core: grandpa: restrict genesis on forced authority set change
      
      * core: grandpa: add more docs
      
      * core: grandpa: prevent safety violations in Environment::finalize_block
      
      * core: grandpa: register finality tracker inherent data provider
      
      * core: grandpa: fix tests
      
      * node: update runtime blobs
      
      * core: grandpa: remove outdated todo
      
      * core: aura: fix typo in log message
      
      * core: grandpa: check re-finalization is on canonical chain
      
      * srml: finality-tracker: fix initialization
      
      * node: update runtime wasm
      
      * srml: finality-tracker: don't re-initialize config keys
      4399e579
  27. Feb 19, 2019
    • André Silva's avatar
      Import multiple authority set change blocks (#1808) · 18bbe130
      André Silva authored
      * core: implement logic for tracking dag of possible pending changes
      
      * core: move pending justifications dag to its own crate
      
      * core: remove unnecessary clone bounds on dag
      
      * core: request justifications in-order from the dag
      
      * core: dag: rename changes variables to node
      
      * core: dag: allow finalizing blocks not part of dag
      
      * core: dag: track best finalized number
      
      * core: dag: add more tests
      
      * core: sync: clean up pending justifications dag
      
      * core: dag: derive codec decode encode
      
      * core: dag: better error support
      
      * core: dag: add finalization guarded by predicate
      
      * core: grandpa: track multiple authority set changes in dag
      
      * core: dag: add pre-order iterator
      
      * core: grandpa: request justifications on startup
      
      * core: dag: rearrange order of definitions
      
      * core: rename util/dag to util/fork_tree
      
      * core: fork_tree: add docs
      
      * core: fork_tree: add more tests
      
      * core: fork_tree: fix issues found in tests
      
      * core: grandpa: fix authorities tests
      
      * core: grandpa: add docs for is_descendent_of
      
      * core: sync: add docs for PendingJustifications
      
      * core: sync: add test for justification requests across forks
      
      * core: sync: don't resend import or finality notifications in tests
      
      * core: grandpa: add test for importing multiple change blocks
      
      * core: grandpa: fix logic for checking if a block enacts a change
      
      * core: grandpa: fix authorities tests
      18bbe130
  28. Feb 15, 2019
    • Xiliang Chen's avatar
      Transaction Fee Module (#1648) · 14ee64c3
      Xiliang Chen authored
      * wip
      
      * Split bytes fee charging and charging by amount into different traits.
      
      * Move to edition 2018.
      
      * Implemented charge fee traits for fees module.
      
      * Implemented 'on_finalise' for fee module.
      
      * Updated fees finalize impl.
      
      * Renaming and documentation update.
      
      * Added overflow & underflow check for fee calculation.
      
      * Added mock and unit tests for fee module.
      
      * More unit tests for fees module.
      
      * Fixed srml-executive unit tests.
      
      * Remove transaction base/bytes fee from balances module, fix unit tests.
      
      * fix compile error
      
      * Fixed unit test.
      
      * Minor fixes.
      
      * Bump spec version.
      
      * Bump spec version.
      
      * Updated fees module and runtime wasm.
      
      * Fees module code style improvement; updated runtime wasm.
      
      * Bump spec and impl version.
      14ee64c3
  29. Feb 13, 2019
  30. Feb 06, 2019
    • Bastian Köcher's avatar
      Moves `node-template` into substrate repo (#1637) · e4c8d74c
      Bastian Köcher authored
      * Make runtime macros work without required `macro_use`
      
      * Adds node-template
      
      * Adds node-template-release tool
      
      * Fixes building `node-template` and improve the release
      
      * Add `profile.release` by release script to remove warning
      
      * Adds script for releasing the node template
      
      * Fixes compilation after master merge
      
      * Port node-template to edition 2018
      
      * Remove license
      
      * Fixes compilation after master merge
      
      * Add `node-template-release.sh` into the CI
      
      * WIP Ci integrate node template (#1701)
      
      * copy artifacts to s3 bucket latest path
      
      * typo
      
      * bucket name
      
      * Update wasm files
      e4c8d74c
    • Wei Tang's avatar
      Update trie to v0.11 (#1704) · 2056e4cd
      Wei Tang authored
      * Update trie to v0.11
      
      * Update wasm runtimes
      2056e4cd
    • Wei Tang's avatar
      Support multi-hash in multi-trie via PlainDB (#1106) · dd3fdeed
      Wei Tang authored and Arkadiy Paronyan's avatar Arkadiy Paronyan committed
      * Temporarily pin trie to #2
      
      * Use generic and delay trait object casting
      
      Rust does not support super-trait upcasting
      
      * Add PlainDB impl for Ephemeral
      
      * Add PlainDB trait alias for completeness
      
      * Use PlainDB for test TrieBackendStorage fetch
      
      We always check overlay first for a storage fetch, which already checked null data. Using PlainDB here makes it work
      nicer with other PlainDB overlays.
      
      * Update trie reference
      
      * Use HashDBRef in places when approriate
      
      * Use PlainDBRef in places when approriate
      
      * Update trie crate reference
      
      * Remove unused HashDB::keys
      
      * Patch dependencies
      
      * Fix cargolock
      
      * Update cargo lock again
      dd3fdeed
  31. Feb 04, 2019
  32. Jan 25, 2019
    • Benjamin Kampmann's avatar
      Update dependencies (#1527) · f17d79fb
      Benjamin Kampmann authored
      * update to latest env_logger
      
      * roundabout dependency update
      
      * Update to latest vengen
      
      * Update rand to 0.6
      
      * Update to latest rng shuffle API
      
      * Roundabout update of dependencies
      
      * Update rustc_hex
      
      * Update wasm
      
      * Fix logging setup in tests
      
      * revert to fix test
      f17d79fb
  33. Jan 22, 2019
    • Bastian Köcher's avatar
      Rewrite Inherent data (#1488) · 53bf81e5
      Bastian Köcher authored
      
      
      * Implement new inherent data
      
      * Fixes compilation on wasm
      
      * Fixes after rebase
      
      * Switch back to generate inherent stuff by macro
      
      * Update after rebase
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarbkchr <[email protected]>
      
      * Fix compilation after rebase
      
      * Address grumbles
      
      * Remove `InherentDataProviders` from `Client`
      
      * Update wasm files after rebase
      
      * Address grumbles
      
      * Fixes compilation after latest merge
      
      * Last fix
      53bf81e5
  34. Jan 16, 2019
    • Gav Wood's avatar
      Split Indices module from Balances (#1404) · defa2ec3
      Gav Wood authored
      * Indices module
      
      * Remove indices stuff from balances
      
      * Rejob node, move Lookup into system.
      
      * Fix up some modules.
      
      * Fix democracy tests
      
      * Fix staking tests
      
      * Fix more tests
      
      * Final test fixes
      
      * Bump runtime versions
      
      * Assets uses compact dispatchers
      
      * Contracts module uses indexed addressing
      
      * Democracy has more compact encoding
      
      * Example now demonstrates compact eencoding
      
      * Sudo uses indexed address
      
      * Upgrade key also uses indexed lookups
      
      * Assets more compact types.
      
      * Fix test
      
      * Rebuild runtime, whitespace
      
      * Remove TOODs
      
      * Remove TODOs
      
      * Add a couple of tests back to balances.
      
      * Update lib.rs
      
      * Update lib.rs
      defa2ec3
  35. Jan 10, 2019
  36. Dec 21, 2018
    • Gav Wood's avatar
      Sudo module (#1315) · f847f59f
      Gav Wood authored
      * Sudo module
      
      * Fix comment
      
      * Fix errors
      
      * Fix test
      
      * Update hashes
      
      * Final test fixes and build
      
      * Final hex change
      f847f59f