* 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
* srml: system: prune block number to hash mapping
* srml: system: add test for block hash mapping pruning
* node: bump runtime version
* srml: system: wrap long line
* srml: system: use parameter type for block hash count
* srml: system: prune block hash mapping before storage root calculation
* srml: system: keep the genesis hash in block number map
* skeleton for tracking historical sessions
* refactor OpaqueKeys
* some more skeleton work
* adjust session to new OpaqueKeys API
* further refactoring of key-type-ids
* session gets validator ID parameter
* run up against compiler
* tweak staking to support new session changes
* first run at child storage for deduplication
* Make session use `AccountId` as `ValidatorId`
* run up against child trie issues
* switch to using normal trie but with a fixed prefix
* clear out some println
* add dedup test
* flesh out historical module more
* introduce ExposureOf for staking
* test the historical module
* WASM compiles
* tests all compile
* do some mock change
* fix bulk of tests
* fix staking tests
* test obsolecence mechanic
* Apply suggestions from code review
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* some more style nits
* a couple more nits
* tweak tries
* fix typo thie -> this
* Some cleanup
* Add module constant metadata declaration
* Begin to integrate the constants in `decl_module`
* Fixes tests
* Fix compilation and add tests
* Remove duplicate code
* Expose constants in democracy and staking + further fixes
* Update srml/metadata/src/lib.rs
Co-Authored-By: YJ <yjkimjunior@gmail.com>
* Hide `RawEvent` metadata function
* Prevent whitespaces in types
* Fix `offchain_worker` and `constants` with instances
* Up the `impl_version`
* Fix macro
* Incrase impl_version
* approximate fraction into perbill
* test
* fix comment
* line width
* bump impl version
* rename test for better naming
* test overflow
* Apply suggestions from code review
Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>
* 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: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com>
* 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: Robert Habermeier <rphmeier@gmail.com>
* Session tests works
* Update core/sr-primitives/src/generic/digest.rs
Co-Authored-By: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com>
* 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: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com>
* 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
* debug checkpoint.
* new
* Worked.
* Worked and weight propagated to executive.
* Works with some tests.
* Cleanup debug prints.
* More cleanup.
* Undo more logs.
* Undo a few more.
* Fix build.
* Allow len to be used in weight calculation.
* Remove noop function from dispath.
* Cleanup.
* Unify traits.
* Update docs and nits.
* line width
* Update core/sr-primitives/src/weights.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Update core/sr-primitives/src/weights.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Update core/sr-primitives/src/weights.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Update core/sr-primitives/src/weights.rs
Co-Authored-By: Amar Singh <asinghchrony@protonmail.com>
* Update srml/example/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Final cleanup.
* Fix build.
* Add some benchmarks for phragmen
* Fix dep. import.
* Clean up with some macros.
* more details.
* Fix dual import.
* Remove wrong assertions.
* Add a few more.
* Start to remove the `As` bound on `SimpleArtithmetic`
This just introduces standard numeric bounds, assuming a minimum of
`u32`. Also included is a saturating from/into trait allowing ergonomic
infallible conversion when you don't care if it saturates.
* Remove As from Balances trait
* Remove As from Aura module
* Remove As from Babe module
* Expunge `As` from contract
* Council module
* Democracy
* Finality tracker
* Grandpa
* First bit of indices
* indices
* Line lengths
* session
* system
* Staking
* Square up all other uses of As.
* RHD update
* Fix build/test
* Remove As trait
* line widths
* Remove final As ref
* Update srml/staking/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Update core/client/src/cht.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Update core/client/db/src/light.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* Apply suggestions from code review
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
* whitespace
* Apply suggestions from code review
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
Co-Authored-By: André Silva <andre.beat@gmail.com>
* Bring back u32 check for number on CLI
* perthings operate in type operator
* implementation with rem
* fmt
* doc
* better fmt
* bump version
* Tests for pet-things
* demonstrate output as type of operation
* Remove redundant assertions.
* rename test
* update lock
* bump impl version
* Add index caching to election
* Initial draft of the new phragmen API.
* Port post-processing to the new API.
* Fix tests and accuracy.
* Final fixes.
* Unify convert namings.
* Remove todo.
* Some typos.
* Bump.
* Add extended balance type doc.
* A bit more sophisticated weight compensation.
* Fix review feedbacks.
* Bump.
* Final updates
* set reasonable value for bonding_duration in chainspec staging config
* set default bonding_duration to 1, and bump runtime version
* Update node/cli/src/chain_spec.rs
Co-Authored-By: mnaamani <mokhtar.naamani@gmail.com>
* Update node/cli/src/chain_spec.rs
Co-Authored-By: mnaamani <mokhtar.naamani@gmail.com>
* Update srml/staking/src/lib.rs
Co-Authored-By: mnaamani <mokhtar.naamani@gmail.com>
* opening and closing links
* sudo example compiles
* add Aura after it was merged to master
* Timestamp doc testing passes
* Timestamp doc testing works, extraneous lines commented out
* balances
* remove extern crate line
* Removed unneeded code snippet from aura
* make consensus compiles
* executive compiles
* cleanup unnecessary lines
* staking (removed examples that are just copies of tests)
* Apply suggestions from code review
* unindent example
* First draft of extended balance type
* Test cleanup.
* Update staking docs.
* Add a good failing test case for quintill
* Bring back saturating.
* Some final fixes
* A few more.
* Update wasm; Bump spec;
* Re-bump.
* Custom lossy conversion from currency to vote
* remove print
* Fix reverse conversion issue.
* void. Re-trigger ci.
* all the ise
* forgot a misspelling
* a few more replacements
* bump impl
* rollback and fixes
* bump impl again
* Add aliases for RPC
* Update on_demand.rs
* Timestamp period should be expressed as expected period
* Fix test
* Ensure value never illegal
* Rename
* Remove println
* Add default
* Comment
* Fix, bump and rebuild wasm
* Fix test
* Add TODOs
* Configure only minimum_period.
* Fix
* Update srml/timestamp/src/lib.rs
Co-Authored-By: gavofyork <github@gavwood.com>
* Update srml/timestamp/src/lib.rs
Co-Authored-By: gavofyork <github@gavwood.com>
* Introduce `ReservableCurrency`
* Update Docs for `ReservableCurrency`
* Update Tests
* Bump spec and rebuild wasm
* Extra: Add a note to `slash()`
Discussion in Riot clarified the behavior of `slash()` and `can_slash()`. Trying to sneak clarifying comments about it into this PR
* Update lib.rs
* Don't drop the periods!
CC @shawntabrizi
* improve decl_storage instance doc
* use decl_event doc accordignly
* automate doc and while allow to extend it on event
* some missed ones
* Update srml/example/src/lib.rs
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>
* Update srml/support/procedural/src/storage/transformation.rs
* 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
* 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
* 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