From 07d82af7c283be0df6e8d9a8bacf990eee354a66 Mon Sep 17 00:00:00 2001 From: Gav Date: Fri, 22 Jun 2018 18:10:50 +0200 Subject: [PATCH 01/22] Recompile runtime. --- Cargo.lock | 1 + demo/runtime/wasm/Cargo.lock | 286 ++++++++++++++++++ .../release/demo_runtime.compact.wasm | Bin 408085 -> 408090 bytes .../release/demo_runtime.wasm | Bin 442691 -> 442691 bytes polkadot/runtime/wasm/Cargo.lock | 286 ++++++++++++++++++ .../release/polkadot_runtime.compact.wasm | Bin 439594 -> 437181 bytes .../release/polkadot_runtime.wasm | Bin 481451 -> 479011 bytes .../release/runtime_test.compact.wasm | Bin 15619 -> 15619 bytes .../release/runtime_test.wasm | Bin 16166 -> 16166 bytes substrate/telemetry/Cargo.toml | 1 + substrate/test-runtime/wasm/Cargo.lock | 286 ++++++++++++++++++ .../substrate_test_runtime.compact.wasm | Bin 20287 -> 20288 bytes .../release/substrate_test_runtime.wasm | Bin 22369 -> 22370 bytes 13 files changed, 860 insertions(+) diff --git a/Cargo.lock b/Cargo.lock index 5d8c2e0c05007..e5d1ff228f551 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2531,6 +2531,7 @@ name = "substrate-telemetry" version = "0.2.0" dependencies = [ "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/demo/runtime/wasm/Cargo.lock b/demo/runtime/wasm/Cargo.lock index 8532d96db9946..70d2bc787d86f 100644 --- a/demo/runtime/wasm/Cargo.lock +++ b/demo/runtime/wasm/Cargo.lock @@ -1,3 +1,16 @@ +[[package]] +name = "aho-corasick" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "ansi_term" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "arrayvec" version = "0.4.7" @@ -6,6 +19,16 @@ dependencies = [ "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "atty" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "base58" version = "0.1.0" @@ -136,10 +159,24 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "env_logger" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "environmental" version = "0.1.0" +[[package]] +name = "error-chain" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "ethbloom" version = "0.5.0" @@ -152,6 +189,27 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ethcore-bytes" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" + +[[package]] +name = "ethcore-logger" +version = "1.12.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ethereum-types" version = "0.3.2" @@ -213,6 +271,15 @@ name = "gcc" version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "hashdb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -253,6 +320,25 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "keccak-hash" +version = "0.1.2" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "kvdb" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "lazy_static" version = "0.2.11" @@ -284,6 +370,14 @@ dependencies = [ "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "memchr" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "memoffset" version = "0.2.1" @@ -294,6 +388,20 @@ name = "memory_units" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memorydb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "nodrop" version = "0.1.12" @@ -338,6 +446,15 @@ dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.5.5" @@ -358,6 +475,33 @@ dependencies = [ "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "patricia-trie" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", + "ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", + "triehash 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + +[[package]] +name = "plain_hasher" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "proc-macro-hack" version = "0.4.0" @@ -449,6 +593,39 @@ dependencies = [ "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "redox_syscall" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "redox_termios" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.12.1" @@ -461,6 +638,17 @@ dependencies = [ "untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rlp" +version = "0.2.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rlp" version = "0.2.2" @@ -801,7 +989,14 @@ name = "substrate-state-machine" version = "0.1.0" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)", "substrate-primitives 0.1.0", "triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -816,6 +1011,35 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "termion" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "thread_local" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "time" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -824,6 +1048,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "triehash" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "triehash" version = "0.1.2" @@ -843,6 +1078,11 @@ dependencies = [ "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ucd-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.1.2" @@ -869,11 +1109,29 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unreachable" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "utf8-ranges" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.1.3" @@ -904,7 +1162,10 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [metadata] +"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" +"checksum ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455" "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" +"checksum atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2fc4a1aa4c24c0718a250f0681885c1af91419d242f29eb8f2ab28502d80dbd1" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c54bb8f454c567f21197eefcdbf5679d0bd99f2ddbe52e84c77061952e6789" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" @@ -917,7 +1178,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" "checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b" +"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3" "checksum ethbloom 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a93a43ce2e9f09071449da36bfa7a1b20b950ee344b6904ff23de493b03b386" +"checksum ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c48729b8aea8aedb12cf4cb2e5cef439fdfe2dda4a89e47eeebd15778ef53b6" "checksum ethereum-types-serialize 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ac59a21a9ce98e188f3dace9eb67a6c4a3c67ec7fbc7218cb827852679dc002" "checksum fixed-hash 0.1.3 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" @@ -925,26 +1190,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)" = "5e33ec290da0d127825013597dbdfc28bee4964690c7ce1166cbc2a7bd08b1bb" +"checksum hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4da5f0e01bd8a71a224a4eedecaacfcabda388dbb7a80faf04d3514287572d95" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)" = "" "checksum keccak-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b7f51f30d7986536accaec4a6a288008dfb3dbffe8a2863a65292bc395a3ae7" +"checksum keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)" = "" +"checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" "checksum lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e6412c5e2ad9584b0b8e979393122026cdd6d2a80b933f890dcd694ddbe73739" "checksum libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)" = "ac8ebf8343a981e2fa97042b14768f02ed3e1d602eac06cae6166df3c8ced206" "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" "checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2" +"checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" +"checksum memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" "checksum num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775393e285254d2f5004596d69bb8bc1149754570dcc08cf30cabeba67955e28" "checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum parity-wasm 0.27.6 (registry+https://github.com/rust-lang/crates.io-index)" = "bd4dc02a80a0315b109e48992c46942c79bcdb8fac416dd575d330ed9ced6cbd" "checksum parity-wasm 0.30.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41083957b80abb8a01fac4d2773d5f92653aed8f0b740c8d3da1da62c7857abe" +"checksum parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "149d8f5b97f3c1133e3cfcd8886449959e856b557ff281e292b733d7c69e005e" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" "checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum proc-macro-hack 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ba8d4f9257b85eb6cdf13f055cea3190520aab1409ca2ab43493ea4820c25f0" "checksum proc-macro-hack-impl 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5cb6f960ad471404618e9817c0e5d10b1ae74cfdf01fab89ea0641fe7fb2892" "checksum proc-macro2 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1fa93823f53cfd0f5ac117b189aed6cfdfb2cfc0a9d82e956dd7927595ed7d46" @@ -954,7 +1227,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" "checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" "checksum rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d24ad214285a7729b174ed6d3bcfcb80177807f959d95fafd5bfc5c4f201ac8" +"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1" +"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" +"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" +"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" "checksum ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6f7d28b30a72c01b458428e0ae988d4149c20d902346902be881e3edc4bb325c" +"checksum rlp 0.2.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum rlp 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "89db7f8dfdd5eb7ab3ac3ece7a07fd273a680b4b224cb231181280e8996f9f0b" "checksum rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0ceb8ce7a5e520de349e1fa172baeba4a9e8d5ef06c47471863530bc4972ee1e" "checksum rustc-hex 2.0.0 (git+https://github.com/rphmeier/rustc-hex.git)" = "" @@ -967,13 +1245,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03dab98ab5ded3a8b43b2c80751194608d0b2aa0f1d46cf95d1c35e192844aa7" "checksum stable_deref_trait 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "15132e0e364248108c5e2c02e3ab539be8d6f5d52a01ca9bbf27ed657316f02b" "checksum syn 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6dfd71b2be5a58ee30a6f8ea355ba8290d397131c00dfa55c3d34e6e13db5101" +"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" +"checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963" +"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum triehash 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2033893a813c70e7d8a739ca6c36dc0a7a2c913ec718d7cbf84a3837bbe3c7ce" "checksum twox-hash 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "475352206e7a290c5fccc27624a163e8d0d115f7bb60ca18a64fc9ce056d7435" +"checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d" "checksum uint 0.1.2 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" "checksum uint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "38051a96565903d81c9a9210ce11076b2218f3b352926baa1f5f6abbdfce8273" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f392d7819dbe58833e26872f5f6f0d68b7bbbe90fc3667e98731c4a15ad9a7ae" +"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d19da510b59247935ad5f598357b3cc739912666d75d3d28318026478d95bbdb" "checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3" "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm index 9e847aac35fcc5e421329ff5b0d45236cac9c85e..0fc8fc15079b441e4de35664f6e90e86df2c7b34 100644 GIT binary patch delta 9027 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 K6^v=AZ~hf={~+X)im8p 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 delta 9673 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 diff --git a/polkadot/runtime/wasm/Cargo.lock b/polkadot/runtime/wasm/Cargo.lock index aac3375c7a315..fa7ed53805c55 100644 --- a/polkadot/runtime/wasm/Cargo.lock +++ b/polkadot/runtime/wasm/Cargo.lock @@ -1,3 +1,16 @@ +[[package]] +name = "aho-corasick" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "ansi_term" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "arrayvec" version = "0.4.7" @@ -6,6 +19,16 @@ dependencies = [ "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "atty" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "base58" version = "0.1.0" @@ -101,10 +124,24 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "env_logger" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "environmental" version = "0.1.0" +[[package]] +name = "error-chain" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "ethbloom" version = "0.5.0" @@ -117,6 +154,27 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ethcore-bytes" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" + +[[package]] +name = "ethcore-logger" +version = "1.12.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ethereum-types" version = "0.3.2" @@ -178,6 +236,15 @@ name = "gcc" version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "hashdb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -218,6 +285,25 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "keccak-hash" +version = "0.1.2" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "kvdb" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "lazy_static" version = "0.2.11" @@ -249,6 +335,14 @@ dependencies = [ "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "memchr" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "memoffset" version = "0.2.1" @@ -259,6 +353,20 @@ name = "memory_units" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memorydb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "nodrop" version = "0.1.12" @@ -303,6 +411,15 @@ dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.5.5" @@ -323,6 +440,33 @@ dependencies = [ "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "patricia-trie" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", + "ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", + "triehash 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + +[[package]] +name = "plain_hasher" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "polkadot-primitives" version = "0.1.0" @@ -449,6 +593,39 @@ dependencies = [ "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "redox_syscall" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "redox_termios" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.12.1" @@ -461,6 +638,17 @@ dependencies = [ "untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rlp" +version = "0.2.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rlp" version = "0.2.2" @@ -801,7 +989,14 @@ name = "substrate-state-machine" version = "0.1.0" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)", "substrate-primitives 0.1.0", "triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -816,6 +1011,35 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "termion" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "thread_local" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "time" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -824,6 +1048,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "triehash" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "triehash" version = "0.1.2" @@ -843,6 +1078,11 @@ dependencies = [ "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ucd-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.1.2" @@ -869,11 +1109,29 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unreachable" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "utf8-ranges" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.1.3" @@ -904,7 +1162,10 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [metadata] +"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" +"checksum ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455" "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" +"checksum atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2fc4a1aa4c24c0718a250f0681885c1af91419d242f29eb8f2ab28502d80dbd1" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c54bb8f454c567f21197eefcdbf5679d0bd99f2ddbe52e84c77061952e6789" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" @@ -917,7 +1178,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" "checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b" +"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3" "checksum ethbloom 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a93a43ce2e9f09071449da36bfa7a1b20b950ee344b6904ff23de493b03b386" +"checksum ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c48729b8aea8aedb12cf4cb2e5cef439fdfe2dda4a89e47eeebd15778ef53b6" "checksum ethereum-types-serialize 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ac59a21a9ce98e188f3dace9eb67a6c4a3c67ec7fbc7218cb827852679dc002" "checksum fixed-hash 0.1.3 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" @@ -925,26 +1190,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)" = "5e33ec290da0d127825013597dbdfc28bee4964690c7ce1166cbc2a7bd08b1bb" +"checksum hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4da5f0e01bd8a71a224a4eedecaacfcabda388dbb7a80faf04d3514287572d95" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)" = "" "checksum keccak-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b7f51f30d7986536accaec4a6a288008dfb3dbffe8a2863a65292bc395a3ae7" +"checksum keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)" = "" +"checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" "checksum lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e6412c5e2ad9584b0b8e979393122026cdd6d2a80b933f890dcd694ddbe73739" "checksum libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)" = "ac8ebf8343a981e2fa97042b14768f02ed3e1d602eac06cae6166df3c8ced206" "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" "checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2" +"checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" +"checksum memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" "checksum num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775393e285254d2f5004596d69bb8bc1149754570dcc08cf30cabeba67955e28" "checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum parity-wasm 0.27.6 (registry+https://github.com/rust-lang/crates.io-index)" = "bd4dc02a80a0315b109e48992c46942c79bcdb8fac416dd575d330ed9ced6cbd" "checksum parity-wasm 0.30.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41083957b80abb8a01fac4d2773d5f92653aed8f0b740c8d3da1da62c7857abe" +"checksum parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "149d8f5b97f3c1133e3cfcd8886449959e856b557ff281e292b733d7c69e005e" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" "checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum proc-macro-hack 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ba8d4f9257b85eb6cdf13f055cea3190520aab1409ca2ab43493ea4820c25f0" "checksum proc-macro-hack-impl 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5cb6f960ad471404618e9817c0e5d10b1ae74cfdf01fab89ea0641fe7fb2892" "checksum proc-macro2 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1fa93823f53cfd0f5ac117b189aed6cfdfb2cfc0a9d82e956dd7927595ed7d46" @@ -954,7 +1227,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" "checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" "checksum rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d24ad214285a7729b174ed6d3bcfcb80177807f959d95fafd5bfc5c4f201ac8" +"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1" +"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" +"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" +"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" "checksum ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6f7d28b30a72c01b458428e0ae988d4149c20d902346902be881e3edc4bb325c" +"checksum rlp 0.2.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum rlp 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "89db7f8dfdd5eb7ab3ac3ece7a07fd273a680b4b224cb231181280e8996f9f0b" "checksum rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0ceb8ce7a5e520de349e1fa172baeba4a9e8d5ef06c47471863530bc4972ee1e" "checksum rustc-hex 2.0.0 (git+https://github.com/rphmeier/rustc-hex.git)" = "" @@ -967,13 +1245,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03dab98ab5ded3a8b43b2c80751194608d0b2aa0f1d46cf95d1c35e192844aa7" "checksum stable_deref_trait 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "15132e0e364248108c5e2c02e3ab539be8d6f5d52a01ca9bbf27ed657316f02b" "checksum syn 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6dfd71b2be5a58ee30a6f8ea355ba8290d397131c00dfa55c3d34e6e13db5101" +"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" +"checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963" +"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum triehash 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2033893a813c70e7d8a739ca6c36dc0a7a2c913ec718d7cbf84a3837bbe3c7ce" "checksum twox-hash 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "475352206e7a290c5fccc27624a163e8d0d115f7bb60ca18a64fc9ce056d7435" +"checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d" "checksum uint 0.1.2 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" "checksum uint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "38051a96565903d81c9a9210ce11076b2218f3b352926baa1f5f6abbdfce8273" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f392d7819dbe58833e26872f5f6f0d68b7bbbe90fc3667e98731c4a15ad9a7ae" +"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d19da510b59247935ad5f598357b3cc739912666d75d3d28318026478d95bbdb" "checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3" "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm index 990a7ac369de57780dab48c53298e9deaa6871cc..60331684eafc554d9eba9ccf70cc6f13501d3881 100644 GIT binary patch delta 26334 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 delta 28030 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 diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm index a950e628fc247651efdb42f1550e36472af3ac6a..6fbfdcb05992c4b1fd98ffb037b25c88deac0e6b 100755 GIT binary patch delta 27897 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 F{D0^@1iAnK delta 29576 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 E07_&kPyhe` diff --git a/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.wasm b/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.wasm index d297f18e71a59cb2a2dc6e5895bc3b8d6d84b782..24c74a0f14c72e52836b6b0e5737a9fff68f9a30 100755 GIT binary patch delta 149 zcmZ2hx2$f09VbHqOFa-U)=hN3%*x4}npZaYfvMDFOU4pL&dKW-%LN#@xVgC*fEWaL zIXO3*GUYNd>TF)j93?V&va}SBwgQWzM3w@h0+WFD=AF{>7&reFzs|_Wx%sN(KE}=A zvZp!uwG>z#IkFsA@;P!lvIuBxHdKEvGC9Mhh*5j;ZJR(woyiI|?wfUNe=!08DjX^c delta 159 zcmZ2hx2$f09VcU50!uv*Fidp6%*w@_npZaYfvMDFOU4pLuF2~d%LTX?xw*L+fEWaL zxwtl)GUYNdYHeQ393`^(pyYK%My|~>rS~yT{wprUqocs$D3PVWsK6wkvsqbU9^>Y4 z+0&f-+6t_W99fPl`5d_&Sp>8<8>+t-nf%nool$$Tf=v;-PC$H=pQ*uQ8Ec8j8*Pj? J>)8Hc1OVS5EMx!x diff --git a/substrate/telemetry/Cargo.toml b/substrate/telemetry/Cargo.toml index 289963ef875ea..b368c0a83c4d6 100644 --- a/substrate/telemetry/Cargo.toml +++ b/substrate/telemetry/Cargo.toml @@ -7,6 +7,7 @@ description = "Telemetry utils" [dependencies] parking_lot = "0.4" lazy_static = "1.0" +log = "^0.3" slog = "^2" slog-json = "^2" slog-async = "^2" diff --git a/substrate/test-runtime/wasm/Cargo.lock b/substrate/test-runtime/wasm/Cargo.lock index c795055b8e86e..8504d7691009e 100644 --- a/substrate/test-runtime/wasm/Cargo.lock +++ b/substrate/test-runtime/wasm/Cargo.lock @@ -1,3 +1,16 @@ +[[package]] +name = "aho-corasick" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "ansi_term" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "arrayvec" version = "0.4.7" @@ -6,6 +19,16 @@ dependencies = [ "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "atty" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "base58" version = "0.1.0" @@ -101,10 +124,24 @@ dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "env_logger" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "environmental" version = "0.1.0" +[[package]] +name = "error-chain" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "ethbloom" version = "0.5.0" @@ -117,6 +154,27 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ethcore-bytes" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" + +[[package]] +name = "ethcore-logger" +version = "1.12.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ethereum-types" version = "0.3.2" @@ -178,6 +236,15 @@ name = "gcc" version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "hashdb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -218,6 +285,25 @@ dependencies = [ "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "keccak-hash" +version = "0.1.2" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "kvdb" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "lazy_static" version = "0.2.11" @@ -249,6 +335,14 @@ dependencies = [ "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "memchr" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "memoffset" version = "0.2.1" @@ -259,6 +353,20 @@ name = "memory_units" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memorydb" +version = "0.1.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "nodrop" version = "0.1.12" @@ -295,6 +403,15 @@ dependencies = [ "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.5.5" @@ -315,6 +432,33 @@ dependencies = [ "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "patricia-trie" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)", + "ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", + "triehash 0.1.0 (git+https://github.com/paritytech/parity.git)", +] + +[[package]] +name = "plain_hasher" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "proc-macro-hack" version = "0.4.0" @@ -396,6 +540,39 @@ dependencies = [ "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "redox_syscall" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "redox_termios" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.12.1" @@ -408,6 +585,17 @@ dependencies = [ "untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rlp" +version = "0.2.1" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rlp" version = "0.2.2" @@ -562,7 +750,14 @@ name = "substrate-state-machine" version = "0.1.0" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)", + "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)", + "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)", "substrate-primitives 0.1.0", "triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -592,6 +787,35 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "termion" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "thread_local" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "time" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -600,6 +824,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "triehash" +version = "0.1.0" +source = "git+https://github.com/paritytech/parity.git#458afcd2303539867e2e549ab0a5356415142b97" +dependencies = [ + "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)", + "rlp 0.2.1 (git+https://github.com/paritytech/parity.git)", +] + [[package]] name = "triehash" version = "0.1.2" @@ -619,6 +854,11 @@ dependencies = [ "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ucd-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.1.2" @@ -645,11 +885,29 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unreachable" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "utf8-ranges" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.1.3" @@ -680,7 +938,10 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [metadata] +"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" +"checksum ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455" "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" +"checksum atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2fc4a1aa4c24c0718a250f0681885c1af91419d242f29eb8f2ab28502d80dbd1" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c54bb8f454c567f21197eefcdbf5679d0bd99f2ddbe52e84c77061952e6789" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" @@ -693,7 +954,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" "checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b" +"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3" "checksum ethbloom 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a93a43ce2e9f09071449da36bfa7a1b20b950ee344b6904ff23de493b03b386" +"checksum ethcore-bytes 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum ethcore-logger 1.12.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c48729b8aea8aedb12cf4cb2e5cef439fdfe2dda4a89e47eeebd15778ef53b6" "checksum ethereum-types-serialize 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ac59a21a9ce98e188f3dace9eb67a6c4a3c67ec7fbc7218cb827852679dc002" "checksum fixed-hash 0.1.3 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" @@ -701,25 +966,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)" = "5e33ec290da0d127825013597dbdfc28bee4964690c7ce1166cbc2a7bd08b1bb" +"checksum hashdb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4da5f0e01bd8a71a224a4eedecaacfcabda388dbb7a80faf04d3514287572d95" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)" = "" "checksum keccak-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b7f51f30d7986536accaec4a6a288008dfb3dbffe8a2863a65292bc395a3ae7" +"checksum keccak-hash 0.1.2 (git+https://github.com/paritytech/parity.git)" = "" +"checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" "checksum lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e6412c5e2ad9584b0b8e979393122026cdd6d2a80b933f890dcd694ddbe73739" "checksum libc 0.2.41 (registry+https://github.com/rust-lang/crates.io-index)" = "ac8ebf8343a981e2fa97042b14768f02ed3e1d602eac06cae6166df3c8ced206" "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" "checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2" +"checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" +"checksum memorydb 0.1.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" "checksum num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775393e285254d2f5004596d69bb8bc1149754570dcc08cf30cabeba67955e28" "checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum parity-wasm 0.27.6 (registry+https://github.com/rust-lang/crates.io-index)" = "bd4dc02a80a0315b109e48992c46942c79bcdb8fac416dd575d330ed9ced6cbd" +"checksum parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "149d8f5b97f3c1133e3cfcd8886449959e856b557ff281e292b733d7c69e005e" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" "checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum patricia-trie 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" +"checksum plain_hasher 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum proc-macro-hack 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ba8d4f9257b85eb6cdf13f055cea3190520aab1409ca2ab43493ea4820c25f0" "checksum proc-macro-hack-impl 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5cb6f960ad471404618e9817c0e5d10b1ae74cfdf01fab89ea0641fe7fb2892" "checksum proc-macro2 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1fa93823f53cfd0f5ac117b189aed6cfdfb2cfc0a9d82e956dd7927595ed7d46" @@ -728,7 +1001,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" "checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" "checksum rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d24ad214285a7729b174ed6d3bcfcb80177807f959d95fafd5bfc5c4f201ac8" +"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1" +"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" +"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" +"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" "checksum ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6f7d28b30a72c01b458428e0ae988d4149c20d902346902be881e3edc4bb325c" +"checksum rlp 0.2.1 (git+https://github.com/paritytech/parity.git)" = "" "checksum rlp 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "89db7f8dfdd5eb7ab3ac3ece7a07fd273a680b4b224cb231181280e8996f9f0b" "checksum rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0ceb8ce7a5e520de349e1fa172baeba4a9e8d5ef06c47471863530bc4972ee1e" "checksum rustc-hex 2.0.0 (git+https://github.com/rphmeier/rustc-hex.git)" = "" @@ -741,13 +1019,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03dab98ab5ded3a8b43b2c80751194608d0b2aa0f1d46cf95d1c35e192844aa7" "checksum stable_deref_trait 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "15132e0e364248108c5e2c02e3ab539be8d6f5d52a01ca9bbf27ed657316f02b" "checksum syn 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6dfd71b2be5a58ee30a6f8ea355ba8290d397131c00dfa55c3d34e6e13db5101" +"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" +"checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963" +"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum triehash 0.1.0 (git+https://github.com/paritytech/parity.git)" = "" "checksum triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2033893a813c70e7d8a739ca6c36dc0a7a2c913ec718d7cbf84a3837bbe3c7ce" "checksum twox-hash 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "475352206e7a290c5fccc27624a163e8d0d115f7bb60ca18a64fc9ce056d7435" +"checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d" "checksum uint 0.1.2 (git+https://github.com/rphmeier/primitives.git?branch=compile-for-wasm)" = "" "checksum uint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "38051a96565903d81c9a9210ce11076b2218f3b352926baa1f5f6abbdfce8273" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f392d7819dbe58833e26872f5f6f0d68b7bbbe90fc3667e98731c4a15ad9a7ae" +"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d19da510b59247935ad5f598357b3cc739912666d75d3d28318026478d95bbdb" "checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3" "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" diff --git a/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index a2e791f81139948bb6eb2bd8abde1d602c681beb..26f48623addf169fc278d8f52ef857bbc81314da 100644 GIT binary patch delta 758 zcmYk3O=uHA6vt;~Ym&`&vukot!8S3iMXkveQ#VZ_X`Y%i7|>wP8mKgoRE(s>n;*5e z5cM#JfQN!NKQ4jQ<|3Gbh~!kni^W5Vcxx|uvk1P)msuFzyx-3J-@O0(ut}SnwC=UD zs%o9EOCs_q*L!cn2{KewAV72nJWQ#?$AFk@h9y`68k}nH#{bGD5!hD*N71kNMomV1 zDvT6?7-XG))zU(BT;HdYPgDr$UZUt8qQHg|0wRF{)iG&u!+lnizu{hCdrsbRXV`Bi zKjOK<{)jMbJ@qU(h2pQVsS&zv9rK$MLv|vf(T}`xZbe)^2nG4c&|}t8_^VL1ORkIT z+HAi6|L5$krzUqF1phbu+j$U2j+=Q=ac9nu&;h<>ZqPc9hR3wG&KUMf!G;Y6$d;84 zmudIpRa)bxBRSTRc_k7MtR0`=-y@pP+mB=f$;GFS0!^xPR8oMbOo5gR{*Dhden0vG zi+E%GB1*pq&%}P9h&6MePK7I|tFi=|zDK8t3Cf&QU)%yWXrnbqVgL%Bk;(fG9_di{W~P`KckE?eQ3%KQqMd;a=QRkq3wP1KbOpFQ|jVBMs|jde`<3^u)Rd delta 762 zcmYjOO=uHQ5Pt7%&ChN&yCjGTwuxyiYE8D9x-p5QdDbSufCjyZ5~vtRT8yT}n_Bc% zB$q)1g@WGdDX>~ELcNG3ryjg$Jfsv6p?mS*K`+irlb8pOnfYekH*dcAuu3;pX(Qld zyRvn}DG3YX-uD4p=5D?#bHa)4;tw+_2{KMhHp$W~&26CC+mVKB5&;J*+*JuFL66Bu zP~}4vP7Lw}K5IF_I-=Wj?3tTK^#Drlv~XbPiojsAg^)AQo--)IDmMjx?d53EHCd&m_L zU7jlS^53Vn{jKhY_PG?o>krYl;rtrGVLmeGja6j=9 zn*@@*CQ7dfM)9Ijri$#qVPMi2?i``r_RT;*kOT0s4Z+g*Yyd*j6#O?f3^B CLcpQ` diff --git a/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.wasm b/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.wasm index 2a2f3a4510db3532f9819074df1ad8f85b90c0ce..dadcb690b16c2f7f41cf3d4dc7256fc5f684a9f0 100755 GIT binary patch delta 820 zcmZXRU1*X~7{|{!*wm>_r|zPl-mFHrO~ujc$1CbVH~NsRAq69&wUE-rEL|glnG(UY z$u6Ek*j?QgLwZNvda;Y;P1$W%1rfohAg_Wx&Y2&q?S;d0p5Hmo|9Rg3`M8cht>cPA zMOI3(Q*~C!A}sZN?X4DbIYiZzrBiOBmQW-T2MLlOt-`8)i~KIYwBZQO!#%?!uYF_C z5^Jf%i$?X&b1Wi_{z)s+hdW{;9ZpLn_-h=%H5f2SykXRIpKKT5t?3f^S%j?F3Df4| zi<-u{KqJM8qy&wn9d9eD0k|3H> zX=;!^zXn$$QNvtf_IfHEx2J9|BvSLXbOv5Uyz=)*6e|%znT2!;u0`xXC+xbF9!A>V zHY`opAH*3s!ASK0LOK@DutnHfW%;RH{6d>c?7npuUu1h;r(@i%3<=?1j7f S%WaOd%DKe+EqQ2CRQ&_Kvi7?G delta 816 zcmaE~j`86-#tjA>OmDh28*zBD1L?`N{4crQb~Q9GIC44yxq%kKJWP%ZW=sZ54onV? zZzuN)oM76}H91mHj&aN63PFF6-jjknOj^@BL7I#O7Bv8A25x~V5ZZAY*f3p~xa0KB z$^V7L7{5&x6R`$a7%Wo7w5WUXd66)tmEDu;M2#j#iYha0=-yl>s>2O3eT_mZ3*+|9 zMyjEVK&nGcPk`~)PI>;11%3IcV}1 zhkrmvZ~o$Vn-LVG7oANZVIVwN+Qk_plHlSdg=QT*o`CK?;36-G889DQlt3|a(OGM< zohv8I#2D8TK+(-=ZtN^V=z99PHrsnyGIFkBXJT+{;NadrxzT&pWI;be!JN#b6+5?E0fcPkouYn{U02MC;s@FmiF9Whc`kaB{dPw4RKsLx64xl(NcH!oCK*bq& P*mE-TvN!Aan{faD^8xxK From d46710939d3611e0d19b94ffb97f2013930eea52 Mon Sep 17 00:00:00 2001 From: Gav Date: Fri, 22 Jun 2018 19:00:07 +0200 Subject: [PATCH 02/22] Introduce and enforce block time --- .../release/demo_runtime.compact.wasm | Bin 408090 -> 408857 bytes .../release/demo_runtime.wasm | Bin 442691 -> 443413 bytes polkadot/api/src/full.rs | 1 + polkadot/cli/src/preset_config.rs | 2 + polkadot/runtime/src/lib.rs | 1 + .../release/polkadot_runtime.compact.wasm | Bin 437181 -> 440218 bytes .../release/polkadot_runtime.wasm | Bin 479011 -> 482181 bytes substrate/runtime/timestamp/src/lib.rs | 49 ++++++++++++++++-- 8 files changed, 48 insertions(+), 5 deletions(-) diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm index 0fc8fc15079b441e4de35664f6e90e86df2c7b34..05f39388163fff4cec902a937d2b4ee878a36f36 100644 GIT binary patch delta 29590 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 delta 28438 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 oH4!qPd;a_#^nA&FzwceVe@Fe_1>=8DOWwr} staking, DemocracyConfig => democracy, CouncilConfig => council, + TimestampConfig => timestamp, ParachainsConfig => parachains, } } diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm index 60331684eafc554d9eba9ccf70cc6f13501d3881..62fe9a81b18c86f60029ef10fb32d0d3811a63a8 100644 GIT binary patch delta 36588 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 QWDHvUN%_8Ghft6I1ALEbBK|#O< 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 EKTnbRmjD0& delta 36844 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 diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 73f30c27aeb13..1d8ce4eb30660 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -39,13 +39,13 @@ extern crate substrate_codec as codec; use runtime_support::{StorageValue, Parameter}; use runtime_support::dispatch::Result; -use runtime_primitives::traits::{HasPublicAux, Executable, MaybeEmpty}; +use runtime_primitives::traits::{HasPublicAux, Executable, MaybeEmpty, SimpleArithmetic}; pub trait Trait: HasPublicAux + system::Trait { // the position of the required timestamp-set extrinsic. const SET_POSITION: u32; - type Value: Parameter + Default; + type Value: Parameter + Default + SimpleArithmetic; } decl_module! { @@ -60,6 +60,8 @@ decl_module! { decl_storage! { trait Store for Module; pub Now get(now): b"tim:val" => required T::Value; + // The minimum (and advised) period between blocks. + pub BlockPeriod get(block_period): b"tim:block_period" => required T::Value; // Did the timestamp get updated in this block? DidUpdate: b"tim:did" => default bool; @@ -79,6 +81,10 @@ impl Module { "Timestamp extrinsic must be at position {} in the block", T::SET_POSITION ); + assert!( + now >= Self::get() + Self::block_period(), + "Timestamp but increment by at least between sequential blocks" + ); ::Now::put(now); ::DidUpdate::put(true); Ok(()) @@ -92,9 +98,18 @@ impl Executable for Module { } #[cfg(any(feature = "std", test))] -#[derive(Default)] pub struct GenesisConfig { pub now: T::Value, + pub period: T::Value, +} + +impl Default for GenesisConfig { + fn default() -> Self { + GenesisConfig { + now: T::Value::default(), + period: T::Value::default(), + } + } } #[cfg(any(feature = "std", test))] @@ -104,7 +119,8 @@ impl runtime_primitives::BuildStorage for GenesisConfig use runtime_io::twox_128; use codec::Slicable; map![ - twox_128(>::key()).to_vec() => self.now.encode() + twox_128(>::key()).to_vec() => self.now.encode(), + twox_128(>::key()).to_vec() => self.period.encode() ] } } @@ -143,7 +159,7 @@ mod tests { #[test] fn timestamp_works() { let mut t = system::GenesisConfig::::default().build_storage(); - t.extend(GenesisConfig:: { now: 42 }.build_storage()); + t.extend(GenesisConfig:: { now: 42, period: 0 }.build_storage()); with_externalities(&mut t, || { assert_eq!(::Now::get(), 42); @@ -151,4 +167,27 @@ mod tests { assert_eq!(Timestamp::now(), 69); }); } + + #[test] + #[should_panic(expected = "Timestamp must be updated only once in the block")] + fn double_timestamp_should_fail() { + let mut t = system::GenesisConfig::::default().build_storage(); + t.extend(GenesisConfig:: { now: 42, period: 5 }.build_storage()); + + with_externalities(&mut t, || { + assert_ok!(Timestamp::aux_dispatch(Call::set(69), &0)); + let _ = Timestamp::aux_dispatch(Call::set(70), &0); + }); + } + + #[test] + #[should_panic(expected = "Timestamp but increment by at least between sequential blocks")] + fn block_period_is_enforced() { + let mut t = system::GenesisConfig::::default().build_storage(); + t.extend(GenesisConfig:: { now: 42, period: 5 }.build_storage()); + + with_externalities(&mut t, || { + let _ = Timestamp::aux_dispatch(Call::set(46), &0); + }); + } } From f71430748550caf391f813461f29823868cfed20 Mon Sep 17 00:00:00 2001 From: Gav Date: Fri, 22 Jun 2018 21:02:14 +0200 Subject: [PATCH 03/22] Introduce early session ending. --- Cargo.lock | 6 ++++ demo/cli/src/lib.rs | 6 +++- demo/executor/src/lib.rs | 5 +-- demo/runtime/src/lib.rs | 3 +- demo/runtime/wasm/Cargo.lock | 3 ++ .../release/demo_runtime.compact.wasm | Bin 408857 -> 409357 bytes .../release/demo_runtime.wasm | Bin 443413 -> 444224 bytes polkadot/runtime/src/lib.rs | 2 +- polkadot/runtime/src/parachains.rs | 8 +++-- polkadot/runtime/wasm/Cargo.lock | 3 ++ .../release/polkadot_runtime.compact.wasm | Bin 440218 -> 441318 bytes .../release/polkadot_runtime.wasm | Bin 482181 -> 483735 bytes substrate/runtime/consensus/src/lib.rs | 4 +-- substrate/runtime/council/Cargo.toml | 3 ++ substrate/runtime/council/src/lib.rs | 7 ++++ substrate/runtime/democracy/Cargo.toml | 3 ++ substrate/runtime/democracy/src/lib.rs | 7 ++++ substrate/runtime/executive/Cargo.toml | 1 + substrate/runtime/executive/src/lib.rs | 11 +++++-- substrate/runtime/session/Cargo.toml | 1 + substrate/runtime/session/src/lib.rs | 30 ++++++++++++++++-- substrate/runtime/staking/Cargo.toml | 1 + substrate/runtime/staking/src/lib.rs | 1 + substrate/runtime/staking/src/mock.rs | 7 +++- substrate/runtime/timestamp/Cargo.toml | 1 + substrate/runtime/timestamp/src/lib.rs | 22 +++++++++---- 26 files changed, 113 insertions(+), 22 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e5d1ff228f551..72a621ea44f84 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2320,6 +2320,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -2340,6 +2341,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -2359,6 +2361,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -2421,6 +2424,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -2443,6 +2447,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", "wabt 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2494,6 +2499,7 @@ dependencies = [ "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-codec 0.1.0", "substrate-primitives 0.1.0", + "substrate-runtime-consensus 0.1.0", "substrate-runtime-io 0.1.0", "substrate-runtime-primitives 0.1.0", "substrate-runtime-std 0.1.0", diff --git a/demo/cli/src/lib.rs b/demo/cli/src/lib.rs index 0267ac35607a9..77094c4151433 100644 --- a/demo/cli/src/lib.rs +++ b/demo/cli/src/lib.rs @@ -50,7 +50,7 @@ pub mod error; use std::sync::Arc; use demo_primitives::Hash; use demo_runtime::{GenesisConfig, ConsensusConfig, CouncilConfig, DemocracyConfig, - SessionConfig, StakingConfig, BuildStorage}; + SessionConfig, StakingConfig, TimestampConfig, BuildStorage}; use demo_runtime::{Block, UncheckedExtrinsic}; use futures::{Future, Sink, Stream}; @@ -147,6 +147,10 @@ pub fn run(args: I) -> error::Result<()> where cooloff_period: 90 * 120 * 24, // 90 day cooling off period if council member vetoes a proposal. voting_period: 7 * 120 * 24, // 7 day voting period for council members. }), + timestamp: Some(TimestampConfig { + now: 0, + period: 5, + }), }.build_storage(); let client = Arc::new(client::new_in_mem::<_, Block, _>(executor, genesis_storage)?); diff --git a/demo/executor/src/lib.rs b/demo/executor/src/lib.rs index 538a5fc0f2aad..fdb39a210a939 100644 --- a/demo/executor/src/lib.rs +++ b/demo/executor/src/lib.rs @@ -203,6 +203,7 @@ mod tests { }), democracy: Some(Default::default()), council: Some(Default::default()), + timestamp: Some(Default::default()), }.build_storage() } @@ -238,7 +239,7 @@ mod tests { construct_block( 1, [69u8; 32].into(), - hex!("4f7a61bceecddc19d49fbee53f82402c2a8727c1b2aeb5e5070a59f0777a203b").into(), + hex!("00fa0defe8b76a8e6bf536a9d685271b9dcd8cf097d9bd139ea2525b62014061").into(), vec![BareExtrinsic { signed: alice(), index: 0, @@ -251,7 +252,7 @@ mod tests { construct_block( 2, block1().1, - hex!("67c588603dd727601263cf8d6138a2003ffc0df793c5ea34e7defc945da24bf0").into(), + hex!("edea2f16095ee40d52ee18a8f9ee5d5d96e30429ef914ee2b75b406681fcd9b5").into(), vec![ BareExtrinsic { signed: bob(), diff --git a/demo/runtime/src/lib.rs b/demo/runtime/src/lib.rs index 77bcad3d25eb6..fda4f86b70602 100644 --- a/demo/runtime/src/lib.rs +++ b/demo/runtime/src/lib.rs @@ -85,7 +85,7 @@ impl consensus::Trait for Concrete { pub type Consensus = consensus::Module; impl timestamp::Trait for Concrete { - const SET_POSITION: u32 = 0; + const TIMESTAMP_SET_POSITION: u32 = 0; type Value = u64; } @@ -180,6 +180,7 @@ impl_outer_config! { StakingConfig => staking, DemocracyConfig => democracy, CouncilConfig => council, + TimestampConfig => timestamp, } } diff --git a/demo/runtime/wasm/Cargo.lock b/demo/runtime/wasm/Cargo.lock index 70d2bc787d86f..78e7932b333af 100644 --- a/demo/runtime/wasm/Cargo.lock +++ b/demo/runtime/wasm/Cargo.lock @@ -905,6 +905,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -927,6 +928,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -977,6 +979,7 @@ dependencies = [ "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-codec 0.1.0", "substrate-primitives 0.1.0", + "substrate-runtime-consensus 0.1.0", "substrate-runtime-io 0.1.0", "substrate-runtime-primitives 0.1.0", "substrate-runtime-std 0.1.0", diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm index 05f39388163fff4cec902a937d2b4ee878a36f36..6d60108b2f21c2fc7b819211f54a73efb083a626 100644 GIT binary patch delta 31342 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 G_J08WF&;7i delta 31108 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 diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.wasm index 98a235ac4d425e213cfa800a56b2a8a68155a596..6cf7621c64e0af0d7f3f35d5a5276c194ea01da6 100755 GIT binary patch delta 33724 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 EFQ2X`L;wH) delta 32978 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 diff --git a/polkadot/runtime/src/lib.rs b/polkadot/runtime/src/lib.rs index aed42e183cae1..403f5dbd457a6 100644 --- a/polkadot/runtime/src/lib.rs +++ b/polkadot/runtime/src/lib.rs @@ -126,7 +126,7 @@ impl consensus::Trait for Concrete { pub type Consensus = consensus::Module; impl timestamp::Trait for Concrete { - const SET_POSITION: u32 = TIMESTAMP_SET_POSITION; + const TIMESTAMP_SET_POSITION: u32 = TIMESTAMP_SET_POSITION; type Value = u64; } /// Timestamp module for this concrete runtime. diff --git a/polkadot/runtime/src/parachains.rs b/polkadot/runtime/src/parachains.rs index c200648112b8b..01593accf0618 100644 --- a/polkadot/runtime/src/parachains.rs +++ b/polkadot/runtime/src/parachains.rs @@ -33,7 +33,7 @@ use rstd::marker::PhantomData; #[cfg(any(feature = "std", test))] use {runtime_io, runtime_primitives}; -pub trait Trait: system::Trait + session::Trait { +pub trait Trait: session::Trait { /// The position of the set_heads call in the block. const SET_POSITION: u32; @@ -232,7 +232,7 @@ mod tests { use runtime_primitives::BuildStorage; use runtime_primitives::traits::{HasPublicAux, Identity, BlakeTwo256}; use runtime_primitives::testing::{Digest, Header}; - use consensus; + use {consensus, timestamp}; #[derive(Clone, Eq, PartialEq)] pub struct Test; @@ -255,6 +255,10 @@ mod tests { impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; } + impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; + } impl Trait for Test { const SET_POSITION: u32 = 0; diff --git a/polkadot/runtime/wasm/Cargo.lock b/polkadot/runtime/wasm/Cargo.lock index fa7ed53805c55..09738aaed086a 100644 --- a/polkadot/runtime/wasm/Cargo.lock +++ b/polkadot/runtime/wasm/Cargo.lock @@ -905,6 +905,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -927,6 +928,7 @@ dependencies = [ "substrate-runtime-std 0.1.0", "substrate-runtime-support 0.1.0", "substrate-runtime-system 0.1.0", + "substrate-runtime-timestamp 0.1.0", ] [[package]] @@ -977,6 +979,7 @@ dependencies = [ "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-codec 0.1.0", "substrate-primitives 0.1.0", + "substrate-runtime-consensus 0.1.0", "substrate-runtime-io 0.1.0", "substrate-runtime-primitives 0.1.0", "substrate-runtime-std 0.1.0", diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm index 62fe9a81b18c86f60029ef10fb32d0d3811a63a8..593b987ac3ca50c673eaa8d7aadcb2359c5f85e8 100644 GIT binary patch delta 65425 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

yq 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 MEp%b%7 delta 64606 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 diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm index 7c192023a8b5c844784790e7d1a0781f5190de78..f9bb1e48774fbfe22ec720e0f9312cf51692b14c 100755 GIT binary patch delta 69407 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 vU!BK<|*g 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 delta 68170 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 z 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 diff --git a/substrate/runtime/consensus/src/lib.rs b/substrate/runtime/consensus/src/lib.rs index d4a84e32ede9c..1fb10d0d9af43 100644 --- a/substrate/runtime/consensus/src/lib.rs +++ b/substrate/runtime/consensus/src/lib.rs @@ -42,7 +42,7 @@ use rstd::prelude::*; use runtime_support::{storage, Parameter}; use runtime_support::dispatch::Result; use runtime_support::storage::unhashed::StorageVec; -use primitives::traits::RefInto; +use primitives::traits::{RefInto, MaybeEmpty}; use primitives::bft::MisbehaviorReport; pub const AUTHORITY_AT: &'static [u8] = b":auth:"; @@ -59,7 +59,7 @@ pub const CODE: &'static [u8] = b":code"; pub type KeyValue = (Vec, Vec); pub trait Trait: system::Trait { - type PublicAux: RefInto; + type PublicAux: RefInto + MaybeEmpty; // MaybeEmpty is for Timestamp's usage. type SessionKey: Parameter + Default; } diff --git a/substrate/runtime/council/Cargo.toml b/substrate/runtime/council/Cargo.toml index 42270c35fca3a..5bfda8899e149 100644 --- a/substrate/runtime/council/Cargo.toml +++ b/substrate/runtime/council/Cargo.toml @@ -22,6 +22,9 @@ substrate-runtime-session = { path = "../session", default_features = false } substrate-runtime-staking = { path = "../staking", default_features = false } substrate-runtime-system = { path = "../system", default_features = false } +[dev-dependencies] +substrate-runtime-timestamp = { path = "../timestamp" } + [features] default = ["std"] std = [ diff --git a/substrate/runtime/council/src/lib.rs b/substrate/runtime/council/src/lib.rs index 8701cb6149447..0052981f1acc0 100644 --- a/substrate/runtime/council/src/lib.rs +++ b/substrate/runtime/council/src/lib.rs @@ -38,6 +38,8 @@ extern crate substrate_runtime_democracy as democracy; extern crate substrate_runtime_session as session; extern crate substrate_runtime_staking as staking; extern crate substrate_runtime_system as system; +#[cfg(test)] +extern crate substrate_runtime_timestamp as timestamp; use rstd::prelude::*; use primitives::traits::{Zero, One, RefInto, As, AuxLookup}; @@ -655,6 +657,10 @@ mod tests { impl democracy::Trait for Test { type Proposal = Proposal; } + impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; + } impl Trait for Test {} pub fn new_test_ext(with_council: bool) -> runtime_io::TestExternalities { @@ -705,6 +711,7 @@ mod tests { cooloff_period: 2, voting_period: 1, }.build_storage()); + t.extend(timestamp::GenesisConfig::::default().build_storage()); t } diff --git a/substrate/runtime/democracy/Cargo.toml b/substrate/runtime/democracy/Cargo.toml index 2b52f72ff8700..eb0f54671f1d9 100644 --- a/substrate/runtime/democracy/Cargo.toml +++ b/substrate/runtime/democracy/Cargo.toml @@ -19,6 +19,9 @@ substrate-runtime-session = { path = "../session", default_features = false } substrate-runtime-staking = { path = "../staking", default_features = false } substrate-runtime-system = { path = "../system", default_features = false } +[dev-dependencies] +substrate-runtime-timestamp = { path = "../timestamp" } + [features] default = ["std"] std = [ diff --git a/substrate/runtime/democracy/src/lib.rs b/substrate/runtime/democracy/src/lib.rs index c6affbcb2db1f..3eb7d77dcdf5b 100644 --- a/substrate/runtime/democracy/src/lib.rs +++ b/substrate/runtime/democracy/src/lib.rs @@ -41,6 +41,8 @@ extern crate substrate_runtime_consensus as consensus; extern crate substrate_runtime_session as session; extern crate substrate_runtime_staking as staking; extern crate substrate_runtime_system as system; +#[cfg(test)] +extern crate substrate_runtime_timestamp as timestamp; use rstd::prelude::*; use rstd::result; @@ -393,6 +395,10 @@ mod tests { type DetermineContractAddress = staking::DummyContractAddressFor; type AccountIndex = u64; } + impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; + } impl Trait for Test { type Proposal = Proposal; } @@ -427,6 +433,7 @@ mod tests { voting_period: 1, minimum_deposit: 1, }.build_storage()); + t.extend(timestamp::GenesisConfig::::default().build_storage()); t } diff --git a/substrate/runtime/executive/Cargo.toml b/substrate/runtime/executive/Cargo.toml index 64e2f89d06eed..4b8307170ab94 100644 --- a/substrate/runtime/executive/Cargo.toml +++ b/substrate/runtime/executive/Cargo.toml @@ -19,6 +19,7 @@ substrate-primitives = { path = "../../primitives" } substrate-runtime-session = { path = "../session" } substrate-runtime-staking = { path = "../staking" } substrate-runtime-consensus = { path = "../consensus" } +substrate-runtime-timestamp = { path = "../timestamp" } [features] default = ["std"] diff --git a/substrate/runtime/executive/src/lib.rs b/substrate/runtime/executive/src/lib.rs index 078632c6c5957..4c8b76b7e15af 100644 --- a/substrate/runtime/executive/src/lib.rs +++ b/substrate/runtime/executive/src/lib.rs @@ -30,6 +30,8 @@ extern crate substrate_runtime_io as runtime_io; extern crate substrate_codec as codec; extern crate substrate_runtime_primitives as primitives; extern crate substrate_runtime_system as system; +#[cfg(test)] +extern crate substrate_runtime_timestamp as timestamp; #[cfg(test)] #[macro_use] @@ -256,6 +258,10 @@ mod tests { type DetermineContractAddress = staking::DummyContractAddressFor; type AccountIndex = u64; } + impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; + } type TestXt = primitives::testing::TestXt>; type Executive = super::Executive, NullLookup, staking::Module, (session::Module, staking::Module)>; @@ -292,6 +298,7 @@ mod tests { t.extend(consensus::GenesisConfig::::default().build_storage()); t.extend(session::GenesisConfig::::default().build_storage()); t.extend(staking::GenesisConfig::::default().build_storage()); + t.extend(timestamp::GenesisConfig::::default().build_storage()); t } @@ -302,7 +309,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("4fd406d2d62a841f7e2f956b52ce9ed98111c9eb6b3a9051aa4667b470030832").into(), + state_root: hex!("b09827bc78c2af6e6c326bb38076a50fc29f325ffe35e0f6e4a274a2231da304").into(), extrinsics_root: hex!("56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421").into(), digest: Digest { logs: vec![], }, }, @@ -336,7 +343,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("4fd406d2d62a841f7e2f956b52ce9ed98111c9eb6b3a9051aa4667b470030832").into(), + state_root: hex!("b09827bc78c2af6e6c326bb38076a50fc29f325ffe35e0f6e4a274a2231da304").into(), extrinsics_root: [0u8; 32].into(), digest: Digest { logs: vec![], }, }, diff --git a/substrate/runtime/session/Cargo.toml b/substrate/runtime/session/Cargo.toml index 93938fc3561b7..74edc88b10219 100644 --- a/substrate/runtime/session/Cargo.toml +++ b/substrate/runtime/session/Cargo.toml @@ -17,6 +17,7 @@ substrate-runtime-support = { path = "../../runtime-support", default_features = substrate-runtime-primitives = { path = "../primitives", default_features = false } substrate-runtime-consensus = { path = "../consensus", default_features = false } substrate-runtime-system = { path = "../system", default_features = false } +substrate-runtime-timestamp = { path = "../timestamp", default_features = false } [features] default = ["std"] diff --git a/substrate/runtime/session/src/lib.rs b/substrate/runtime/session/src/lib.rs index b8de8abb1ad5a..0c928cdfe90fe 100644 --- a/substrate/runtime/session/src/lib.rs +++ b/substrate/runtime/session/src/lib.rs @@ -43,13 +43,14 @@ extern crate substrate_codec as codec; extern crate substrate_runtime_primitives as primitives; extern crate substrate_runtime_consensus as consensus; extern crate substrate_runtime_system as system; +extern crate substrate_runtime_timestamp as timestamp; use rstd::prelude::*; -use primitives::traits::{Zero, One, RefInto, Executable, Convert}; +use primitives::traits::{Zero, One, RefInto, Executable, Convert, As}; use runtime_support::{StorageValue, StorageMap}; use runtime_support::dispatch::Result; -pub trait Trait: consensus::Trait { +pub trait Trait: timestamp::Trait { type ConvertAccountIdToSessionKey: Convert; } @@ -76,6 +77,8 @@ decl_storage! { pub SessionLength get(length): b"ses:len" => required T::BlockNumber; // Current index of the session. pub CurrentIndex get(current_index): b"ses:ind" => required T::BlockNumber; + // Timestamp when current session started. + pub CurrentStart get(current_start): b"ses:current_start" => required T::Value; // Block at which the session length last changed. LastLengthChange: b"ses:llc" => T::BlockNumber; @@ -135,7 +138,7 @@ impl Module { // new set. // check block number and call next_session if necessary. let block_number = >::block_number(); - if ((block_number - Self::last_length_change()) % Self::length()).is_zero() { + if ((block_number - Self::last_length_change()) % Self::length()).is_zero() || Self::broken_validation() { Self::rotate_session(); } } @@ -144,6 +147,7 @@ impl Module { pub fn rotate_session() { // Increment current session index. >::put(>::get() + One::one()); + >::put(>::get()); // Enact era length change. if let Some(next_len) = >::take() { @@ -159,6 +163,20 @@ impl Module { } }); } + + /// Returns `true` if the current validator set is taking took long to validate blocks. + pub fn broken_validation() -> bool { + let now = >::get(); + let block_period = >::block_period(); + let block_number = >::block_number(); + let blocks_remaining = Self::length() - One::one() - (block_number - Self::last_length_change()) % Self::length(); + if blocks_remaining.is_zero() { + false + } else { + let blocks_remaining = >::sa(blocks_remaining); + Self::current_start() + blocks_remaining * block_period > now + } + } } impl Executable for Module { @@ -194,6 +212,7 @@ impl primitives::BuildStorage for GenesisConfig map![ twox_128(>::key()).to_vec() => self.session_length.encode(), twox_128(>::key()).to_vec() => T::BlockNumber::sa(0).encode(), + twox_128(>::key()).to_vec() => T::Value::zero().encode(), twox_128(>::key()).to_vec() => self.validators.encode() ] } @@ -226,6 +245,10 @@ mod tests { type AccountId = u64; type Header = Header; } + impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; + } impl Trait for Test { type ConvertAccountIdToSessionKey = Identity; } @@ -240,6 +263,7 @@ mod tests { code: vec![], authorities: vec![1, 2, 3], }.build_storage()); + t.extend(timestamp::GenesisConfig::::default().build_storage()); t.extend(GenesisConfig::{ session_length: 2, validators: vec![1, 2, 3], diff --git a/substrate/runtime/staking/Cargo.toml b/substrate/runtime/staking/Cargo.toml index b231ed7cf192e..f6dc8d96a4c00 100644 --- a/substrate/runtime/staking/Cargo.toml +++ b/substrate/runtime/staking/Cargo.toml @@ -20,6 +20,7 @@ substrate-runtime-primitives = { path = "../primitives", default_features = fals substrate-runtime-consensus = { path = "../consensus", default_features = false } substrate-runtime-system = { path = "../system", default_features = false } substrate-runtime-session = { path = "../session", default_features = false } +substrate-runtime-timestamp = { path = "../timestamp", default_features = false } [dev-dependencies] wabt = "0.1.7" diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 12d591e3a6172..f2ccba2b01014 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -43,6 +43,7 @@ extern crate substrate_runtime_consensus as consensus; extern crate substrate_runtime_sandbox as sandbox; extern crate substrate_runtime_session as session; extern crate substrate_runtime_system as system; +extern crate substrate_runtime_timestamp as timestamp; #[cfg(test)] use std::fmt::Debug; use rstd::prelude::*; diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index c5a3e3e5af8d7..a335ff3978a68 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -23,7 +23,7 @@ use primitives::traits::{HasPublicAux, Identity}; use primitives::testing::{Digest, Header}; use substrate_primitives::H256; use runtime_io; -use {DummyContractAddressFor, GenesisConfig, Module, Trait, consensus, session, system}; +use {DummyContractAddressFor, GenesisConfig, Module, Trait, consensus, session, system, timestamp}; // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, Debug, Serialize, Deserialize)] @@ -47,6 +47,10 @@ impl system::Trait for Test { impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; } +impl timestamp::Trait for Test { + const TIMESTAMP_SET_POSITION: u32 = 0; + type Value = u64; +} impl Trait for Test { type Balance = u64; type DetermineContractAddress = DummyContractAddressFor; @@ -83,6 +87,7 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 contract_fee: 0, reclaim_rebate: 0, }.build_storage()); + t.extend(timestamp::GenesisConfig::::default().build_storage()); t } diff --git a/substrate/runtime/timestamp/Cargo.toml b/substrate/runtime/timestamp/Cargo.toml index d90f961b6c69b..1b5637a2c33a6 100644 --- a/substrate/runtime/timestamp/Cargo.toml +++ b/substrate/runtime/timestamp/Cargo.toml @@ -14,6 +14,7 @@ substrate-runtime-primitives = { path = "../primitives", default_features = fals substrate-codec = { path = "../../codec", default_features = false } substrate-primitives = { path = "../../primitives", default_features = false } substrate-runtime-system = { path = "../system", default_features = false } +substrate-runtime-consensus = { path = "../consensus", default_features = false } [dev-dependencies] substrate-runtime-io = { path = "../../runtime-io", default_features = true } diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 1d8ce4eb30660..129fde4b8c692 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -35,17 +35,20 @@ extern crate serde_derive; extern crate substrate_primitives; extern crate substrate_runtime_primitives as runtime_primitives; extern crate substrate_runtime_system as system; +extern crate substrate_runtime_consensus as consensus; extern crate substrate_codec as codec; use runtime_support::{StorageValue, Parameter}; use runtime_support::dispatch::Result; -use runtime_primitives::traits::{HasPublicAux, Executable, MaybeEmpty, SimpleArithmetic}; +use runtime_primitives::traits::{Executable, MaybeEmpty, SimpleArithmetic, As}; -pub trait Trait: HasPublicAux + system::Trait { +pub trait Trait: consensus::Trait where + ::PublicAux: MaybeEmpty +{ // the position of the required timestamp-set extrinsic. - const SET_POSITION: u32; + const TIMESTAMP_SET_POSITION: u32; - type Value: Parameter + Default + SimpleArithmetic; + type Value: Parameter + Default + SimpleArithmetic + As; } decl_module! { @@ -77,9 +80,9 @@ impl Module { assert!(aux.is_empty()); assert!(!::DidUpdate::exists(), "Timestamp must be updated only once in the block"); assert!( - >::extrinsic_index() == T::SET_POSITION, + >::extrinsic_index() == T::TIMESTAMP_SET_POSITION, "Timestamp extrinsic must be at position {} in the block", - T::SET_POSITION + T::TIMESTAMP_SET_POSITION ); assert!( now >= Self::get() + Self::block_period(), @@ -103,6 +106,7 @@ pub struct GenesisConfig { pub period: T::Value, } +#[cfg(any(feature = "std", test))] impl Default for GenesisConfig { fn default() -> Self { GenesisConfig { @@ -150,8 +154,12 @@ mod tests { type AccountId = u64; type Header = Header; } + impl consensus::Trait for Test { + type PublicAux = u64; + type SessionKey = u64; + } impl Trait for Test { - const SET_POSITION: u32 = 0; + const TIMESTAMP_SET_POSITION: u32 = 0; type Value = u64; } type Timestamp = Module; From 19fe55fb2f8bedbde2f5898b36a9109a2bdf7386 Mon Sep 17 00:00:00 2001 From: Gav Date: Sat, 23 Jun 2018 11:38:09 +0200 Subject: [PATCH 04/22] Report most of staking module --- substrate/runtime/staking/src/account_db.rs | 224 +++++++++++ .../runtime/staking/src/genesis_config.rs | 145 +++++++ substrate/runtime/staking/src/lib.rs | 377 ++---------------- substrate/runtime/staking/src/mock.rs | 12 +- 4 files changed, 402 insertions(+), 356 deletions(-) create mode 100644 substrate/runtime/staking/src/account_db.rs create mode 100644 substrate/runtime/staking/src/genesis_config.rs diff --git a/substrate/runtime/staking/src/account_db.rs b/substrate/runtime/staking/src/account_db.rs new file mode 100644 index 0000000000000..e7d883a656b8a --- /dev/null +++ b/substrate/runtime/staking/src/account_db.rs @@ -0,0 +1,224 @@ +// Copyright 2017 Parity Technologies (UK) Ltd. +// This file is part of Substrate Demo. + +// Substrate Demo is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Substrate Demo is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Substrate Demo. If not, see . + +//! Auxilliaries to help with managing partial changes to accounts state. + +use rstd::prelude::*; +use rstd::cell::RefCell; +use rstd::collections::btree_map::{BTreeMap, Entry}; +use runtime_support::StorageMap; +use super::*; + +pub struct ChangeEntry { + balance: Option, + code: Option>, + storage: BTreeMap, Option>>, +} + +// Cannot derive(Default) since it erroneously bounds T by Default. +impl Default for ChangeEntry { + fn default() -> Self { + ChangeEntry { + balance: Default::default(), + code: Default::default(), + storage: Default::default(), + } + } +} + +impl ChangeEntry { + pub fn contract_created(b: T::Balance, c: Vec) -> Self { + ChangeEntry { balance: Some(b), code: Some(c), storage: Default::default() } + } + pub fn balance_changed(b: T::Balance) -> Self { + ChangeEntry { balance: Some(b), code: None, storage: Default::default() } + } +} + +pub type State = BTreeMap<::AccountId, ChangeEntry>; + +pub trait AccountDb { + fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option>; + fn get_code(&self, account: &T::AccountId) -> Vec; + fn get_balance(&self, account: &T::AccountId) -> T::Balance; + + fn merge(&mut self, state: State); +} + +pub struct DirectAccountDb; +impl AccountDb for DirectAccountDb { + fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { + >::get(&(account.clone(), location.to_vec())) + } + fn get_code(&self, account: &T::AccountId) -> Vec { + >::get(account) + } + fn get_balance(&self, account: &T::AccountId) -> T::Balance { + >::get(account) + } + fn merge(&mut self, s: State) { + let ed = >::existential_deposit(); + for (address, changed) in s.into_iter() { + if let Some(balance) = changed.balance { + // If the balance is too low, then the account is reaped. + // NOTE: There are two balances for every account: `reserved_balance` and + // `free_balance`. This contract subsystem only cares about the latter: whenever + // the term "balance" is used *here* it should be assumed to mean "free balance" + // in the rest of the module. + // Free balance can never be less than ED. If that happens, it gets reduced to zero + // and the account information relevant to this subsystem is deleted (i.e. the + // account is reaped). + // NOTE: This is orthogonal to the `Bondage` value that an account has, a high + // value of which makes even the `free_balance` unspendable. + // TODO: enforce this for the other balance-altering functions. + if balance < ed { + >::on_free_too_low(&address); + continue; + } else { + if !>::exists(&address) { + let outcome = >::new_account(&address, balance); + let credit = match outcome { + NewAccountOutcome::GoodHint => balance + >::reclaim_rebate(), + _ => balance, + }; + >::insert(&address, credit); + } else { + >::insert(&address, balance); + } + } + } + if let Some(code) = changed.code { + >::insert(&address, &code); + } + for (k, v) in changed.storage.into_iter() { + if let Some(value) = v { + >::insert((address.clone(), k), &value); + } else { + >::remove((address.clone(), k)); + } + } + } + } +} + +pub struct OverlayAccountDb<'a, T: Trait + 'a> { + local: RefCell>, + underlying: &'a AccountDb, +} +impl<'a, T: Trait> OverlayAccountDb<'a, T> { + pub fn new(underlying: &'a AccountDb) -> OverlayAccountDb<'a, T> { + OverlayAccountDb { + local: RefCell::new(State::new()), + underlying, + } + } + + pub fn into_state(self) -> State { + self.local.into_inner() + } + + fn set_storage(&mut self, account: &T::AccountId, location: Vec, value: Option>) { + self.local + .borrow_mut() + .entry(account.clone()) + .or_insert(Default::default()) + .storage + .insert(location, value); + } + pub fn set_balance(&mut self, account: &T::AccountId, balance: T::Balance) { + self.local + .borrow_mut() + .entry(account.clone()) + .or_insert(Default::default()) + .balance = Some(balance); + } +} + +impl<'a, T: Trait> AccountDb for OverlayAccountDb<'a, T> { + fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { + self.local + .borrow() + .get(account) + .and_then(|a| a.storage.get(location)) + .cloned() + .unwrap_or_else(|| self.underlying.get_storage(account, location)) + } + fn get_code(&self, account: &T::AccountId) -> Vec { + self.local + .borrow() + .get(account) + .and_then(|a| a.code.clone()) + .unwrap_or_else(|| self.underlying.get_code(account)) + } + fn get_balance(&self, account: &T::AccountId) -> T::Balance { + self.local + .borrow() + .get(account) + .and_then(|a| a.balance) + .unwrap_or_else(|| self.underlying.get_balance(account)) + } + fn merge(&mut self, s: State) { + let mut local = self.local.borrow_mut(); + + for (address, changed) in s.into_iter() { + match local.entry(address) { + Entry::Occupied(e) => { + let mut value = e.into_mut(); + if changed.balance.is_some() { + value.balance = changed.balance; + } + if changed.code.is_some() { + value.code = changed.code; + } + value.storage.extend(changed.storage.into_iter()); + } + Entry::Vacant(e) => { + e.insert(changed); + } + } + } + } +} + +pub(crate) struct StakingExt<'a, 'b: 'a, T: Trait + 'b> { + pub account_db: &'a mut OverlayAccountDb<'b, T>, + pub account: T::AccountId, +} +impl<'a, 'b: 'a, T: Trait> contract::Ext for StakingExt<'a, 'b, T> { + type AccountId = T::AccountId; + type Balance = T::Balance; + + fn get_storage(&self, key: &[u8]) -> Option> { + self.account_db.get_storage(&self.account, key) + } + fn set_storage(&mut self, key: &[u8], value: Option>) { + self.account_db.set_storage(&self.account, key.to_vec(), value); + } + fn create(&mut self, code: &[u8], value: Self::Balance) { + if let Ok(Some(commit_state)) = + Module::::effect_create(&self.account, code, value, self.account_db) + { + self.account_db.merge(commit_state); + } + } + fn transfer(&mut self, to: &Self::AccountId, value: Self::Balance) { + if let Ok(Some(commit_state)) = + Module::::effect_transfer(&self.account, to, value, self.account_db) + { + self.account_db.merge(commit_state); + } + } +} diff --git a/substrate/runtime/staking/src/genesis_config.rs b/substrate/runtime/staking/src/genesis_config.rs new file mode 100644 index 0000000000000..936be9c023b5d --- /dev/null +++ b/substrate/runtime/staking/src/genesis_config.rs @@ -0,0 +1,145 @@ +// Copyright 2017 Parity Technologies (UK) Ltd. +// This file is part of Substrate Demo. + +// Substrate Demo is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Substrate Demo is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Substrate Demo. If not, see . + +//! Build a staking genesis block. + +#![cfg(feature = "std")] + +use rstd::prelude::*; +use runtime_io::twox_128; +use codec::Slicable; +use runtime_support::{StorageValue, StorageMap}; +use primitives::traits::{Zero, As}; +use {runtime_io, primitives}; +use super::{Trait, ENUM_SET_SIZE, EnumSet, NextEnumSet, Intentions, CurrentEra, + BondingDuration, ContractFee, CreationFee, TransferFee, ReclaimRebate, + ExistentialDeposit, TransactionByteFee, TransactionBaseFee, TotalStake, + SessionsPerEra, ValidatorCount, FreeBalance}; + +pub struct GenesisConfig { + pub sessions_per_era: T::BlockNumber, + pub current_era: T::BlockNumber, + pub balances: Vec<(T::AccountId, T::Balance)>, + pub intentions: Vec, + pub validator_count: u64, + pub bonding_duration: T::BlockNumber, + pub transaction_base_fee: T::Balance, + pub transaction_byte_fee: T::Balance, + pub transfer_fee: T::Balance, + pub creation_fee: T::Balance, + pub contract_fee: T::Balance, + pub reclaim_rebate: T::Balance, + pub existential_deposit: T::Balance, +} + +impl GenesisConfig where T::AccountId: From { + pub fn simple() -> Self { + GenesisConfig { + sessions_per_era: T::BlockNumber::sa(2), + current_era: T::BlockNumber::sa(0), + balances: vec![(T::AccountId::from(1), T::Balance::sa(111))], + intentions: vec![T::AccountId::from(1), T::AccountId::from(2), T::AccountId::from(3)], + validator_count: 3, + bonding_duration: T::BlockNumber::sa(0), + transaction_base_fee: T::Balance::sa(0), + transaction_byte_fee: T::Balance::sa(0), + transfer_fee: T::Balance::sa(0), + creation_fee: T::Balance::sa(0), + contract_fee: T::Balance::sa(0), + existential_deposit: T::Balance::sa(0), + reclaim_rebate: T::Balance::sa(0), + } + } + + pub fn extended() -> Self { + GenesisConfig { + sessions_per_era: T::BlockNumber::sa(3), + current_era: T::BlockNumber::sa(1), + balances: vec![ + (T::AccountId::from(1), T::Balance::sa(10)), + (T::AccountId::from(2), T::Balance::sa(20)), + (T::AccountId::from(3), T::Balance::sa(30)), + (T::AccountId::from(4), T::Balance::sa(40)), + (T::AccountId::from(5), T::Balance::sa(50)), + (T::AccountId::from(6), T::Balance::sa(60)), + (T::AccountId::from(7), T::Balance::sa(1)) + ], + intentions: vec![T::AccountId::from(1), T::AccountId::from(2), T::AccountId::from(3)], + validator_count: 3, + bonding_duration: T::BlockNumber::sa(0), + transaction_base_fee: T::Balance::sa(1), + transaction_byte_fee: T::Balance::sa(0), + transfer_fee: T::Balance::sa(0), + creation_fee: T::Balance::sa(0), + contract_fee: T::Balance::sa(0), + existential_deposit: T::Balance::sa(0), + reclaim_rebate: T::Balance::sa(0), + } + } +} + +impl Default for GenesisConfig { + fn default() -> Self { + GenesisConfig { + sessions_per_era: T::BlockNumber::sa(1000), + current_era: T::BlockNumber::sa(0), + balances: vec![], + intentions: vec![], + validator_count: 0, + bonding_duration: T::BlockNumber::sa(1000), + transaction_base_fee: T::Balance::sa(0), + transaction_byte_fee: T::Balance::sa(0), + transfer_fee: T::Balance::sa(0), + creation_fee: T::Balance::sa(0), + contract_fee: T::Balance::sa(0), + existential_deposit: T::Balance::sa(0), + reclaim_rebate: T::Balance::sa(0), + } + } +} + +impl primitives::BuildStorage for GenesisConfig { + fn build_storage(self) -> runtime_io::TestExternalities { + let total_stake: T::Balance = self.balances.iter().fold(Zero::zero(), |acc, &(_, n)| acc + n); + + let mut r: runtime_io::TestExternalities = map![ + twox_128(>::key()).to_vec() => T::AccountIndex::sa(self.balances.len() / ENUM_SET_SIZE).encode(), + twox_128(>::key()).to_vec() => self.intentions.encode(), + twox_128(>::key()).to_vec() => self.sessions_per_era.encode(), + twox_128(>::key()).to_vec() => self.validator_count.encode(), + twox_128(>::key()).to_vec() => self.bonding_duration.encode(), + twox_128(>::key()).to_vec() => self.transaction_base_fee.encode(), + twox_128(>::key()).to_vec() => self.transaction_byte_fee.encode(), + twox_128(>::key()).to_vec() => self.transfer_fee.encode(), + twox_128(>::key()).to_vec() => self.creation_fee.encode(), + twox_128(>::key()).to_vec() => self.contract_fee.encode(), + twox_128(>::key()).to_vec() => self.existential_deposit.encode(), + twox_128(>::key()).to_vec() => self.reclaim_rebate.encode(), + twox_128(>::key()).to_vec() => self.current_era.encode(), + twox_128(>::key()).to_vec() => total_stake.encode() + ]; + + let ids: Vec<_> = self.balances.iter().map(|x| x.0.clone()).collect(); + for i in 0..(ids.len() + ENUM_SET_SIZE - 1) / ENUM_SET_SIZE { + r.insert(twox_128(&>::key_for(T::AccountIndex::sa(i))).to_vec(), + ids[i * ENUM_SET_SIZE..ids.len().min((i + 1) * ENUM_SET_SIZE)].to_owned().encode()); + } + for (who, value) in self.balances.into_iter() { + r.insert(twox_128(&>::key_for(who)).to_vec(), value.encode()); + } + r + } +} diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index f2ccba2b01014..6ba14bf290a32 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -46,10 +46,10 @@ extern crate substrate_runtime_system as system; extern crate substrate_runtime_timestamp as timestamp; #[cfg(test)] use std::fmt::Debug; +use account_db::State; use rstd::prelude::*; use rstd::{cmp, result}; -use rstd::cell::RefCell; -use rstd::collections::btree_map::{BTreeMap, Entry}; +use rstd::collections::btree_map::BTreeMap; use codec::{Input, Slicable}; use runtime_support::{StorageValue, StorageMap, Parameter}; use runtime_support::dispatch::Result; @@ -58,10 +58,19 @@ use primitives::traits::{Zero, One, Bounded, RefInto, SimpleArithmetic, Executab use address::Address as RawAddress; pub mod address; -#[cfg(test)] +#[cfg(feature = "std")] mod mock; #[cfg(test)] mod tests; +mod genesis_config; +mod account_db; + +#[cfg(feature = "std")] +pub use genesis_config::GenesisConfig; +#[cfg(feature = "std")] +pub use mock::DummyContractAddressFor; + +pub use account_db::*; /// Number of account IDs stored per enum set. const ENUM_SET_SIZE: usize = 64; @@ -602,203 +611,7 @@ impl Module { >::remove(who); } } -} - -impl Executable for Module { - fn execute() { - Self::check_new_era(); - } -} - -impl AuxLookup for Module { - type Source = address::Address; - type Target = T::AccountId; - fn lookup(a: Self::Source) -> result::Result { - match a { - address::Address::Id(i) => Ok(i), - address::Address::Index(i) => >::lookup_index(i).ok_or("invalid account index"), - } - } -} - -// Each identity's stake may be in one of three bondage states, given by an integer: -// - n | n <= >::get(): inactive: free to be transferred. -// - ~0: active: currently representing a validator. -// - n | n > >::get(): deactivating: recently representing a validator and not yet -// ready for transfer. - -struct ChangeEntry { - balance: Option, - code: Option>, - storage: BTreeMap, Option>>, -} - -// Cannot derive(Default) since it erroneously bounds T by Default. -impl Default for ChangeEntry { - fn default() -> Self { - ChangeEntry { - balance: Default::default(), - code: Default::default(), - storage: Default::default(), - } - } -} - -impl ChangeEntry { - pub fn contract_created(b: T::Balance, c: Vec) -> Self { - ChangeEntry { balance: Some(b), code: Some(c), storage: Default::default() } - } - pub fn balance_changed(b: T::Balance) -> Self { - ChangeEntry { balance: Some(b), code: None, storage: Default::default() } - } -} - -type State = BTreeMap<::AccountId, ChangeEntry>; - -trait AccountDb { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option>; - fn get_code(&self, account: &T::AccountId) -> Vec; - fn get_balance(&self, account: &T::AccountId) -> T::Balance; - - fn merge(&mut self, state: State); -} - -struct DirectAccountDb; -impl AccountDb for DirectAccountDb { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { - >::get(&(account.clone(), location.to_vec())) - } - fn get_code(&self, account: &T::AccountId) -> Vec { - >::get(account) - } - fn get_balance(&self, account: &T::AccountId) -> T::Balance { - >::get(account) - } - fn merge(&mut self, s: State) { - let ed = >::existential_deposit(); - for (address, changed) in s.into_iter() { - if let Some(balance) = changed.balance { - // If the balance is too low, then the account is reaped. - // NOTE: There are two balances for every account: `reserved_balance` and - // `free_balance`. This contract subsystem only cares about the latter: whenever - // the term "balance" is used *here* it should be assumed to mean "free balance" - // in the rest of the module. - // Free balance can never be less than ED. If that happens, it gets reduced to zero - // and the account information relevant to this subsystem is deleted (i.e. the - // account is reaped). - // NOTE: This is orthogonal to the `Bondage` value that an account has, a high - // value of which makes even the `free_balance` unspendable. - // TODO: enforce this for the other balance-altering functions. - if balance < ed { - >::on_free_too_low(&address); - continue; - } else { - if !>::exists(&address) { - let outcome = >::new_account(&address, balance); - let credit = match outcome { - NewAccountOutcome::GoodHint => balance + >::reclaim_rebate(), - _ => balance, - }; - >::insert(&address, credit); - } else { - >::insert(&address, balance); - } - } - } - if let Some(code) = changed.code { - >::insert(&address, &code); - } - for (k, v) in changed.storage.into_iter() { - if let Some(value) = v { - >::insert((address.clone(), k), &value); - } else { - >::remove((address.clone(), k)); - } - } - } - } -} - -struct OverlayAccountDb<'a, T: Trait + 'a> { - local: RefCell>, - underlying: &'a AccountDb, -} -impl<'a, T: Trait> OverlayAccountDb<'a, T> { - fn new(underlying: &'a AccountDb) -> OverlayAccountDb<'a, T> { - OverlayAccountDb { - local: RefCell::new(State::new()), - underlying, - } - } - fn into_state(self) -> State { - self.local.into_inner() - } - - fn set_storage(&mut self, account: &T::AccountId, location: Vec, value: Option>) { - self.local - .borrow_mut() - .entry(account.clone()) - .or_insert(Default::default()) - .storage - .insert(location, value); - } - fn set_balance(&mut self, account: &T::AccountId, balance: T::Balance) { - self.local - .borrow_mut() - .entry(account.clone()) - .or_insert(Default::default()) - .balance = Some(balance); - } -} - -impl<'a, T: Trait> AccountDb for OverlayAccountDb<'a, T> { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { - self.local - .borrow() - .get(account) - .and_then(|a| a.storage.get(location)) - .cloned() - .unwrap_or_else(|| self.underlying.get_storage(account, location)) - } - fn get_code(&self, account: &T::AccountId) -> Vec { - self.local - .borrow() - .get(account) - .and_then(|a| a.code.clone()) - .unwrap_or_else(|| self.underlying.get_code(account)) - } - fn get_balance(&self, account: &T::AccountId) -> T::Balance { - self.local - .borrow() - .get(account) - .and_then(|a| a.balance) - .unwrap_or_else(|| self.underlying.get_balance(account)) - } - fn merge(&mut self, s: State) { - let mut local = self.local.borrow_mut(); - - for (address, changed) in s.into_iter() { - match local.entry(address) { - Entry::Occupied(e) => { - let mut value = e.into_mut(); - if changed.balance.is_some() { - value.balance = changed.balance; - } - if changed.code.is_some() { - value.code = changed.code; - } - value.storage.extend(changed.storage.into_iter()); - } - Entry::Vacant(e) => { - e.insert(changed); - } - } - } - } -} - -impl Module { fn effect_create>( transactor: &T::AccountId, code: &[u8], @@ -895,32 +708,19 @@ impl Module { } } -struct StakingExt<'a, 'b: 'a, T: Trait + 'b> { - account_db: &'a mut OverlayAccountDb<'b, T>, - account: T::AccountId, +impl Executable for Module { + fn execute() { + Self::check_new_era(); + } } -impl<'a, 'b: 'a, T: Trait> contract::Ext for StakingExt<'a, 'b, T> { - type AccountId = T::AccountId; - type Balance = T::Balance; - fn get_storage(&self, key: &[u8]) -> Option> { - self.account_db.get_storage(&self.account, key) - } - fn set_storage(&mut self, key: &[u8], value: Option>) { - self.account_db.set_storage(&self.account, key.to_vec(), value); - } - fn create(&mut self, code: &[u8], value: Self::Balance) { - if let Ok(Some(commit_state)) = - Module::::effect_create(&self.account, code, value, self.account_db) - { - self.account_db.merge(commit_state); - } - } - fn transfer(&mut self, to: &Self::AccountId, value: Self::Balance) { - if let Ok(Some(commit_state)) = - Module::::effect_transfer(&self.account, to, value, self.account_db) - { - self.account_db.merge(commit_state); +impl AuxLookup for Module { + type Source = address::Address; + type Target = T::AccountId; + fn lookup(a: Self::Source) -> result::Result { + match a { + address::Address::Id(i) => Ok(i), + address::Address::Index(i) => >::lookup_index(i).ok_or("invalid account index"), } } } @@ -936,134 +736,3 @@ impl MakePayment for Module { Ok(()) } } - -#[cfg(any(feature = "std", test))] -pub struct DummyContractAddressFor; -#[cfg(any(feature = "std", test))] -impl ContractAddressFor for DummyContractAddressFor { - fn contract_address_for(_code: &[u8], origin: &u64) -> u64 { - origin + 1 - } -} - -#[cfg(any(feature = "std", test))] -pub struct GenesisConfig { - pub sessions_per_era: T::BlockNumber, - pub current_era: T::BlockNumber, - pub balances: Vec<(T::AccountId, T::Balance)>, - pub intentions: Vec, - pub validator_count: u64, - pub bonding_duration: T::BlockNumber, - pub transaction_base_fee: T::Balance, - pub transaction_byte_fee: T::Balance, - pub transfer_fee: T::Balance, - pub creation_fee: T::Balance, - pub contract_fee: T::Balance, - pub reclaim_rebate: T::Balance, - pub existential_deposit: T::Balance, -} - -#[cfg(any(feature = "std", test))] -impl GenesisConfig where T::AccountId: From { - pub fn simple() -> Self { - GenesisConfig { - sessions_per_era: T::BlockNumber::sa(2), - current_era: T::BlockNumber::sa(0), - balances: vec![(T::AccountId::from(1), T::Balance::sa(111))], - intentions: vec![T::AccountId::from(1), T::AccountId::from(2), T::AccountId::from(3)], - validator_count: 3, - bonding_duration: T::BlockNumber::sa(0), - transaction_base_fee: T::Balance::sa(0), - transaction_byte_fee: T::Balance::sa(0), - transfer_fee: T::Balance::sa(0), - creation_fee: T::Balance::sa(0), - contract_fee: T::Balance::sa(0), - existential_deposit: T::Balance::sa(0), - reclaim_rebate: T::Balance::sa(0), - } - } - - pub fn extended() -> Self { - GenesisConfig { - sessions_per_era: T::BlockNumber::sa(3), - current_era: T::BlockNumber::sa(1), - balances: vec![ - (T::AccountId::from(1), T::Balance::sa(10)), - (T::AccountId::from(2), T::Balance::sa(20)), - (T::AccountId::from(3), T::Balance::sa(30)), - (T::AccountId::from(4), T::Balance::sa(40)), - (T::AccountId::from(5), T::Balance::sa(50)), - (T::AccountId::from(6), T::Balance::sa(60)), - (T::AccountId::from(7), T::Balance::sa(1)) - ], - intentions: vec![T::AccountId::from(1), T::AccountId::from(2), T::AccountId::from(3)], - validator_count: 3, - bonding_duration: T::BlockNumber::sa(0), - transaction_base_fee: T::Balance::sa(1), - transaction_byte_fee: T::Balance::sa(0), - transfer_fee: T::Balance::sa(0), - creation_fee: T::Balance::sa(0), - contract_fee: T::Balance::sa(0), - existential_deposit: T::Balance::sa(0), - reclaim_rebate: T::Balance::sa(0), - } - } -} - -#[cfg(any(feature = "std", test))] -impl Default for GenesisConfig { - fn default() -> Self { - GenesisConfig { - sessions_per_era: T::BlockNumber::sa(1000), - current_era: T::BlockNumber::sa(0), - balances: vec![], - intentions: vec![], - validator_count: 0, - bonding_duration: T::BlockNumber::sa(1000), - transaction_base_fee: T::Balance::sa(0), - transaction_byte_fee: T::Balance::sa(0), - transfer_fee: T::Balance::sa(0), - creation_fee: T::Balance::sa(0), - contract_fee: T::Balance::sa(0), - existential_deposit: T::Balance::sa(0), - reclaim_rebate: T::Balance::sa(0), - } - } -} - -#[cfg(any(feature = "std", test))] -impl primitives::BuildStorage for GenesisConfig { - fn build_storage(self) -> runtime_io::TestExternalities { - use runtime_io::twox_128; - use codec::Slicable; - - let total_stake: T::Balance = self.balances.iter().fold(Zero::zero(), |acc, &(_, n)| acc + n); - - let mut r: runtime_io::TestExternalities = map![ - twox_128(>::key()).to_vec() => T::AccountIndex::sa(self.balances.len() / ENUM_SET_SIZE).encode(), - twox_128(>::key()).to_vec() => self.intentions.encode(), - twox_128(>::key()).to_vec() => self.sessions_per_era.encode(), - twox_128(>::key()).to_vec() => self.validator_count.encode(), - twox_128(>::key()).to_vec() => self.bonding_duration.encode(), - twox_128(>::key()).to_vec() => self.transaction_base_fee.encode(), - twox_128(>::key()).to_vec() => self.transaction_byte_fee.encode(), - twox_128(>::key()).to_vec() => self.transfer_fee.encode(), - twox_128(>::key()).to_vec() => self.creation_fee.encode(), - twox_128(>::key()).to_vec() => self.contract_fee.encode(), - twox_128(>::key()).to_vec() => self.existential_deposit.encode(), - twox_128(>::key()).to_vec() => self.reclaim_rebate.encode(), - twox_128(>::key()).to_vec() => self.current_era.encode(), - twox_128(>::key()).to_vec() => total_stake.encode() - ]; - - let ids: Vec<_> = self.balances.iter().map(|x| x.0.clone()).collect(); - for i in 0..(ids.len() + ENUM_SET_SIZE - 1) / ENUM_SET_SIZE { - r.insert(twox_128(&>::key_for(T::AccountIndex::sa(i))).to_vec(), - ids[i * ENUM_SET_SIZE..ids.len().min((i + 1) * ENUM_SET_SIZE)].to_owned().encode()); - } - for (who, value) in self.balances.into_iter() { - r.insert(twox_128(&>::key_for(who)).to_vec(), value.encode()); - } - r - } -} diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index a335ff3978a68..02f9db90ac17b 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -16,14 +16,22 @@ //! Test utilities -#![cfg(test)] +#![cfg(feature = "std")] use primitives::BuildStorage; use primitives::traits::{HasPublicAux, Identity}; use primitives::testing::{Digest, Header}; use substrate_primitives::H256; use runtime_io; -use {DummyContractAddressFor, GenesisConfig, Module, Trait, consensus, session, system, timestamp}; +use {GenesisConfig, Module, Trait, consensus, session, system, timestamp}; +use super::ContractAddressFor; + +pub struct DummyContractAddressFor; +impl ContractAddressFor for DummyContractAddressFor { + fn contract_address_for(_code: &[u8], origin: &u64) -> u64 { + origin + 1 + } +} // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, Debug, Serialize, Deserialize)] From b8f2689a357ade9724fb11ff8e709b98c616c3b4 Mon Sep 17 00:00:00 2001 From: Gav Date: Sat, 23 Jun 2018 12:44:03 +0200 Subject: [PATCH 05/22] rewards, proper early exit and slashing --- .../release/demo_runtime.compact.wasm | Bin 409357 -> 417163 bytes .../release/demo_runtime.wasm | Bin 444224 -> 452344 bytes .../release/polkadot_runtime.compact.wasm | Bin 441318 -> 438103 bytes .../release/polkadot_runtime.wasm | Bin 483735 -> 481047 bytes .../release/runtime_test.compact.wasm | Bin 15619 -> 15679 bytes .../release/runtime_test.wasm | Bin 16166 -> 16188 bytes substrate/runtime/session/src/lib.rs | 41 ++++++++++--- substrate/runtime/staking/src/lib.rs | 55 +++++++++++++++--- substrate/runtime/staking/src/mock.rs | 1 + substrate/runtime/staking/src/tests.rs | 32 +++++----- .../substrate_test_runtime.compact.wasm | Bin 20288 -> 20277 bytes .../release/substrate_test_runtime.wasm | Bin 22370 -> 22363 bytes 12 files changed, 97 insertions(+), 32 deletions(-) diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.compact.wasm index 6d60108b2f21c2fc7b819211f54a73efb083a626..efc40dc15c9f29289fdebc6dddf044e64653f7f4 100644 GIT binary patch delta 144247 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

mQPhTkVQw`i{@GyMS|Pce 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 QIcUX`F)I&5fHbuJKeVQ_SO5S3 delta 139021 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 diff --git a/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.wasm b/demo/runtime/wasm/target/wasm32-unknown-unknown/release/demo_runtime.wasm index 6cf7621c64e0af0d7f3f35d5a5276c194ea01da6..d70b6dbadc3a153ea07aa942a31bb88f3c0605e0 100755 GIT binary patch delta 153519 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 diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.compact.wasm index 593b987ac3ca50c673eaa8d7aadcb2359c5f85e8..2c15be764f3615cdffd919ae80868530243c365c 100644 GIT binary patch delta 141685 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%0D1ecF-pKb^0Z#>|1`|0j zH~MUnjdpIW`gNVc_D2X_eK~XNI!AC4G@+r7gOxY-_%dxO_H^P%&G|BIDkAma7HFgx zvoVHfQQo#|kM6DJnehS0MsS|Sb{7a@yQXQtJs_%>Vkb1yERZACk^}jX@N-bmvV<8I ztzW+$F?Aaq&rK!}8xRJbHUSsC3Y*ti`s;Mh9`h*qmJM z4#r*(Hi7{$277Z06&YR#84Kh4CZpRv4E>h71Bw!`dOA!34*21E4RV9z7x03UBm9Tj zAArFW;bd?@Axv%!VZhBB3Y-bxaCU8xKqpc`dF+s3ZdfRK*jNefilko&6qCkf?9!`n zZ^#$)>bJra1cySn05f}P!|jg@vSaoSx@H*~H26dIKGE5tgr>x;z&Ke%m!ixH>M>ZE~Ez^OnI-eQ$j@`yA8E1Pl(8UhP z7t&Z(eCG>L42V(~E+oJn5DmdI02)csgQ6rnE6K3}K?FadzH}G-z$!#m!*>`t7w3X7 z(@i3!g|jwet`c{L5F%dxh?Wsljn(oZ=XEC&E>23x@^=BFsPcz$Hc^@knce{oiyjVc z-|>x%)CnQdm%k%`5-vjHak&Dxnx?Cfu~`EVmNn7AZ9U)w>=CuF{OlHop5V_0dqe`~ z!|{Ww!FUjaz>J%a%2}q-J&Et%B!jpG#D2&iyc+Wdv_J;f4;C`e{@kGUw++G^Idv=& zCXldnyhWMV#W>gNPb}fB1i|$}d!JT%(4M?tk40rf(-BOcq{^Pe|Y?Z55p&YjFTm>gRm=>&ewQl#$cM9=-sN@pCbbX zgIB1Oc{AUlfGA`w64>MLTtXbt&RbJBA2}~x?ZG)7Ag#9MWq*u=!Q1bUjDRX{B2HP5 zL>Mhm2y&153|U|w zmz}exG^2XM`T2wjGnq09DeUUa09MGg@dg0ZMjS&$F4+(HYm$r&SFs|XtBAIrQ||k| z1opCbw{HmK5?)XLl*}eBAqctDzAr(WId0EU?bQ78!RNh zWyo zugYT&)9uw^0x(#`kRCq1$|R>xbe8Dp=Fb(leQfO=;nH*;d27eDA7hxzn9M>jdVin> zZ~$8>0YLc;glz!Ro+fa}tvFC~AmvF#v?0=%ZS{pNoOQ^c!JI4u_bW#sGFwvLzTx6S zAEreCXbB;-AVUObdp99xNCVIosR(U`#4nY5Lss?DWKh6D_>{c)470OLVb2Y~lKBv5 zMd#9MAOR-z#*y4a%te>snmKftOvL)pa~~6D0^8<53*fZG`%tDmq!@uN%gvDon3A^U zHMyd!r=>Wm{?49#jzpq^WR&^-oqbY5Ux;HQqVC};i@rm$8zXY702CJ47;$3|Pdqnn zU6}#fmf%QeY?e#(cdH?+OOpwTD#jNg0Eiouhl^<%#^E(k9Q?hD#72cw3PW*Ar+fua z{O%}V)x!jJq(F7FiXrZGWcEPp9%1;PS_@C#e=kE4Xi!)~_3NeZSYrhX%gkQxH|+jI zZBsr#EIgzf%9EHaJgT@+6o*BEjiNX-O$f{cd8NN#1Ks{mP%GX3$GDE$PyRu8Sye-7 z(3(`uaWa}zEzXBRlXa0=w+4}aRAl>Wpl=OT}(3hY|w~Trf*cRW*C+LlMde_5l1U5Q;`)GR$lPyPrz)y_8 z#mA|%g%sC60opiGT8vo?JeRoOj8|X=8JogQZ(m*T! z8&QlB!y{_rUW^T4v>{#!{5r=@&z$KDHwI z+OLrtj?KZ40?6ftc}%0S_G^FG7kq6!Nw~HG@A%d`oe$3+M@h zBF$s9d4u%*W7SB_8zNJo3peLOEAWruAWa_3pxjyT%k>vYH(2AUszxrn3A737(6mZFOB%fVXuo1U{I+w7n;qs zO#p_*tYDBVjJIGq8b|#w0gjy`C4PXRBM&)P)SwHoMdV6nzfX=9MJ5Gg%2DFGEBB3$ zR@*QoNCNoJqt(Eg17Hd%(=9gf7v84RSa0&_vzFkN|!t(sU|JsWb2EFe{R z6evh@Z1D9!;6sqfS*8{S?pLD~M6*HaCfo2=>*;LA)eNJi6i8}QpTS5mkWG#ZthT^|9#tfp5k6Mh3ZR#fNXH{M6ch5f(*|l;Nbf*- z07FP_6yKp`v;9uK!!5?gK!ntj22wek9_;obE|0Kx?czQ*epR^x`RK~wDh|+~I@3nE zZT?$_JJNpx!t^)@WL3a0$aY*p)-^X=;|xsWtV94-Er2E{c?XJM1#ne>$_j0Ow1Bvc zAQnf4Un*72v6CsIURw`SqF3KyP>v^Yo|t?v?9ds)tN_-*7D7GHwE_ds6)5&V*Gii$ zz?z&hq#c9JF{Kgs$T6iReB{Jh(tLF@qC#Ck;VL(=FkXiFSgu6Bisees2*HaM;@}lm zB-h8k%asC$4VCCBa-}qS?%_(n;p!f)#KB^_$u23U;Raa93Fa0S{x3wbRk&?b$6XQ} zc2huMiQu@8zohu#2j4k^lQ^y5W8@_*bWibI8Dq$J6bH=Ros#(zxO#Uha%fm_KMN*&=JmTbz?V-bu5l+6Z@i*94&Yp2QvGJ zC8*3jxZF1ojoWa+w>kNXxOId=Rgkt73YS|Av&U`W(7=ds=m_`NRB(b6ap(>HM!M)B zd700HQ*p0#<#LXdhzHnVt;)%1uw@hH;ij-V(oMp)peZnzn5SK=D$$Y)hFC{pJks)x zKD7dpU_|2nhlICBpW5uvClL+4E79&-58>BP@z%L1*fg-aso!tlv%%j5gTkEnqSDjd z6bskqyY|v4ooA6Qu@|YlzjY4T)KyNEO1R4Ipc6i)$uPq+gpn%J#gUW$Q zy66V5`oJ#q`0XiYMg#0B7x8Hk+|3C<&I4j{pgH}6uFk=19jgh$roeIxbPy4TVBvIi zkVogx$O=TTaxgTXtNRF*6P4I7mz*5420V)R&|Tt58i*nrkJ$EW5JGDV1slbQLOkiLp&o#l{%;w*0?I$K})@<4nBE&CdRP>H00YJxfE znnpjtZ2dH7VBN_!t`)RNS9ol>I9^Cxg0;zZ`2nW1#FOE28mdI%nZe}_Uiuu6v^BkI z#X^yY25giO$~4oWaKS@JmtzK4)#ErkQ8z??gR()DO!y7e1e$p(13IU5cY5%F1=n!g zaL@>8fLFp1pALrTuW~Ax)6j$Eg$Wyow_shNJqeuAm#i(KBd|w;Myw4CF)v&F%=RM} z(5{tu+$IP%5*l-gjkLmD7J4sy+{;PD0Q`B4S`#=YM5VgF@z6raft^!ET^ z#8EEoqb8US;Ub0#VV0XM;kAYd{PI&r@d^q%Y3GMOH7>re} zIA@y97)!3}z?SZ_x;XX~N_NgrxGTtkP{7A1w*to?ONjDp1OrvKtEM{Qzg>4cycz%c$8h)K$1dZTO(iF{^;skOA>`eRFO zmaAcIIm`~Eg!q`qnhuAwhBn}LHzEhCkv$+{9daMRPeFl9l1*gkKM4MYZKi-cTo19h_>jDFV#OkpwaNwOf50RpZWdRDk_WuOXdOa&DZ*Dse9boj(x5)qZ>+4qj4Y723B4F9V(k z{i+&>g&PY>A#|uYL#^V5A-Ikg3VypLCy<-%y#g%=9P>h*p^IB4W5HXz5`1-pE@|O4 z=Q4S_nUcnsLKKo5Op8Aj1kvY>g(nXDAvAih`%wxpl6D9P`oc21RQoX`KRyTi&uzwt zv9FIvE{P4pB^#W=VA$746*FqE+k&>zXiOs#l7M5-3d`TDgou2e+?=nKqhD%A$dXMW z5>=q-1sVwW>~s`i7B`RS|8ivypPpna4TeiiOwLlq-2;;ho~UrkwkDIPwZ&l(iGvUy z8v?E{mbPRwHRs?DRumjxn@etSS_d=i++sQhhDG68`>$N@xKm-SzQt(>3Qni2C|WRV z3l8yH+ycvIA0;EUB!h{Yy*1DWWeDq0fwJ8nga0aHfNV~9$cNbplXE#x)^n^iCB>OU z*Z^f&i$I`*5y2p`5Cj7Kxe0(0u=O|Ys%NBy&T&7Mkh|T-LotXg!hk@6;IIRdQIyif zLeC!t1Bqhyy&#O1Gqf|_5`%}M8TKB&RJ=LX!Y?=h_|+6c)JZdZ3-pk}-`*H&z<1jE z45dUpQskZ!bSr@$yobWNcI1=SSs{y9e$DvdjZ56*kVtNd#-lwg|o75bTpr~ zGluh^S6=`W^j=;x(#AbEu|?c=-yp`W2(TtZyJQo7X@OVg3kuk~5ZZ-*SrdAcElFAf zjTIQja{mFg!jPFqh~R^Ph!z%;Pl`Ss@b-h=cD7u85VTaJ0a6_*?<76x(2)Owv6_IZn{LP2K%$ER0MAad z%LLrn4hddu7X{iltY$0!2j`@;tc5f~iUv|t=gF7pP<MyuqH>_lyJP)!Pc3ZjIAD zR^uVZD@mq>u4tEZSqB~2N#0bL(+cqWGsT4RtuY`(o1cSe<>$bvsrPd*xBMKaL>+z( zW>{$4jdFW-bbwj3am2Wjg=d7a@DYJNH@r{;L_}U73NaRfDzK2SBw!T+O+K943A1GZ zcbFGeH?b*zIydF0rNmus$?>g=SS81`wz@Y@D^du{)nEC^P!E& z5i|*avoAQrU>+ZEM-YYZ+i$I?igOX1MJqeA+}$p?q@honW-&t2(6vpom?LRGFPmmj zOws@Vn`Ti_(f}o!hILN+&~iuEIH16NG}s-P&)bOxShzN%_VD(=iBykN3^(BTBjt?* zM8P5_!$jax*baUK@QeTDG~&lM!Ogr-Tj)kdCT?M-Q!WfINuyU4yxb+Vsq!E9cu#TZz z7OuxcPEHLDUfd26+$fq5npkN6fCB9iwT{p`$_|P_N>Div!mLCPCB8aIZhYXqhK<;q zB+dv@MO{HEQah0<&kVLmg)_2c-^OMcM2E$yD@IwYBIZF_!3`sl)W@pLqk4&E_@-!X zLljR9C|>Y%Lklr!F;hd{~w&N%9}8}%5a3qfRj~NG7Ihg35fx)TZvvRcF^4_ zv;BX94}SK1_@I6PGsxM^FPk6V9o%1V9_}nS`@7C3 z@p$gL&Tu@!-*cYRFLjvTe9vja1uGTbcShra6*Ki-=iNa;Q@lALuen7(2%0;y8fY9! zmg2$^csJz0r-|I>w4&Y4`+}PhR-pN7cRJG&KNwb8;@_U+@R!rgp*x-H%pZ0-lVYg| zng|OJOU!-uJMJ*pVjZC^Dg{M?_gMj5Xq`dl*`iRCLJC)ql$Z;D=p-kS#W)_04xotm z*Gg}nQM(Qo?l6>gs2kmy!kwz~`13w96o{Z5T4 zlfF&IkDL(>euKnZ^%G|V;;UdMZc)i7T;>sT^^cs|io(&FCw}A%b~ql^C@TqSn2!6M zj=rTYy&pF;M$Ps27inr3VxoeH^Y#)<94UP#zIc~2q6#^jZ_=5elhN2vGwlIq>L4(2 z+W?(fO~6s7G8{^ns~>O{3`U+*P?(E@-ELQ$54}OkDVX*jJJIIo48==pLmuuYgT?`< zyXE5CBHxIbFFxq38ij2L0Xc3&8h~ljTS-8v7%cqajW?N3KIqgYc%u-5i~WY9=BfvA z>DKk8;vwgNPTVfz-Ge($tudhG{yk{n0Ic^wK{C|#GIP#D&gA281uuV8i7I~FtpGK# zahrrfaBBK2&L*Kb+|t=A3EF%~?)G6@3ff@Alst?(L*i!Q!!YQ28sWYc_-aoROaNda z=Do`zP3F3Xow%wow><3puoZzfvLwoLaPQ(pAI-bc7G4N+(-a*t}kvalKJyb zox@@X>=8^auZRsWUj>r(LEUDYG4he?b+wS!Xx@&waH$cWn%H7~^9%Tz5Rh4h6o%kW z!2`EOO@anPrjHew4urHj{j#XozUMENl{oYo?}i4c5`s~?RSMe-5jR4n2p^f;V~EZ@ z068eL1+Gv0W*Hq@L<}xHRE}`kmf|~)W(yM7iA{7)hpvc-C!E)2GH$`k<({5`|7JJf z2|!^{NH*+s3RNXej-;4i)AFk_9F^ox;#7IRVlD4Irve^53NGK64eSx<`&HOLcS??$ z<5x<7CjQvO$G01HQ4H7Y@V6KMI^1L=?Q(vgsVT{*dHt>lXqfz#c%%V{EW-Q}15 z<1S}jzaC1$x^uN6X6|E73!>A4jm8Sl(z%a0M>l|e#*@!sJ8rDHnOCFe(V<%u;?>H` zi;p?(;7Ye@M&h%V%y2(@NwNx8rQilR%QT?xghVSVGp)bG<<&{^t6w@}BIGYyGFO-P zH^U!y;!)vhAbm6CaVM3QFKqg?Ij5)aJ_$I12jFU(BumH*(Iye?a7~`oprqy`i%d{U zge3%7{05wZ2})6{z2jp1(a(aKE=iUndNApj?T7Mpd+i-u(mQ z7@^C<OIp$z=gocWa8f3)Q(X9+TA z?w0!**X(vaXLdgAB$4#nrwekfQqP#!GtOq@eeD_NX!RrW)-zJF@mc5Q^pA8nxHbtF zCGEo52*+NO#7np^ZK4O+We5RWctpKRC&5?GEO@>gafbu0y>99R9h2GE%w7f|Z8F)b-(iiW9H=b(L00}lm?tu?Hr6BbFDg7y^cPgYHJCgJ6kCV+ zQhiZas$Xml4@#HB74NkKbH(-*v_l)TiXUPPfq(kU)ixzJR}fi}rO1j3YXw61oHdbx zs3zj+0bqdgD>x9?-AUB7EKiQG;F7Y$TDLUE=Ryta7Ux;L7#Ll-8zJ75ledT5Qgh?I zPXDPGIvBa!0*$w?TdMjTpeK*Tu}KPlgBUUkx=IpAHW(cRU#`p%ahSjODukxZ>6>GtWI4 zK7{3yPlXR0^fd`CKwyNZHGC}bUKnatJr$m&pBifJd@4NDB+hrrpj`jYQ{fJ!P2%Zr zGqbv$4v!r@8-YIIiW#A;3^$SRpFm~qG0uanF5cP`Hm^M$Zqa|0-VeYph0+4--TOO3 z&EnnR&SB7w61)k6(25X405N<-QxJMUA?&n6=taz5c85oRqTFY~XW((=GvRJL-hKwx zj_u4|_$UzbLvL)jtZ6StVZJQq%>t)}Mr@SHk-M`pc}wGsTXGqCo>ue$o!7gf0# z+KHJ3>%znJXNH;c*I^_(%}wjVLsg4;7>|Cz)N{ai%DlTP+;!B2BmvMx&uy=*p{K^u zu}{q&dvy+6`GKgk`}WU{rHdbwgd0`4R-noWx)u*k%5%W3E_nUaZg(P! z)P>iEBfO+;TsYE($71`H2}gK89yO&A-ZnY6G{TE&?<|e*8oFDm!>uM3mG^_9k-12^JR0G3lz)syrr|NN zEHWDpR32`=To&n%_w8j;eCfbQ%0$W|RY=;KKr@{c*iWBZ9-(n~c6nqX9^WjF(4>2^ zT)OV)Z%dKOA5kIAf1x6>0$(~N<=SJB<@owyEOH7S@7l!Hc;sY!ZHPy{ibrdu{i=*? z!PkhY$Vxok8yFdA?yQQ`Im)L_Zi5w=F9<+ekga*fXF;Nelb8gXc#D92bj3T zW}pCM*T6^zzA)f1<#Mm7%dX9Wfw1_G9u(p6KMx>U04$#s(rO4!uv;e*F+A$qkpZ;er9cil6GsYfaG_zk#V_B&^qUB z_0bfrZ#3iTq|`Ze(!w2e80~H5`MStpw4mxElku2VFIc&(Ui!jUli67htK&lRXiw50 zcw```Xxj7MZA^mUw6$2IaE*DjJ`y)e8X^_8wOVs&L!_$yHU;)8?hsiI$Q_3iic6Wy zw;BZ5r7zVO8H#$XjS*h{y0THAk!=*%lr%-gr*}PKFSOhFQ~TVq%RaAr%s%f9zMu5- zAGOa7_Ic&tu!b})O^10)^Y%*7C%{*BVUJ5;&xCGhe3fH^#d0Q#UE_w2si@4qc>9+S?BI z-2Y?lUEuV(>bl?OviDq{NuFe8l1V0){XDr%l1?(Am!wTE*&`_}wY1f~sIPKB@q%gf zEr`A^eOsQiggPilw7`yvoQND-w1wb7T7g#wMNhy2;RsT-NPvP>D@H^Kw{pI}|9|cM z>}O_DTJU&I`qvDu7F$SQxM(>R7Ns(ebnLl;#(tKa(W>V3=F)&13n?TzbJ>T2-s^hWBOph*>H z#f*w9jqmVlwP91}E zHlW>b25oUKu04i%6WF(o+7*7@=lmOCaIUex`nWp7^zzIwM%BZ^wxu9@=pUki&e?jq zigP;cS441iS-<{^YIP=wjt%hv{K&tjAnmC`oFCxQ;ep{p0*Q$4Jv>4>di*0Ep&mWH zi$_tdcm7X!qXQ2QJ39WHSJ7|BU;lzv(XN$En5Lbu4)3Pp`>XF1SdRARq9dK_K8iV} ziVVGVWs%3(Q0jtRzR05^)*bJ3_=^r$I$Ar?ueQjJ7_Q@lC$Pu{4Bo#C6Cc&i)L`TGTl7?Iv z%o(aS|IcCaSYH9W)5W7Q8DNlr46r`J#D!|#I7kEh9vdt%r-U_AP-9MdCXR=L>>T`> z1DCWPFh-IeJUA_LK|w)Zyw=g;O-Ai5Ds(IiRzL4YqU^zc zihizh*u3L%iREQjL0}7EJ@p)0i{Wi9loN7~*fZtq(sgQv{!~s1fv>bQBUz*8kRzGT zSIXhe>W4pMI#tBNil)&Fy5m^(;1{BGBX1m(hpuj&JeGa>3(>8e9pIp#-JclWw}#ah<1&y-yJ2PN*Q-KusNmf?aOV)DN0X zafX#ob0m{%&E{XH%E5gj>E;dhWlfCmyw6$|$na`o6$GEfs zwy`7E-Q4x=*qDuYKZe>c9~)Ejdin@&5=Zh1)ze3%Z}T_#5>A2+9eqOBfQ!-E-r7S# z(J32)bJHe&?TQ#>B4WA{=2Shqg=ShyrGk2ZRw7oC0u#7+c^DK!~WS zhbib)(v&LEvG*F4ACEJv<8cNNY#fgxGf z$Ov0OEVdfHARAnY)l|D%hp%SusKm*1Wu{GFzNyt3LZGs&e}w-kQOw3n-Mt=ISvJn4 zVp)E3@>O@1-=4%BZeLG^@4sCanu<6u5)>ndv}Zt~ZH-2EFn!EM#h{8in3RKoQD@h3 zyP^5}=?h#Z2TI_?ZY*s%jigx=`Tytz@*p%qkl^PpKoMW-w4T$6_~2paG4BFGMi(M> zdqQMFsV6}#;_7C=^dBB@5Joqr#X4>j+nYg4s`tGR&|L#9M~h@OKDxxP?I-#kAX zKO41f?Dg2miohTN(~W{H%SUMfXjQEh222OQbIzJKSC3|woQ=+3$zmp7Tp$WF4+EyA1&fp0ER(7z8J#BWBe^|a@sfJJRFA!drz;nzWIwh@ncxfm*Afr%k!{W| zVJ~iDw+Ff7Xver__)~VD5w5Eq*ICU;KRbS3G}&|tC+rz|pRRoVg6z-li*#*L_v)jc zT8`qXm?Fng0o>X3uZ^C)Id|!)!B_vcfj<1I{kBja+5H8YKo8#izUP1F?&kL4>;)U* z_0t~R1Kp)V-8tZ#>$jNHmF3jzcQ(WuW@?(l;JmzoA)UpXDlMIQ0s^e?-%}#{<*&1r zNbK2JE;WKBvFt7eDRT#Y+6HnRK5nK?41AlPKe4*|b6w3vkXUdMlV%7hA z;koGk2@Ot}QepxzN6;jkM#*-p+y)eiSj*(Hc_=xT52;dTWYO;HO`B5MOmCXBH4~Da zZ$TxH>rDfjX88J=7lHE2`ktX&=|VHJT-kJobh!n{NK)`p_1y7fzGp_`2}@;^Zc}5qS`Bc(z<$uqDFvF zoD=MFRBH@n!Dx57%+)yZ;#@=ecYYct{>Q3Wb|R<-Qa zo8z^{F%m4&@k%YE=bX#w2syo=R@MMZwFU>kT&>OGt!ik;2r{$Wid#gFT9dD?nNdP( zDtLI1%eiiaWAK{|Xa=Pu-CNmDx~5%Nl-#n&P!3D6n+fHYGZAw*(9%kApuw`~gk&9H z4Rj&4lOD@SiXm_|BNx5CeK335mUv@_Rbix-&0Kf{C`JVf4f8`Oj*p8<2Y72tefCm4v9hK!VSlc|zth<%A^M zrDZ#~qip}qc(9)$IFPH^H9O<0Yy7@`XMCVD>tm8I3#SF!i~?cy#5}0=+>$ga0uoBP zgtnOCxRB}PJH)O|arrv+cmZPSRVOsdzhLYpZn^OznY?b1C+gh6d;@1HTtp^{i zGH{l+6~S>2chAT$OYi0TYPwlwl@XR?I|=K$9u*u)B#dFh=O!syfGF9{P<;=TMu-=3Vm3ig70pG6%_Jy{<-rz!Ed+wFkKapH0R|xbJ9O5Kl{8W;c?Um?d&JP~c zU8uG6PcF&sn~5*zJOquv>oHCQcdq*o9N%)J8Yf|6noG+(t6H>R#pWRhM$Oz}gxJu2 z2PS)bAWbsZUFt%k4BAo`w}ESBeINE3E-QEe6+_6{^Y_H7S3}_Nhb|K>Ep^S+ve)cE z8Qw>&fJaMzFtnQZS>cQ&pMV4IDVNUI8U@)nSg(2-a%Hq3$!MpdexFUQ(Xrt8Znl&Isgl zHBFr9&pAZoJI+f3*X3%<4@eXL_jZIKsN@oSrK_E-GpWFC1^AT|GwYeS6O45(5x``+ zc4W8rs@=T5Jv6(4K&&g1q1jq~bl8?A zbJcm1yyQw`Au(QSF#h?L9@Z zFE$1;4V2p@Qy3^2GZdw#sJh7-r56>^{vyId#Q6}0D~ql6CW2BUnche>;-rRCPNbFB z5>afXL%&Q1W*kr~o1y+m+VA~@yA>+8+2C}^x()^huK=jxzV9(R*}Fzh@|5%~wQR-K z7-s`5+QvMDXl@}Vq#;MeII@sUi-=^( zyd1WuIg?Un2~w24H0ksVLqqeAc{i&S=bX%4hGfV$#T42KH_<OV9G9ZAZ!z2X^{J;m+bP%j|C8BHcUE(^ z98DH)Z|5)oyvHqokcY?odc#EwlJf`VU|^Xg83b4oHh{}az{Q{hcRF4FDKH9l^#Vo_ zfA%s8C=yc@6HH^2OGJ0l;|mzYI1omWxe66nOkiLXW{rA!EPL$^XA~;VRm=h>8&gTo z%QXz0>e{GFa*Sj)vvi#yiPE+8PQXojuJd^~E3j+Uq40+eB5GV$Y1g%jMdpSq4;Pt* zrE`LuV3eP-$3o&O2iB6$UO6Ur%{Y(@7cHu3!CN<($?*~7RFX3gUQO<2HRsd+SI0*P4A1715x_=KW553yB?BaM! zN1f<3A;fRUNzodDzWFy0F@ON9NbD=sIZhx?DB0H#zeiONL6Mi;*!()AWH-|osg8-iA&<= znc={~#4%cw9Swt^Pd0jT0uXf|Rdw z==bp-3u;udFKQlE^=GQ4LbXyWNe|*qR|wqCsRbG>NI+B>WQ<7IyD3_B)4HIl>|gfB zV4rB++RJS;0u+p;Km&U8NKu6jHhGnMIE}a?uJ`@tOn=Xwf>18%|X}n=v zfH&NU@IKC9gxKsom&O~b8?wKlWJmjD!-eg#NFYLyPve;~Rcuk^TzLPzKdz*!=?8!+ z3;8F(d#?z>vyKSrJS7>l*JaRN=g&m9=j3zVam|4FM|0jv`T-L$8zo{c=LjIDF1D#^ zscT77WyDmPvgAR1!{zbX8${|3Tu&_YW^l{~nl0DLs#eJ{8&^@s%BV zPc0eK|SN_$@u<};q)=Xzy@L9 zvh0Eb@%6+1=bu1O=|&PR$$sfT{5{o+vQHm~XIRaVFp{{C!3)Jexi1Oj@qJnADA6II5LsFIgNL)GxS4ge4x7Ofn~Gt=4$P)cVriQ zS9}j!>K^&7_(d0(LS_fo>#BAV0|dVug3ys&VA@V%5XL2u{CE%R%gde_uj|ODNGsbb z?>$c{A*TwQiA-V?{-CMLbmjf$1^sWjLrbi|b+2Y9Y0WG)W|<*Nf9c#MIhQy$!AIT( z`6K4VXMa1MdyG@R`;ZCIj-Zd?ikRW(NPlzKO89HPRVP4!JJftq1s*apT366NQ zZ^W((EeWNWG0;4;JQwc zG(Xvj8x26%Z@MaOUwo1DyhzSxebO4=YSQPHtabfzvx1f<%eoUu?t@q`62q=tRqHv`%q9JDuDRbkZ z<{yPbNCSRq)#U9K9>OfyB#ez%#+m3^nGGvz!Wo7Pz5t;v$Z?@B_|A;oFb*{taSH6o zVKO2!P&sZR7M{Ptd+`>S*$&3h*wg!Xvn4cpdna#2;GtxTw2t-6jN z++a3n#uT{69H_mKEJc1gF|%+Dl#epg(7RXyX1IvhT^<~E^tJh+s^8AwnKmuO0fhfX z_B7YhrjKzSkLvAy^5FpJ=0`vs_cQywv=EyR4qv*rHSH{5VdMHTJOdkhdSOWAAf!nN zhF*JHBrUtnrB%V;0;dy}Fdr+>^=x0KOPCrGnXEG!6!F=vbfbJ!lSDCabn4(=2&(zF zxOyBJERCDGbLVH7+>9f2vmxxnIT{E6OA-IF{@P8E(1j$OSB(T6WO8T}fiuld`EgPM z#PO;_Y~!cK)}RSY1QLM;K-Zlin{~AYvP-TIPaA0~DGxm>9!h&qIp=0A5pZTa=}@h_ z3Z^N)Lr;OZ-9@x;g1Yx8nKTbSvI0ZUT(m+ls z56nD=fFe#XxZ%2Z-72nDuSUy@x}W_-v_1Rg*Q5R# z=ZUAUs;{p9J>@tHYwH-)!2gQ7Q|P|el0EUYXj9hrjc7u9?^SH1Tx=w}J0{o%l9eY{KbEC>F_RHUh*3|xP_hRS{WqWGz`s#}8x>~$J zCH`A2-q9I?4E#ihB_v)UzrMYPdxMZY6ZQlbwG@){4IRR+E$aG25X?o^{6Yy`^vipZ7nW;0ao9=~ zb1@2TuODOU>ESs0%|~h*cBU$@z$G4PJEdJ%G^+yqp33%IACGl(29Jo1!0V)LGz_BC zlkD!o7s*i)C!-byr=CtlIuiuePX^6R*b;IS>p#G*b;S$~kc_b`sx`{xo6~H)&^Hvs zc%ZMu>Dxzc*d~>I>0|Xn7uFcA_MccW&uUSS;@(41Ijx%zhnnTN`0e5=-XEH zZNAppxhYvj6;gTh47(fV+r-~iv}m$5;iP>0dC6A$Cp+*xa=auFXQXgt6`MvlzE2Rt z-8#gK%#TFTF;TJZ?eqRJ4>4FXlRs^T=W_5A;O9X7Ay1dbws{q|uJ{L53VX^hNN2TK z%b;&tef-p`B7n;g!IVxNDT22=6)Rlx*dnUVQ?+xG)XjMan5Rx@>Q_t8>rI_G)Yc`Q z7YN?g35d4VVcRVvVE&<4NB;KHRjy2+tDFLwD`QWhW8Cc(CYhdObAvph-IM52UlEGw zN%W`Dy#w8~=opmrfk3@2$O`004LALcf~ti$}Eb%q}7autyPy z1xe8!qBq^h!ZUk_e7vApsdi|X)vB#Z$Li*+gZs+0;;bvxD)+3_3I$jV?1*5RQ&A@) zdGD~^)Qas?5=nw7y&VT^&5nJ03XR^-eqDuk-*kNQHL&F8rp=KZdVsYmgINMYm2be#~uUgVz^lMUx zQ5tQSFoXnsGhe^1lOw#RA0f$~HnKg&A$3|P3`{9ng#bE=ATl~?ZKEbh7o-pd?nc1_ zvC6PvbkGi?I|!FiLgJSS%4Y~K9=Mh1l5jC_sK)e!?r7;~16+f1F zfE^%RYwFf26UyLIccXBfn+^e-syzf@3?wW&v!A%DS_|EEB1}vQop|!2vO)&!&Wwjm z8M1~ZX?*t`N4Zl(CF4#%&P{nH{+)oq&6g=qSsTP7XJ&xeD0BL&! zIGP?#slf4CYZC43o0S7|J_Qzn-}h&XbL$(N)P^xPtv5Xtq@13@j4Qn3i2 z-_@FFu}#S~B>dK78^XPl3`@ih-!R#ZC)=BEYj62}lNlTlK7|s%S3cR^aa*z_*>vOm zx3xEYf3iKVXIbS9;qUO1dQT_V@CgHbEvm&l}V^N1(58sfqrU(%Aj{I~I_ zwktX%4p<_-@W6^6T);^}tWXA`5hbNK)IRtUmX5<|$vTpvhJ{9%_s4SDC0G z+(X17Fm#eNKO0TjQN^7|M-`hau^Ox@xpBNZ>J3!YtR{VS#o-e2rI0JR#E}FM`RnKc zdd{bOK4d4DE0Gmy&N`rg2{ccVRE8 zB3#o~m?dwNf+6VVEizBAM2?x6qS*kdJZ3ae5_7wAN4Z$A((o#hK8&&5S36Lc*-`T| zU{LhapZ1B?iDkJ?6e_w!gxO~`7d;KrNP!nvS2okV-N#l78>6de9VS>wAFpHCk>UJi zIaq|U_P<2VvYt<{3pJ79IE(gRPsWri&5F*i;PTRPBiM+rVftz^R?>C1S-Fkk5woVq zIcf)Bv__N5yHZG!3R7o{>=Ov#nl`j+(UkvpS56R^igI_LH)QDZ;jwyl)AQnkX1*m< zErBOkAB7H*(Mu|?6Fp=YVq>MMsAhlV^-=8r0);wGMqI{7v3XkGSIlbM)K?mE5eIVD z9#999VSOz`Z3MN{Keur8LkQm&D|6m9CvEWJB?g3yH!}89=(vKpLQsqbw+f zw!rAH=+OY6Ul^J17)W}uY%1X&Em99gf2wYgf?%%U-z-uQMw$A?ltjU?t|PMho*!?h zp346G`SA~QG#_&8VL(!x8eK-^{WHQrx16p)0!Z`6Yr;SC>zas)dmy+Eodgh~7%($? z#gh%Vmf*}t1X$)mI5UDhyJ^|){s{Ye=9yjN zpmFglbHL^%OS2+{T0`Q-;7XB-;8<8qcU~VIVl_G!U@dK3UBw?%n9~&lbcUkOJdQdg zqakuW%-I9+I+l~O<$?1-ifOPs<~I}hcd(*_v;(4DTybmPL0&S^mB(ZE9%ywNpMhlf z{0x~q=eNOXC@MctzJMCMJ1c^|TK2^k#^*;{?@6|1+kZ6vA&zjp>qq1N@oZ+&%=^Vv zX5EN8k>fg{OU9S+AJRnp*KS;=By2Vm9O7J@n!||Tmd|8Y{TML`aAt(}s-N8mJ!+48 zUDP?wChgUFt4U`ZQhGi7#qBs6{PLc3fVPWtetH!f(48QipU#S&4?xK@8T=%<0AkXq zrf`gyzH6^xsJd&%%Fg6f9=`yRPPStC_sd&mhgEUflgjs*K7okMjm9ny zTM*1Cb(j#kT6&VOMijT1&d63L@YU3}+ zyb&TLq)J40Gu$p19;XhqxaT!cDwp~ABX`luMo=4^thON;*S#Rn$MQC^e*pV`l3v)Z#Qr z|J%}YU|YP4Hv(^q`DHirJIvpfgpZ6n*iHu_ip2N+@1T5jCQmp~j4rtcKR&_1GQr8<}>MA>IXjwNG zSoLN1K##Y^=Q8DKQ?HAF(>N-co(MiBh;ltp&3y!1T>w<3DS?D#j>{Zl7$3}54r))f z-PYck)bYTy>U5XsByLJ|w}!-Q)n+RciNeKKN%Z1&G?{FeBJ~AOyS*Ac^m0=4Ji92UFnN;}9inpu z4#VaXb5!AC`PZGCXtsEg3Lh3uaTBhf`f!YA?%C4AhouV_0&;=t%i6Spd|--H5M|W? z=a+a0=NE!ml#gNvx?r&RrmAzE7CLTgZ=0>n;l~0f+mc~9x~66?@7#4nPB3!XJM2FC z?a8)RCOeWTjxr#q8LK~N$ureMd^SZ>NXREDFK*r`ABV+W(H>{@Y^P%sa{jZ*s<_dL z%D|=^o9XGI9;<})7Ct`>oh!#bKGNC_4t7WxP=yXwz`hX7=l$DM1Ae(=V5F;n0m3)E zKR|{O+h?nHwRg@|kF=}F4xUN4V(v(LN5ZStuy*nw5ZS+-`Ra42neRf!H4NGbZ|6Oi zF`Re9B=-&D;HgM=S=WHX5$~8B7om?3258zUDA#8%2e8}t1+Y^FSiF(11b+2iz``#l z=reSG4#=LUQjHY~T~cjTP*K#DL-u%4Pe2cYJkB5$B9sGm8@&gI0xXXJwzJJ3d)U8y z638B<#I_P-rv%w;2HB~knoN}-dz4052r$6%S?IS$K{H*zZWCZTlL&Dj3lI|#pdZ9f zAAyKNc$?>lM-dg?>msf90=;}1YIsOELIu(winjt*un=*sG1eUr*7lYFC=A~440iuQ zde}ajlFf``NAqj+K0QMM(nO^!fsN=Q@a^>%w0CBQZi&}jv-L($w)KW~Z4#?;XR`f9 z_4vkwSLB;+nxNZ=GzSbMMZ!*s1RC6=x(>AKwC6+@GXfYm7ch4*PE z*?}fDsijI7DP^tw+krNM{`Phql-Gf?>R2%HW@+T$o00FZkposxsF6=G@@-+{a0PsT z6bDk~?cbbic`g{;qRkmq2_Cd6^RukvbYl0qgrLybvVSSAaIEFStF~O zZ>~1bWEdXiD!>$6pkoR*X!gth9c1_V7wLku14jY|$VXZa1wHo>p4G1KI-C_RuHRhYggT7IHZ6|A;ZhiKr z8P_35VT9zayD8lHN`o4cPTMqU;9j@!Fj$(XasSg${~$C$AB`#vCAQkUV7zbMl)8;! zRunfw_px743__cBKJ7#Moid=y0*u-ct7+yt}tg=u3 zT>M=-?8eG94TVZAO(J*hO3BMf0fRsli~NC z6Q*m1(~q8?#!N<5u*rHQd#7y0XX2d5dTS4TKkJ+ouT%}+f>-Xcc+LWKmo8Zu;np8AcGL)YRxXK}Hm9 zf0;NIa15|Y4hhUseDkCX~zB<^r=PT?A9+VKI3{gXk)EgzviF&oy;CayK^5f8)S{;>pao&0kE3dTq_1wlZ^ z=$>3#IwMo_Hhf^U?D@CH69<4Mw6R+=f|+Jj>P}|1(;MERR>@l=5=0UwC7%*1_kr8v z4XZ7nDNd&dlR`jGu%QsJk@@)T@ns!wR+-iL)SNbVBuw+ z_H%J)a!0&+@>`j#D;G=9?7!a;Z+i~#g7&47OguE)r?1p~+%FnZ@#M-)rBtX`cAp;c z5H-T%1aYN$%pSiZzLW6Tu-r+K2C`3!8alVZP-aQEJDXkqj3wa|U6~A-;$xha1T&14 z;uuvI%&8_(fQZt4cQ&9h}%DTxUaY_PVR0q!FyMj zS^=crJ|-m9Pi2iG@y#ryzU)Z6K?sR#C98`Nf@t$T<_PKD>Fdx3Amm2nghvc5NJQPKf~aPZqw2r1PEqXj~K=aun>b%v1PJ6H8jInRk52_ zB=R2fd%DtRupG8Q`hIDl&HVIE104+#?OhceokOnTONq!!IsKW`ghX4zaWuhmHu6`~HR>u% zB?xxHGytm~R^YWNAWopRk)J586bZzo7P{hH#pvEpakV(Tg8`gu^8L~%l`2alWDK;q zeWRfC9i1za{(h??umO8AGtBh$04qt%2HDSdP)zsmx4-+H~d(?~KN_fkU)U=_q+aE5fjfO3tMN zoVx#=(Z&N3G|K5tS91)pw?e5o5tsy%7o`snc2l!oduKFxF+)XLtLQCs9)bwRV(|jJ z4fquqH8f=x$>_z=@P&6q)8{v3@`ONHoi%I{Kf1qNpPl4*Ncn_fj)$zKo$r<>S9n^H zJ?HnMq;mo7a?yYw4IK9g1Q0$k)<8=I_W?k~;gJKpjUSNp2C=qB-KS@1PbG~6avDot zvDKzZ4BF2>pu|hnNq%q949)TOOgL@<;^4J_DTrN|YSs?O+T>I9%{Xp=p8|q2*`9Yr zV>cTf-~eu9DDp5`1XA^zSPDEd;14_t-z=74a&ghC;l7$L2szV4U8ZrxqiB;7Yh~|v zS2P}pm$DDOE1K@yvKM?PmeeproB2G4Cwve}SjHBclAst$jMtbax~k!(>=_yA>SfJ) z+2>sp&2hb-7Mey{2DsBE0E9LJ=a06o8ZiM`x_uX+2J{3kOwXaD8P=VVi`C{m2G{-gpGuY|tUtZ%F~t6}>To43?vLUcc^62IrmZbei3WIanB zz!QQCJS4}1;m*9qJ=M@E)3plwPHh4EqEeEj|TUH_{1Pixi9*=K(-zOZ`x z18ZL$zofQ{CVuN})fG{vZnvG}JNg=29U66FZbG3B^7>^?onD!}^_Sw`z58%$d50)z zKu~SI6N=nZ=?6Tu^DA)+(R^X0DrX8o9H6Epnq&?jSZfw8?lMQUh!8cVX#n9GHK>T_ z9-eWyOjkGc!at0X(L?PudR}#K@ ztCG696r}^#jHIA8S~ghuiKu_z;9x!O!w+2dO6vp$O{h}NCh<$sJD$+x1dx;d6AB*&O3H3Ch<@Ho=LP8cnEsEwN2t zrGyh|HMEZjC+jK8xWSYv)?*%Xq=1?>__uT(*9BbZ^jxONmagcWc012dA3+N69!o|G zoUBWPO~*;wX1tCQ_E|bkMja>qPD5jk6Mv^ela7;G{ba zl>jH|k~(J<2`8tUd~R$PLq%)FA!8uJnHf}!-Q=ff!K4Yt+8bKd9vs=1R#Vm|lF{kP zPjNt1y7J0NAin}1`?!`zw(`R2+&&#NCPa<`jTn)@-_?`twKOp9*an8l+MC+!cau~Y zOV)-aSZTSI&rL9J@|7Wc5`<3{Eaz!dEA+01>S4KdUJWd_UeA+4?{>a75ZWhtoCr`D z7kbxt^?KY?q=VAUA)Uu9dAf)^u-t^9RInuaB;;>O)|5*EX;{Wv-FRpZRsbP*+bj31 z#QDkZ+gGyUJw8==U?qWm;}_PBuVnRm{QT-$R>F$s!mQxiBb`y_#dkX`a&7@wDuV|=WmDQ}x!m`AA${KuzlKNW- zKB7vUAkH|wkLoZE@>PO3J#1Y}x>!*HEG-b&RunISD9&ll6PTvtpz(yML&;{8SpkD% z&HdH;Bt4K+Cy)S#)vZFMAy5n2LcWT$dgQ5*S7&WFZf(s?X!Cn1{CB#-AU#%Y&`&LbEj*=h5Zq%9~fR1``{{T?Bw8#BurukOUP&0y?HMp7UFb%<3vH?1}N4av3yk;gS>S z71xgJVl`mHY;xBT76!bH`dL0xXWwA0K#9^JeORo;EIdo zAUWsCP)?W;YZsmcNfad%OXFKYLa}B9{dAarkqpL*ro}#iM?8SdZl^9 z6_wift|zmH7hA)|(Gv$p+GY;7(cagLv}*^D{{;K29vdIUzQ%zjijTwyXn6jDhIbW& zm_WbFtnSh8meGz)S|>Xy4L8Oo?v!7OJ>Ge=n+fvruMpp9pJRn7Ulu7P^9m4MR0p@Ym~9U zeN#2A{}tNCo3|wj>K04thtPrb3C`{gJLb^E43=#drd-!yF`=HWR?wdfYFto@x7VW9 zhQ`JxgF0sCqFIPdlFl^);S}1TuDmYnA)kV*a(f7?7kkLZOp-|=lgumzNHU*m`oX*> zm(01PXw#2;S_03m4a|^FKcMe%=rN>@Cab~|renFJi<3yQHMC*!If%YUGFU|R=9Ml2 zp<>!J2~D3&Vr#ic5M^(M%TO5^hl65TFk94eDc!>BZFC=}xMRm>mR~ zQ1fJS^m7sOe)?H$B3~p3;7Q)aGc6!;=dg*@D4iS8LlBoy`tXp=WE^Df>(dn2Gcb^H zSYl^M_UDsMz-*2q+Ensunu8I`lnmpZOA8))uF?u3S!;E7#}MqWoj zjLIlIWw6XaD3k)5V?#cWQ^WhKuj4sA!#z{hmb7c3emvdUQ+lC=Jl&e?D5FqDG?!O2 zhiWWUq;#uD>7|O4ZWSrLTMzv-4SI$%z4bgtSkS3Kggdb^oKnEX-OHU8J4oX~0>~WW z9GNf$f*x~|jESC`WQtl6LADXngA(GJsg8^LiBUqX>|0FX@?nKJmApncvI?&eK8udI zjpU0$m2}-kQP*vBakvA=m?1_djpO~`FX&3sp6DrO95hyt9sSpGv9S1RbfNVBNRH?%W{Lk)j_4TM^{@os5}W+za6~89bjCu~=6@zfq#Zn# zv(;9sao%FeT_BpfbnADLnljwy?120gcfk$={J;*R=hhv@P+{H4FFWS`8@xU^XFIvG z6Ur`}o#wz9li7qWbQcqbnY)<8qhlCMa`ojj@60LRlFfo;k6|S;FoF*o!^3PBjvE(h zbJdu(r{vO{hlxX-g0h{^Nz6rKD7b(Qf&|3sqdF1qhRfYB`6C>Q%+%&CMWSGRUWB2+ zZ?YG|gWrvNnL6^j>LR9&{EqK8vqkek1dlgR(8f|;^ZSwH& z`!0Eao`j!s!hNdjEdKuw;O8YdW|6X?<4P+lCFX;kxRmyqk^-9QDkXh9qqLdcw0%nJ zYRv^IwvZ(paLRB>KG>qJ`joamSU3Geq?pU?yg(_xxf$?YtEswcj`t7c6V8Nj*gM9Vn3|V!) z$YJ&!@U)|8G=Z>I-SLx%P?#>*v;l_?hOA8|=$pA(w{1u|H3BW-F(57CF}|>fH=b}bQex|QnlYHY z1qGQ5#Bz|NF`G)VN0C7+-|I&Lt}3&8U2w&l37$3){mrY}ZM=X8=?NyhIPb%NSw%6! zq)nF+^J%#st0TwOL}(>37bU%&L}2e0MFa=I(kjFhNDj}@VE3Rqb|;Y&C5lyd6$kZR*;Z z65p}x{;dTyM??L8V|a;R5G|e3T%-_`CZ!h$RZCk+_%0=+mlEbC+n})WG)DJk_9)!{ zJi{x<1?XRr{XgCCO5*!xC+@=kp}i3IADJDvi-l`@Y_$*=s~Q_bJZh38op_)srZAN4tUO6AC@sc=YAr&dj z)ag^yV8hzjlB*bvzeJHwx30!G0|?rRhoUA=qgPr34)pG6keSwh^EBKr%s=I5(N--a zHA=@s_5WeY=fcWwn$OCb@TiN)(07;FU1h0xo}{%8L2r`cM%79(;nZ%qQ-h9e^Cy7W zu`Lo(0*Osar5O@iQ^j^I$>}3)?A$6cgP&J%@~vNYYd>>(r5ao7r;^8P&3|@guD$Wn zO20nADsFGMtfB~Sl3uIwyuOCtw4=o^b2R+pin70?^7r^lB&E6JXt_D`YIDowV!E*Q z=n4U8Pvx-{QfN!5rFKazfdk(I>aorycO|+K zMJ_?ld?Q(h&gGA~+D6+L6-hfN1Xfv%Io8QN-Ir`gHkwM`h&oSD5pycAGi*$YhU~O#v>>@aC-M0e=p@mq6Lb<{8-ilj zLZlGybfN`Fy}5qh7~Y^w)*~Prkz`17LNW3X@%jcDJ1fKjJ+u;(SO`rlIV zIIK%Koe*GPbi%C8R}cAtPB;-KtfNpJbP^|>4F#d_O+hGeAQaM!P;v;-%`Tk?PC1?JY&k#`}U$bRxAA8Ppz4e+RL$=>%i zXhC3b5aaq!@4rAnc9!)i# zM|3c@5Ya(4o`(h6!?=zbnsXNbc`1P9kg%Bz(&zP zMMQ^28X`KFI>-`0(~zWy4gz`<(J`J!bjTwt>B)rNoaDtuLr*|F7bF#yeG5p8KQpWh z7xd@fOm!nV3h!{8qxIt+yfoFr)%D}e64{N&WfLh37H~^}}aCr38 z1%kE3aCr0-3$Yf%v0J1;3S)KF4oZuE2o zZ;)PM#x6L!K=>PwSi}? zO^@N=v54Uig2c?l+MqC_gd&DxOGq$VO`z_a7gEe#Q_8N8V8)sftTB(_kcRz|N0p3* zu7w_rrYCKQi~{11;$u%on0R{8il^ft4;e*=JOe|}KPY18$p9Sxz(d7Y`!Z7}o14weR_bZl!cUmE;; zUe9TZzAfrey49ofP!Aq*zRxRCMzplcY4da%36n0$e>S*fN3x+RH(T--(a61C9R2#hb{IfSFtwJf(0G=nn~5{$M}@a-Ei^izG@bb9ubU zT65{nPTj=<&o}ko##bC^ZDWmw#ercQuyREbYOcsJpEI}HLD%GgH|>c|vMNt2X423l zlWIcJPpO6w?lh4XTNLM%cV1*<*bt|c2BmbvoYD~_oz^Nnwy7NR zZ1i7@{ zp4airs+2vC@;rr0ag~lXC2CTR&6B;ht{kJu_7=&%US?C%J40%zX_`GRq?Vec$?1?< zYLezy3AB2luAJVPLhKHyGev3#<-`Qa3-2qE#eiSJj(jgW)5QHJi7+z{IL}&_mz;ml zVY`P%Hz^C)YL5wn+e?nyh(#Zi!}y413|3_~LP%K*^3sr18l>hRRCgIUZYdVkDTnGV z4>=`pDTmsw2sz!_G_oU%>_Hz{2a6I39ELg1GqLEl5>*}6a*~JCycYviCUY@D`9z@G zZd9rg5I*@_HZu1JQYW9pdIDN5-|*oHQ^=pqMXi!U)SCMg@&%7#|A8k^YrYF47hSgJ zz_Fq_rVbUGguDdCM()G%gnb7ZtB4#mu7STLP@Eo$z6JJ{v`|hyLdiep zZ#_UDrOE<#ON=OIF?UOhI8o)zXjl(2tiavSN|(9Mj)=Ky+7w|2q@ohS3RRb{Pg)PC z)(I!CHdQ*r-Q{;BK+9czR|4$a<##2(h?@$S&5>ZVSQ_G7heRsgT(qQ8RNR#TN}%F= zW0%`fRNR#TDglS*`w_jwzLE^c8T?CZvd$U&q(57P&>YX{5o$rk?JoLznwx^?N$%qY zCM3|;e6N%z*od4QiZRUlmt9ey1itKw0wvg&9Y=otso@WPKN5N>em|{=3Zh8-KHo@C z@WVtC)OCTqqJ}x9o8A{e@!*tU6oZiQXAPYsy#)B&SnLGU<{dEWl2N0q`5>oKUiE=Z zQj}g|eWim9FW+T+4df3SMNoY8OWmOO`bh{eHx{LT`B*6IGG{j$Md>A0K9)D8^r?cG zt-N(k>7~x8ybVU_rNJm2e9*4bUom=R7`XI730!$VVW5&6yh6(yqX{z@(6%UI-bkUS zzZ++06rp=NT{m>YRE#o;4-{x;_1Fk7%;e%ED zsC6MFAI_mF8C-%Y=^;W<8729q4{X#*FX2t;hG(Uh@T_zrLZx?!(CEUTL8D7gT5ZQH zA~|o6#>xe)F&ZkTSwj$CIc-M71fiDGjIbfL$^?&2Sz++?^r*1} zvyOV8q|iIh!J6QFb;~IL;5ir+n?p{~bI-x3;Mxp*)9I3tXJJ|F3?CJQR8Q)=!P|Z$ z8rw;DzLV#7+w=DN!$W)PM|rkTV{DD{coaE-c{lt#$7~bNfli8?4jXW2a##2WvMRF3 zp`W`$PC@Nn9b=mbIi;~_I}h;K6LL!MP!4m5y&YE*A4BjKBSEV_wofDxRggHw4&3>p#ztNoKgprLkBJoIe7=zp_k5ibyx5xGAxZp zIaGHbDU@< zJv~kejFFo!o&ZDS(-lvE6LL$%6Oa$NrQ!()hn-#cxeomBpu_Lo=)(`%Gxzx*fRFRc zj%ChVLsaDEOx+TYC%HM}3Dlb}oq7T-=TjO_pl`Wl;tBLVw_QAe@#PjsJ$-~`0YPVf zx3>U`lXXuIcyAwq#vkE1eUOq=p3ihVfy(nqiYHKcK8=CO{gZsA;|Y9{FUolWpQQQx z*YI{P%|B?(qgHu7Hju2;l{vK_4ta3Qg+ABJsHYkp41a+RJ)QPEy&xM;XDpsBLUZ}& z8GzI?3SRSc_*2IdtBFD+aIWy~>W2q8He!eam3aOj&)AVXBif-k)>kz z468^VbSqLvAEckm&kVlDc%EY>16Si=)t2m+8!>~nPlt(L#hU-SET9yEm6m*+t^!&+9T zrC*|Q?$FZXS9l!rCcnxf@I8k7RL<9VwZJ**(h03I9DLiYY~P_|s{1xy31NBwk?vXS z9;C>l9V5klMH_c5S#?R}EXRc>0|}R%7vXvvFRy%5sT+yIyR`BNe@x~st9)EXi{Gd5 zTR14Frpjk{yC--|{PA~r%(*WooAj+pw5TtG;=Eqnp3&$|+9xu^kk9$1Z$?@qBhd5B zAKd8laFLEi$>*1lRFRAh%(s@;(#J^Fv0e_>f8>o7&Vbmz*PA2uaUSh_fLeNn#|wNg zXL-EP9}o8*O6*Xe4x{5a-`Z76kLb;b;C(#WnYT8~Kj6)#yY}`D-b`88+go|7Nn6LF zaZCD5OJYp6N5ztU)sh(gP*LiaJC+8d8b#WxlvKR^xfSTyr&~)uphPn#t>TAxwSx=* zkQH|ZE>7+NoJBIt+X1~sybt%|f6Mu|Z3jp?QLA`F8IsZQF#kqX^xA;dh&SGTTkq0D@R6T2Jl z<0?@i-)bDssC~EfWHm>UMj%K><;*Fon8X)rxt69|9-A4Ik0`EO(d$(x|e5k z<2kUE4*-U8>eV~2<|0o6kniXQj>}5GJ~b?0V~OR!7LGV4Ujn6FPY)wua%QflXR&%s z*c!ag@MhxJ-X7yE-%|*q@RqYalSSUbjzU8euZ2X(XG$k^&Zyc}Xfk^0l&_=+uV#<% zaN1AZ;fX<1`H`mFmwO3ZAcfSKZYmJr@MX$kFJTg&B?yhni6_iQ$kN` zO7PaKv7Fki4)_l=Tdf$N`A9thgRwMV&1EXVAe5Ux}{j*o6(1L+y&6 zLCc)TKBE#;6>!LDL0A4!spsn4Q10VO=R;XNdvoPaB6)bNUl>06L|~-?HjEVYKF2Qg z^z=|lgh*xOQX{%IruYW`F+~;;Cg#A(2R?jHlvO!=_Q&5EeX+Ljx7O7MI9ax?(`3(7 zZ)#UJ12t`iy|>Emz1dB_8l6|?;??Yj`{Gu1U{}=Fs7{mF=31O0dTb zsaH2{jAC5{SNfd07PS?OgPDwND%#q{p|CgkF|ZXf>rB98RI|gAJ*if6?cj*c69*dF zrOK`Y?+SGRaP~p)$3BQ~5;YZexZ%bO1;CQjEP6N6E(pG!;@kEB8}?q_9+Z2EV?PJ) zL2PjN)cT~Z6M^a+K2;xC-C%pplKsXQ;jka0O(*6n=S;tIW1y+H`t zQhns)UCE>_aElHCTy;?WT6%#J8ufOSlR zykkV$sbiDWIn?M=mG^@5O7nrL?S8Zt+u+Zxq0&N^cF3HndYpw7*2J;~v_-?GxTBMq zou?yE%IVDUJe|3ANM}G03+fZPPvltQ-&uJy>)I{&WTWdWMbvgWKEQ5-;nhVK4d|i{ zT@c0Ld{Uxqrh5f#ckzh~4|IV5>5?|JinKZN2D<3z!mjUt$fzvfvf3h`&>@HYUqIAt z=*18X>72v>sLLP?8D4Jy>CoO9cO47?Pum)Y+_U;Y@8-a#@FU^)+iUmH4aQYlJS_3Q zcF}TxaNLyuigQ{d0b-6d`Ob#*ltLLLG%jm`+-oy59rvK;6ka*c!9wRKh4f_gke@_B1)(4!Nc1l`vPX(?aJKe6BQ?QZ4H%nn zT|?Iuo;OSZr6Z|wep7klL#2mmt)1=l7fGWG8<_WWDsP8llIr=D`*oXa^}@qi^Qax5xt}>Fm;zuqofL2bnq8*J zdFCo(8BQ+45|o|6Xp@19YB%!(YrRPFgz+N)Zb5epXv3!0%VC%@Rr~6k%xNjPAU%a? zb`YMoouAxV#3g=JUHKApX%Myt*$3Na_c4$YC_ru*C%N`=%w!o3fp3fyxD!Cevnw{g z{l&7ue;a+7>&<(sbd)|%)ozye*6;%FSDPJw253~HQBBoer146qPjELK7o+OD&swrf zhk(}nN-;+(aHfWEd4TRywb7}Ak`x^gYpsDnHehFQ78Prd=#!gKCpFz~mqV@?XRiC7 zwygjVU=9r*EzG>#20x^o!S(x(xT2d)=D2DBea8_C3fR=uGS2<3En%UYhRHBP#Vr

i6EXGc4vZY_ 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 G`~M4$c0IuW diff --git a/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm b/polkadot/runtime/wasm/target/wasm32-unknown-unknown/release/polkadot_runtime.wasm index f9bb1e48774fbfe22ec720e0f9312cf51692b14c..f6d58027f385f77b8227303b07ec6bafce182994 100755 GIT binary patch delta 149532 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 SORz?N(W?fPyVEP1;Qs|-n}Cb} diff --git a/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm b/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm index 3d64829c7510bf1543a2bd85fa8921e067448500..3450a04022f8079a9dae7376e5bd79f1b85fd416 100644 GIT binary patch delta 1898 zcmZuyTWB0r7@jjTo9s0^yPGE2?3$fTXLpmPrgJ$nv$IV~*EY6j^+966irt*qnQ4>e zW;U1FN+T$uC_*@5wWt&op$ej1D=LcOgGGzB^@2VqD2mz#MSZB?gZj_5wg?W)xBvCb z|9}6_*?SMYb11@)#tdQ@22BcU9o+?nnP68}nF(~HC7{&_w2F>Q@T>6r`^&8D*eW2- zom~#P2N!GJg6lHe+EEL!YvxhF2Hl`?d<`M4+a9EFcXPHczFFM77o+Dkd^3c zn<3NFb9JVRZRfj-BV3JE46B$-H<5g8GQ ztiVTtO!cP@p%*^DRPPB^`vsPvd$?tYKhKo{t@!3S{$YfY^p3W>w+g)?FQ6!jh>m;a? z?(bX)Kl{w7&p&y&dFC`jFLb^J?Hpe>4H)Yh2Yj(BL*w01`e0YSrR}_8yOVBD8%Ss# zPG=B`)1$rj!Emw}5vAy8W(4q1<^Wnpf5?nM%EoLCa96em>~6LI@-Ab%RPrL5lb)jbn$cH2GGkz6Ef$Edb}V8s==x1iH>Td$_oYh zYSBYIG*dG3LSA6Eih%*v8H+JuOn?OmRKH=S#85Rl)t?Z0Xrok13i-Gw2uO^JZBt@W zObG)0zSN(E4e~Q%D9T2}&aqfX?7SM#KkzA3c5&cQRmgXULCB8f+r^IlpctKkgF^oP zrDALpXpD-XseGGw)kEJJ^vCqo;4v8J%7!AyPjARWOYd&j4WsNH>I2yr8U*{q(3h>r zq?@A~-++~G{&DSDpSDZQ|GjA(bH-3w zbv4VfJx5jQE+)Dqw9U9P_4&IJbeB=cSlHHVT_%?05o}>48C+OuEY{}cW>S8(WV;5D zbzRX718bh5b|zYW+ub)gTU(l4nVfaj(VV$Ahc(rfow}!bj$(R>*>(9w=x$vIJ@iR) z=c=vf8j&s2Fm&B^G(G(Ys_nTMTQzCdxYW8ohKCo(N^RM#4-el$R(88}-!m?4lcXh8 zma5W@amjxbr4>yU-P+`=TCPb;rVSwg_363B(t-=J;~N}FG52c@c2t7#O{RrCjhNop z@bvWZ%&@5$xU5*Fi51l_3=^AL?_hmy!L3y0$?RnPz~t<{%VMRn-%?c9bsSB09TOX_ zM{{MIaU9PE0zFlB+_IwES$(8fBI3A68uXQND!rvr@n#kwn>dE9Saltnt_6JR^jLXR zz_KhWvgK&laBNpI=#S;xsHPHviR_pP(R7ojxuMG?EiP0l&cfV0v|O8?CUq!tzpUC8 zG+}7vvV|Sbr8iolU@MkU*L9-FHdLk(de|xns;3hNYqo8dHQnMNJq= zT{pcl%wJbEN5w_@dZpBXO(L7B=DKAp>x9aiZxhOj=V3!LG@{6LOY`Uxn_oz{{)*a` zC6^6Pc8IoxiX-_P{A<-nqv0<26k^*Vs-{`8hOuHAD&FSD&{HExK~YT8Q*{hnz#hVE Iz8Kl~4}tRE!vFvP delta 1781 zcmZuxZERCj7`~^y-P*NXPuqR4Zfv)uT{kx2-0yqKW~eeDe(?uT@ke*>J?D;%eYuTq z*)$Tx1WD#Gq9hXdBSDQZOd%!`4L>A8gcvkpVvI&(BvF1s;t%j`A@Ij0eeV15yl>C@ zKBxD~y|3(DFF3OkNDu@xiiZVZIJmH|APl1gv`{nQfxr*cg7Y<_7DDsGA}}FUd!YHn z^=ok;$R>A&+3vZDKf{6c2jp(w&B9oo{)gC5Dg3EzZ!9d7sZ_@#gB=_P6*<( z5N!}7K|)dhi_o|HQn;MM0YQlJr-E;Ysf<*|Plz3H(Fh39M6}unrp?`iU%r4kiWz;C!7VfVYxUfFr3_0dJ%(1D;D40Dn*C0PC6@)XcXv?P@r2 z;L`ga{mDZ3(sYSpx?GkSEjnfp1``HxFE%Fb(du_ zCPgFxC;5p?0Z11z>mrG}dST43bsU5y&hk+Z;nMQ8V8=SY2mGzmfe7i`%-`vH{=UCO zng#o!^cYGnC9}s7IHz;#f%tFkV`zP9#V}w)el=hzUjaOtF9M#=p9bcR!t7lY`9Fon z!MD0isGRQB6L~3A4v&>jHI}1g5$E}*-9BpL?L{-2%HqIUDby37)q&#GfkNe91(>KD z8_Oke8=oy!QmJf0!Wc;jscuY4Nolw;e-v{au!?GB9K`}rsc9%4k(wS5ay?h!WH)=> zQc~GQDGb%|Y`xT&3rn#vXcWOvosI`$phrxKjAiSj2O0iFZx|-ml zFw$2mw}2R}eVt$%eZ3GL?z>i#II%R?|2f?BrCSeOsjltr@OM^k0(%n~fW#s>6ht?8 zr*=Ma0*jN*1VisGUDsL=dg4t(>aYDNojFz+oh+61?eoT`W_Qf6{rgL$ZNy3j7 z-g|{CtGz+m_(pTX8bx+hSyrh=W!IyYmg)7TW>~2-?M#k(+eary?wK%-sTs0MD3v|x zd#Yt{&(bh)iEJybX1bPR%c{vwT170Ys^T~nkX4)5jPYNrL98;vQJ7`>jw7o+WxUVs z8nRTwaV<)9<|ry*tV^wIeOjv?L7kqPfpg7FO~Ym@)8mfEWOJKh6P;O#VaukfYN|D~ z%G53Xnk`{ys_2$XG$LEnaxH$=E@IoU9Yt|;Q}cb|n;O4icVj~~4Qj#fX|``!hRgG% zN|LI?vUlPG{XGA%v@vNKx<_5d1N}^&P^-YrHN}*z$_}w$LZT_Yshizp{!^)) ze^P2`B)0BphRS?fwLF85uXzqrSCio;5YHiwsmKohVa*2#syaF)D(u_^6-|D4fM8o? ivZ`CYO$^0z9fMyU(6MitGGn%3n>sahPvPmo{{H}xe#3?U diff --git a/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.wasm b/substrate/executor/wasm/target/wasm32-unknown-unknown/release/runtime_test.wasm index 24c74a0f14c72e52836b6b0e5737a9fff68f9a30..d1b0fcfd90a086637d50129294dc805f8ba2a4b2 100755 GIT binary patch delta 1879 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 { + /// Session has changed. + fn on_session_change(normal_rotation: bool, time_elapsed: T); +} + +impl OnSessionChange for () { + fn on_session_change(_: bool, _: T) {} +} + pub trait Trait: timestamp::Trait { type ConvertAccountIdToSessionKey: Convert; + type OnSessionChange: OnSessionChange; } decl_module! { @@ -65,7 +76,7 @@ decl_module! { #[cfg_attr(feature = "std", derive(Serialize, Deserialize))] pub enum PrivCall { fn set_length(new: T::BlockNumber) -> Result = 0; - fn force_new_session() -> Result = 1; + fn force_new_session(normal_rotation: bool) -> Result = 1; } } decl_storage! { @@ -114,8 +125,8 @@ impl Module { } /// Forces a new session. - fn force_new_session() -> Result { - Self::rotate_session(); + fn force_new_session(normal_rotation: bool) -> Result { + Self::rotate_session(normal_rotation); Ok(()) } @@ -138,16 +149,20 @@ impl Module { // new set. // check block number and call next_session if necessary. let block_number = >::block_number(); - if ((block_number - Self::last_length_change()) % Self::length()).is_zero() || Self::broken_validation() { - Self::rotate_session(); + let is_final_block = ((block_number - Self::last_length_change()) % Self::length()).is_zero(); + if is_final_block || Self::broken_validation() { + Self::rotate_session(is_final_block); } } /// Move onto next session: register the new authority set. - pub fn rotate_session() { + pub fn rotate_session(normal_rotation: bool) { + let now = >::get(); + let time_elapsed = now.clone() - Self::current_start(); + // Increment current session index. >::put(>::get() + One::one()); - >::put(>::get()); + >::put(now); // Enact era length change. if let Some(next_len) = >::take() { @@ -156,6 +171,8 @@ impl Module { >::put(block_number); } + T::OnSessionChange::on_session_change(normal_rotation, time_elapsed); + // Update any changes in session keys. Self::validators().iter().enumerate().for_each(|(i, v)| { if let Some(n) = >::take(v) { @@ -164,6 +181,13 @@ impl Module { }); } + /// Get the time that should have elapsed over a session if everything was working perfectly. + pub fn ideal_session_duration() -> T::Value { + let block_period = >::block_period(); + let session_length = >::sa(Self::length()); + session_length * block_period + } + /// Returns `true` if the current validator set is taking took long to validate blocks. pub fn broken_validation() -> bool { let now = >::get(); @@ -174,7 +198,7 @@ impl Module { false } else { let blocks_remaining = >::sa(blocks_remaining); - Self::current_start() + blocks_remaining * block_period > now + now + blocks_remaining * block_period > Self::current_start() + Self::ideal_session_duration() * T::Value::sa(13) / T::Value::sa(10) // if we're 30% behind schedule then end abnormally } } } @@ -251,6 +275,7 @@ mod tests { } impl Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = (); } type System = system::Module; diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 6ba14bf290a32..49503269337b9 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -53,14 +53,13 @@ use rstd::collections::btree_map::BTreeMap; use codec::{Input, Slicable}; use runtime_support::{StorageValue, StorageMap, Parameter}; use runtime_support::dispatch::Result; +use session::OnSessionChange; use primitives::traits::{Zero, One, Bounded, RefInto, SimpleArithmetic, Executable, MakePayment, As, AuxLookup, Hashing as HashingT, Member}; use address::Address as RawAddress; pub mod address; -#[cfg(feature = "std")] mod mock; -#[cfg(test)] mod tests; mod genesis_config; mod account_db; @@ -167,6 +166,11 @@ decl_storage! { // The fee required to create a contract. At least as big as ReclaimRebate. pub ContractFee get(contract_fee): b"sta:contract_fee" => required T::Balance; + // Maximum reward, per validator, that is provided per acceptable session. + pub SessionReward get(session_reward): b"sta:session_reward" => required T::Balance; + // Slash, per validator that is taken per abnormal era end. + pub EarlyEraSlash get(early_era_slash): b"sta:early_era_slash" => required T::Balance; + // The current era index. pub CurrentEra get(current_era): b"sta:era" => required T::BlockNumber; // All the accounts with a desire to stake. @@ -337,8 +341,7 @@ impl Module { /// Force there to be a new era. This also forces a new session immediately after. fn force_new_era() -> Result { - Self::new_era(); - >::rotate_session(); + >::rotate_session(false); Ok(()) } @@ -389,6 +392,17 @@ impl Module { } } + /// Adds up to `value` to the free balance of `who`. + /// + /// If `who` doesn't exist, nothing is done and an Err returned. + pub fn reward(who: &T::AccountId, value: T::Balance) -> Result { + if Self::voting_balance(who).is_zero() { + return Err("beneficiary account must pre-exist"); + } + Self::set_free_balance(who, Self::free_balance(who) + value); + Ok(()) + } + /// Moves `value` from balance to reserved balance. /// /// If the free balance is lower than `value`, then no funds will be moved and an `Err` will @@ -463,10 +477,28 @@ impl Module { } } - /// Hook to be called after to transaction processing. - pub fn check_new_era() { - // check block number and call new_era if necessary. - if (>::block_number() - Self::last_era_length_change()) % Self::era_length() == Zero::zero() { + /// Session has just changed. We need to determine whether we pay a reward, slash and/or + /// move to a new era. + fn new_session(normal_rotation: bool, actual_elapsed: T::Value) { + let session_index = >::current_index(); + + if normal_rotation { + // reward + let ideal_elapsed = >::ideal_session_duration(); + let percent: usize = (T::Value::sa(100usize) * ideal_elapsed / actual_elapsed).as_(); + let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(100usize); + // apply good session reward + for v in >::validators().iter() { + let _ = Self::reward(v, reward); // will never fail as validator accounts must be created, but even if it did, it's just a missed reward. + } + } else { + // slash + let early_era_slash = Self::early_era_slash(); + for v in >::validators().iter() { + Self::slash(v, early_era_slash); + } + } + if (session_index % Self::era_length()).is_zero() || !normal_rotation { Self::new_era(); } } @@ -710,7 +742,12 @@ impl Module { impl Executable for Module { fn execute() { - Self::check_new_era(); + } +} + +impl OnSessionChange for Module { + fn on_session_change(normal_rotation: bool, elapsed: T::Value) { + Self::new_session(normal_rotation, elapsed); } } diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 02f9db90ac17b..ce660bb62130c 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -54,6 +54,7 @@ impl system::Trait for Test { } impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = Staking; } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index 08479c0696ec7..dec1a680fda7f 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -16,6 +16,8 @@ //! Tests for the module. +#![cfg(test)] + use super::*; use runtime_io::with_externalities; use mock::*; @@ -111,44 +113,44 @@ fn staking_should_work() { assert_ok!(Staking::stake(&1)); assert_ok!(Staking::stake(&2)); assert_ok!(Staking::stake(&4)); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![10, 20]); // Block 2: New validator set now. System::set_block_number(2); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![4, 2]); // Block 3: Unstake highest, introduce another staker. No change yet. System::set_block_number(3); assert_ok!(Staking::stake(&3)); assert_ok!(Staking::unstake(&4)); - Staking::check_new_era(); + Session::check_rotate_session(); // Block 4: New era - validators change. System::set_block_number(4); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![3, 2]); // Block 5: Transfer stake from highest to lowest. No change yet. System::set_block_number(5); assert_ok!(Staking::transfer(&4, 1.into(), 40)); - Staking::check_new_era(); + Session::check_rotate_session(); // Block 6: Lowest now validator. System::set_block_number(6); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![1, 3]); // Block 7: Unstake three. No change yet. System::set_block_number(7); assert_ok!(Staking::unstake(&3)); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![1, 3]); // Block 8: Back to one and two. System::set_block_number(8); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Session::validators(), vec![1, 2]); }); } @@ -163,14 +165,14 @@ fn staking_eras_work() { // Block 1: No change. System::set_block_number(1); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 0); // Block 2: Simple era change. System::set_block_number(2); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 1); @@ -178,35 +180,35 @@ fn staking_eras_work() { // Block 3: Schedule an era length change; no visible changes. System::set_block_number(3); assert_ok!(Staking::set_sessions_per_era(3)); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 1); // Block 4: Era change kicks in. System::set_block_number(4); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); // Block 5: No change. System::set_block_number(5); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); // Block 6: No change. System::set_block_number(6); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); // Block 7: Era increment. System::set_block_number(7); - Staking::check_new_era(); + Session::check_rotate_session(); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 3); diff --git a/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 26f48623addf169fc278d8f52ef857bbc81314da..a7d3be5aefc8a5e4b9b58346559ae2ca591abf5a 100644 GIT binary patch delta 1372 zcmYjPTTC5A7@pZffy05GJWy!| zUJAeb3?+Umj0v-NCNX;eIV$nX-g(0>ICEzh$+6F zY=|1F6#s%;dsEK40-{1pC?e_q~) zZ}SH#dhzdo4dE*l?-k)aVaLPQh3MuR`_}}Z-$*)%<5G(<-b}u&?vE__ZSV z3+9RwAMr0b?}WDwU%>q7BV^$8i0h3_vc|FTsgbeK?BrSG+$>A{g!KZ1QV5|m*b1;4 z0z$jMg4y~oU<}rD;Wm%(twMh5NOoipT-87qL0<;83sw|11H5jB|L8scLC_!E;Xeoa zDDGd-XLtB#U?1iA1pM$!Xps+hRmPXg3P$M}hTjce>QeA--8Gn{SO#@%of-Vo?i$h7 zT;l37we5gvwx;mA-3>{qTg)d!H5Dx&s>O|-R*~td=Eq0rc=QCh-1yXFF6U2Ro6B&%OI9zYkt70 zvfJYA2g~Ky^f>dTh66fsn)#r272EK1of6q~168Gx-ds~lr9p|Fm9``K;l911Wf8^o zWF}jhN1+Fv@2eHnK&QS&T-UXT9t1wW()W5&^VCSCFx#Rgv-#2flPTMyObcYwGy~nR zeZQ8|{{9Eqs5jAE0YlwIb|y)$=aDL=!H{45Y_Oq$phGQX9j1&XyV zCIwob4A_`!Oh{u>tx*$gLbA2kq)E}}gY^YXA2cx-9{hP|O=F`WH71@xY?x%ebI*6q z{m!}P-cK(Is~3gklOlg6a)Z}IYWYd=a`D%Q5fK++#V5-mWng(@<%Q07U;E~RPk!Ma z&d*A}l}5x_;fyp}kE}H`krEq_*lDd)SW#;sW+4m7<<{)8F_aW7q>GB!8AiDfUleNi z`S||aKT#cp!DPWIFQla8Ze2vlm{n4+Pz#!`Xbpo&u_>akNOCJJDWyeZmB=;xUc5PM zs80S1v>r(u0h~!JH7v#~BJV?zT#Y2_T!obh9qS=0gR{z8sb&p(u(|j~_0=*VQS5&FiWr{!kG&frxVMu%f;cY~A4_Rl_F(2dodL$qy!74(K64mz45DC z^AoI6m}UlD;{iJWr7yD_;5vJ-rL+#X(bmY<%~)9At{F~Yw7r@8IVL3dJGn!U{AaF7 zSmyg$|Cf{=O6FVPn0&640e;qc8YGI!fn@=vy3y7W3Rbn}!5M9zgAs4EHArxYYp7t! zVgHpKYr_5FPaW3<*u7+p0&ZGOfT^wm;9}RSfYI*5fPVM;fE7I!;84#i(T~gE70i`O ztNd2a-Nf;6$DNw-Tc)N@jZaNxXI?I@^eze_LcF_=?m^aSO!`sKN)SpQgi>Iu!T!!K z_0?7`l)`fRyHmoy>dTJ%Ks5lhvJ0UY*napy3!Mi)y@P*ln{S2ur+4tDVIA&^0iWH$ zpMiC#^Bw5G!$vFoNPk`Q^H|BGeZm*67ti%$q0$c=M^h#`OzZhtgea}>wsu0c9 zJkMtV-yCR;>nfovAWZd{M>U_5!46qBJVLPP5;d?jrci!%uuIl3!Mf>Cg*iIbb(h~B z9FSG)5R8dOJ?yxiL3t*RWkz-ED4vI1FK~&W^T~W&JTREyn3S5ju0lC}A)o9uh;BQE z=V`vJ62Y`G`s;aeQE||XQrmd#wW+7kK3+~*-NUaXuhH9CT4_CV)SMWMdh3M zq- zH853N&*8np$7C(gHE54Grl#4ttMePfhh)<;vF>0Sd#-^soAUaRo+=j`s-p!&F>K~B c(`_2zH;4D|H%H!*U93_w&=gzqHQmtJzYXMGcmMzZ diff --git a/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.wasm b/substrate/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.wasm index dadcb690b16c2f7f41cf3d4dc7256fc5f684a9f0..9a2c826ca2580d7559c0dc6436d87518c9a11280 100755 GIT binary patch delta 1339 zcmYjPYfKzf6rMXvVHa9=mPeC@wB3SL!t>7DdAbNYfo-80-YpoZbe@(KL8&%c18g-> zL5z`G;vbWmHjpN^rEyY?F(¬(qtyB~kGgX`@Z5X=+VdW7Knj5+<4N-1D7t&-u=r zSw4@J&Z7$#dHQka3pySu2```!KZZsToeMomukka1pY?5szc(33;pQB$bR>Ey_w=cY ziwhTm?=Ew6udp+Bb|RDE%!momcD-OTZ*nS+`6Qn-XX$&whiHmc#wyTF+7sK!-x{Z{ z#k^oE1IKQ z3lmINXW=olM87ZWM$2@hh|s5sO3{sAq^LWLrh~=pi#+RgHeMM5_ovbx#NV0-$nLHc zJO0SM2(*74TY%Sa8n9I)fNzKr;HP2|O$B$wT_JF`DLsJ03QN7J$bb>`917@X>QN@6 zT{q}qZ32Bx|I~U{iG$$G>BDQ$px1Z{vGeuEUPd?Q(+Qn9(}_&+6q_{8m+|vF!yoyQ zP`U(}Tp4$g;@WurY4({D92ZAscG~2sxEX5KHh_TH+B(p8y>Wm0 zEyQ_qo=cm;+J5Mf`UZ&hHEQ&a`V^X`a(a;zGlF?`;JG>8IG$^ZiiTCglRf%xyCZ;0ENp11swlQg6#8OEN-#vp^IVr;&(&nr^Xb9h9%ojWnCq@Zpg0hrRX!ArO?Yz z9YwJSwryXMEc$-u9zoZMXgk=$y6jj`g8tfBD@eX#xiYbBTPKR|yOeZYj>?Y2vP93& zEzL7%WdCdVhGTiMk2Ov671eOvR5>l)e`uRG=nT1@s2$b~jEU;Y#B)5IjTb$T7A#`B d*w=`qJD^YZ>G**wG1vA)7+VGnvf*MU^*`F&mG=Mu delta 1358 zcmYjPT}&KR6rMXv%U>(A{HbYLwqPrvK_O(n!@w1G@z9?D2xZe=P+oBm@pZO*>leur+A~=irMs=mxC`pyxer6# z@o&juW=Hcv@Ea`cwGofB)F7U1Nd-*HDB`KsK;kd0HxMuHYejspZ#?(&Y@Rd6a`NY3 z{OLc#eZ96bFy!qX7#!{$NYxIV$fTZ06Q1K>=~)@-+aBF{51kDh$DvvN2x17=xs5A+ zfOoUt)wbGE52+{6oyGH;(YD|UuAN7}avgtQm5<{2s&)KH+z0nIBVW6Ye+~CRo*S44 zN4b{&%qq`q%I@n;9S`@Wj)wS)+1#{{m9qLh@^NO*{-fj(&$n$wl9}enl1<_2fvQ5! zHAGDknc^s}>uG+x5E6-}3RH>7n$I-J(_C5cAeQJ9RNZBa8V-|uOVLCbK1#F*3T0F^ zY+2N7m8z-(|0EniqBf(Hxw1=b$JJ#>9gNp&vPx~yb*ba}4%5|mS#8hrZF2DF%IyBhz(jU)sFePrrU-r8>%Xy68P(2MUl=_%hp|2@hpjno)_QFpt5~iiDZb1 zr%S3qHO6G7$7^*_g3k5|!Jyh7cmaihrTIbw&-YvA?Z{W9oGiF;}t>iRRv`*+fWosbyP@q92X4NpsGzR>N+}A yEE#eRCm(aDF4>CDMBUO{&2Zw??bxy;L0LyBynpz!utO!;@D Date: Sun, 24 Jun 2018 17:22:02 +0200 Subject: [PATCH 06/22] Fix build & session logic, introduce tests --- demo/cli/src/lib.rs | 5 +- demo/runtime/src/lib.rs | 1 + polkadot/api/src/full.rs | 2 +- polkadot/cli/src/preset_config.rs | 12 +++-- polkadot/runtime/src/lib.rs | 1 + substrate/runtime/session/src/lib.rs | 66 ++++++++++++++++++++++++-- substrate/runtime/staking/src/mock.rs | 1 + substrate/runtime/timestamp/src/lib.rs | 31 +++++++----- 8 files changed, 95 insertions(+), 24 deletions(-) diff --git a/demo/cli/src/lib.rs b/demo/cli/src/lib.rs index 77094c4151433..52a95387850f3 100644 --- a/demo/cli/src/lib.rs +++ b/demo/cli/src/lib.rs @@ -107,10 +107,10 @@ pub fn run(args: I) -> error::Result<()> where authorities: vec![god_key.clone()], }), system: None, - // block_time: 5, // 5 second block time. session: Some(SessionConfig { validators: vec![god_key.clone().into()], session_length: 720, // that's 1 hour per session. + broken_percent_late: 30, }), staking: Some(StakingConfig { current_era: 0, @@ -148,8 +148,7 @@ pub fn run(args: I) -> error::Result<()> where voting_period: 7 * 120 * 24, // 7 day voting period for council members. }), timestamp: Some(TimestampConfig { - now: 0, - period: 5, + period: 5, // 5 second block time. }), }.build_storage(); diff --git a/demo/runtime/src/lib.rs b/demo/runtime/src/lib.rs index fda4f86b70602..6e00afc55338a 100644 --- a/demo/runtime/src/lib.rs +++ b/demo/runtime/src/lib.rs @@ -103,6 +103,7 @@ impl Convert for SessionKeyConversion { impl session::Trait for Concrete { type ConvertAccountIdToSessionKey = SessionKeyConversion; + type OnSessionChange = Staking; } /// Session module for this concrete runtime. diff --git a/polkadot/api/src/full.rs b/polkadot/api/src/full.rs index 3fc5edd3f2a1a..a445dc3605061 100644 --- a/polkadot/api/src/full.rs +++ b/polkadot/api/src/full.rs @@ -112,7 +112,7 @@ impl> PolkadotApi for Client Result { - with_runtime!(self, at, ::runtime::Timestamp::now) + with_runtime!(self, at, ::runtime::Timestamp::get) } fn evaluate_block(&self, at: &CheckedId, block: Block) -> Result { diff --git a/polkadot/cli/src/preset_config.rs b/polkadot/cli/src/preset_config.rs index a1ee97ffb590b..f99824d8ce554 100644 --- a/polkadot/cli/src/preset_config.rs +++ b/polkadot/cli/src/preset_config.rs @@ -22,7 +22,7 @@ use serde_json; use substrate_primitives::{AuthorityId, storage::{StorageKey, StorageData}}; use runtime_primitives::{MakeStorage, BuildStorage, StorageMap}; use polkadot_runtime::{GenesisConfig, ConsensusConfig, CouncilConfig, DemocracyConfig, - SessionConfig, StakingConfig}; + SessionConfig, StakingConfig, TimestampConfig}; use chain_spec::ChainSpec; enum Config { @@ -99,6 +99,7 @@ impl PresetConfig { session: Some(SessionConfig { validators: initial_authorities.iter().cloned().map(Into::into).collect(), session_length: 720, // that's 1 hour per session. + broken_percent_late: 30, }), staking: Some(StakingConfig { current_era: 0, @@ -136,7 +137,9 @@ impl PresetConfig { voting_period: 7 * 120 * 24, // 7 day voting period for council members. }), parachains: Some(Default::default()), - timestamp: Some(Default::default()), + timestamp: Some(TimestampConfig { + period: 5, // 5 second block time. + }), }); let boot_nodes = vec![ "enode://a93a29fa68d965452bf0ff8c1910f5992fe2273a72a1ee8d3a3482f68512a61974211ba32bb33f051ceb1530b8ba3527fc36224ba6b9910329025e6d9153cf50@104.211.54.233:30333".into(), @@ -164,6 +167,7 @@ impl PresetConfig { session: Some(SessionConfig { validators: initial_authorities.iter().cloned().map(Into::into).collect(), session_length: 10, + broken_percent_late: 30, }), staking: Some(StakingConfig { current_era: 0, @@ -201,7 +205,9 @@ impl PresetConfig { voting_period: 20, }), parachains: Some(Default::default()), - timestamp: Some(Default::default()), + timestamp: Some(TimestampConfig { + period: 5, // 5 second block time. + }), }); let boot_nodes = Vec::new(); PresetConfig { genesis_config, boot_nodes } diff --git a/polkadot/runtime/src/lib.rs b/polkadot/runtime/src/lib.rs index 403f5dbd457a6..d5f9ad925ae1f 100644 --- a/polkadot/runtime/src/lib.rs +++ b/polkadot/runtime/src/lib.rs @@ -142,6 +142,7 @@ impl Convert for SessionKeyConversion { impl session::Trait for Concrete { type ConvertAccountIdToSessionKey = SessionKeyConversion; + type OnSessionChange = Staking; } /// Session module for this concrete runtime. pub type Session = session::Module; diff --git a/substrate/runtime/session/src/lib.rs b/substrate/runtime/session/src/lib.rs index 6d5af9a614c14..6f885cd677f09 100644 --- a/substrate/runtime/session/src/lib.rs +++ b/substrate/runtime/session/src/lib.rs @@ -90,6 +90,8 @@ decl_storage! { pub CurrentIndex get(current_index): b"ses:ind" => required T::BlockNumber; // Timestamp when current session started. pub CurrentStart get(current_start): b"ses:current_start" => required T::Value; + // Percent by which the session must necessarily finish late before we early-exit the session. + pub BrokenPercentLate get(broken_percent_late): b"ses:broken_percent_late" => required T::Value; // Block at which the session length last changed. LastLengthChange: b"ses:llc" => T::BlockNumber; @@ -188,17 +190,34 @@ impl Module { session_length * block_period } + /// Number of blocks remaining in this session, not counting this one. If the session is + /// due to rotate at the end of this block, then it will return 0. If the just began, then + /// it will return `Self::length() - 1`. + pub fn blocks_remaining() -> T::BlockNumber { + // 2 0 2 0 2 0 0 + // 3 2 3 2 0 1 1 + // 4 - - 1 1 2 2 + // 5 - - 0 2 3 0 + // 6 5 - 2 0 4 1 + // 7 - - 1 1 5 2 + let length = Self::length(); + let length_minus_1 = length - One::one(); + let block_number = >::block_number(); + length_minus_1 - (block_number - Self::last_length_change() + length_minus_1) % length + } + /// Returns `true` if the current validator set is taking took long to validate blocks. pub fn broken_validation() -> bool { let now = >::get(); let block_period = >::block_period(); - let block_number = >::block_number(); - let blocks_remaining = Self::length() - One::one() - (block_number - Self::last_length_change()) % Self::length(); + let blocks_remaining = Self::blocks_remaining(); if blocks_remaining.is_zero() { false } else { let blocks_remaining = >::sa(blocks_remaining); - now + blocks_remaining * block_period > Self::current_start() + Self::ideal_session_duration() * T::Value::sa(13) / T::Value::sa(10) // if we're 30% behind schedule then end abnormally + now + blocks_remaining * block_period > + Self::current_start() + Self::ideal_session_duration() * + (T::Value::sa(100) + Self::broken_percent_late()) / T::Value::sa(100) } } } @@ -213,6 +232,7 @@ impl Executable for Module { pub struct GenesisConfig { pub session_length: T::BlockNumber, pub validators: Vec, + pub broken_percent_late: T::Value, } #[cfg(any(feature = "std", test))] @@ -222,6 +242,7 @@ impl Default for GenesisConfig { GenesisConfig { session_length: T::BlockNumber::sa(1000), validators: vec![], + broken_percent_late: T::Value::sa(30), } } } @@ -237,7 +258,8 @@ impl primitives::BuildStorage for GenesisConfig twox_128(>::key()).to_vec() => self.session_length.encode(), twox_128(>::key()).to_vec() => T::BlockNumber::sa(0).encode(), twox_128(>::key()).to_vec() => T::Value::zero().encode(), - twox_128(>::key()).to_vec() => self.validators.encode() + twox_128(>::key()).to_vec() => self.validators.encode(), + twox_128(>::key()).to_vec() => self.broken_percent_late.encode() ] } } @@ -280,6 +302,7 @@ mod tests { type System = system::Module; type Consensus = consensus::Module; + type Timestamp = timestamp::Module; type Session = Module; fn new_test_ext() -> runtime_io::TestExternalities { @@ -288,10 +311,13 @@ mod tests { code: vec![], authorities: vec![1, 2, 3], }.build_storage()); - t.extend(timestamp::GenesisConfig::::default().build_storage()); + t.extend(timestamp::GenesisConfig::{ + period: 5, + }.build_storage()); t.extend(GenesisConfig::{ session_length: 2, validators: vec![1, 2, 3], + broken_percent_late: 30, }.build_storage()); t } @@ -305,6 +331,36 @@ mod tests { }); } + #[test] + fn should_identify_broken_validation() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(2); + assert_eq!(Session::blocks_remaining(), 0); + Timestamp::set_timestamp(0); + assert_ok!(Session::set_length(3)); + Session::check_rotate_session(); + assert_eq!(Session::current_index(), 1); + assert_eq!(Session::length(), 3); + assert_eq!(Session::current_start(), 0); + assert_eq!(Session::ideal_session_duration(), 15); + // ideal end = 0 + 15 * 3 = 15 + // broken_limit = 15 * 130 / 100 = 19 + + System::set_block_number(3); + assert_eq!(Session::blocks_remaining(), 2); + Timestamp::set_timestamp(9); // earliest end = 9 + 2 * 5 = 19; OK. + assert!(!Session::broken_validation()); + Session::check_rotate_session(); + + System::set_block_number(4); + assert_eq!(Session::blocks_remaining(), 1); + Timestamp::set_timestamp(15); // another 1 second late. earliest end = 15 + 1 * 5 = 20; broken. + assert!(Session::broken_validation()); + Session::check_rotate_session(); + assert_eq!(Session::current_index(), 2); + }); + } + #[test] fn session_length_change_should_work() { with_externalities(&mut new_test_ext(), || { diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index ce660bb62130c..55d5ae401c6e0 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -80,6 +80,7 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 t.extend(session::GenesisConfig::{ session_length, validators: vec![10, 20], + broken_percent_late: 30, }.build_storage()); t.extend(GenesisConfig::{ sessions_per_era, diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 129fde4b8c692..1e0b8366f6498 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -62,7 +62,7 @@ decl_module! { decl_storage! { trait Store for Module; - pub Now get(now): b"tim:val" => required T::Value; + pub Now get(now): b"tim:val" => T::Value; // The minimum (and advised) period between blocks. pub BlockPeriod get(block_period): b"tim:block_period" => required T::Value; @@ -72,7 +72,7 @@ decl_storage! { impl Module { pub fn get() -> T::Value { - ::Now::get() + Self::now().expect("This must always exist apart from before the first call to `set`; `set` happens prior to anything else; qed") } /// Set the current time. @@ -84,14 +84,22 @@ impl Module { "Timestamp extrinsic must be at position {} in the block", T::TIMESTAMP_SET_POSITION ); - assert!( - now >= Self::get() + Self::block_period(), - "Timestamp but increment by at least between sequential blocks" - ); + if let Some(t) = Self::now() { + assert!( + now >= t + Self::block_period(), + "Timestamp but increment by at least between sequential blocks" + ); + } ::Now::put(now); ::DidUpdate::put(true); Ok(()) } + + /// Set the timestamp to something in particular. Only used for tests. + #[cfg(any(feature = "std", test))] + pub fn set_timestamp(now: T::Value) { + ::Now::put(now); + } } impl Executable for Module { @@ -102,7 +110,6 @@ impl Executable for Module { #[cfg(any(feature = "std", test))] pub struct GenesisConfig { - pub now: T::Value, pub period: T::Value, } @@ -110,7 +117,6 @@ pub struct GenesisConfig { impl Default for GenesisConfig { fn default() -> Self { GenesisConfig { - now: T::Value::default(), period: T::Value::default(), } } @@ -123,7 +129,6 @@ impl runtime_primitives::BuildStorage for GenesisConfig use runtime_io::twox_128; use codec::Slicable; map![ - twox_128(>::key()).to_vec() => self.now.encode(), twox_128(>::key()).to_vec() => self.period.encode() ] } @@ -167,10 +172,10 @@ mod tests { #[test] fn timestamp_works() { let mut t = system::GenesisConfig::::default().build_storage(); - t.extend(GenesisConfig:: { now: 42, period: 0 }.build_storage()); + t.extend(GenesisConfig:: { period: 0 }.build_storage()); with_externalities(&mut t, || { - assert_eq!(::Now::get(), 42); + Timestamp::set_timestamp(42); assert_ok!(Timestamp::aux_dispatch(Call::set(69), &0)); assert_eq!(Timestamp::now(), 69); }); @@ -180,9 +185,10 @@ mod tests { #[should_panic(expected = "Timestamp must be updated only once in the block")] fn double_timestamp_should_fail() { let mut t = system::GenesisConfig::::default().build_storage(); - t.extend(GenesisConfig:: { now: 42, period: 5 }.build_storage()); + t.extend(GenesisConfig:: { period: 5 }.build_storage()); with_externalities(&mut t, || { + Timestamp::set_timestamp(42); assert_ok!(Timestamp::aux_dispatch(Call::set(69), &0)); let _ = Timestamp::aux_dispatch(Call::set(70), &0); }); @@ -195,6 +201,7 @@ mod tests { t.extend(GenesisConfig:: { now: 42, period: 5 }.build_storage()); with_externalities(&mut t, || { + Timestamp::set_timestamp(42); let _ = Timestamp::aux_dispatch(Call::set(46), &0); }); } From bd41bbc671046140c1d0126cf558fe045fa5224d Mon Sep 17 00:00:00 2001 From: Gav Date: Sun, 24 Jun 2018 18:24:07 +0200 Subject: [PATCH 07/22] Fixed staking tests. --- .../runtime/staking/src/genesis_config.rs | 12 +++++++++++- substrate/runtime/staking/src/lib.rs | 6 +++--- substrate/runtime/staking/src/mock.rs | 6 +++++- substrate/runtime/staking/src/tests.rs | 9 +++++++++ substrate/runtime/timestamp/src/lib.rs | 19 +++++++++---------- 5 files changed, 37 insertions(+), 15 deletions(-) diff --git a/substrate/runtime/staking/src/genesis_config.rs b/substrate/runtime/staking/src/genesis_config.rs index 936be9c023b5d..295bd8444ef5b 100644 --- a/substrate/runtime/staking/src/genesis_config.rs +++ b/substrate/runtime/staking/src/genesis_config.rs @@ -27,7 +27,7 @@ use {runtime_io, primitives}; use super::{Trait, ENUM_SET_SIZE, EnumSet, NextEnumSet, Intentions, CurrentEra, BondingDuration, ContractFee, CreationFee, TransferFee, ReclaimRebate, ExistentialDeposit, TransactionByteFee, TransactionBaseFee, TotalStake, - SessionsPerEra, ValidatorCount, FreeBalance}; + SessionsPerEra, ValidatorCount, FreeBalance, SessionReward, EarlyEraSlash}; pub struct GenesisConfig { pub sessions_per_era: T::BlockNumber, @@ -43,6 +43,8 @@ pub struct GenesisConfig { pub contract_fee: T::Balance, pub reclaim_rebate: T::Balance, pub existential_deposit: T::Balance, + pub session_reward: T::Balance, + pub early_era_slash: T::Balance, } impl GenesisConfig where T::AccountId: From { @@ -61,6 +63,8 @@ impl GenesisConfig where T::AccountId: From { contract_fee: T::Balance::sa(0), existential_deposit: T::Balance::sa(0), reclaim_rebate: T::Balance::sa(0), + session_reward: T::Balance::sa(0), + early_era_slash: T::Balance::sa(0), } } @@ -87,6 +91,8 @@ impl GenesisConfig where T::AccountId: From { contract_fee: T::Balance::sa(0), existential_deposit: T::Balance::sa(0), reclaim_rebate: T::Balance::sa(0), + session_reward: T::Balance::sa(0), + early_era_slash: T::Balance::sa(0), } } } @@ -107,6 +113,8 @@ impl Default for GenesisConfig { contract_fee: T::Balance::sa(0), existential_deposit: T::Balance::sa(0), reclaim_rebate: T::Balance::sa(0), + session_reward: T::Balance::sa(0), + early_era_slash: T::Balance::sa(0), } } } @@ -129,6 +137,8 @@ impl primitives::BuildStorage for GenesisConfig { twox_128(>::key()).to_vec() => self.existential_deposit.encode(), twox_128(>::key()).to_vec() => self.reclaim_rebate.encode(), twox_128(>::key()).to_vec() => self.current_era.encode(), + twox_128(>::key()).to_vec() => self.session_reward.encode(), + twox_128(>::key()).to_vec() => self.early_era_slash.encode(), twox_128(>::key()).to_vec() => total_stake.encode() ]; diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 49503269337b9..4121a9174224a 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -485,8 +485,8 @@ impl Module { if normal_rotation { // reward let ideal_elapsed = >::ideal_session_duration(); - let percent: usize = (T::Value::sa(100usize) * ideal_elapsed / actual_elapsed).as_(); - let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(100usize); + let percent: usize = (T::Value::sa(65536usize) * ideal_elapsed.clone() / actual_elapsed.max(ideal_elapsed)).as_(); + let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(65536usize); // apply good session reward for v in >::validators().iter() { let _ = Self::reward(v, reward); // will never fail as validator accounts must be created, but even if it did, it's just a missed reward. @@ -498,7 +498,7 @@ impl Module { Self::slash(v, early_era_slash); } } - if (session_index % Self::era_length()).is_zero() || !normal_rotation { + if ((session_index - Self::last_era_length_change()) % Self::era_length()).is_zero() || !normal_rotation { Self::new_era(); } } diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 55d5ae401c6e0..a9f7d1ca7f247 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -96,8 +96,12 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + session_reward: 0, + early_era_slash: 0, + }.build_storage()); + t.extend(timestamp::GenesisConfig::{ + period: 5 }.build_storage()); - t.extend(timestamp::GenesisConfig::::default().build_storage()); t } diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index dec1a680fda7f..9a022f7eb1022 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -162,10 +162,12 @@ fn staking_eras_work() { assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 0); // Block 1: No change. System::set_block_number(1); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 1); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 0); @@ -173,6 +175,7 @@ fn staking_eras_work() { // Block 2: Simple era change. System::set_block_number(2); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 2); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 1); @@ -181,6 +184,7 @@ fn staking_eras_work() { System::set_block_number(3); assert_ok!(Staking::set_sessions_per_era(3)); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 3); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 1); @@ -188,6 +192,7 @@ fn staking_eras_work() { // Block 4: Era change kicks in. System::set_block_number(4); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 4); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); @@ -195,13 +200,16 @@ fn staking_eras_work() { // Block 5: No change. System::set_block_number(5); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 5); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); // Block 6: No change. System::set_block_number(6); + assert!(!Session::broken_validation()); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 6); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 2); @@ -209,6 +217,7 @@ fn staking_eras_work() { // Block 7: Era increment. System::set_block_number(7); Session::check_rotate_session(); + assert_eq!(Session::current_index(), 7); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 4); assert_eq!(Staking::current_era(), 3); diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 1e0b8366f6498..798d7cb3d9cd2 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -40,7 +40,7 @@ extern crate substrate_codec as codec; use runtime_support::{StorageValue, Parameter}; use runtime_support::dispatch::Result; -use runtime_primitives::traits::{Executable, MaybeEmpty, SimpleArithmetic, As}; +use runtime_primitives::traits::{Executable, MaybeEmpty, SimpleArithmetic, As, Zero}; pub trait Trait: consensus::Trait where ::PublicAux: MaybeEmpty @@ -62,7 +62,7 @@ decl_module! { decl_storage! { trait Store for Module; - pub Now get(now): b"tim:val" => T::Value; + pub Now get(now): b"tim:val" => required T::Value; // The minimum (and advised) period between blocks. pub BlockPeriod get(block_period): b"tim:block_period" => required T::Value; @@ -72,7 +72,7 @@ decl_storage! { impl Module { pub fn get() -> T::Value { - Self::now().expect("This must always exist apart from before the first call to `set`; `set` happens prior to anything else; qed") + Self::now() } /// Set the current time. @@ -84,12 +84,10 @@ impl Module { "Timestamp extrinsic must be at position {} in the block", T::TIMESTAMP_SET_POSITION ); - if let Some(t) = Self::now() { - assert!( - now >= t + Self::block_period(), - "Timestamp but increment by at least between sequential blocks" - ); - } + assert!( + Self::now().is_zero() || now >= Self::now() + Self::block_period(), + "Timestamp but increment by at least between sequential blocks" + ); ::Now::put(now); ::DidUpdate::put(true); Ok(()) @@ -129,7 +127,8 @@ impl runtime_primitives::BuildStorage for GenesisConfig use runtime_io::twox_128; use codec::Slicable; map![ - twox_128(>::key()).to_vec() => self.period.encode() + twox_128(>::key()).to_vec() => self.period.encode(), + twox_128(>::key()).to_vec() => T::Value::sa(0).encode() ] } } From 9016bc666c25e7ea3d73ccaca2b3a4548899704e Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 11:44:03 +0200 Subject: [PATCH 08/22] Initial test for reward --- substrate/runtime/staking/src/lib.rs | 7 +++-- substrate/runtime/staking/src/mock.rs | 6 ++-- substrate/runtime/staking/src/tests.rs | 39 +++++++++++++++++++++++++- 3 files changed, 45 insertions(+), 7 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 4121a9174224a..1f8e3dfbe45a3 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -177,7 +177,7 @@ decl_storage! { pub Intentions: b"sta:wil:" => default Vec; // The next value of sessions per era. pub NextSessionsPerEra get(next_sessions_per_era): b"sta:nse" => T::BlockNumber; - // The block number at which the era length last changed. + // The session index at which the era length last changed. pub LastEraLengthChange get(last_era_length_change): b"sta:lec" => default T::BlockNumber; // The next free enumeration set. @@ -498,7 +498,8 @@ impl Module { Self::slash(v, early_era_slash); } } - if ((session_index - Self::last_era_length_change()) % Self::era_length()).is_zero() || !normal_rotation { + println!("{}, {}, {}", session_index, Self::last_era_length_change(), Self::sessions_per_era()); + if ((session_index - Self::last_era_length_change()) % Self::sessions_per_era()).is_zero() || !normal_rotation { Self::new_era(); } } @@ -515,7 +516,7 @@ impl Module { if let Some(next_spe) = Self::next_sessions_per_era() { if next_spe != Self::sessions_per_era() { >::put(&next_spe); - >::put(&>::block_number()); + >::put(&>::current_index()); } } diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index a9f7d1ca7f247..887e77f99e577 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -85,7 +85,7 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 t.extend(GenesisConfig::{ sessions_per_era, current_era, - balances: if monied { vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor)] } else { vec![] }, + balances: if monied { vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor), (10, balance_factor), (20, balance_factor)] } else { vec![(10, balance_factor), (20, balance_factor)] }, intentions: vec![], validator_count: 2, bonding_duration: 3, @@ -96,8 +96,8 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, - session_reward: 0, - early_era_slash: 0, + session_reward: if monied { 10 } else { 0 }, + early_era_slash: if monied { 10 } else { 0 }, }.build_storage()); t.extend(timestamp::GenesisConfig::{ period: 5 diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index 9a022f7eb1022..266aa24b9c251 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -20,7 +20,44 @@ use super::*; use runtime_io::with_externalities; -use mock::*; +use mock::{Session, Staking, System, Test, new_test_ext}; + +#[test] +fn reward_should_work() { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + assert_eq!(Staking::voting_balance(&10), 1); + assert_ok!(Staking::reward(&10, 10)); + assert_eq!(Staking::voting_balance(&10), 11); + }); +} + +#[test] +fn rewards_should_work() { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + assert_eq!(Staking::era_length(), 9); + assert_eq!(Staking::sessions_per_era(), 3); + assert_eq!(Staking::last_era_length_change(), 0); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 0); + assert_eq!(Staking::voting_balance(&10), 1); + + System::set_block_number(3); + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 1); + assert_eq!(Staking::voting_balance(&10), 11); + System::set_block_number(6); + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 2); + assert_eq!(Staking::voting_balance(&10), 21); + System::set_block_number(9); + Session::check_rotate_session(); + assert_eq!(Session::current_index(), 0); + assert_eq!(Staking::current_era(), 1); + assert_eq!(Staking::voting_balance(&10), 31); + }); +} #[test] fn indexing_lookup_should_work() { From f679c22574c14c5ba73e09cc2f41176bfd7f812a Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 12:34:03 +0200 Subject: [PATCH 09/22] Fix test --- substrate/runtime/staking/src/lib.rs | 1 - substrate/runtime/staking/src/tests.rs | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 1f8e3dfbe45a3..4c7deb91dfdc8 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -498,7 +498,6 @@ impl Module { Self::slash(v, early_era_slash); } } - println!("{}, {}, {}", session_index, Self::last_era_length_change(), Self::sessions_per_era()); if ((session_index - Self::last_era_length_change()) % Self::sessions_per_era()).is_zero() || !normal_rotation { Self::new_era(); } diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index 266aa24b9c251..abfc374149eb8 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -53,8 +53,8 @@ fn rewards_should_work() { assert_eq!(Staking::voting_balance(&10), 21); System::set_block_number(9); Session::check_rotate_session(); - assert_eq!(Session::current_index(), 0); assert_eq!(Staking::current_era(), 1); + assert_eq!(Session::current_index(), 3); assert_eq!(Staking::voting_balance(&10), 31); }); } From 4fb942ff35067f5e55daac7b34d5c8f6d02006e8 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 12:43:43 +0200 Subject: [PATCH 10/22] Tests for slashing --- substrate/runtime/staking/src/mock.rs | 1 + substrate/runtime/staking/src/tests.rs | 35 +++++++++++++++++++++++--- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 887e77f99e577..ae2883961d9e4 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -107,4 +107,5 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 pub type System = system::Module; pub type Session = session::Module; +pub type Timestamp = timestamp::Module; pub type Staking = Module; diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index abfc374149eb8..c5883332c8144 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -20,7 +20,7 @@ use super::*; use runtime_io::with_externalities; -use mock::{Session, Staking, System, Test, new_test_ext}; +use mock::{Session, Staking, System, Timestamp, Test, new_test_ext}; #[test] fn reward_should_work() { @@ -42,20 +42,49 @@ fn rewards_should_work() { assert_eq!(Staking::voting_balance(&10), 1); System::set_block_number(3); + Timestamp::set_timestamp(15); // on time. Session::check_rotate_session(); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 1); assert_eq!(Staking::voting_balance(&10), 11); System::set_block_number(6); + Timestamp::set_timestamp(31); // a little late Session::check_rotate_session(); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 2); - assert_eq!(Staking::voting_balance(&10), 21); + assert_eq!(Staking::voting_balance(&10), 20); // less reward System::set_block_number(9); + Timestamp::set_timestamp(50); // very late Session::check_rotate_session(); assert_eq!(Staking::current_era(), 1); assert_eq!(Session::current_index(), 3); - assert_eq!(Staking::voting_balance(&10), 31); + assert_eq!(Staking::voting_balance(&10), 27); // much less reward + }); +} + +#[test] +fn slashing_should_work() { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + assert_eq!(Staking::era_length(), 9); + assert_eq!(Staking::sessions_per_era(), 3); + assert_eq!(Staking::last_era_length_change(), 0); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 0); + assert_eq!(Staking::voting_balance(&10), 1); + + System::set_block_number(3); + Timestamp::set_timestamp(15); // on time. + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 1); + assert_eq!(Staking::voting_balance(&10), 11); + + System::set_block_number(4); + Timestamp::set_timestamp(100); // way too late - early exit. + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 1); + assert_eq!(Session::current_index(), 2); + assert_eq!(Staking::voting_balance(&10), 1); }); } From 1ac443b1803d5948f4f82978d18ee627d9231fd8 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 15:19:12 +0200 Subject: [PATCH 11/22] Update/fix preset configs --- polkadot/cli/src/preset_config.rs | 34 +++++++++++++++++-------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/polkadot/cli/src/preset_config.rs b/polkadot/cli/src/preset_config.rs index f99824d8ce554..5bf44648d92a4 100644 --- a/polkadot/cli/src/preset_config.rs +++ b/polkadot/cli/src/preset_config.rs @@ -98,8 +98,8 @@ impl PresetConfig { system: None, session: Some(SessionConfig { validators: initial_authorities.iter().cloned().map(Into::into).collect(), - session_length: 720, // that's 1 hour per session. - broken_percent_late: 30, + session_length: 60, // that's 5 minutes per session. + broken_percent_late: 50, }), staking: Some(StakingConfig { current_era: 0, @@ -111,30 +111,32 @@ impl PresetConfig { creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + early_era_slash: 10000, + session_reward: 100, balances: endowed_accounts.iter().map(|&k|(k, 1u128 << 60)).collect(), validator_count: 12, - sessions_per_era: 24, // 24 hours per era. - bonding_duration: 90, // 90 days per bond. + sessions_per_era: 12, // 1 hour per era + bonding_duration: 24, // 1 day per bond. }), democracy: Some(DemocracyConfig { - launch_period: 120 * 24 * 14, // 2 weeks per public referendum - voting_period: 120 * 24 * 28, // 4 weeks to discuss & vote on an active referendum - minimum_deposit: 1000, // 1000 as the minimum deposit for a referendum + launch_period: 12 * 60 * 24, // 1 day per public referendum + voting_period: 12 * 60 * 24 * 3, // 3 days to discuss & vote on an active referendum + minimum_deposit: 5000, // 12000 as the minimum deposit for a referendum }), council: Some(CouncilConfig { active_council: vec![], - candidacy_bond: 1000, // 1000 to become a council candidate - voter_bond: 100, // 100 down to vote for a candidate + candidacy_bond: 5000, // 5000 to become a council candidate + voter_bond: 1000, // 1000 down to vote for a candidate present_slash_per_voter: 1, // slash by 1 per voter for an invalid presentation. - carry_count: 24, // carry over the 24 runners-up to the next council election - presentation_duration: 120 * 24, // one day for presenting winners. - approval_voting_period: 7 * 120 * 24, // one week period between possible council elections. - term_duration: 180 * 120 * 24, // 180 day term duration for the council. + carry_count: 6, // carry over the 6 runners-up to the next council election + presentation_duration: 12 * 60 * 24, // one day for presenting winners. + approval_voting_period: 12 * 60 * 24 * 2, // two days period between possible council elections. + term_duration: 12 * 60 * 24 * 24, // 24 day term duration for the council. desired_seats: 0, // start with no council: we'll raise this once the stake has been dispersed a bit. inactive_grace_period: 1, // one addition vote should go by before an inactive voter can be reaped. - cooloff_period: 90 * 120 * 24, // 90 day cooling off period if council member vetoes a proposal. - voting_period: 7 * 120 * 24, // 7 day voting period for council members. + cooloff_period: 12 * 60 * 24 * 4, // 4 day cooling off period if council member vetoes a proposal. + voting_period: 12 * 60 * 24, // 1 day voting period for council members. }), parachains: Some(Default::default()), timestamp: Some(TimestampConfig { @@ -183,6 +185,8 @@ impl PresetConfig { validator_count: 2, sessions_per_era: 5, bonding_duration: 2, + early_era_slash: 0, + session_reward: 0, }), democracy: Some(DemocracyConfig { launch_period: 9, From 31284c3eea27907f76970a01f13aa69467ea61f7 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 16:10:26 +0200 Subject: [PATCH 12/22] Fix some tests. --- demo/cli/src/lib.rs | 2 ++ demo/executor/src/lib.rs | 7 +++++-- polkadot/api/src/full.rs | 1 + polkadot/runtime/src/parachains.rs | 2 ++ substrate/runtime/council/src/lib.rs | 4 ++++ substrate/runtime/democracy/src/lib.rs | 25 +++++++++++++++---------- substrate/runtime/executive/src/lib.rs | 3 +++ substrate/runtime/timestamp/src/lib.rs | 5 ++--- 8 files changed, 34 insertions(+), 15 deletions(-) diff --git a/demo/cli/src/lib.rs b/demo/cli/src/lib.rs index 52a95387850f3..0e64fa29fee5b 100644 --- a/demo/cli/src/lib.rs +++ b/demo/cli/src/lib.rs @@ -126,6 +126,8 @@ pub fn run(args: I) -> error::Result<()> where validator_count: 12, sessions_per_era: 24, // 24 hours per era. bonding_duration: 90, // 90 days per bond. + early_era_slash: 10000, + session_reward: 100, }), democracy: Some(DemocracyConfig { launch_period: 120 * 24 * 14, // 2 weeks per public referendum diff --git a/demo/executor/src/lib.rs b/demo/executor/src/lib.rs index fdb39a210a939..76727240904ad 100644 --- a/demo/executor/src/lib.rs +++ b/demo/executor/src/lib.rs @@ -185,6 +185,7 @@ mod tests { session: Some(SessionConfig { session_length: 2, validators: vec![One.to_raw_public().into(), Two.to_raw_public().into(), three], + broken_percent_late: 100, }), staking: Some(StakingConfig { sessions_per_era: 2, @@ -200,6 +201,8 @@ mod tests { creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + early_era_slash: 0, + session_reward: 0, }), democracy: Some(Default::default()), council: Some(Default::default()), @@ -239,7 +242,7 @@ mod tests { construct_block( 1, [69u8; 32].into(), - hex!("00fa0defe8b76a8e6bf536a9d685271b9dcd8cf097d9bd139ea2525b62014061").into(), + hex!("786071057714fdd6ea4595eecd4a0f327908d65f462ff5bca0f700fafce588c9").into(), vec![BareExtrinsic { signed: alice(), index: 0, @@ -252,7 +255,7 @@ mod tests { construct_block( 2, block1().1, - hex!("edea2f16095ee40d52ee18a8f9ee5d5d96e30429ef914ee2b75b406681fcd9b5").into(), + hex!("a7f1259cc6b2fa758542f2996e737f8f0de9dec3a9d32641da348178f48b9fc2").into(), vec![ BareExtrinsic { signed: bob(), diff --git a/polkadot/api/src/full.rs b/polkadot/api/src/full.rs index a445dc3605061..66f6ceedcd090 100644 --- a/polkadot/api/src/full.rs +++ b/polkadot/api/src/full.rs @@ -216,6 +216,7 @@ mod tests { session: Some(SessionConfig { validators: validators(), session_length: 100, + broken_percent_late: 100, }), council: Some(Default::default()), democracy: Some(Default::default()), diff --git a/polkadot/runtime/src/parachains.rs b/polkadot/runtime/src/parachains.rs index 01593accf0618..e0b127e5537a3 100644 --- a/polkadot/runtime/src/parachains.rs +++ b/polkadot/runtime/src/parachains.rs @@ -254,6 +254,7 @@ mod tests { } impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = (); } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; @@ -276,6 +277,7 @@ mod tests { t.extend(session::GenesisConfig::{ session_length: 1000, validators: vec![1, 2, 3, 4, 5, 6, 7, 8], + broken_percent_late: 100, }.build_storage()); t.extend(GenesisConfig::{ parachains: parachains, diff --git a/substrate/runtime/council/src/lib.rs b/substrate/runtime/council/src/lib.rs index 0052981f1acc0..2c13d5d808617 100644 --- a/substrate/runtime/council/src/lib.rs +++ b/substrate/runtime/council/src/lib.rs @@ -648,6 +648,7 @@ mod tests { } impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = staking::Module; } impl staking::Trait for Test { type Balance = u64; @@ -672,6 +673,7 @@ mod tests { t.extend(session::GenesisConfig::{ session_length: 1, //??? or 2? validators: vec![10, 20], + broken_percent_late: 0, }.build_storage()); t.extend(staking::GenesisConfig::{ sessions_per_era: 1, @@ -687,6 +689,8 @@ mod tests { creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + early_era_slash: 0, + session_reward: 0, }.build_storage()); t.extend(democracy::GenesisConfig::{ launch_period: 1, diff --git a/substrate/runtime/democracy/src/lib.rs b/substrate/runtime/democracy/src/lib.rs index 3eb7d77dcdf5b..66e8c7b8c5da5 100644 --- a/substrate/runtime/democracy/src/lib.rs +++ b/substrate/runtime/democracy/src/lib.rs @@ -358,6 +358,7 @@ mod tests { use primitives::BuildStorage; use primitives::traits::{HasPublicAux, Identity, BlakeTwo256}; use primitives::testing::{Digest, Header}; + use session::OnSessionChange; impl_outer_dispatch! { #[derive(Debug, Clone, Eq, Serialize, Deserialize, PartialEq)] @@ -389,6 +390,7 @@ mod tests { } impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = staking::Module; } impl staking::Trait for Test { type Balance = u64; @@ -412,6 +414,7 @@ mod tests { t.extend(session::GenesisConfig::{ session_length: 1, //??? or 2? validators: vec![10, 20], + broken_percent_late: 100, }.build_storage()); t.extend(staking::GenesisConfig::{ sessions_per_era: 1, @@ -427,6 +430,8 @@ mod tests { creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + early_era_slash: 0, + session_reward: 0, }.build_storage()); t.extend(GenesisConfig::{ launch_period: 1, @@ -488,7 +493,7 @@ mod tests { assert_eq!(Democracy::tally(r), (10, 0)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 2); }); @@ -566,19 +571,19 @@ mod tests { System::set_block_number(1); assert_ok!(Democracy::vote(&1, 0, true)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::bonding_duration(), 4); System::set_block_number(2); assert_ok!(Democracy::vote(&1, 1, true)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::bonding_duration(), 3); System::set_block_number(3); assert_ok!(Democracy::vote(&1, 2, true)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::bonding_duration(), 2); }); } @@ -599,7 +604,7 @@ mod tests { assert_eq!(Democracy::tally(r), (10, 0)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 2); }); @@ -614,7 +619,7 @@ mod tests { assert_ok!(Democracy::cancel_referendum(r)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 1); }); @@ -632,7 +637,7 @@ mod tests { assert_eq!(Democracy::tally(r), (0, 10)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 1); }); @@ -653,7 +658,7 @@ mod tests { assert_eq!(Democracy::tally(r), (110, 100)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 2); }); @@ -670,7 +675,7 @@ mod tests { assert_eq!(Democracy::tally(r), (60, 50)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 1); }); @@ -691,7 +696,7 @@ mod tests { assert_eq!(Democracy::tally(r), (100, 50)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - Staking::check_new_era(); + Staking::on_session_change(true, 0); assert_eq!(Staking::era_length(), 2); }); diff --git a/substrate/runtime/executive/src/lib.rs b/substrate/runtime/executive/src/lib.rs index 4c8b76b7e15af..e0640640d0eef 100644 --- a/substrate/runtime/executive/src/lib.rs +++ b/substrate/runtime/executive/src/lib.rs @@ -252,6 +252,7 @@ mod tests { } impl session::Trait for Test { type ConvertAccountIdToSessionKey = Identity; + type OnSessionChange = staking::Module; } impl staking::Trait for Test { type Balance = u64; @@ -283,6 +284,8 @@ mod tests { creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, + early_era_slash: 0, + session_reward: 0, }.build_storage()); let xt = primitives::testing::TestXt((1, 0, Call::transfer(2.into(), 69))); with_externalities(&mut t, || { diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 798d7cb3d9cd2..668fa61b56a84 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -115,7 +115,7 @@ pub struct GenesisConfig { impl Default for GenesisConfig { fn default() -> Self { GenesisConfig { - period: T::Value::default(), + period: T::Value::sa(5), } } } @@ -138,7 +138,6 @@ mod tests { use super::*; use runtime_io::with_externalities; - use runtime_support::storage::StorageValue; use substrate_primitives::H256; use runtime_primitives::BuildStorage; use runtime_primitives::traits::{HasPublicAux, BlakeTwo256}; @@ -197,7 +196,7 @@ mod tests { #[should_panic(expected = "Timestamp but increment by at least between sequential blocks")] fn block_period_is_enforced() { let mut t = system::GenesisConfig::::default().build_storage(); - t.extend(GenesisConfig:: { now: 42, period: 5 }.build_storage()); + t.extend(GenesisConfig:: { period: 5 }.build_storage()); with_externalities(&mut t, || { Timestamp::set_timestamp(42); From bc9ad041b38f3933c49c5169c1c9c651fb122114 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 17:12:05 +0200 Subject: [PATCH 13/22] Fix some staking tests --- substrate/runtime/executive/src/lib.rs | 4 +- substrate/runtime/staking/src/mock.rs | 14 +++++-- substrate/runtime/staking/src/tests.rs | 56 ++++++++++++++------------ 3 files changed, 43 insertions(+), 31 deletions(-) diff --git a/substrate/runtime/executive/src/lib.rs b/substrate/runtime/executive/src/lib.rs index e0640640d0eef..512cc38ee90d2 100644 --- a/substrate/runtime/executive/src/lib.rs +++ b/substrate/runtime/executive/src/lib.rs @@ -312,7 +312,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("b09827bc78c2af6e6c326bb38076a50fc29f325ffe35e0f6e4a274a2231da304").into(), + state_root: hex!("b47a0bfc249af6e00c71a45fcd5619c47b6f71cb4d5c62ab7bf1fe9601d5efc4").into(), extrinsics_root: hex!("56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421").into(), digest: Digest { logs: vec![], }, }, @@ -346,7 +346,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("b09827bc78c2af6e6c326bb38076a50fc29f325ffe35e0f6e4a274a2231da304").into(), + state_root: hex!("b47a0bfc249af6e00c71a45fcd5619c47b6f71cb4d5c62ab7bf1fe9601d5efc4").into(), extrinsics_root: [0u8; 32].into(), digest: Digest { logs: vec![], }, }, diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index ae2883961d9e4..45833446e201d 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -66,7 +66,7 @@ impl Trait for Test { type AccountIndex = u64; } -pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64, current_era: u64, monied: bool) -> runtime_io::TestExternalities { +pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64, current_era: u64, monied: bool, reward: u64) -> runtime_io::TestExternalities { let mut t = system::GenesisConfig::::default().build_storage(); let balance_factor = if ext_deposit > 0 { 256 @@ -85,7 +85,15 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 t.extend(GenesisConfig::{ sessions_per_era, current_era, - balances: if monied { vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor), (10, balance_factor), (20, balance_factor)] } else { vec![(10, balance_factor), (20, balance_factor)] }, + balances: if monied { + if reward > 0 { + vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor), (10, balance_factor), (20, balance_factor)] + } else { + vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor)] + } + } else { + vec![(10, balance_factor), (20, balance_factor)] + }, intentions: vec![], validator_count: 2, bonding_duration: 3, @@ -96,7 +104,7 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 creation_fee: 0, contract_fee: 0, reclaim_rebate: 0, - session_reward: if monied { 10 } else { 0 }, + session_reward: reward, early_era_slash: if monied { 10 } else { 0 }, }.build_storage()); t.extend(timestamp::GenesisConfig::{ diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index c5883332c8144..cf419404f652d 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -24,7 +24,7 @@ use mock::{Session, Staking, System, Timestamp, Test, new_test_ext}; #[test] fn reward_should_work() { - with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true, 10), || { assert_eq!(Staking::voting_balance(&10), 1); assert_ok!(Staking::reward(&10, 10)); assert_eq!(Staking::voting_balance(&10), 11); @@ -33,7 +33,7 @@ fn reward_should_work() { #[test] fn rewards_should_work() { - with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true, 10), || { assert_eq!(Staking::era_length(), 9); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 0); @@ -64,7 +64,7 @@ fn rewards_should_work() { #[test] fn slashing_should_work() { - with_externalities(&mut new_test_ext(0, 3, 3, 0, true), || { + with_externalities(&mut new_test_ext(0, 3, 3, 0, true, 10), || { assert_eq!(Staking::era_length(), 9); assert_eq!(Staking::sessions_per_era(), 3); assert_eq!(Staking::last_era_length_change(), 0); @@ -90,7 +90,7 @@ fn slashing_should_work() { #[test] fn indexing_lookup_should_work() { - with_externalities(&mut new_test_ext(10, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(10, 1, 2, 0, true, 0), || { assert_eq!(Staking::lookup_index(0), Some(1)); assert_eq!(Staking::lookup_index(1), Some(2)); assert_eq!(Staking::lookup_index(2), Some(3)); @@ -101,7 +101,7 @@ fn indexing_lookup_should_work() { #[test] fn default_indexing_on_new_accounts_should_work() { - with_externalities(&mut new_test_ext(10, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(10, 1, 2, 0, true, 0), || { assert_eq!(Staking::lookup_index(4), None); assert_ok!(Staking::transfer(&1, 5.into(), 10)); assert_eq!(Staking::lookup_index(4), Some(5)); @@ -110,7 +110,7 @@ fn default_indexing_on_new_accounts_should_work() { #[test] fn dust_account_removal_should_work() { - with_externalities(&mut new_test_ext(256 * 10, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(256 * 10, 1, 2, 0, true, 0), || { System::inc_account_nonce(&2); assert_eq!(System::account_nonce(&2), 1); assert_eq!(Staking::voting_balance(&2), 256 * 20); @@ -124,7 +124,7 @@ fn dust_account_removal_should_work() { #[test] fn reclaim_indexing_on_new_accounts_should_work() { - with_externalities(&mut new_test_ext(256 * 1, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(256 * 1, 1, 2, 0, true, 0), || { assert_eq!(Staking::lookup_index(1), Some(2)); assert_eq!(Staking::lookup_index(4), None); assert_eq!(Staking::voting_balance(&2), 256 * 20); @@ -140,7 +140,7 @@ fn reclaim_indexing_on_new_accounts_should_work() { #[test] fn reserved_balance_should_prevent_reclaim_count() { - with_externalities(&mut new_test_ext(256 * 1, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(256 * 1, 1, 2, 0, true, 0), || { System::inc_account_nonce(&2); assert_eq!(Staking::lookup_index(1), Some(2)); assert_eq!(Staking::lookup_index(4), None); @@ -168,7 +168,7 @@ fn reserved_balance_should_prevent_reclaim_count() { #[test] fn staking_should_work() { - with_externalities(&mut new_test_ext(0, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(0, 1, 2, 0, true, 0), || { assert_eq!(Staking::era_length(), 2); assert_eq!(Staking::validator_count(), 2); assert_eq!(Staking::bonding_duration(), 3); @@ -180,22 +180,26 @@ fn staking_should_work() { assert_ok!(Staking::stake(&2)); assert_ok!(Staking::stake(&4)); Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 0); assert_eq!(Session::validators(), vec![10, 20]); // Block 2: New validator set now. System::set_block_number(2); Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 1); assert_eq!(Session::validators(), vec![4, 2]); // Block 3: Unstake highest, introduce another staker. No change yet. System::set_block_number(3); assert_ok!(Staking::stake(&3)); assert_ok!(Staking::unstake(&4)); + assert_eq!(Staking::current_era(), 1); Session::check_rotate_session(); // Block 4: New era - validators change. System::set_block_number(4); Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 2); assert_eq!(Session::validators(), vec![3, 2]); // Block 5: Transfer stake from highest to lowest. No change yet. @@ -223,7 +227,7 @@ fn staking_should_work() { #[test] fn staking_eras_work() { - with_externalities(&mut new_test_ext(0, 1, 2, 0, true), || { + with_externalities(&mut new_test_ext(0, 1, 2, 0, true, 0), || { assert_eq!(Staking::era_length(), 2); assert_eq!(Staking::sessions_per_era(), 2); assert_eq!(Staking::last_era_length_change(), 0); @@ -292,7 +296,7 @@ fn staking_eras_work() { #[test] fn staking_balance_works() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 42); assert_eq!(Staking::free_balance(&1), 42); assert_eq!(Staking::reserved_balance(&1), 0); @@ -305,7 +309,7 @@ fn staking_balance_works() { #[test] fn staking_balance_transfer_works() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::transfer(&1, 2.into(), 69)); assert_eq!(Staking::voting_balance(&1), 42); @@ -315,7 +319,7 @@ fn staking_balance_transfer_works() { #[test] fn staking_balance_transfer_when_bonded_should_not_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::stake(&1)); assert_noop!(Staking::transfer(&1, 2.into(), 69), "bondage too high to send value"); @@ -324,7 +328,7 @@ fn staking_balance_transfer_when_bonded_should_not_work() { #[test] fn reserving_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_eq!(Staking::voting_balance(&1), 111); @@ -341,7 +345,7 @@ fn reserving_balance_should_work() { #[test] fn staking_balance_transfer_when_reserved_should_not_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 69)); assert_noop!(Staking::transfer(&1, 2.into(), 69), "balance too low to send value"); @@ -350,7 +354,7 @@ fn staking_balance_transfer_when_reserved_should_not_work() { #[test] fn deducting_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 69)); assert_eq!(Staking::free_balance(&1), 42); @@ -359,7 +363,7 @@ fn deducting_balance_should_work() { #[test] fn deducting_balance_when_bonded_should_not_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); >::insert(1, 2); System::set_block_number(1); @@ -370,7 +374,7 @@ fn deducting_balance_when_bonded_should_not_work() { #[test] fn refunding_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 42); >::insert(1, 69); Staking::unreserve(&1, 69); @@ -381,7 +385,7 @@ fn refunding_balance_should_work() { #[test] fn slashing_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 69)); assert!(Staking::slash(&1, 69).is_none()); @@ -392,7 +396,7 @@ fn slashing_balance_should_work() { #[test] fn slashing_incomplete_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 42); assert_ok!(Staking::reserve(&1, 21)); assert!(Staking::slash(&1, 69).is_some()); @@ -403,7 +407,7 @@ fn slashing_incomplete_balance_should_work() { #[test] fn unreserving_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 111)); Staking::unreserve(&1, 42); @@ -414,7 +418,7 @@ fn unreserving_balance_should_work() { #[test] fn slashing_reserved_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 111)); assert!(Staking::slash_reserved(&1, 42).is_none()); @@ -425,7 +429,7 @@ fn slashing_reserved_balance_should_work() { #[test] fn slashing_incomplete_reserved_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 42)); assert!(Staking::slash_reserved(&1, 69).is_some()); @@ -436,7 +440,7 @@ fn slashing_incomplete_reserved_balance_should_work() { #[test] fn transferring_reserved_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 110); >::insert(2, 1); assert_ok!(Staking::reserve(&1, 110)); @@ -450,7 +454,7 @@ fn transferring_reserved_balance_should_work() { #[test] fn transferring_reserved_balance_to_nonexistent_should_fail() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 111); assert_ok!(Staking::reserve(&1, 111)); assert_noop!(Staking::transfer_reserved(&1, &2, 42), "beneficiary account must pre-exist"); @@ -459,7 +463,7 @@ fn transferring_reserved_balance_to_nonexistent_should_fail() { #[test] fn transferring_incomplete_reserved_balance_should_work() { - with_externalities(&mut new_test_ext(0, 1, 3, 1, false), || { + with_externalities(&mut new_test_ext(0, 1, 3, 1, false, 0), || { >::insert(1, 110); >::insert(2, 1); assert_ok!(Staking::reserve(&1, 41)); From bd1b4a4402c25522ae96da03f233b7bfe02153f4 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 17:20:42 +0200 Subject: [PATCH 14/22] Minor fix --- substrate/runtime/council/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/substrate/runtime/council/src/lib.rs b/substrate/runtime/council/src/lib.rs index 2c13d5d808617..2a483bd5667b5 100644 --- a/substrate/runtime/council/src/lib.rs +++ b/substrate/runtime/council/src/lib.rs @@ -673,7 +673,7 @@ mod tests { t.extend(session::GenesisConfig::{ session_length: 1, //??? or 2? validators: vec![10, 20], - broken_percent_late: 0, + broken_percent_late: 100, }.build_storage()); t.extend(staking::GenesisConfig::{ sessions_per_era: 1, From cdfa86b4ab891e2228525405aee47a4b623767b2 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 17:23:46 +0200 Subject: [PATCH 15/22] minor cleanups --- substrate/runtime/session/src/lib.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/substrate/runtime/session/src/lib.rs b/substrate/runtime/session/src/lib.rs index 6f885cd677f09..8155acdf4afc5 100644 --- a/substrate/runtime/session/src/lib.rs +++ b/substrate/runtime/session/src/lib.rs @@ -194,12 +194,6 @@ impl Module { /// due to rotate at the end of this block, then it will return 0. If the just began, then /// it will return `Self::length() - 1`. pub fn blocks_remaining() -> T::BlockNumber { - // 2 0 2 0 2 0 0 - // 3 2 3 2 0 1 1 - // 4 - - 1 1 2 2 - // 5 - - 0 2 3 0 - // 6 5 - 2 0 4 1 - // 7 - - 1 1 5 2 let length = Self::length(); let length_minus_1 = length - One::one(); let block_number = >::block_number(); From 3ce3ca7b835bba19fcdbe3d3fff8d5b9421361db Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 19:38:50 +0200 Subject: [PATCH 16/22] Nominating. --- substrate/runtime/staking/src/lib.rs | 80 ++++++++++++++++++++++++-- substrate/runtime/staking/src/tests.rs | 4 +- 2 files changed, 76 insertions(+), 8 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 4c7deb91dfdc8..24d704ff23c82 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -128,7 +128,9 @@ decl_module! { pub enum Call where aux: T::PublicAux { fn transfer(aux, dest: RawAddress, value: T::Balance) -> Result = 0; fn stake(aux) -> Result = 1; - fn unstake(aux) -> Result = 2; + fn unstake(aux, index: u32) -> Result = 2; + fn nominate(aux, target: RawAddress) -> Result = 3; + fn unnominate(aux, target_index: u32) -> Result = 4; } #[cfg_attr(feature = "std", derive(Serialize, Deserialize))] @@ -150,6 +152,7 @@ decl_storage! { // The length of a staking era in sessions. pub SessionsPerEra get(sessions_per_era): b"sta:spe" => required T::BlockNumber; // The total amount of stake on the system. + // TODO: this doesn't actually track total stake yet - it should do. pub TotalStake get(total_stake): b"sta:tot" => required T::Balance; // The fee to be paid for making a transaction; the base. pub TransactionBaseFee get(transaction_base_fee): b"sta:basefee" => required T::Balance; @@ -165,7 +168,6 @@ decl_storage! { pub CreationFee get(creation_fee): b"sta:creation_fee" => required T::Balance; // The fee required to create a contract. At least as big as ReclaimRebate. pub ContractFee get(contract_fee): b"sta:contract_fee" => required T::Balance; - // Maximum reward, per validator, that is provided per acceptable session. pub SessionReward get(session_reward): b"sta:session_reward" => required T::Balance; // Slash, per validator that is taken per abnormal era end. @@ -174,7 +176,11 @@ decl_storage! { // The current era index. pub CurrentEra get(current_era): b"sta:era" => required T::BlockNumber; // All the accounts with a desire to stake. - pub Intentions: b"sta:wil:" => default Vec; + pub Intentions get(intentions): b"sta:wil:" => default Vec; + // All nominator -> nominee relationships. + pub Nominating get(nominating): b"sta:nominating" => map [ T::AccountId => T::AccountId ]; + // Nominators for a particular account. + pub NominatorsFor get(nominators_for): b"sta:nominators_for" => default map [ T::AccountId => Vec ]; // The next value of sessions per era. pub NextSessionsPerEra get(next_sessions_per_era): b"sta:nse" => T::BlockNumber; // The session index at which the era length last changed. @@ -310,15 +316,72 @@ impl Module { /// Retract the desire to stake for the transactor. /// /// Effects will be felt at the beginning of the next era. - fn unstake(aux: &T::PublicAux) -> Result { + fn unstake(aux: &T::PublicAux, position: u32) -> Result { + let aux = aux.ref_into(); + let position = position as usize; let mut intentions = >::get(); - let position = intentions.iter().position(|t| t == aux.ref_into()).ok_or("Cannot unstake if not already staked.")?; +// let position = intentions.iter().position(|t| t == aux.ref_into()).ok_or("Cannot unstake if not already staked.")?; + if intentions.get(position) != Some(aux) { + return Err("Invalid index") + } intentions.swap_remove(position); >::put(intentions); >::insert(aux.ref_into(), Self::current_era() + Self::bonding_duration()); Ok(()) } + fn nominate(aux: &T::PublicAux, target: RawAddress) -> Result { + let target = Self::lookup(target)?; + let aux = aux.ref_into(); + + if Self::nominating(aux).is_some() { + // already nominating someone - denominate first. + return Err("Cannot nominate when already nominating"); + } + + // update nominators_for + let mut t = Self::nominators_for(&target); + t.push(aux.clone()); + >::insert(&target, t); + + // update nominating + >::insert(aux, &target); + + // Update bondage + >::insert(aux.ref_into(), T::BlockNumber::max_value()); + + Ok(()) + } + + /// Will panic if called when source isn't currently nominating target. + /// Updates Nominating, NominatorsFor and NominationBalance. + fn unnominate(aux: &T::PublicAux, target_index: u32) -> Result { + let source = aux.ref_into(); + let target_index = target_index as usize; + + let target = >::get(source).ok_or("Account must be nominating")?; + + let mut t = Self::nominators_for(&target); + if t.get(target_index) != Some(source) { + return Err("Invalid target index") + } + + // Ok - all valid. + + // update nominators_for + t.swap_remove(target_index); + >::insert(&target, t); + + // update nominating + >::remove(source); + + // update bondage + >::insert(aux.ref_into(), Self::current_era() + Self::bonding_duration()); + Ok(()) + } + + // TODO: force_unnominate and max_nominators + // PRIV DISPATCH /// Set the number of sessions in an era. @@ -503,6 +566,10 @@ impl Module { } } + fn nomination_balance(who: &T::AccountId) -> T::Balance { + Self::nominators_for(who).iter().map(Self::voting_balance).fold(Zero::zero(), |acc, x| acc + x) + } + /// The era has changed - enact new staking set. /// /// NOTE: This always happens immediately before a session change to ensure that new validators @@ -523,9 +590,10 @@ impl Module { // combination of validators, then use session::internal::set_validators(). // for now, this just orders would-be stakers by their balances and chooses the top-most // >::get() of them. + // TODO: this is not sound. this should be moved to an off-chain solution mechanism. let mut intentions = >::get() .into_iter() - .map(|v| (Self::voting_balance(&v), v)) + .map(|v| (Self::voting_balance(&v) + Self::nomination_balance(&v), v)) .collect::>(); intentions.sort_unstable_by(|&(ref b1, _), &(ref b2, _)| b2.cmp(&b1)); >::set_validators( diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index cf419404f652d..a9eded3c92dec 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -192,7 +192,7 @@ fn staking_should_work() { // Block 3: Unstake highest, introduce another staker. No change yet. System::set_block_number(3); assert_ok!(Staking::stake(&3)); - assert_ok!(Staking::unstake(&4)); + assert_ok!(Staking::unstake(&4, Staking::intentions().iter().position(|&x| x == 4).unwrap() as u32)); assert_eq!(Staking::current_era(), 1); Session::check_rotate_session(); @@ -214,7 +214,7 @@ fn staking_should_work() { // Block 7: Unstake three. No change yet. System::set_block_number(7); - assert_ok!(Staking::unstake(&3)); + assert_ok!(Staking::unstake(&3, Staking::intentions().iter().position(|&x| x == 3).unwrap() as u32)); Session::check_rotate_session(); assert_eq!(Session::validators(), vec![1, 3]); From c2f95caa02692b6ffada4b24dcfcf42cad0eefc4 Mon Sep 17 00:00:00 2001 From: Gav Date: Mon, 25 Jun 2018 21:07:42 +0200 Subject: [PATCH 17/22] Slash/reward nominators --- substrate/runtime/staking/src/lib.rs | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 24d704ff23c82..bafe903695603 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -185,6 +185,8 @@ decl_storage! { pub NextSessionsPerEra get(next_sessions_per_era): b"sta:nse" => T::BlockNumber; // The session index at which the era length last changed. pub LastEraLengthChange get(last_era_length_change): b"sta:lec" => default T::BlockNumber; + // The current era stake threshold + pub StakeThreshold get(stake_threshold): b"sta:stake_threshold" => required T::Balance; // The next free enumeration set. pub NextEnumSet get(next_enum_set): b"sta:next_enum" => required T::AccountIndex; @@ -552,13 +554,30 @@ impl Module { let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(65536usize); // apply good session reward for v in >::validators().iter() { + let noms = Self::nominators_for(v); + let total = noms.iter().map(Self::voting_balance).fold(Self::voting_balance(v), |acc, x| acc + x); + for n in noms.iter() { + //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large reard * total. + let quant = T::Balance::sa(1usize << 31); + let r = (Self::voting_balance(n) * quant / total) * reward / quant; // avoid overflow by using quant as a denominator. + let _ = Self::reward(n, r); // will never fail as nominator accounts must be created, but even if it did, it's just a missed reward. + } let _ = Self::reward(v, reward); // will never fail as validator accounts must be created, but even if it did, it's just a missed reward. } } else { // slash let early_era_slash = Self::early_era_slash(); for v in >::validators().iter() { - Self::slash(v, early_era_slash); + if let Some(rem) = Self::slash(v, early_era_slash) { + let noms = Self::nominators_for(v); + let total = noms.iter().map(Self::voting_balance).fold(Zero::zero(), |acc, x| acc + x); + for n in noms.iter() { + //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large reard * total. + let quant = T::Balance::sa(1usize << 31); + let s = (Self::voting_balance(n) * quant / total) * rem / quant; // avoid overflow by using quant as a denominator. + let _ = Self::slash(n, s); // will never fail as nominator accounts must be created, but even if it did, it's just a missed reward. + } + } } } if ((session_index - Self::last_era_length_change()) % Self::sessions_per_era()).is_zero() || !normal_rotation { @@ -596,6 +615,13 @@ impl Module { .map(|v| (Self::voting_balance(&v) + Self::nomination_balance(&v), v)) .collect::>(); intentions.sort_unstable_by(|&(ref b1, _), &(ref b2, _)| b2.cmp(&b1)); + + >::put( + if intentions.len() > 0 { + let i = (>::get() as usize).min(intentions.len() - 1); + intentions[i].0.clone() + } else { Zero::zero() } + ); >::set_validators( &intentions.into_iter() .map(|(_, v)| v) From 447538c72fe76e731a6ebd7f8a1e9599cf356cd8 Mon Sep 17 00:00:00 2001 From: Gav Date: Tue, 26 Jun 2018 00:09:01 +0200 Subject: [PATCH 18/22] Tests for nominating + slash/reward --- substrate/runtime/staking/src/lib.rs | 34 +++++---- substrate/runtime/staking/src/mock.rs | 2 +- substrate/runtime/staking/src/tests.rs | 102 ++++++++++++++++++++++++- 3 files changed, 121 insertions(+), 17 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index bafe903695603..5cdcbfec5b6c4 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -181,6 +181,8 @@ decl_storage! { pub Nominating get(nominating): b"sta:nominating" => map [ T::AccountId => T::AccountId ]; // Nominators for a particular account. pub NominatorsFor get(nominators_for): b"sta:nominators_for" => default map [ T::AccountId => Vec ]; + // Nominators for a particular account that is in action right now. + pub CurrentNominatorsFor get(current_nominators_for): b"sta:current_nominators_for" => default map [ T::AccountId => Vec ]; // The next value of sessions per era. pub NextSessionsPerEra get(next_sessions_per_era): b"sta:nse" => T::BlockNumber; // The session index at which the era length last changed. @@ -382,8 +384,6 @@ impl Module { Ok(()) } - // TODO: force_unnominate and max_nominators - // PRIV DISPATCH /// Set the number of sessions in an era. @@ -554,22 +554,22 @@ impl Module { let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(65536usize); // apply good session reward for v in >::validators().iter() { - let noms = Self::nominators_for(v); + let noms = Self::current_nominators_for(v); let total = noms.iter().map(Self::voting_balance).fold(Self::voting_balance(v), |acc, x| acc + x); - for n in noms.iter() { - //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large reard * total. - let quant = T::Balance::sa(1usize << 31); - let r = (Self::voting_balance(n) * quant / total) * reward / quant; // avoid overflow by using quant as a denominator. - let _ = Self::reward(n, r); // will never fail as nominator accounts must be created, but even if it did, it's just a missed reward. + if !total.is_zero() { + let safe_mul_rational = |b| b * reward / total;// TODO: avoid overflow + for n in noms.iter() { + let _ = Self::reward(n, safe_mul_rational(Self::voting_balance(n))); + } + let _ = Self::reward(v, safe_mul_rational(Self::voting_balance(v))); } - let _ = Self::reward(v, reward); // will never fail as validator accounts must be created, but even if it did, it's just a missed reward. } } else { // slash let early_era_slash = Self::early_era_slash(); for v in >::validators().iter() { if let Some(rem) = Self::slash(v, early_era_slash) { - let noms = Self::nominators_for(v); + let noms = Self::current_nominators_for(v); let total = noms.iter().map(Self::voting_balance).fold(Zero::zero(), |acc, x| acc + x); for n in noms.iter() { //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large reard * total. @@ -585,6 +585,7 @@ impl Module { } } + /// Balance of a (potential) validator that includes all nominators. fn nomination_balance(who: &T::AccountId) -> T::Balance { Self::nominators_for(who).iter().map(Self::voting_balance).fold(Zero::zero(), |acc, x| acc + x) } @@ -622,12 +623,17 @@ impl Module { intentions[i].0.clone() } else { Zero::zero() } ); - >::set_validators( - &intentions.into_iter() + let vals = &intentions.into_iter() .map(|(_, v)| v) .take(>::get() as usize) - .collect::>() - ); + .collect::>(); + for v in >::validators().iter() { + >::remove(v); + } + for v in vals.iter() { + >::insert(v, Self::nominators_for(v)); + } + >::set_validators(vals); } fn enum_set_size() -> T::AccountIndex { diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 45833446e201d..e57a5e3f2b0d4 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -105,7 +105,7 @@ pub fn new_test_ext(ext_deposit: u64, session_length: u64, sessions_per_era: u64 contract_fee: 0, reclaim_rebate: 0, session_reward: reward, - early_era_slash: if monied { 10 } else { 0 }, + early_era_slash: if monied { 20 } else { 0 }, }.build_storage()); t.extend(timestamp::GenesisConfig::{ period: 5 diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index a9eded3c92dec..d35ab894a7e0a 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -79,11 +79,18 @@ fn slashing_should_work() { assert_eq!(Session::current_index(), 1); assert_eq!(Staking::voting_balance(&10), 11); - System::set_block_number(4); + System::set_block_number(6); + Timestamp::set_timestamp(30); // on time. + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 2); + assert_eq!(Staking::voting_balance(&10), 21); + + System::set_block_number(7); Timestamp::set_timestamp(100); // way too late - early exit. Session::check_rotate_session(); assert_eq!(Staking::current_era(), 1); - assert_eq!(Session::current_index(), 2); + assert_eq!(Session::current_index(), 3); assert_eq!(Staking::voting_balance(&10), 1); }); } @@ -225,6 +232,97 @@ fn staking_should_work() { }); } +#[test] +fn nominating_and_rewards_should_work() { + with_externalities(&mut new_test_ext(0, 1, 1, 0, true, 10), || { + assert_eq!(Staking::era_length(), 1); + assert_eq!(Staking::validator_count(), 2); + assert_eq!(Staking::bonding_duration(), 3); + assert_eq!(Session::validators(), vec![10, 20]); + + System::set_block_number(1); + assert_ok!(Staking::stake(&1)); + assert_ok!(Staking::stake(&2)); + assert_ok!(Staking::stake(&3)); + assert_ok!(Staking::nominate(&4, 1.into())); + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 1); + assert_eq!(Session::validators(), vec![1, 3]); // 4 + 1, 3 + assert_eq!(Staking::voting_balance(&1), 10); + assert_eq!(Staking::voting_balance(&2), 20); + assert_eq!(Staking::voting_balance(&3), 30); + assert_eq!(Staking::voting_balance(&4), 40); + + System::set_block_number(2); + assert_ok!(Staking::unnominate(&4, 0)); + Session::check_rotate_session(); + assert_eq!(Staking::current_era(), 2); + assert_eq!(Session::validators(), vec![3, 2]); + assert_eq!(Staking::voting_balance(&1), 12); + assert_eq!(Staking::voting_balance(&2), 20); + assert_eq!(Staking::voting_balance(&3), 40); + assert_eq!(Staking::voting_balance(&4), 48); + + System::set_block_number(3); + assert_ok!(Staking::stake(&4)); + assert_ok!(Staking::unstake(&3, Staking::intentions().iter().position(|&x| x == 3).unwrap() as u32)); + assert_ok!(Staking::nominate(&3, 1.into())); + Session::check_rotate_session(); + assert_eq!(Session::validators(), vec![1, 4]); + assert_eq!(Staking::voting_balance(&1), 12); + assert_eq!(Staking::voting_balance(&2), 30); + assert_eq!(Staking::voting_balance(&3), 50); + assert_eq!(Staking::voting_balance(&4), 48); + + System::set_block_number(4); + Session::check_rotate_session(); + assert_eq!(Staking::voting_balance(&1), 13); + assert_eq!(Staking::voting_balance(&2), 30); + assert_eq!(Staking::voting_balance(&3), 58); + assert_eq!(Staking::voting_balance(&4), 58); + }); +} + +#[test] +fn nominating_slashes_should_work() { + with_externalities(&mut new_test_ext(0, 2, 2, 0, true, 10), || { + assert_eq!(Staking::era_length(), 4); + assert_eq!(Staking::validator_count(), 2); + assert_eq!(Staking::bonding_duration(), 3); + assert_eq!(Session::validators(), vec![10, 20]); + + System::set_block_number(2); + Session::check_rotate_session(); + + Timestamp::set_timestamp(15); + System::set_block_number(4); + assert_ok!(Staking::stake(&1)); + assert_ok!(Staking::stake(&3)); + assert_ok!(Staking::nominate(&2, 3.into())); + assert_ok!(Staking::nominate(&4, 1.into())); + Session::check_rotate_session(); + + assert_eq!(Staking::current_era(), 1); + assert_eq!(Session::validators(), vec![1, 3]); // 1 + 4, 3 + 2 + assert_eq!(Staking::voting_balance(&1), 10); + assert_eq!(Staking::voting_balance(&2), 20); + assert_eq!(Staking::voting_balance(&3), 30); + assert_eq!(Staking::voting_balance(&4), 40); + + System::set_block_number(5); + Timestamp::set_timestamp(100); // late + assert_eq!(Session::blocks_remaining(), 1); + assert!(Session::broken_validation()); + Session::check_rotate_session(); + + assert_eq!(Staking::current_era(), 2); + assert_eq!(Staking::voting_balance(&1), 0); + assert_eq!(Staking::voting_balance(&2), 20); + assert_eq!(Staking::voting_balance(&3), 10); + assert_eq!(Staking::voting_balance(&4), 30); + }); +} + #[test] fn staking_eras_work() { with_externalities(&mut new_test_ext(0, 1, 2, 0, true, 0), || { From fe75f9a5b0319373eeb5da91cd2470897f84e5ef Mon Sep 17 00:00:00 2001 From: Gav Date: Tue, 26 Jun 2018 21:17:18 +0200 Subject: [PATCH 19/22] Fix build --- demo/cli/src/lib.rs | 6 +++--- substrate/runtime/staking/src/lib.rs | 11 +++++++++-- substrate/runtime/staking/src/mock.rs | 11 ++--------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/demo/cli/src/lib.rs b/demo/cli/src/lib.rs index 6ad9aebf08033..2c108a432824e 100644 --- a/demo/cli/src/lib.rs +++ b/demo/cli/src/lib.rs @@ -49,9 +49,9 @@ pub mod error; use std::sync::Arc; use demo_primitives::Hash; -use demo_runtime::{GenesisConfig, ConsensusConfig, CouncilConfig, DemocracyConfig, - SessionConfig, StakingConfig, TimestampConfig, BuildStorage}; -use demo_runtime::{Block, BlockId, UncheckedExtrinsic, BuildStorage}; +use demo_runtime::{Block, BlockId, UncheckedExtrinsic, BuildStorage, GenesisConfig, + ConsensusConfig, CouncilConfig, DemocracyConfig, SessionConfig, StakingConfig, + TimestampConfig}; use futures::{Future, Sink, Stream}; struct DummyPool; diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 4c7deb91dfdc8..47d2d65b180b8 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -66,8 +66,6 @@ mod account_db; #[cfg(feature = "std")] pub use genesis_config::GenesisConfig; -#[cfg(feature = "std")] -pub use mock::DummyContractAddressFor; pub use account_db::*; @@ -99,6 +97,15 @@ pub trait ContractAddressFor { fn contract_address_for(code: &[u8], origin: &AccountId) -> AccountId; } +#[cfg(feature = "std")] +pub struct DummyContractAddressFor; +#[cfg(feature = "std")] +impl ContractAddressFor for DummyContractAddressFor { + fn contract_address_for(_code: &[u8], origin: &u64) -> u64 { + origin + 1 + } +} + impl ContractAddressFor for Hashing where Hashing: HashingT, AccountId: Sized + Slicable + From, diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 45833446e201d..9078c6c936257 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -16,7 +16,7 @@ //! Test utilities -#![cfg(feature = "std")] +#![cfg(test)] use primitives::BuildStorage; use primitives::traits::{HasPublicAux, Identity}; @@ -24,14 +24,7 @@ use primitives::testing::{Digest, Header}; use substrate_primitives::H256; use runtime_io; use {GenesisConfig, Module, Trait, consensus, session, system, timestamp}; -use super::ContractAddressFor; - -pub struct DummyContractAddressFor; -impl ContractAddressFor for DummyContractAddressFor { - fn contract_address_for(_code: &[u8], origin: &u64) -> u64 { - origin + 1 - } -} +use super::DummyContractAddressFor; // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, Debug, Serialize, Deserialize)] From 5b92dc13673aa010295fd7f15b583900ff57865e Mon Sep 17 00:00:00 2001 From: Gav Date: Wed, 27 Jun 2018 13:51:31 +0200 Subject: [PATCH 20/22] Rename timestamp::Value -> Moment --- demo/runtime/src/lib.rs | 2 +- polkadot/runtime/src/lib.rs | 2 +- polkadot/runtime/src/parachains.rs | 2 +- substrate/runtime/council/src/lib.rs | 2 +- substrate/runtime/democracy/src/lib.rs | 2 +- substrate/runtime/executive/src/lib.rs | 2 +- substrate/runtime/session/src/lib.rs | 22 +++++++++++----------- substrate/runtime/staking/src/lib.rs | 8 ++++---- substrate/runtime/staking/src/mock.rs | 2 +- substrate/runtime/timestamp/src/lib.rs | 22 +++++++++++----------- 10 files changed, 33 insertions(+), 33 deletions(-) diff --git a/demo/runtime/src/lib.rs b/demo/runtime/src/lib.rs index 48a1974871523..d181b7fce6bf6 100644 --- a/demo/runtime/src/lib.rs +++ b/demo/runtime/src/lib.rs @@ -87,7 +87,7 @@ pub type Consensus = consensus::Module; impl timestamp::Trait for Concrete { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } /// Timestamp module for this concrete runtime. diff --git a/polkadot/runtime/src/lib.rs b/polkadot/runtime/src/lib.rs index d5f9ad925ae1f..8aca5da7678ac 100644 --- a/polkadot/runtime/src/lib.rs +++ b/polkadot/runtime/src/lib.rs @@ -127,7 +127,7 @@ pub type Consensus = consensus::Module; impl timestamp::Trait for Concrete { const TIMESTAMP_SET_POSITION: u32 = TIMESTAMP_SET_POSITION; - type Value = u64; + type Moment = u64; } /// Timestamp module for this concrete runtime. pub type Timestamp = timestamp::Module; diff --git a/polkadot/runtime/src/parachains.rs b/polkadot/runtime/src/parachains.rs index e0b127e5537a3..b12eaa0765106 100644 --- a/polkadot/runtime/src/parachains.rs +++ b/polkadot/runtime/src/parachains.rs @@ -258,7 +258,7 @@ mod tests { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } impl Trait for Test { const SET_POSITION: u32 = 0; diff --git a/substrate/runtime/council/src/lib.rs b/substrate/runtime/council/src/lib.rs index 2a483bd5667b5..7a4ff1ccc83c6 100644 --- a/substrate/runtime/council/src/lib.rs +++ b/substrate/runtime/council/src/lib.rs @@ -660,7 +660,7 @@ mod tests { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } impl Trait for Test {} diff --git a/substrate/runtime/democracy/src/lib.rs b/substrate/runtime/democracy/src/lib.rs index 66e8c7b8c5da5..17b72d68e4095 100644 --- a/substrate/runtime/democracy/src/lib.rs +++ b/substrate/runtime/democracy/src/lib.rs @@ -399,7 +399,7 @@ mod tests { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } impl Trait for Test { type Proposal = Proposal; diff --git a/substrate/runtime/executive/src/lib.rs b/substrate/runtime/executive/src/lib.rs index 512cc38ee90d2..9b69387713f24 100644 --- a/substrate/runtime/executive/src/lib.rs +++ b/substrate/runtime/executive/src/lib.rs @@ -261,7 +261,7 @@ mod tests { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } type TestXt = primitives::testing::TestXt>; diff --git a/substrate/runtime/session/src/lib.rs b/substrate/runtime/session/src/lib.rs index 8155acdf4afc5..fea796a2f0168 100644 --- a/substrate/runtime/session/src/lib.rs +++ b/substrate/runtime/session/src/lib.rs @@ -62,7 +62,7 @@ impl OnSessionChange for () { pub trait Trait: timestamp::Trait { type ConvertAccountIdToSessionKey: Convert; - type OnSessionChange: OnSessionChange; + type OnSessionChange: OnSessionChange; } decl_module! { @@ -89,9 +89,9 @@ decl_storage! { // Current index of the session. pub CurrentIndex get(current_index): b"ses:ind" => required T::BlockNumber; // Timestamp when current session started. - pub CurrentStart get(current_start): b"ses:current_start" => required T::Value; + pub CurrentStart get(current_start): b"ses:current_start" => required T::Moment; // Percent by which the session must necessarily finish late before we early-exit the session. - pub BrokenPercentLate get(broken_percent_late): b"ses:broken_percent_late" => required T::Value; + pub BrokenPercentLate get(broken_percent_late): b"ses:broken_percent_late" => required T::Moment; // Block at which the session length last changed. LastLengthChange: b"ses:llc" => T::BlockNumber; @@ -184,9 +184,9 @@ impl Module { } /// Get the time that should have elapsed over a session if everything was working perfectly. - pub fn ideal_session_duration() -> T::Value { + pub fn ideal_session_duration() -> T::Moment { let block_period = >::block_period(); - let session_length = >::sa(Self::length()); + let session_length = >::sa(Self::length()); session_length * block_period } @@ -208,10 +208,10 @@ impl Module { if blocks_remaining.is_zero() { false } else { - let blocks_remaining = >::sa(blocks_remaining); + let blocks_remaining = >::sa(blocks_remaining); now + blocks_remaining * block_period > Self::current_start() + Self::ideal_session_duration() * - (T::Value::sa(100) + Self::broken_percent_late()) / T::Value::sa(100) + (T::Moment::sa(100) + Self::broken_percent_late()) / T::Moment::sa(100) } } } @@ -226,7 +226,7 @@ impl Executable for Module { pub struct GenesisConfig { pub session_length: T::BlockNumber, pub validators: Vec, - pub broken_percent_late: T::Value, + pub broken_percent_late: T::Moment, } #[cfg(any(feature = "std", test))] @@ -236,7 +236,7 @@ impl Default for GenesisConfig { GenesisConfig { session_length: T::BlockNumber::sa(1000), validators: vec![], - broken_percent_late: T::Value::sa(30), + broken_percent_late: T::Moment::sa(30), } } } @@ -251,7 +251,7 @@ impl primitives::BuildStorage for GenesisConfig map![ twox_128(>::key()).to_vec() => self.session_length.encode(), twox_128(>::key()).to_vec() => T::BlockNumber::sa(0).encode(), - twox_128(>::key()).to_vec() => T::Value::zero().encode(), + twox_128(>::key()).to_vec() => T::Moment::zero().encode(), twox_128(>::key()).to_vec() => self.validators.encode(), twox_128(>::key()).to_vec() => self.broken_percent_late.encode() ] @@ -287,7 +287,7 @@ mod tests { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } impl Trait for Test { type ConvertAccountIdToSessionKey = Identity; diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 47d2d65b180b8..3a1bdf60bb088 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -486,13 +486,13 @@ impl Module { /// Session has just changed. We need to determine whether we pay a reward, slash and/or /// move to a new era. - fn new_session(normal_rotation: bool, actual_elapsed: T::Value) { + fn new_session(normal_rotation: bool, actual_elapsed: T::Moment) { let session_index = >::current_index(); if normal_rotation { // reward let ideal_elapsed = >::ideal_session_duration(); - let percent: usize = (T::Value::sa(65536usize) * ideal_elapsed.clone() / actual_elapsed.max(ideal_elapsed)).as_(); + let percent: usize = (T::Moment::sa(65536usize) * ideal_elapsed.clone() / actual_elapsed.max(ideal_elapsed)).as_(); let reward = Self::session_reward() * T::Balance::sa(percent) / T::Balance::sa(65536usize); // apply good session reward for v in >::validators().iter() { @@ -752,8 +752,8 @@ impl Executable for Module { } } -impl OnSessionChange for Module { - fn on_session_change(normal_rotation: bool, elapsed: T::Value) { +impl OnSessionChange for Module { + fn on_session_change(normal_rotation: bool, elapsed: T::Moment) { Self::new_session(normal_rotation, elapsed); } } diff --git a/substrate/runtime/staking/src/mock.rs b/substrate/runtime/staking/src/mock.rs index 9078c6c936257..2a6e622e78f3d 100644 --- a/substrate/runtime/staking/src/mock.rs +++ b/substrate/runtime/staking/src/mock.rs @@ -51,7 +51,7 @@ impl session::Trait for Test { } impl timestamp::Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } impl Trait for Test { type Balance = u64; diff --git a/substrate/runtime/timestamp/src/lib.rs b/substrate/runtime/timestamp/src/lib.rs index 668fa61b56a84..018f8c615f6b2 100644 --- a/substrate/runtime/timestamp/src/lib.rs +++ b/substrate/runtime/timestamp/src/lib.rs @@ -48,7 +48,7 @@ pub trait Trait: consensus::Trait where // the position of the required timestamp-set extrinsic. const TIMESTAMP_SET_POSITION: u32; - type Value: Parameter + Default + SimpleArithmetic + As; + type Moment: Parameter + Default + SimpleArithmetic + As; } decl_module! { @@ -56,27 +56,27 @@ decl_module! { #[cfg_attr(feature = "std", derive(Serialize, Deserialize))] pub enum Call where aux: T::PublicAux { - fn set(aux, now: T::Value) -> Result = 0; + fn set(aux, now: T::Moment) -> Result = 0; } } decl_storage! { trait Store for Module; - pub Now get(now): b"tim:val" => required T::Value; + pub Now get(now): b"tim:val" => required T::Moment; // The minimum (and advised) period between blocks. - pub BlockPeriod get(block_period): b"tim:block_period" => required T::Value; + pub BlockPeriod get(block_period): b"tim:block_period" => required T::Moment; // Did the timestamp get updated in this block? DidUpdate: b"tim:did" => default bool; } impl Module { - pub fn get() -> T::Value { + pub fn get() -> T::Moment { Self::now() } /// Set the current time. - fn set(aux: &T::PublicAux, now: T::Value) -> Result { + fn set(aux: &T::PublicAux, now: T::Moment) -> Result { assert!(aux.is_empty()); assert!(!::DidUpdate::exists(), "Timestamp must be updated only once in the block"); assert!( @@ -95,7 +95,7 @@ impl Module { /// Set the timestamp to something in particular. Only used for tests. #[cfg(any(feature = "std", test))] - pub fn set_timestamp(now: T::Value) { + pub fn set_timestamp(now: T::Moment) { ::Now::put(now); } } @@ -108,14 +108,14 @@ impl Executable for Module { #[cfg(any(feature = "std", test))] pub struct GenesisConfig { - pub period: T::Value, + pub period: T::Moment, } #[cfg(any(feature = "std", test))] impl Default for GenesisConfig { fn default() -> Self { GenesisConfig { - period: T::Value::sa(5), + period: T::Moment::sa(5), } } } @@ -128,7 +128,7 @@ impl runtime_primitives::BuildStorage for GenesisConfig use codec::Slicable; map![ twox_128(>::key()).to_vec() => self.period.encode(), - twox_128(>::key()).to_vec() => T::Value::sa(0).encode() + twox_128(>::key()).to_vec() => T::Moment::sa(0).encode() ] } } @@ -163,7 +163,7 @@ mod tests { } impl Trait for Test { const TIMESTAMP_SET_POSITION: u32 = 0; - type Value = u64; + type Moment = u64; } type Timestamp = Module; From 217ecc1300f2e24cb9e98268fab548916ab30e2e Mon Sep 17 00:00:00 2001 From: Gav Date: Thu, 28 Jun 2018 16:28:47 +0200 Subject: [PATCH 21/22] Avoid double-nominating/staking --- substrate/runtime/staking/src/lib.rs | 14 +++++++------- substrate/runtime/staking/src/tests.rs | 13 +++++++++++++ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index 203fe7501efec..f78df9a797a72 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -315,12 +315,14 @@ impl Module { /// /// Effects will be felt at the beginning of the next era. fn stake(aux: &T::PublicAux) -> Result { + let aux = aux.ref_into(); + ensure!(Self::nominating(aux).is_none(), "Cannot stake if already nominating."); let mut intentions = >::get(); // can't be in the list twice. - ensure!(intentions.iter().find(|&t| t == aux.ref_into()).is_none(), "Cannot stake if already staked."); - intentions.push(aux.ref_into().clone()); + ensure!(intentions.iter().find(|&t| t == aux).is_none(), "Cannot stake if already staked."); + intentions.push(aux.clone()); >::put(intentions); - >::insert(aux.ref_into(), T::BlockNumber::max_value()); + >::insert(aux, T::BlockNumber::max_value()); Ok(()) } @@ -345,10 +347,8 @@ impl Module { let target = Self::lookup(target)?; let aux = aux.ref_into(); - if Self::nominating(aux).is_some() { - // already nominating someone - denominate first. - return Err("Cannot nominate when already nominating"); - } + ensure!(Self::nominating(aux).is_none(), "Cannot nominate if already nominating."); + ensure!(Self::intentions().iter().find(|&t| t == aux.ref_into()).is_none(), "Cannot nominate if already staked."); // update nominators_for let mut t = Self::nominators_for(&target); diff --git a/substrate/runtime/staking/src/tests.rs b/substrate/runtime/staking/src/tests.rs index d35ab894a7e0a..f19e84079bd63 100644 --- a/substrate/runtime/staking/src/tests.rs +++ b/substrate/runtime/staking/src/tests.rs @@ -323,6 +323,19 @@ fn nominating_slashes_should_work() { }); } +#[test] +fn double_staking_should_fail() { + with_externalities(&mut new_test_ext(0, 1, 2, 0, true, 0), || { + System::set_block_number(1); + assert_ok!(Staking::stake(&1)); + assert_noop!(Staking::stake(&1), "Cannot stake if already staked."); + assert_noop!(Staking::nominate(&1, 1.into()), "Cannot nominate if already staked."); + assert_ok!(Staking::nominate(&2, 1.into())); + assert_noop!(Staking::stake(&2), "Cannot stake if already nominating."); + assert_noop!(Staking::nominate(&2, 1.into()), "Cannot nominate if already nominating."); + }); +} + #[test] fn staking_eras_work() { with_externalities(&mut new_test_ext(0, 1, 2, 0, true, 0), || { From 71f2a9e570fa7eb7c50466e61d4c250df1426439 Mon Sep 17 00:00:00 2001 From: Gav Date: Thu, 28 Jun 2018 16:29:46 +0200 Subject: [PATCH 22/22] Fix comment --- substrate/runtime/staking/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/substrate/runtime/staking/src/lib.rs b/substrate/runtime/staking/src/lib.rs index f78df9a797a72..138130886af7d 100644 --- a/substrate/runtime/staking/src/lib.rs +++ b/substrate/runtime/staking/src/lib.rs @@ -579,10 +579,10 @@ impl Module { let noms = Self::current_nominators_for(v); let total = noms.iter().map(Self::voting_balance).fold(Zero::zero(), |acc, x| acc + x); for n in noms.iter() { - //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large reard * total. + //let r = Self::voting_balance(n) * reward / total; // correct formula, but might overflow with large slash * total. let quant = T::Balance::sa(1usize << 31); let s = (Self::voting_balance(n) * quant / total) * rem / quant; // avoid overflow by using quant as a denominator. - let _ = Self::slash(n, s); // will never fail as nominator accounts must be created, but even if it did, it's just a missed reward. + let _ = Self::slash(n, s); // best effort - not much that can be done on fail. } } }