Files
pezkuwi-subxt/substrate/frame/staking/Cargo.toml
T
Robert Habermeier 4598e13015 safe multi-era slashing for NPoS (#3846)
* define slashing spans

* tests and pruning for slashing-spans record

* validators get slashed before nominators

* apply slash to nominators as well

* chill and end slashing spans

* actually perform slashes

* integration (tests failing)

* prune metadata

* fix compilation

* some tests for slashing and metadata garbage collection

* correctly pass session index to slash handler

* test span-max property for nominators and validators

* test that slashes are summed correctly

* reward value computation

* implement rewarding

* add comment about rewards

* do not adjust slash fraction in offences module

* fix offences tests

* remove unused new_offenders field

* update runtime version

* fix up some docs

* fix some CI failures

* remove no-std incompatible vec! invocation

* try to fix span-max rounding error

* Update srml/staking/src/slashing.rs

Fix type: winow -> window

Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>

* slashes from prior spans don't kick validator again

* more information for nominators, suppression

* ensure ledger is consistent with itself post-slash

* implement slash out of unlocking funds also

* slashing: create records to be applied after-the-fact

* queue slashes for a few eras later

* method for canceling deferred slashes

* attempt to fix test in CI

* storage migration for `Nominators`

* update node-runtime to use SlashDeferDuration

* adjust migration entry-points somewhat

* fix migration compilation

* add manual Vec import to migration

* enable migrations feature in node-runtime

* bump runtime version

* update to latest master crate renames

* update to use ensure-origin

* Apply suggestions from code review

use `ensure!`

Co-Authored-By: Gavin Wood <gavin@parity.io>

* fix multi-slash removal

* initialize storage version to current in genesis

* add test for version initialization
2019-11-27 19:06:32 +00:00

48 lines
1.9 KiB
TOML

[package]
name = "pallet-staking"
version = "2.0.0"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2018"
[dependencies]
serde = { version = "1.0.101", optional = true }
safe-mix = { version = "1.0.0", default-features = false }
codec = { package = "parity-scale-codec", version = "1.0.0", default-features = false, features = ["derive"] }
substrate-keyring = { path = "../../primitives/keyring", optional = true }
rstd = { package = "sr-std", path = "../../primitives/sr-std", default-features = false }
phragmen = { package = "substrate-phragmen", path = "../../primitives/phragmen", default-features = false }
runtime-io ={ package = "sr-io", path = "../../primitives/sr-io", default-features = false }
sr-primitives = { path = "../../primitives/sr-primitives", default-features = false }
sr-staking-primitives = { path = "../../primitives/sr-staking-primitives", default-features = false }
support = { package = "frame-support", path = "../support", default-features = false }
system = { package = "frame-system", path = "../system", default-features = false }
session = { package = "pallet-session", path = "../session", default-features = false, features = ["historical"] }
authorship = { package = "pallet-authorship", path = "../authorship", default-features = false }
[dev-dependencies]
primitives = { package = "substrate-primitives", path = "../../primitives/core" }
balances = { package = "pallet-balances", path = "../balances" }
timestamp = { package = "pallet-timestamp", path = "../timestamp" }
pallet-staking-reward-curve = { path = "../staking/reward-curve"}
substrate-test-utils = { path = "../../test/utils" }
[features]
equalize = []
migrate = []
default = ["std", "equalize"]
std = [
"serde",
"safe-mix/std",
"substrate-keyring",
"codec/std",
"rstd/std",
"phragmen/std",
"runtime-io/std",
"support/std",
"sr-primitives/std",
"sr-staking-primitives/std",
"session/std",
"system/std",
"authorship/std",
]