Skip to content
  1. Apr 17, 2019
    • André Silva's avatar
      grandpa: observer (#2244) · 49993979
      André Silva authored and asynchronous rob's avatar asynchronous rob committed
      * grandpa: initial implementation of minimal grandpa worker
      
      * grandpa: extract grandpa observer future to function
      
      * grandpa: add test for observer
      
      * grandpa: start observer if no local key is defined
      
      * grandpa: add minor comments
      
      * grandpa: observer: log invalid commit
      
      * grandpa: observer: persist voter set state on authority change and pause
      
      * grandpa: observer: use commit processing callback
      
      * grandpa: keep run_grandpa to avoid breaking public api
      
      * grandpa: use grandpa::process_commit_validation_result
      
      * grandpa: use finality-grandpa 0.7.2
      49993979
  2. Apr 16, 2019
    • Bastian Köcher's avatar
      Add `StorageValue::append` and speed-up `deposit_event` (#2282) · 89f951f4
      Bastian Köcher authored
      * Adds deposit event benchmark
      
      * Add `StorageValue::append`
      
      `StorageValue::append` can be used by types that implement `EncodeAppend` to speed-up situations where you just want to append
      an item to storage without wanting to decode all previous items.
      
      * Stay at 100 events
      
      * Fixes compilation
      
      * Use correct year and increase spec version
      89f951f4
  3. Apr 15, 2019
    • Bastian Köcher's avatar
      Remove peerset debug output test (#2267) · 0d969834
      Bastian Köcher authored
      * Remove peerset debug output test
      
      We should not test debug output, especially when it can change.
      
      * Update lock file
      0d969834
    • 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
  4. Apr 11, 2019
    • Andrew Jones's avatar
      Replace error-chain for client error (#2231) · d39e718f
      Andrew Jones authored
      * WIP: convert client error
      
      * Remove error_chain for client error
      
      * Ignore tx-pool error deprecation warning
      
      * Update Cargo.lock files
      
      * Fix tests
      
      * Increment impl_version
      
      * Derive From impls, remove allow(missing_docs)
      
      * Remove space
      
      * Remove redundant into()s
      
      * Blockchain Error source
      
      * Bump impl version
      d39e718f
  5. Apr 08, 2019
    • André Silva's avatar
      grandpa: Voter persistence and upgrade to finality-grandpa v0.7 (#2139) · 6617f231
      André Silva authored and asynchronous rob's avatar asynchronous rob committed
      * core: grandpa: migrate to grandpa 0.7
      
      * core: grandpa: store current round votes and load them on startup
      
      * core: grandpa: resend old persisted votes for the current round
      
      * core: grandpa: store base and votes for last completed round
      
      * core: grandpa: fix latest grandpa 0.7 changes
      
      * core: grandpa: update to grandpa 0.7.1
      
      * core: grandpa: persist votes for last two completed rounds
      
      * core: grandpa: simplify VoterSetState usage
      
      * core: grandpa: use Environment::update_voter_set_state
      
      * core: grandpa: fix aux_schema test
      
      * core: grandpa: add docs
      
      * core: grandpa: add note about environment assumption
      
      * core: grandpa: don't update voter set state on ignored votes
      
      * core: grandpa: add test for v1 -> v2 aux_schema migration
      
      * core: grandpa: add test for voter vote persistence
      
      * core: grandpa: use grandpa 0.7.1 from crates.io
      
      * core: grandpa: use try_init in test
      
      * core: grandpa: add comment about block_import in test
      
      * core: grandpa: avoid cloning HasVoted
      
      * core: grandpa: add missing docs
      
      * core: grandpa: cleanup up can_propose/prevote/precommit
      6617f231
  6. Apr 04, 2019
    • Marek Kotewicz's avatar
      simplification of peerset api (#2123) · dd82e0e6
      Marek Kotewicz authored
      * Introduction of PeersetHandle
      
      * integrate PeersetHandle with the rest of the codebase
      
      * fix compilation errors
      
      * more tests for peerset, fixed overwriting bug in add_reserved_peer
      
      * Slots data structure and bugfixes for peerset
      
      * bend to pressure
      
      * updated lru-cache to 0.1.2 and updated linked-hash-map to 0.5.2
      
      * peerset discovered list is now a LinkedHashMap
      
      * fix review suggestions
      
      * split back Peerset and PeersetHandle
      
      * test for Peerset::discovered
      
      * applied review suggestions
      
      * fixes to peerset::incoming
      
      * peerset disconnects are all instantaneous
      
      * instantaneous drop in peerset finished
      
      * Peerset::set_reserved_only can also reconnect nodes
      
      * Peerset scores cache uses lru-cache
      
      * remove redundant function call and comment from Peerset::on_set_reserved_only
      
      * add_peer returns SlotState enum
      
      * apply review suggestions
      
      * is_reserved -> is_connected_and_reserved
      dd82e0e6
  7. Apr 03, 2019
  8. 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
    • thiolliere's avatar
      skip phantom for decl_event (#2158) · 51e7b776
      thiolliere authored
      * use parity-codec-derive from parity-codec everywhere
      
      * codec v3.2 -> v3.3
      
      * skip phantom when deriving event
      
      * fix decl_module call
      
      * update impl version of node + builds
      51e7b776
  9. 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
  10. Mar 30, 2019
  11. Mar 29, 2019
    • Stanislav Tkach's avatar
      Move authorities interface from Core to consensus (#1412) · 1b98eaf4
      Stanislav Tkach authored
      * Move authorities interface from Core to consensus
      
      f
      
      * notify all caches of block insert + create with up-to-date best_fin
      
      * merged authorities_are_cached from light_grandpa_import2
      
      * Add ProvideCache trait
      
      * Create helper function for 'get_cache'
      
      * Fix some formatting
      
      * Bump impl version
      
      * Resolve wasm conflicts
      
      * Apply review comments
      
      * Use try_for_each
      
      * Move authorities interface from Core to consensus
      
      f
      
      * notify all caches of block insert + create with up-to-date best_fin
      
      * merged authorities_are_cached from light_grandpa_import2
      
      * Add ProvideCache trait
      
      * Create helper function for 'get_cache'
      
      * Fix some formatting
      
      * Bump impl version
      
      * Resolve wasm conflicts
      
      * Apply review comments
      
      * Use try_for_each
      
      * Move authorities interface from Core to consensus
      
      f
      
      * notify all caches of block insert + create with up-to-date best_fin
      
      * merged authorities_are_cached from light_grandpa_import2
      
      * Add ProvideCache trait
      
      * Create helper function for 'get_cache'
      
      * Fix some formatting
      
      * Bump impl version
      
      * Resolve wasm conflicts
      
      * Apply review comments
      
      * Use try_for_each
      
      * Increment impl_version
      
      * Update lib.rs
      1b98eaf4
    • DemiMarie-parity's avatar
      Refactor DigestItem (#2108) · 8a60b684
      DemiMarie-parity authored
      * Add `start_aura2`.
      
      * .gitignore patch conflict files
      
      and remove one that accidentally got committed
      
      * Fix build
      
      The tests still don’t work.
      
      * Fix compilation errors
      
      * Fix compile errors (again)
      
      * Try (and fail) to fix tests
      
      * Properly deserialize data
      
      Previously, `DigestItem::Consensus` had no separate `DigestItemType`,
      so it did not get properly serialized and deserialized.
      
      * Add extra debug logging.  Always allow old seals.
      
      A `RUST_LOG=substrate_aura_consensus cargo test --all -- --nocapture \
      tests::authoring_blocks` revealed that old seals were being and
      rejected, causing the test to hang.  As a temporary debug measure, allow
      old seals unconditionally, so that CI can test if this fixes the
      problem.
      
      * Forcibly disable rejection of old seals
      
      * Use old trait, but newer serialization
      
      The old trait for `CompatibleDigestItem` actually worked.  By changing
      its implementation, one can ensure that all *new* seals have the modern
      form, but *legacy* seals are still decoded correctly.
      
      * Bump impl version
      
      * Squash spurious deprecation warning
      
      `rustc` should not be emitting a deprecation warning in deprecated
      code, but it does, so silence it.
      
      * Rip out unused Cargo feature
      
      * Move AURA to aura_primitives
      
      * Respond to code review
      
      * Wrap overly-long line
      
      * Reduce logging verbosity and add target
      
      * Add dependency on `sr-primitives` to `aura_primitives`
      
      * Fix build
      
      It failed with a message about Cargo.lock being out of date.
      
      * core: aura: rename aura engine id const
      
      * core: aura: remove superfluous logging
      
      * core: primitives: add removed semicolons
      
      * core: aura: remove unused import
      
      * core: network: style fix
      
      * runtime: update wasm blobs
      
      * runtime: bump impl_version
      
      * core: primitives: tag all DigestItemType variants explicitly
      8a60b684
  12. Mar 28, 2019
  13. Mar 27, 2019
  14. Mar 26, 2019
  15. Mar 25, 2019
    • Tomasz Drwięga's avatar
      Initial: Offchain Workers (#1942) · a30d6a1a
      Tomasz Drwięga authored
      * Refactor state-machine stuff.
      
      * Fix tests.
      
      * WiP
      
      * WiP2
      
      * Service support for offchain workers.
      
      * Service support for offchain workers.
      
      * Testing offchain worker.
      
      * Initial version working.
      
      * Pass side effects in call.
      
      * Pass OffchainExt in context.
      
      * Submit extrinsics to the pool.
      
      * Support inherents.
      
      * Insert to inherents pool.
      
      * Inserting to the pool asynchronously.
      
      * Add test to offchain worker.
      
      * Implement convenience syntax for modules.
      
      * Dispatching offchain worker through executive.
      
      * Fix offchain test.
      
      * Remove offchain worker from timestamp.
      
      * Update Cargo.lock.
      
      * Address review comments.
      
      * Use latest patch version for futures.
      
      * Add CLI parameter for offchain worker.
      
      * Fix compilation.
      
      * Fix test.
      
      * Fix extrinsics format for tests.
      
      * Fix RPC test.
      
      * Bump spec version.
      
      * Fix executive.
      
      * Fix support macro.
      
      * Address grumbles.
      
      * Bump runtime
      a30d6a1a
  16. Mar 23, 2019
  17. Mar 22, 2019
    • Kian Peymani's avatar
      Self-Vote for Staking (among others.) (#2078) · 3628a932
      Kian Peymani authored
      * initial doc for the staking module
      
      * Remove md style links.
      
      * Remove todos.
      
      * Add rust code types
      
      * Rename and fix review notes.
      
      * Add new md file
      
      * Final touches.
      
      * Migrate compleatly to rustdoc
      
      * Update link
      
      * Fix heading
      
      * Final touches wrt the new template.
      
      * Remove empty prereq.
      
      * Fix more reviews
      
      * Some final nits.
      
      * Fix some side issues.
      
      * Fix another set of reviews
      
      * Fix + stabilize leftover reivews.
      
      * Remove unused test parameters
      
      * Fix typo.
      
      * Merge redundant loops
      
      * Adds phantom self-vote
      
      * Fix broken tests.
      
      * Refactor some names to match the reference.
      
      * Remove redundant inner loops from election round.
      
      * Introduce phragmen post-processing.
      
      * Some fixes and todos.
      
      * Fix some tests with new phragmen params
      
      * Fix test
      
      * Bump spec
      
      * Fix wasm build
      
      * Fix tests and phragmen fallback. Avoid double-controlling
      
      * Fix and rebuild wasm
      
      * Whitespaces, whitespaces everywhere.
      
      * Rebuild
      
      * Disable post-processing.
      
      * Identify by stash, not controller account.
      
      * Couple of fixes
      
      * Fix first test
      
      * Fix invulnerability_should_work
      
      * Fix a couple more tests
      
      * Fix more tests
      
      * Fix more tests
      
      * Fix more tests
      
      * Fix some tests
      
      * Fix update-ledger.
      
      * Fix update-ledger.
      
      * Fix another test
      
      * Fix another test
      
      * Fix rest of staking tests
      
      * Remove printlns
      
      * Rebuild wasm
      
      * Fix & tests for auth/val syncing
      
      * Fix up threading for tests
      
      * Remove superfluous asserts
      3628a932
  18. 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
    • kaiyu's avatar
      Use local executor (#2054) · 89b1df07
      kaiyu authored
      89b1df07
  19. 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
  20. Mar 19, 2019
    • Stanislav Tkach's avatar
    • thiolliere's avatar
      Fix lazy initialisation bug for parametizability (#2046) · f9969402
      thiolliere authored
      remove lazy and compute prefix at compile time
      f9969402
    • Roman Borschel's avatar
      libp2p-0.5.0 (#1971) · ec6d07bf
      Roman Borschel authored
      * Update libp2p. Add support for ed25519 node (network) keys.
      
        * Update networking to the changes from https://github.com/libp2p/rust-libp2p/pull/972.
        * Add support for using ed25519 keys for libp2p networking.
        * Add support for reading libp2p secret keys from (external) files.
      
      * Adapt to changes from https://github.com/libp2p/rust-libp2p/pull/992
      
      * More tests.
      
      * Cosmetics
      
      * Deduplicate tests.
      
      * Remove quickcheck from tests that don't use extra random inputs.
      
      * Remove quickcheck.
      
      * Swap new/default impls for NetworkConfiguration.
      
      * Use libp2p-0.5.0 from crates.io.
      
      * Post-rebase update.
      
      * Remove unnecessary wildcard pattern.
      
      * Combine two overlapping tests.
      ec6d07bf
  21. Mar 18, 2019
  22. Mar 16, 2019
  23. 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
    • Michael Müller's avatar
      Add grandpa telemetry (+ other minor improvements) (#1997) · a29f2141
      Michael Müller authored
      * Support skipping the interactive purge prompt
      
      Skip it via `cargo run -- purge-chain -y`.
      
      * Fix typos
      
      * Add Grandpa telemetry
      
      * Address comments
      
      * Revert unnecessary version bump
      
      * Version bump to make CI run
      
      * Remove unnecessary cast
      
      * Do not bump version
      a29f2141
    • Gav Wood's avatar
      Crypto fixes/improvements (#2008) · 06ff2397
      Gav Wood authored
      
      
      * Crypto fixes:
      
      - Use schnorrkel's HDKD derive
      - Assume all key URIs beginning with `/` are prefixed with public
        root phrase.
      
      * Remove commented code.
      
      * Update README
      
      * Update core/primitives/src/ed25519.rs
      
      Co-Authored-By: default avatargavofyork <[email protected]>
      06ff2397
  24. Mar 14, 2019
    • Bastian Köcher's avatar
      Prerequisites for `validate_block` in Cumulus (#1926) · 6945bdf4
      Bastian Köcher authored
      * Adds benchmark for direct/indirect wasm function calls
      
      * Store the benchmark function pointer in a `Cell`
      
      * Add some documentation
      
      * Make function implementations exchangeable
      
      * Add parachain stub
      
      * Add macro for registering the `validate_block` function
      
      * Make all functions replace-able by unimplemented
      
      * Some more refactoring
      
      * Adds tests for executing empty parachain block
      
      * Work on a new test with empty witness data
      
      * Don't exchange `ext_print_*` stuff
      
      * Some cleanup and one more function for `validate_block`
      
      * More tests and more functions
      
      * Fixes after merging master
      
      * Use `parity-codec` `derive` feature
      
      * CHange implementation of `wasm-nice-panic-message`
      
      * Move `parachain` stuff to cumulus
      
      * Updated wasm files
      
      * Integrate feedback
      
      * Switch to `ExchangeableFunction` struct
      
      * More fixes
      
      * Switch to Cell and panic on multiple replaces
      
      * Increase `impl_version`
      
      * Fix shifting
      
      * Make the API more verbose of `ExchangeableFunction`
      
      * Increase `impl_version`
      6945bdf4
  25. Mar 13, 2019
    • Gav Wood's avatar
      Overhaul crypto (Schnorr/Ristretto, HDKD, BIP39) (#1795) · 8930f297
      Gav Wood authored
      * Rijig to Ristretto
      
      * Rebuild wasm
      
      * adds compatibility test with the wasm module
      
      * Add Ed25519-BIP39 support
      
      * Bump subkey version
      
      * Update CLI output
      
      * New keys.
      
      * Standard phrase/password/path keys.
      
      * Subkey uses S-URI for secrets
      
      * Move everything to use new HDKD crypto.
      
      * Test fixes
      
      * Ignore old test vector.
      
      * fix the ^^ old test vector.
      
      * Fix tests
      
      * Test fixes
      
      * Cleanups
      
      * Fix broken key conversion logic in grandpa
      
      CC @rphmeier
      
      * Remove legacy Keyring usage
      
      * Traitify `Pair`
      
      * Replace Ed25519AuthorityId with ed25519::Public
      
      * Expunge Ed25519AuthorityId type!
      
      * Replace Sr25519AuthorityId with sr25519::Public
      
      * Remove dodgy crypto type-punning conversions
      
      * Fix some tests
      
      * Avoid trait
      
      * Deduplicate DeriveJunction string decode
      
      * Remove cruft code
      
      * Fix test
      
      * Minor removals
      
      * Build fix
      
      * Subkey supports sign and verify
      
      * Inspect works for public ke...
      8930f297
  26. Mar 12, 2019
  27. Mar 10, 2019