From d17ee979b861a017a51819abcfc076ccac080ee7 Mon Sep 17 00:00:00 2001 From: Artem Vorotnikov Date: Tue, 22 Sep 2020 13:41:04 +0300 Subject: [PATCH] Remove accounts bloom (#33) --- Cargo.lock | 1058 ++++++++++++++------------------ ethcore/Cargo.toml | 1 - ethcore/db/src/db.rs | 5 +- ethcore/src/lib.rs | 2 - ethcore/src/snapshot/mod.rs | 18 +- ethcore/src/spec/spec.rs | 1 - ethcore/src/state/backend.rs | 19 - ethcore/src/state/mod.rs | 63 +- ethcore/src/state_db.rs | 92 +-- parity/db/rocksdb/migration.rs | 2 +- 10 files changed, 479 insertions(+), 782 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4d71ea120..32fae1c1e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,20 +1,5 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -[[package]] -name = "addr2line" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b6a2d3371669ab3ca9797670853d61402b03d0b4b9ebf33d677dfa720203072" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e" - [[package]] name = "aes" version = "0.3.2" @@ -71,9 +56,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.7.13" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86" +checksum = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d" dependencies = [ "memchr", ] @@ -90,7 +75,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" dependencies = [ - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -106,9 +91,9 @@ dependencies = [ [[package]] name = "arrayref" -version = "0.3.6" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" +checksum = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" [[package]] name = "arrayvec" @@ -133,13 +118,12 @@ checksum = "7deb0a829ca7bcfaf5da70b073a8d128619259a7be8216a355e23f00763059e5" [[package]] name = "atty" -version = "0.2.14" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +checksum = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90" dependencies = [ - "hermit-abi", "libc", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -150,24 +134,32 @@ checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" [[package]] name = "autocfg" -version = "1.0.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" +checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" [[package]] name = "backtrace" -version = "0.3.50" +version = "0.3.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46254cf2fdcdf1badb5934448c1bcbe046a56537b3987d96c51a7afc5d03f293" +checksum = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea" dependencies = [ - "addr2line", + "backtrace-sys", "cfg-if", "libc", - "miniz_oxide", - "object", "rustc-demangle", ] +[[package]] +name = "backtrace-sys" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "base64" version = "0.9.3" @@ -267,9 +259,9 @@ dependencies = [ [[package]] name = "block-padding" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" +checksum = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09" dependencies = [ "byte-tools 0.3.1", ] @@ -279,7 +271,7 @@ name = "blooms-db" version = "0.1.0" dependencies = [ "byteorder", - "criterion 0.3.3", + "criterion 0.3.0", "ethbloom 0.5.0", "parking_lot 0.7.1", "tempdir", @@ -289,20 +281,20 @@ dependencies = [ [[package]] name = "bn" version = "0.4.4" -source = "git+https://github.com/paritytech/bn#68148e1b86d147dc761ea59e377681d263f8a2e3" +source = "git+https://github.com/paritytech/bn#6079255e65793038b9a6e5292203eab482737cc2" dependencies = [ "byteorder", "crunchy 0.2.2", "lazy_static", "rand 0.5.6", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] name = "bstr" -version = "0.2.13" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31accafdb70df7871592c058eca3985b71104e15ac32f64706022c58867da931" +checksum = "8d6c2c5b58ab920a4f5aeaaca34b4488074e8cc7596af94e6f8c6ff247c60245" dependencies = [ "lazy_static", "memchr", @@ -316,12 +308,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39" -[[package]] -name = "bumpalo" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" - [[package]] name = "byte-slice-cast" version = "0.3.5" @@ -342,9 +328,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "byteorder" -version = "1.3.4" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" +checksum = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5" [[package]] name = "bytes" @@ -358,19 +344,25 @@ dependencies = [ ] [[package]] -name = "cast" +name = "c2-chacha" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b9434b9a5aa1450faa3f9cb14ea0e8c53bb5d2b3c1bfd1ab4fc03e9f33fbfb0" +checksum = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb" dependencies = [ - "rustc_version", + "ppv-lite86", ] [[package]] -name = "cc" -version = "1.0.60" +name = "cast" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c" +checksum = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427" + +[[package]] +name = "cc" +version = "1.0.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa87058dce70a3ff5621797f1506cb837edd02ac4c0ae642b4542dce802908b8" [[package]] name = "cfg-if" @@ -388,20 +380,21 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.15" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942f72db697d8767c22d46a598e01f2d3b475501ea43d0db4f16d90259182d0b" +checksum = "e8493056968583b0193c1bb04d6f7684586f3726992d6c573261941a895dbd68" dependencies = [ + "libc", "num-integer", - "num-traits 0.2.12", + "num-traits 0.2.8", "time", ] [[package]] name = "clap" -version = "2.33.3" +version = "2.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" +checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9" dependencies = [ "ansi_term 0.11.0", "atty", @@ -434,9 +427,9 @@ dependencies = [ [[package]] name = "cmake" -version = "0.1.44" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e56268c17a6248366d66d4a47a3381369d068cce8409bb1716ed77ea32163bb" +checksum = "81fb25b677f8bf1eb325017cb6bb8452f87969db0fedb4f757b297bee78a7c62" dependencies = [ "cc", ] @@ -459,9 +452,9 @@ dependencies = [ [[package]] name = "constant_time_eq" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +checksum = "995a44c877f9212528ccc74b21a232f66ad69001e40ede5bcee2ac9ef2657120" [[package]] name = "crc" @@ -483,13 +476,13 @@ dependencies = [ "clap", "criterion-plot 0.3.1", "csv", - "itertools 0.8.2", + "itertools 0.8.1", "lazy_static", "libc", - "num-traits 0.2.12", + "num-traits 0.2.8", "rand_core 0.3.1", - "rand_os", - "rand_xoshiro", + "rand_os 0.1.3", + "rand_xoshiro 0.1.0", "rayon", "rayon-core", "serde", @@ -501,24 +494,23 @@ dependencies = [ [[package]] name = "criterion" -version = "0.3.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70daa7ceec6cf143990669a04c7df13391d55fb27bd4079d252fca774ba244d8" +checksum = "938703e165481c8d612ea3479ac8342e5615185db37765162e762ec3523e2fc6" dependencies = [ "atty", "cast", "clap", - "criterion-plot 0.4.3", + "criterion-plot 0.4.0", "csv", - "itertools 0.9.0", + "itertools 0.8.1", "lazy_static", - "num-traits 0.2.12", - "oorandom", - "plotters", + "num-traits 0.2.8", + "rand_core 0.5.1", + "rand_os 0.2.2", + "rand_xoshiro 0.3.1", "rayon", - "regex 1.3.9", "serde", - "serde_cbor", "serde_derive", "serde_json", "tinytemplate", @@ -533,27 +525,17 @@ checksum = "76f9212ddf2f4a9eb2d401635190600656a1f88a932ef53d06e7fa4c7e02fb8e" dependencies = [ "byteorder", "cast", - "itertools 0.8.2", + "itertools 0.8.1", ] [[package]] name = "criterion-plot" -version = "0.4.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e022feadec601fba1649cfa83586381a4ad31c6bf3a9ab7d408118b05dd9889d" +checksum = "eccdc6ce8bbe352ca89025bee672aa6d24f4eb8c53e3a8b5d1bc58011da072a2" dependencies = [ "cast", - "itertools 0.9.0", -] - -[[package]] -name = "crossbeam-channel" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" -dependencies = [ - "crossbeam-utils 0.7.2", - "maybe-uninit", + "itertools 0.8.1", ] [[package]] @@ -562,19 +544,18 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" dependencies = [ - "crossbeam-epoch 0.7.2", + "crossbeam-epoch", "crossbeam-utils 0.6.6", ] [[package]] name = "crossbeam-deque" -version = "0.7.3" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" +checksum = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71" dependencies = [ - "crossbeam-epoch 0.8.2", - "crossbeam-utils 0.7.2", - "maybe-uninit", + "crossbeam-epoch", + "crossbeam-utils 0.6.6", ] [[package]] @@ -588,22 +569,16 @@ dependencies = [ "crossbeam-utils 0.6.6", "lazy_static", "memoffset", - "scopeguard 1.1.0", + "scopeguard 1.0.0", ] [[package]] -name = "crossbeam-epoch" -version = "0.8.2" +name = "crossbeam-queue" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" +checksum = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b" dependencies = [ - "autocfg 1.0.1", - "cfg-if", - "crossbeam-utils 0.7.2", - "lazy_static", - "maybe-uninit", - "memoffset", - "scopeguard 1.1.0", + "crossbeam-utils 0.6.6", ] [[package]] @@ -633,7 +608,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" dependencies = [ - "autocfg 1.0.1", + "autocfg 1.0.0", "cfg-if", "lazy_static", ] @@ -672,9 +647,9 @@ dependencies = [ [[package]] name = "csv" -version = "1.1.3" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00affe7f6ab566df61b4be3ce8cf16bc2576bca0963ceb0955e45d514bf9a279" +checksum = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d" dependencies = [ "bstr", "csv-core", @@ -685,9 +660,9 @@ dependencies = [ [[package]] name = "csv-core" -version = "0.1.10" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90" +checksum = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c" dependencies = [ "memchr", ] @@ -723,13 +698,13 @@ dependencies = [ [[package]] name = "derive_more" -version = "0.99.10" +version = "0.99.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dcfabdab475c16a93d669dddfc393027803e347d09663f524447f642fbb84ba" +checksum = "298998b1cf6b5b2c8a7b023dfd45821825ce3ba8a8af55c921a0e734e4653f76" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] @@ -775,7 +750,7 @@ dependencies = [ "lazy_static", "regex 1.3.9", "serde", - "strsim 0.9.3", + "strsim 0.9.2", ] [[package]] @@ -788,7 +763,7 @@ checksum = "bbbaaaf38131deb9ca518a274a45bfdb8771f139517b073b16c2d3d32ae5037b" name = "eip-152" version = "0.1.0" dependencies = [ - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] @@ -804,7 +779,7 @@ dependencies = [ "lazy_static", "lunarity-lexer", "regex 1.3.9", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", "serde", "serde_derive", "serde_json", @@ -814,15 +789,15 @@ dependencies = [ [[package]] name = "either" -version = "1.6.1" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" +checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3" [[package]] name = "elastic-array" -version = "0.10.3" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "580f3768bd6465780d063f5b8213a2ebd506e139b345e4a81eb301ceae3d61e1" +checksum = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" dependencies = [ "heapsize", ] @@ -851,9 +826,9 @@ dependencies = [ [[package]] name = "error-chain" -version = "0.12.4" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc" +checksum = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9" dependencies = [ "backtrace", "version_check", @@ -879,8 +854,8 @@ dependencies = [ "eth_pairings_repr_derive", "fixed_width_field", "fixed_width_group_and_loop", - "num-bigint 0.2.6", - "num-traits 0.2.12", + "num-bigint 0.2.3", + "num-traits 0.2.8", "once_cell", "static_assertions", ] @@ -891,9 +866,9 @@ version = "0.2.0" source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8" dependencies = [ "byteorder", - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] @@ -904,7 +879,7 @@ checksum = "8eb362fde43ed0b50b258bb0c72b72b3dccfd29f8de9506295eaf9251c49ca31" dependencies = [ "error-chain", "ethereum-types 0.4.2", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", "serde", "serde_derive", "serde_json", @@ -927,7 +902,7 @@ dependencies = [ "heck", "proc-macro2 0.4.30", "quote 0.6.13", - "syn 0.15.44", + "syn 0.15.26", ] [[package]] @@ -956,7 +931,7 @@ checksum = "1a93a43ce2e9f09071449da36bfa7a1b20b950ee344b6904ff23de493b03b386" dependencies = [ "crunchy 0.1.6", "ethereum-types-serialize", - "fixed-hash 0.2.5", + "fixed-hash 0.2.2", "serde", "tiny-keccak 1.5.0", ] @@ -980,7 +955,6 @@ version = "1.12.0" dependencies = [ "ansi_term 0.10.2", "blooms-db", - "byteorder", "common-types", "criterion 0.2.11", "crossbeam-utils 0.6.6", @@ -1211,7 +1185,7 @@ dependencies = [ "rustc-hex 1.0.0", "trace-time", "transaction-pool", - "url 2.1.1", + "url 2.1.0", ] [[package]] @@ -1309,7 +1283,7 @@ dependencies = [ "tokio", "tokio-io", "tokio-service", - "url 2.1.1", + "url 2.1.0", ] [[package]] @@ -1406,7 +1380,7 @@ dependencies = [ "crunchy 0.1.6", "ethbloom 0.5.0", "ethereum-types-serialize", - "fixed-hash 0.2.5", + "fixed-hash 0.2.2", "serde", "uint 0.4.1", ] @@ -1538,7 +1512,7 @@ dependencies = [ "lazy_static", "log", "memory-cache", - "num-bigint 0.2.6", + "num-bigint 0.2.3", "parity-bytes", "parking_lot 0.7.1", "rustc-hex 1.0.0", @@ -1550,7 +1524,7 @@ name = "evmbin" version = "0.1.0" dependencies = [ "common-types", - "criterion 0.3.3", + "criterion 0.3.0", "docopt", "env_logger", "ethcore", @@ -1584,10 +1558,10 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", - "synstructure 0.12.4", + "syn 1.0.40", + "synstructure 0.12.2", ] [[package]] @@ -1615,9 +1589,9 @@ dependencies = [ [[package]] name = "fdlimit" -version = "0.1.4" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da54a593b34c71b889ee45f5b5bb900c74148c5f7f8c6a9479ee7899f69603c" +checksum = "b1ee15a7050e5580b3712877157068ea713b245b080ff302ae2ca973cfcd9baa" dependencies = [ "libc", ] @@ -1633,19 +1607,19 @@ dependencies = [ "hyper-rustls", "log", "tokio", - "url 2.1.1", + "url 2.1.0", ] [[package]] name = "fixed-hash" -version = "0.2.5" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7afe6ce860afb14422711595a7b26ada9ed7de2f43c0b2ab79d09ee196287273" +checksum = "0d5ec8112f00ea8a483e04748a85522184418fd1cf02890b626d8fc28683f7de" dependencies = [ "heapsize", "libc", "rand 0.4.6", - "rustc-hex 2.1.0", + "rustc-hex 1.0.0", ] [[package]] @@ -1655,8 +1629,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "11498d382790b7a8f2fd211780bec78619bba81cdad3a283997c0c41f836759c" dependencies = [ "byteorder", - "rand 0.7.3", - "rustc-hex 2.1.0", + "rand 0.7.2", + "rustc-hex 2.0.1", "static_assertions", ] @@ -1684,9 +1658,9 @@ checksum = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33" [[package]] name = "fnv" -version = "1.0.7" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" [[package]] name = "fs-swap" @@ -1697,14 +1671,14 @@ dependencies = [ "lazy_static", "libc", "libloading", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "fs_extra" -version = "1.2.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" +checksum = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674" [[package]] name = "fuchsia-cprng" @@ -1788,28 +1762,22 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.1.15" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6" +checksum = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407" dependencies = [ "cfg-if", "libc", - "wasi 0.9.0+wasi-snapshot-preview1", + "wasi", ] -[[package]] -name = "gimli" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaf91faf136cb47367fa430cd46e37a788775e7fa104f8b4bcb3861dc389b724" - [[package]] name = "globset" version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ad1da430bd7281dde2576f44c84cc3f0f7b475e7202cd503042dff01a8c8120" dependencies = [ - "aho-corasick 0.7.13", + "aho-corasick 0.7.6", "bstr", "fnv", "log", @@ -1834,12 +1802,6 @@ dependencies = [ "tokio-io", ] -[[package]] -name = "half" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d36fab90f82edc3c747f9d438e06cf0a491055896f2a279638bb5beed6c40177" - [[package]] name = "hamming" version = "0.1.3" @@ -1861,19 +1823,13 @@ dependencies = [ "crunchy 0.2.2", ] -[[package]] -name = "hashbrown" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00d63df3d41950fb462ed38308eea019113ad1508da725bbedcd0fa5a85ef5f7" - [[package]] name = "heapsize" version = "0.4.2" source = "git+https://github.com/cheme/heapsize.git?branch=ec-macfix#c07ffe843acb9da570682e290a48540741afdce1" dependencies = [ "jemallocator", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -1887,9 +1843,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.1.15" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9" +checksum = "307c3c9f937f38e3534b1d6447ecf090cafcc9744e4a6360e8b037b2cf5af120" dependencies = [ "libc", ] @@ -1906,9 +1862,9 @@ dependencies = [ [[package]] name = "hex-literal-impl" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "853f769599eb31de176303197b7ba4973299c38c7a7604a6bc88c3eef05b9b46" +checksum = "9d4c5c844e2fee0bf673d54c2c177f1713b3d2af2ff6e666b49cb7572e6cf42d" dependencies = [ "proc-macro-hack", ] @@ -1940,16 +1896,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "29302b90cfa76231a757a887d1e3153331a63c7f80b6c75f86366334cbe70708" dependencies = [ "scopeguard 0.3.3", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "home" -version = "0.5.3" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2456aef2e6b6a9784192ae780c0f15bc57df0e918585282325e8c8ac27737654" +checksum = "a3753954f7bd71f0e671afb8b5a992d1724cf43b7f95a563cd4a0bde94659ca8" dependencies = [ - "winapi 0.3.9", + "scopeguard 1.0.0", + "winapi 0.3.8", ] [[package]] @@ -2141,19 +2098,18 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ef5550a42e3740a0e71f909d4c861056a284060af885ae7aa6242820f920d9d" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] name = "indexmap" -version = "1.6.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55e2e4c765aa53a0424761bf9f41aa7a6ac1efa87238f59560640e27fca028f2" +checksum = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2" dependencies = [ - "autocfg 1.0.1", - "hashbrown", + "autocfg 0.1.7", ] [[package]] @@ -2197,27 +2153,18 @@ dependencies = [ [[package]] name = "itertools" -version = "0.8.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" +checksum = "87fa75c9dea7b07be3138c49abbb83fd4bea199b5cdc76f9804458edc5da0d6e" dependencies = [ "either", ] [[package]] name = "itoa" -version = "0.4.6" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" +checksum = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f" [[package]] name = "jemalloc-sys" @@ -2260,15 +2207,6 @@ dependencies = [ "rlp 0.3.0", ] -[[package]] -name = "js-sys" -version = "0.3.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca059e81d9486668f12d455a4ea6daa600bd408134cd17e3d3fb5a32d1f016f8" -dependencies = [ - "wasm-bindgen", -] - [[package]] name = "jsonrpc-core" version = "15.0.0" @@ -2289,9 +2227,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2cc6ea7f785232d9ca8786a44e9fa698f92149dcdc1acc4aa1fc69c4993d79e" dependencies = [ "proc-macro-crate", - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] @@ -2332,7 +2270,7 @@ dependencies = [ "jsonrpc-core", "log", "parking_lot 0.10.2", - "rand 0.7.3", + "rand 0.7.2", "serde", ] @@ -2468,15 +2406,12 @@ name = "lazy_static" version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -dependencies = [ - "spin", -] [[package]] name = "lazycell" -version = "1.3.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" +checksum = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" [[package]] name = "len-caching-lock" @@ -2487,9 +2422,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.77" +version = "0.2.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f96b10ec2560088a8e76961b00d47107b3a625fecb76dedb29ee7ccbf98235" +checksum = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8" [[package]] name = "libloading" @@ -2498,14 +2433,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" dependencies = [ "cc", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "linked-hash-map" -version = "0.5.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a" +checksum = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" [[package]] name = "local-encoding" @@ -2534,14 +2469,14 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" dependencies = [ - "scopeguard 1.1.0", + "scopeguard 1.0.0", ] [[package]] name = "log" -version = "0.4.11" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b" +checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" dependencies = [ "cfg-if", ] @@ -2565,7 +2500,7 @@ dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", "regex-syntax 0.6.18", - "syn 0.15.44", + "syn 0.15.26", "utf8-ranges", ] @@ -2611,9 +2546,12 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] name = "memchr" -version = "2.3.3" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" +checksum = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e" +dependencies = [ + "libc", +] [[package]] name = "memmap" @@ -2622,16 +2560,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff" dependencies = [ "libc", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "memoffset" -version = "0.5.6" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" +checksum = "4a85c1a8c329f11437034d7313dca647c79096523533a1c79e86f1d0f657c7cc" dependencies = [ - "autocfg 1.0.1", + "rustc_version", ] [[package]] @@ -2685,19 +2623,9 @@ dependencies = [ [[package]] name = "mime" -version = "0.3.16" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" - -[[package]] -name = "miniz_oxide" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c60c0dfe32c10b43a144bad8fc83538c52f58302c92300ea7ec7bf7b38d5a7b9" -dependencies = [ - "adler", - "autocfg 1.0.1", -] +checksum = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf" [[package]] name = "mio" @@ -2720,9 +2648,9 @@ dependencies = [ [[package]] name = "mio-extras" -version = "2.0.6" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" +checksum = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" dependencies = [ "lazycell", "log", @@ -2732,21 +2660,21 @@ dependencies = [ [[package]] name = "mio-named-pipes" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0840c1c50fd55e521b247f949c241c9997709f23bd7f023b9762cd561e935656" +checksum = "f5e374eff525ce1c5b7687c4cef63943e7686524a387933ad27ca7ec43779cb3" dependencies = [ "log", "mio", - "miow 0.3.5", - "winapi 0.3.9", + "miow 0.3.3", + "winapi 0.3.8", ] [[package]] name = "mio-uds" -version = "0.6.8" +version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0" +checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" dependencies = [ "iovec", "libc", @@ -2767,12 +2695,12 @@ dependencies = [ [[package]] name = "miow" -version = "0.3.5" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07b88fb9795d4d36d62a012dfbf49a8f5cf12751f36d31a9dbe66d528e58979e" +checksum = "396aa0f2003d7df8395cb93e09871561ccc3e785f0acb369170e8cc74ddf9226" dependencies = [ "socket2", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -2783,13 +2711,13 @@ checksum = "34d4f00fcc2f4c9efa8cc971db0da9e28290e28e97af47585e48691ef10ff31f" [[package]] name = "net2" -version = "0.2.35" +version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ebc3ec692ed7c9a255596c67808dee269f64655d8baf7b4f0638e51ba1d6853" +checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" dependencies = [ "cfg-if", "libc", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -2826,7 +2754,7 @@ dependencies = [ "num-bigint 0.1.44", "num-integer", "num-iter", - "num-traits 0.2.12", + "num-traits 0.2.8", ] [[package]] @@ -2836,41 +2764,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1" dependencies = [ "num-integer", - "num-traits 0.2.12", + "num-traits 0.2.8", "rand 0.4.6", "rustc-serialize", ] [[package]] name = "num-bigint" -version = "0.2.6" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" +checksum = "f9c3f34cdd24f334cb265d9bf8bfa8a241920d026916785747a92f0e55541a1a" dependencies = [ - "autocfg 1.0.1", + "autocfg 0.1.7", "num-integer", - "num-traits 0.2.12", + "num-traits 0.2.8", ] [[package]] name = "num-integer" -version = "0.1.43" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b" +checksum = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09" dependencies = [ - "autocfg 1.0.1", - "num-traits 0.2.12", + "autocfg 0.1.7", + "num-traits 0.2.8", ] [[package]] name = "num-iter" -version = "0.1.41" +version = "0.1.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f" +checksum = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e" dependencies = [ - "autocfg 1.0.1", + "autocfg 0.1.7", "num-integer", - "num-traits 0.2.12", + "num-traits 0.2.8", ] [[package]] @@ -2879,23 +2807,23 @@ version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" dependencies = [ - "num-traits 0.2.12", + "num-traits 0.2.8", ] [[package]] name = "num-traits" -version = "0.2.12" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611" +checksum = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32" dependencies = [ - "autocfg 1.0.1", + "autocfg 0.1.7", ] [[package]] name = "num_cpus" -version = "1.13.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" +checksum = "155394f924cdddf08149da25bfb932d226b4a593ca7468b08191ff6335941af5" dependencies = [ "hermit-abi", "libc", @@ -2907,15 +2835,9 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dbf9993e59c894e3c08aa1c2712914e9e6bf1fcbfc6bef283e2183df345a4fee" dependencies = [ - "num-traits 0.2.12", + "num-traits 0.2.8", ] -[[package]] -name = "object" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5" - [[package]] name = "ole32-sys" version = "0.2.0" @@ -2928,15 +2850,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.4.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "260e51e7efe62b592207e9e13a68e43692a7a279171d6ba57abd208bf23645ad" - -[[package]] -name = "oorandom" -version = "11.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a170cebd8021a008ea92e4db85a72f80b35df514ec664b296fdcbb654eac0b2c" +checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d" [[package]] name = "opaque-debug" @@ -2958,9 +2874,9 @@ checksum = "a86ed3f5f244b372d6b1a00b72ef7f8876d0bc6a78a4c9985c53614041512063" [[package]] name = "owning_ref" -version = "0.4.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce" +checksum = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" dependencies = [ "stable_deref_trait", ] @@ -2974,9 +2890,9 @@ dependencies = [ [[package]] name = "parity-bytes" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b56e3a2420138bdb970f84dfb9c774aea80fa0e7371549eedec0d80c209c67" +checksum = "0c276d76c5333b8c2579e02d49a06733a55b8282d2d9b13e8d53b6406bd7e30a" [[package]] name = "parity-crypto" @@ -2992,7 +2908,7 @@ dependencies = [ "ring", "ripemd160", "scrypt 0.1.2", - "sha2 0.8.2", + "sha2 0.8.0", "tiny-keccak 1.5.0", ] @@ -3008,12 +2924,12 @@ dependencies = [ "digest 0.8.1", "hmac 0.7.1", "pbkdf2 0.3.0", - "rand 0.7.3", + "rand 0.7.2", "ripemd160", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", "scrypt 0.2.0", - "sha2 0.8.2", - "subtle 2.3.0", + "sha2 0.8.0", + "subtle 2.1.0", "tiny-keccak 1.5.0", "zeroize", ] @@ -3102,7 +3018,7 @@ dependencies = [ "term_size", "textwrap 0.9.0", "toml 0.4.10", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3123,11 +3039,11 @@ dependencies = [ [[package]] name = "parity-path" -version = "0.1.3" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f66a327a200fe67c16f1d0acab2f74a2ec67c41d6202a2a98a7378df653d848d" +checksum = "7b027aab22527061b7005cecf7805e8f42eed94ce89e76bac3a6035394b56627" dependencies = [ - "home 0.5.3", + "home 0.5.1", ] [[package]] @@ -3222,7 +3138,7 @@ dependencies = [ "parking_lot 0.9.0", "serde", "serde_json", - "url 2.1.1", + "url 2.1.0", ] [[package]] @@ -3276,12 +3192,12 @@ dependencies = [ "libc", "log", "mio-named-pipes", - "miow 0.3.5", - "rand 0.7.3", + "miow 0.3.3", + "rand 0.7.2", "tokio", "tokio-named-pipes", "tokio-uds", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3295,7 +3211,7 @@ dependencies = [ "impl-trait-for-tuples", "parity-util-mem-derive", "primitive-types", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3304,9 +3220,9 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2" dependencies = [ - "proc-macro2 1.0.21", - "syn 1.0.41", - "synstructure 0.12.4", + "proc-macro2 1.0.20", + "syn 1.0.40", + "synstructure 0.12.2", ] [[package]] @@ -3332,12 +3248,12 @@ dependencies = [ [[package]] name = "parity-wordlist" -version = "1.3.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f45ab1896c154f80a23f22aa81134b881e18b8fb7ff106abe67ae53a161d54a0" +checksum = "573d08f0d3bc8a6ffcdac1de2725b5daeed8db26345a9c12d91648e2d6457f3e" dependencies = [ "lazy_static", - "rand 0.7.3", + "rand 0.6.5", ] [[package]] @@ -3352,10 +3268,10 @@ dependencies = [ "log", "mio", "mio-extras", - "rand 0.7.3", + "rand 0.7.2", "sha-1", "slab 0.4.2", - "url 2.1.1", + "url 2.1.0", ] [[package]] @@ -3409,7 +3325,7 @@ dependencies = [ "rand 0.5.6", "rustc_version", "smallvec 0.6.13", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3425,7 +3341,7 @@ dependencies = [ "rustc_version", "smallvec 0.6.13", "thread-id", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3440,7 +3356,7 @@ dependencies = [ "redox_syscall", "rustc_version", "smallvec 0.6.13", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3454,7 +3370,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec 1.4.2", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3495,7 +3411,7 @@ dependencies = [ "crypto-mac 0.7.0", "hmac 0.7.1", "rand 0.5.6", - "sha2 0.8.2", + "sha2 0.8.0", "subtle 1.0.0", ] @@ -3523,30 +3439,18 @@ dependencies = [ [[package]] name = "plain_hasher" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e19e6491bdde87c2c43d70f4c194bc8a758f2eb732df00f61e43f7362e3b4cc" +checksum = "8f1c24f5061a6a53aaa21b0aaaa2e1beb5271a9ecc8c5bd7ae9ac92969070a2a" dependencies = [ "crunchy 0.2.2", ] -[[package]] -name = "plotters" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d1685fbe7beba33de0330629da9d955ac75bd54f33d7b79f9a895590124f6bb" -dependencies = [ - "js-sys", - "num-traits 0.2.12", - "wasm-bindgen", - "web-sys", -] - [[package]] name = "ppv-lite86" -version = "0.2.9" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20" +checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b" [[package]] name = "pretty_assertions" @@ -3632,18 +3536,23 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +checksum = "e10d4b51f154c8a7fb96fd6dad097cb74b863943ec010ac94b9fd1be8861fe1e" dependencies = [ - "toml 0.5.6", + "toml 0.5.5", ] [[package]] name = "proc-macro-hack" -version = "0.5.18" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99c605b9a0adc77b7211c6b1f722dcb613d68d66859a44f3d485a6da332b0598" +checksum = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5" +dependencies = [ + "proc-macro2 1.0.20", + "quote 1.0.7", + "syn 1.0.40", +] [[package]] name = "proc-macro2" @@ -3656,11 +3565,11 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.21" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36e28516df94f3dd551a587da5357459d9b36d945a7c37c3557928c1c2ff2a2c" +checksum = "175c513d55719db99da20232b06cda8bab6b83ec2d04e3283edf0213c37c1a29" dependencies = [ - "unicode-xid 0.2.1", + "unicode-xid 0.2.0", ] [[package]] @@ -3679,9 +3588,9 @@ dependencies = [ [[package]] name = "protobuf" -version = "2.17.0" +version = "2.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb14183cc7f213ee2410067e1ceeadba2a7478a59432ff0747a335202798b1e2" +checksum = "d883f78645c21b7281d21305181aa1f4dd9e9363e7cf2566c93121552cff003e" [[package]] name = "pulldown-cmark" @@ -3721,9 +3630,9 @@ dependencies = [ [[package]] name = "quick-error" -version = "1.2.3" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +checksum = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" [[package]] name = "quote" @@ -3740,7 +3649,7 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", ] [[package]] @@ -3769,7 +3678,7 @@ dependencies = [ "libc", "rand_core 0.3.1", "rdrand", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3782,7 +3691,7 @@ dependencies = [ "fuchsia-cprng", "libc", "rand_core 0.3.1", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3798,21 +3707,21 @@ dependencies = [ "rand_hc 0.1.0", "rand_isaac", "rand_jitter", - "rand_os", + "rand_os 0.1.3", "rand_pcg", "rand_xorshift", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "rand" -version = "0.7.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +checksum = "3ae1b169243eaf61759b8475a998f0a385e42042370f3a7dbaf35246eacc8412" dependencies = [ "getrandom", "libc", - "rand_chacha 0.2.2", + "rand_chacha 0.2.1", "rand_core 0.5.1", "rand_hc 0.2.0", ] @@ -3829,11 +3738,11 @@ dependencies = [ [[package]] name = "rand_chacha" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +checksum = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853" dependencies = [ - "ppv-lite86", + "c2-chacha", "rand_core 0.5.1", ] @@ -3896,7 +3805,7 @@ checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" dependencies = [ "libc", "rand_core 0.4.2", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -3910,7 +3819,17 @@ dependencies = [ "libc", "rand_core 0.4.2", "rdrand", - "winapi 0.3.9", + "winapi 0.3.8", +] + +[[package]] +name = "rand_os" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a788ae3edb696cfcba1c19bfd388cc4b8c21f8a408432b199c072825084da58a" +dependencies = [ + "getrandom", + "rand_core 0.5.1", ] [[package]] @@ -3943,26 +3862,34 @@ dependencies = [ ] [[package]] -name = "rayon" -version = "1.4.0" +name = "rand_xoshiro" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfd016f0c045ad38b5251be2c9c0ab806917f82da4d36b2a327e5166adad9270" +checksum = "0e18c91676f670f6f0312764c759405f13afb98d5d73819840cf72a518487bff" dependencies = [ - "autocfg 1.0.1", - "crossbeam-deque 0.7.3", + "rand_core 0.5.1", +] + +[[package]] +name = "rayon" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a27732a533a1be0a0035a111fe76db89ad312f6f0347004c220c57f209a123" +dependencies = [ + "crossbeam-deque 0.7.1", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.8.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c4fec834fb6e6d2dd5eece3c7b432a52f0ba887cf40e595190c4107edc08bf" +checksum = "98dcf634205083b17d0861252431eb2acbfb698ab7478a2d20de07954f47ec7b" dependencies = [ - "crossbeam-channel", - "crossbeam-deque 0.7.3", - "crossbeam-utils 0.7.2", + "crossbeam-deque 0.7.1", + "crossbeam-queue 0.1.2", + "crossbeam-utils 0.6.6", "lazy_static", "num_cpus", ] @@ -3978,9 +3905,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.1.57" +version = "0.1.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" +checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84" [[package]] name = "regex" @@ -4001,7 +3928,7 @@ version = "1.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6" dependencies = [ - "aho-corasick 0.7.13", + "aho-corasick 0.7.6", "memchr", "regex-syntax 0.6.18", "thread_local 1.0.1", @@ -4009,9 +3936,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.1.9" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1ded71d66a4a97f5e961fd0cb25a5f366a42a41570d16a763a69c092c26ae4" +checksum = "92b73c2a1770c255c240eaa4ee600df1704a38dc3feaa6e949e7fcd4f8dc09f9" dependencies = [ "byteorder", ] @@ -4053,11 +3980,11 @@ dependencies = [ [[package]] name = "remove_dir_all" -version = "0.5.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" +checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e" dependencies = [ - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -4071,7 +3998,7 @@ dependencies = [ "libc", "spin", "untrusted", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -4094,7 +4021,7 @@ dependencies = [ "byteorder", "elastic-array", "ethereum-types 0.4.2", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] @@ -4105,7 +4032,7 @@ checksum = "16d1effe9845d54f90e7be8420ee49e5c94623140b97ee4bc6fb5bfddb745720" dependencies = [ "byteorder", "ethereum-types 0.4.2", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] @@ -4114,7 +4041,7 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a7d3f9bed94764eac15b8f14af59fac420c236adaff743b7bcc88e265cb4345" dependencies = [ - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] @@ -4123,9 +4050,9 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] @@ -4144,7 +4071,7 @@ dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", "rlp 0.3.0", - "syn 0.15.44", + "syn 0.15.26", ] [[package]] @@ -4161,9 +4088,9 @@ dependencies = [ [[package]] name = "rprompt" -version = "1.0.5" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b386f4748bdae2aefc96857f5fda07647f851d089420e577831e2a14b45230f8" +checksum = "1601f32bc5858aae3cbfa1c645c96c4d820cc5c16be0194f089560c00b6eb625" [[package]] name = "rust-crypto" @@ -4192,9 +4119,9 @@ checksum = "0ceb8ce7a5e520de349e1fa172baeba4a9e8d5ef06c47471863530bc4972ee1e" [[package]] name = "rustc-hex" -version = "2.1.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" +checksum = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" [[package]] name = "rustc-serialize" @@ -4227,9 +4154,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.5" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" +checksum = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8" [[package]] name = "safemem" @@ -4239,9 +4166,9 @@ checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" [[package]] name = "same-file" -version = "1.0.6" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +checksum = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421" dependencies = [ "winapi-util", ] @@ -4260,9 +4187,9 @@ checksum = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d" [[package]] name = "scrypt" @@ -4287,7 +4214,7 @@ dependencies = [ "byteorder", "hmac 0.7.1", "pbkdf2 0.3.0", - "sha2 0.8.2", + "sha2 0.8.0", ] [[package]] @@ -4318,39 +4245,29 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.116" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96fe57af81d28386a513cbc6858332abc6117cfdb5999647c6444b8f43a370a5" +checksum = "0c4b39bd9b0b087684013a792c59e3e07a46a01d2322518d8a1104641a0b1be0" dependencies = [ "serde_derive", ] -[[package]] -name = "serde_cbor" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e18acfa2f90e8b735b2836ab8d538de304cbb6729a7360729ea5a895d15a622" -dependencies = [ - "half", - "serde", -] - [[package]] name = "serde_derive" -version = "1.0.116" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f630a6370fd8e457873b4bd2ffdae75408bc291ba72be773772a4c2a065d9ae8" +checksum = "ca13fc1a832f793322228923fbb3aba9f3f44444898f835d31ad1b74fa0a2bf8" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] name = "serde_json" -version = "1.0.57" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c" +checksum = "2f72eb2a68a7dc3f9a691bfda9305a1c017a6215e5a4545c258500d2099a37c2" dependencies = [ "itoa", "ryu", @@ -4359,9 +4276,9 @@ dependencies = [ [[package]] name = "sha-1" -version = "0.8.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df" +checksum = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68" dependencies = [ "block-buffer 0.7.3", "digest 0.8.1", @@ -4383,9 +4300,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.8.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" +checksum = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d" dependencies = [ "block-buffer 0.7.3", "digest 0.8.1", @@ -4410,7 +4327,7 @@ source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db420 dependencies = [ "byteorder", "crunchy 0.2.2", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", "static_assertions", ] @@ -4465,14 +4382,14 @@ checksum = "fbee7696b84bbf3d89a1c2eccff0850e3047ed46bfcd2e92c29a2d074d57e252" [[package]] name = "socket2" -version = "0.3.15" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1fa70dc5c8104ec096f4fe7ede7a221d35ae13dcd19ba1ad9a81d2cab9a1c44" +checksum = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85" dependencies = [ "cfg-if", "libc", "redox_syscall", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -4483,9 +4400,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" [[package]] name = "static_assertions" @@ -4527,9 +4444,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" [[package]] name = "strsim" -version = "0.9.3" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" +checksum = "032c03039aae92b350aad2e3779c352e104d919cb192ba2fabbd7b831ce4f0f6" [[package]] name = "subtle" @@ -4539,15 +4456,15 @@ checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" [[package]] name = "subtle" -version = "2.3.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "343f3f510c2915908f155e94f17220b19ccfacf2a64a2a5d8004f2c3e311e7fd" +checksum = "01dca13cf6c3b179864ab3292bd794e757618d35a7766b7c46050c614ba00829" [[package]] name = "syn" -version = "0.15.44" +version = "0.15.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" +checksum = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", @@ -4556,37 +4473,37 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.41" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6690e3e9f692504b941dc6c3b188fd28df054f7fb8469ab40680df52fdcc842b" +checksum = "963f7d3cc59b59b9325165add223142bbf1df27655d07789f109896d353d8350" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "unicode-xid 0.2.1", + "unicode-xid 0.2.0", ] [[package]] name = "synstructure" -version = "0.10.2" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f" +checksum = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", - "syn 0.15.44", + "syn 0.15.26", "unicode-xid 0.1.0", ] [[package]] name = "synstructure" -version = "0.12.4" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701" +checksum = "575be94ccb86e8da37efb894a87e2b660be299b41d8ef347f9d6d79fbe61b1ba" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", - "unicode-xid 0.2.1", + "syn 1.0.40", + "unicode-xid 0.2.0", ] [[package]] @@ -4613,29 +4530,30 @@ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9" dependencies = [ "cfg-if", "libc", - "rand 0.7.3", + "rand 0.7.2", "redox_syscall", "remove_dir_all", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] name = "term_size" -version = "0.3.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e4129646ca0ed8f45d09b929036bafad5377103edd06e50bf574b353d2b08d9" +checksum = "9e5b9a66db815dcfd2da92db471106457082577c3c278d4138ab3e3b4e189327" dependencies = [ + "kernel32-sys", "libc", - "winapi 0.3.9", + "winapi 0.2.8", ] [[package]] name = "termcolor" -version = "1.1.0" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f" +checksum = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e" dependencies = [ - "winapi-util", + "wincolor", ] [[package]] @@ -4671,9 +4589,9 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793" dependencies = [ - "proc-macro2 1.0.21", + "proc-macro2 1.0.20", "quote 1.0.7", - "syn 1.0.41", + "syn 1.0.40", ] [[package]] @@ -4684,7 +4602,7 @@ checksum = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1" dependencies = [ "libc", "redox_syscall", - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -4707,22 +4625,22 @@ dependencies = [ [[package]] name = "threadpool" -version = "1.8.1" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +checksum = "e2f0c90a5f3459330ac8bc0d2f879c693bb7a2f59689c1083fc4ef83834da865" dependencies = [ "num_cpus", ] [[package]] name = "time" -version = "0.1.44" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" +checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" dependencies = [ "libc", - "wasi 0.10.0+wasi-snapshot-preview1", - "winapi 0.3.9", + "redox_syscall", + "winapi 0.3.8", ] [[package]] @@ -4758,20 +4676,14 @@ dependencies = [ [[package]] name = "tinytemplate" -version = "1.1.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d3dc76004a03cec1c5932bca4cdc2e39aaa798e3f82363dd94f9adf6098c12f" +checksum = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20" dependencies = [ "serde", "serde_json", ] -[[package]] -name = "tinyvec" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "238ce071d267c5710f9d31451efec16c5ee22de34df17cc05e56cbc92e967117" - [[package]] name = "tokio" version = "0.1.22" @@ -4809,9 +4721,9 @@ dependencies = [ [[package]] name = "tokio-codec" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b" +checksum = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" dependencies = [ "bytes", "futures", @@ -4839,9 +4751,9 @@ dependencies = [ [[package]] name = "tokio-current-thread" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e" +checksum = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443" dependencies = [ "futures", "tokio-executor", @@ -4859,9 +4771,9 @@ dependencies = [ [[package]] name = "tokio-fs" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297a1206e0ca6302a0eed35b700d292b275256f596e2f3fea7729d5e629b6ff4" +checksum = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" dependencies = [ "futures", "tokio-io", @@ -4870,9 +4782,9 @@ dependencies = [ [[package]] name = "tokio-io" -version = "0.1.13" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" +checksum = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" dependencies = [ "bytes", "futures", @@ -4946,9 +4858,9 @@ dependencies = [ [[package]] name = "tokio-sync" -version = "0.1.8" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" +checksum = "d06554cce1ae4a50f42fba8023918afa931413aded705b560e29600ccf7c6d76" dependencies = [ "fnv", "futures", @@ -4956,9 +4868,9 @@ dependencies = [ [[package]] name = "tokio-tcp" -version = "0.1.4" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72" +checksum = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" dependencies = [ "bytes", "futures", @@ -4974,8 +4886,8 @@ version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89" dependencies = [ - "crossbeam-deque 0.7.3", - "crossbeam-queue", + "crossbeam-deque 0.7.1", + "crossbeam-queue 0.2.3", "crossbeam-utils 0.7.2", "futures", "lazy_static", @@ -5009,9 +4921,9 @@ dependencies = [ [[package]] name = "tokio-udp" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82" +checksum = "f02298505547f73e60f568359ef0d016d5acd6e830ab9bc7c4a5b3403440121b" dependencies = [ "bytes", "futures", @@ -5024,9 +4936,9 @@ dependencies = [ [[package]] name = "tokio-uds" -version = "0.2.7" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab57a4ac4111c8c9dbcf70779f6fc8bc35ae4b2454809febac840ad19bd7e4e0" +checksum = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" dependencies = [ "bytes", "futures", @@ -5051,9 +4963,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.6" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a" +checksum = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf" dependencies = [ "serde", ] @@ -5069,18 +4981,18 @@ dependencies = [ [[package]] name = "trace-time" -version = "0.1.3" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a1e75297b57b61495169dd40dd86e0ab52bfc7cdba570f59be5683709c9d480" +checksum = "c9adf04084eeb9a1ea91be6c3f8ef3df392391c91fc7d8f696d4875f6754e715" dependencies = [ "log", ] [[package]] name = "transaction-pool" -version = "2.0.3" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55db06994412bba044ff93b8e08ca9e13f0715a21562670d00af018ea973dd04" +checksum = "d8bbee24c711a878e7d8f89460569034cacf2d8c58dde785b5ffa06ed6b59663" dependencies = [ "log", "smallvec 0.6.13", @@ -5144,15 +5056,15 @@ checksum = "ee2aa4715743892880f70885373966c83d73ef1b0838a664ef0c76fffd35e7c2" [[package]] name = "try-lock" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" [[package]] name = "typenum" -version = "1.12.0" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" +checksum = "6d2783fe2d6b8c1101136184eb41be8b1ad379e4657050b8aaff0c79ee7575f9" [[package]] name = "ucd-util" @@ -5169,7 +5081,7 @@ dependencies = [ "byteorder", "crunchy 0.1.6", "heapsize", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", ] [[package]] @@ -5180,7 +5092,7 @@ checksum = "9db035e67dfaf7edd9aebfe8676afcd63eed53c8a4044fed514c8cccf1835177" dependencies = [ "byteorder", "crunchy 0.2.2", - "rustc-hex 2.1.0", + "rustc-hex 2.0.1", "static_assertions", ] @@ -5190,9 +5102,9 @@ version = "0.1.0" [[package]] name = "unicase" -version = "2.6.0" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" +checksum = "2e2e6bd1e59e56598518beb94fd6db628ded570326f0a98c679a304bd9f00150" dependencies = [ "version_check", ] @@ -5208,24 +5120,24 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.13" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977" +checksum = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" dependencies = [ - "tinyvec", + "smallvec 0.6.13", ] [[package]] name = "unicode-segmentation" -version = "1.6.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0" +checksum = "49f5526225fd8b77342d5986ab5f6055552e9c0776193b5b63fd53b46debfad7" [[package]] name = "unicode-width" -version = "0.1.8" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" +checksum = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20" [[package]] name = "unicode-xid" @@ -5235,9 +5147,9 @@ checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" [[package]] name = "unicode-xid" -version = "0.2.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" +checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c" [[package]] name = "untrusted" @@ -5258,9 +5170,9 @@ dependencies = [ [[package]] name = "url" -version = "2.1.1" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb" +checksum = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61" dependencies = [ "idna 0.2.0", "matches", @@ -5303,15 +5215,15 @@ dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", "regex 1.3.9", - "syn 0.15.44", + "syn 0.15.26", "validator", ] [[package]] name = "vec_map" -version = "0.8.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" +checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" [[package]] name = "vergen" @@ -5325,9 +5237,9 @@ dependencies = [ [[package]] name = "version_check" -version = "0.9.2" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" +checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" [[package]] name = "vm" @@ -5348,7 +5260,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" dependencies = [ "same-file", - "winapi 0.3.9", + "winapi 0.3.8", "winapi-util", ] @@ -5371,20 +5283,14 @@ checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" dependencies = [ "futures", "log", - "try-lock 0.2.3", + "try-lock 0.2.2", ] [[package]] name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - -[[package]] -name = "wasi" -version = "0.10.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" +checksum = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d" [[package]] name = "wasm" @@ -5401,60 +5307,6 @@ dependencies = [ "wasmi", ] -[[package]] -name = "wasm-bindgen" -version = "0.2.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ac64ead5ea5f05873d7c12b545865ca2b8d28adfc50a49b84770a3a97265d42" -dependencies = [ - "cfg-if", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f22b422e2a757c35a73774860af8e112bff612ce6cb604224e8e47641a9e4f68" -dependencies = [ - "bumpalo", - "lazy_static", - "log", - "proc-macro2 1.0.21", - "quote 1.0.7", - "syn 1.0.41", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b13312a745c08c469f0b292dd2fcd6411dba5f7160f593da6ef69b64e407038" -dependencies = [ - "quote 1.0.7", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f249f06ef7ee334cc3b8ff031bfc11ec99d00f34d86da7498396dc1e3b1498fe" -dependencies = [ - "proc-macro2 1.0.21", - "quote 1.0.7", - "syn 1.0.41", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d649a3145108d7d3fbcde896a468d1bd636791823c9921135218ad89be08307" - [[package]] name = "wasmi" version = "0.3.0" @@ -5467,16 +5319,6 @@ dependencies = [ "parity-wasm", ] -[[package]] -name = "web-sys" -version = "0.3.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bf6ef87ad7ae8008e15a355ce696bed26012b7caa21605188cfd8214ab51e2d" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - [[package]] name = "webpki" version = "0.19.1" @@ -5505,9 +5347,9 @@ checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" [[package]] name = "winapi" -version = "0.3.9" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" dependencies = [ "winapi-i686-pc-windows-gnu", "winapi-x86_64-pc-windows-gnu", @@ -5527,11 +5369,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.5" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +checksum = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9" dependencies = [ - "winapi 0.3.9", + "winapi 0.3.8", ] [[package]] @@ -5540,6 +5382,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "wincolor" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9" +dependencies = [ + "winapi 0.3.8", + "winapi-util", +] + [[package]] name = "ws2_32-sys" version = "0.2.1" @@ -5591,6 +5443,6 @@ checksum = "080616bd0e31f36095288bb0acdf1f78ef02c2fa15527d7e993f2a6c7591643e" dependencies = [ "proc-macro2 0.4.30", "quote 0.6.13", - "syn 0.15.44", - "synstructure 0.10.2", + "syn 0.15.26", + "synstructure 0.10.1", ] diff --git a/ethcore/Cargo.toml b/ethcore/Cargo.toml index 6f3028e3b..4f322b80e 100644 --- a/ethcore/Cargo.toml +++ b/ethcore/Cargo.toml @@ -9,7 +9,6 @@ authors = ["Parity Technologies "] [dependencies] ansi_term = "0.10" blooms-db = { path = "../util/blooms-db", optional = true } -byteorder = "1.0" common-types = { path = "types" } crossbeam-utils = "0.6" eip-152 = { version = "0.1", path = "../util/EIP-152" } diff --git a/ethcore/db/src/db.rs b/ethcore/db/src/db.rs index 5eeb4e0c9..16f5f961b 100644 --- a/ethcore/db/src/db.rs +++ b/ethcore/db/src/db.rs @@ -33,12 +33,13 @@ pub const COL_BODIES: Option = Some(2); pub const COL_EXTRA: Option = Some(3); /// Column for Traces pub const COL_TRACE: Option = Some(4); -/// Column for the empty accounts bloom filter. +/// Column for the accounts existence bloom filter. +#[deprecated(since = "3.0.0", note = "Accounts bloom column is deprecated")] pub const COL_ACCOUNT_BLOOM: Option = Some(5); /// Column for general information from the local node which can persist. pub const COL_NODE_INFO: Option = Some(6); /// Number of columns in DB -pub const NUM_COLUMNS: Option = Some(8); +pub const NUM_COLUMNS: Option = Some(7); /// Modes for updating caches. #[derive(Clone, Copy)] diff --git a/ethcore/src/lib.rs b/ethcore/src/lib.rs index b8dcd8afb..2b430466b 100644 --- a/ethcore/src/lib.rs +++ b/ethcore/src/lib.rs @@ -59,13 +59,11 @@ #![recursion_limit = "128"] extern crate ansi_term; -extern crate byteorder; extern crate common_types as types; extern crate crossbeam_utils; extern crate ethabi; extern crate ethash; extern crate ethcore_blockchain as blockchain; -extern crate ethcore_bloom_journal as bloom_journal; extern crate ethcore_builtin as builtin; extern crate ethcore_call_contract as call_contract; extern crate ethcore_db as db; diff --git a/ethcore/src/snapshot/mod.rs b/ethcore/src/snapshot/mod.rs index c68d5114f..276fac51a 100644 --- a/ethcore/src/snapshot/mod.rs +++ b/ethcore/src/snapshot/mod.rs @@ -34,9 +34,8 @@ use blockchain::{BlockChain, BlockProvider}; use engines::EthEngine; use types::{header::Header, ids::BlockId}; -use bloom_journal::Bloom; use bytes::Bytes; -use ethereum_types::{H256, U256}; +use ethereum_types::H256; use ethtrie::{TrieDB, TrieDBMut}; use hash_db::HashDB; use journaldb::{self, Algorithm, JournalDB}; @@ -50,8 +49,6 @@ use trie::{Trie, TrieMut}; use self::io::SnapshotWriter; -use super::{state::Account as StateAccount, state_db::StateDB}; - use crossbeam_utils::thread; use rand::{OsRng, Rng}; @@ -433,7 +430,6 @@ pub struct StateRebuilder { state_root: H256, known_code: HashMap, // code hashes mapped to first account with this code. missing_code: HashMap>, // maps code hashes to lists of accounts missing that code. - bloom: Bloom, known_storage_roots: HashMap, // maps account hashes to last known storage root. Only filled for last account per chunk. } @@ -445,7 +441,6 @@ impl StateRebuilder { state_root: KECCAK_NULL_RLP, known_code: HashMap::new(), missing_code: HashMap::new(), - bloom: StateDB::load_bloom(&*db), known_storage_roots: HashMap::new(), } } @@ -453,7 +448,6 @@ impl StateRebuilder { /// Feed an uncompressed state chunk into the rebuilder. pub fn feed(&mut self, chunk: &[u8], flag: &AtomicBool) -> Result<(), ::error::Error> { let rlp = Rlp::new(chunk); - let empty_rlp = StateAccount::new_basic(U256::zero(), U256::zero()).rlp(); let mut pairs = Vec::with_capacity(rlp.item_count()?); // initialize the pairs vector with empty values so we have slots to write into. @@ -489,8 +483,6 @@ impl StateRebuilder { self.known_code.insert(code_hash, first_with); } - let backing = self.db.backing().clone(); - // batch trie writes { let mut account_trie = if self.state_root != KECCAK_NULL_RLP { @@ -504,18 +496,10 @@ impl StateRebuilder { return Err(Error::RestorationAborted.into()); } - if &thin_rlp[..] != &empty_rlp[..] { - self.bloom.set(&*hash); - } account_trie.insert(&hash, &thin_rlp)?; } } - let bloom_journal = self.bloom.drain_journal(); - let mut batch = backing.transaction(); - StateDB::commit_bloom(&mut batch, bloom_journal)?; - self.db.inject(&mut batch)?; - backing.write_buffered(batch); trace!(target: "snapshot", "current state root: {:?}", self.state_root); Ok(()) } diff --git a/ethcore/src/spec/spec.rs b/ethcore/src/spec/spec.rs index b64c3f088..edaab3a74 100644 --- a/ethcore/src/spec/spec.rs +++ b/ethcore/src/spec/spec.rs @@ -707,7 +707,6 @@ impl Spec { } for (address, account) in self.genesis_state.get().iter() { - db.note_non_null_account(address); account.insert_additional( &mut *factories .accountdb diff --git a/ethcore/src/state/backend.rs b/ethcore/src/state/backend.rs index 001083a9d..e11030b59 100644 --- a/ethcore/src/state/backend.rs +++ b/ethcore/src/state/backend.rs @@ -65,13 +65,6 @@ pub trait Backend: Send { /// Get cached code based on hash. fn get_cached_code(&self, hash: &H256) -> Option>>; - - /// Note that an account with the given address is non-null. - fn note_non_null_account(&self, address: &Address); - - /// Check whether an account is known to be empty. Returns true if known to be - /// empty, false otherwise. - fn is_known_null(&self, address: &Address) -> bool; } /// A raw backend used to check proofs of execution. @@ -150,10 +143,6 @@ impl Backend for ProofCheck { fn get_cached_code(&self, _hash: &H256) -> Option>> { None } - fn note_non_null_account(&self, _address: &Address) {} - fn is_known_null(&self, _address: &Address) -> bool { - false - } } /// Proving state backend. @@ -252,10 +241,6 @@ impl + Send + Sync> Backend for Proving { fn get_cached_code(&self, _: &H256) -> Option>> { None } - fn note_non_null_account(&self, _: &Address) {} - fn is_known_null(&self, _: &Address) -> bool { - false - } } impl> Proving { @@ -317,8 +302,4 @@ impl + Send + Sync> Backend for Basic { fn get_cached_code(&self, _: &H256) -> Option>> { None } - fn note_non_null_account(&self, _: &Address) {} - fn is_known_null(&self, _: &Address) -> bool { - false - } } diff --git a/ethcore/src/state/mod.rs b/ethcore/src/state/mod.rs index 7efbf22e0..bc3d7c728 100644 --- a/ethcore/src/state/mod.rs +++ b/ethcore/src/state/mod.rs @@ -554,19 +554,17 @@ impl State { pub fn exists(&self, a: &Address) -> TrieResult { // Bloom filter does not contain empty accounts, so it is important here to // check if account exists in the database directly before EIP-161 is in effect. - self.ensure_cached(a, RequireCache::None, false, |a| a.is_some()) + self.ensure_cached(a, RequireCache::None, |a| a.is_some()) } /// Determine whether an account exists and if not empty. pub fn exists_and_not_null(&self, a: &Address) -> TrieResult { - self.ensure_cached(a, RequireCache::None, false, |a| { - a.map_or(false, |a| !a.is_null()) - }) + self.ensure_cached(a, RequireCache::None, |a| a.map_or(false, |a| !a.is_null())) } /// Determine whether an account exists and has code or non-zero nonce. pub fn exists_and_has_code_or_nonce(&self, a: &Address) -> TrieResult { - self.ensure_cached(a, RequireCache::CodeSize, false, |a| { + self.ensure_cached(a, RequireCache::CodeSize, |a| { a.map_or(false, |a| { a.code_hash() != KECCAK_EMPTY || *a.nonce() != self.account_start_nonce }) @@ -575,7 +573,7 @@ impl State { /// Get the balance of account `a`. pub fn balance(&self, a: &Address) -> TrieResult { - self.ensure_cached(a, RequireCache::None, true, |a| { + self.ensure_cached(a, RequireCache::None, |a| { a.as_ref() .map_or(U256::zero(), |account| *account.balance()) }) @@ -583,7 +581,7 @@ impl State { /// Get the nonce of account `a`. pub fn nonce(&self, a: &Address) -> TrieResult { - self.ensure_cached(a, RequireCache::None, true, |a| { + self.ensure_cached(a, RequireCache::None, |a| { a.as_ref() .map_or(self.account_start_nonce, |account| *account.nonce()) }) @@ -592,7 +590,7 @@ impl State { /// Whether the base storage root of an account remains unchanged. pub fn is_base_storage_root_unchanged(&self, a: &Address) -> TrieResult { Ok(self - .ensure_cached(a, RequireCache::None, true, |a| { + .ensure_cached(a, RequireCache::None, |a| { a.as_ref() .map(|account| account.is_base_storage_root_unchanged()) })? @@ -601,7 +599,7 @@ impl State { /// Get the storage root of account `a`. pub fn storage_root(&self, a: &Address) -> TrieResult> { - self.ensure_cached(a, RequireCache::None, true, |a| { + self.ensure_cached(a, RequireCache::None, |a| { a.as_ref().and_then(|account| account.storage_root()) }) } @@ -609,7 +607,7 @@ impl State { /// Get the original storage root since last commit of account `a`. pub fn original_storage_root(&self, a: &Address) -> TrieResult { Ok(self - .ensure_cached(a, RequireCache::None, true, |a| { + .ensure_cached(a, RequireCache::None, |a| { a.as_ref().map(|account| account.original_storage_root()) })? .unwrap_or(KECCAK_NULL_RLP)) @@ -755,11 +753,6 @@ impl State { } } - // check if the account could exist before any requests to trie - if self.db.is_known_null(address) { - return Ok(H256::zero()); - } - // account is not found in the global cache, get from the DB and insert into local let db = &self.db.as_hash_db(); let db = self @@ -802,21 +795,19 @@ impl State { /// Get accounts' code. pub fn code(&self, a: &Address) -> TrieResult>> { - self.ensure_cached(a, RequireCache::Code, true, |a| { + self.ensure_cached(a, RequireCache::Code, |a| { a.as_ref().map_or(None, |a| a.code().clone()) }) } /// Get an account's code hash. pub fn code_hash(&self, a: &Address) -> TrieResult> { - self.ensure_cached(a, RequireCache::None, true, |a| { - a.as_ref().map(|a| a.code_hash()) - }) + self.ensure_cached(a, RequireCache::None, |a| a.as_ref().map(|a| a.code_hash())) } /// Get accounts' code size. pub fn code_size(&self, a: &Address) -> TrieResult> { - self.ensure_cached(a, RequireCache::CodeSize, true, |a| { + self.ensure_cached(a, RequireCache::CodeSize, |a| { a.as_ref().and_then(|a| a.code_size()) }) } @@ -1021,9 +1012,6 @@ impl State { account.commit_storage(&self.factories.trie, account_db.as_hash_db_mut())?; account.commit_code(account_db.as_hash_db_mut()); } - if !account.is_empty() { - self.db.note_non_null_account(address); - } } } @@ -1208,7 +1196,7 @@ impl State { |m: TrieResult<_>, address| { let mut m = m?; - let account = self.ensure_cached(&address, RequireCache::Code, true, |acc| { + let account = self.ensure_cached(&address, RequireCache::Code, |acc| { acc.map(|acc| { // Merge all modified storage keys. let all_keys = { @@ -1324,13 +1312,7 @@ impl State { /// Check caches for required data /// First searches for account in the local, then the shared cache. /// Populates local cache if nothing found. - fn ensure_cached( - &self, - a: &Address, - require: RequireCache, - check_null: bool, - f: F, - ) -> TrieResult + fn ensure_cached(&self, a: &Address, require: RequireCache, f: F) -> TrieResult where F: Fn(Option<&Account>) -> U, { @@ -1365,11 +1347,6 @@ impl State { match result { Some(r) => Ok(r?), None => { - // first check if it is not in database for sure - if check_null && self.db.is_known_null(a) { - return Ok(f(None)); - } - // not found in the global cache, get from the DB and insert into local let db = &self.db.as_hash_db(); let db = self.factories.trie.readonly(db, &self.root)?; @@ -1424,15 +1401,11 @@ impl State { match self.db.get_cached_account(a) { Some(acc) => self.insert_cache(a, AccountEntry::new_clean_cached(acc)), None => { - let maybe_acc = if !self.db.is_known_null(a) { - let db = &self.db.as_hash_db(); - let db = self.factories.trie.readonly(db, &self.root)?; - let from_rlp = - |b: &[u8]| Account::from_rlp(b).expect("decoding db value failed"); - AccountEntry::new_clean(db.get_with(a, from_rlp)?) - } else { - AccountEntry::new_clean(None) - }; + let db = &self.db.as_hash_db(); + let db = self.factories.trie.readonly(db, &self.root)?; + let from_rlp = + |b: &[u8]| Account::from_rlp(b).expect("decoding db value failed"); + let maybe_acc = AccountEntry::new_clean(db.get_with(a, from_rlp)?); self.insert_cache(a, maybe_acc); } } diff --git a/ethcore/src/state_db.rs b/ethcore/src/state_db.rs index e31544d6d..cb7676e61 100644 --- a/ethcore/src/state_db.rs +++ b/ethcore/src/state_db.rs @@ -22,15 +22,11 @@ use std::{ sync::Arc, }; -use bloom_journal::{Bloom, BloomJournal}; -use byteorder::{ByteOrder, LittleEndian}; -use db::COL_ACCOUNT_BLOOM; use ethereum_types::{Address, H256}; -use hash::keccak; use hash_db::HashDB; use journaldb::JournalDB; use keccak_hasher::KeccakHasher; -use kvdb::{DBTransaction, DBValue, KeyValueDB}; +use kvdb::{DBTransaction, DBValue}; use lru_cache::LruCache; use memory_cache::MemoryLruCache; use parking_lot::Mutex; @@ -38,19 +34,6 @@ use types::BlockNumber; use state::{self, Account}; -/// Value used to initialize bloom bitmap size. -/// -/// Bitmap size is the size in bytes (not bits) that will be allocated in memory. -pub const ACCOUNT_BLOOM_SPACE: usize = 1048576; - -/// Value used to initialize bloom items count. -/// -/// Items count is an estimation of the maximum number of items to store. -pub const DEFAULT_ACCOUNT_PRESET: usize = 1000000; - -/// Key for a value storing amount of hashes -pub const ACCOUNT_BLOOM_HASHCOUNT_KEY: &'static [u8] = b"account_hash_count"; - const STATE_CACHE_BLOCKS: usize = 12; // The percentage of supplied cache size to go to accounts. @@ -116,8 +99,6 @@ pub struct StateDB { code_cache: Arc>>>>, /// Local dirty cache. local_cache: Vec, - /// Shared account bloom. Does not handle chain reorganizations. - account_bloom: Arc>, cache_size: usize, /// Hash of the block on top of which this instance was created or /// `None` if cache is disabled @@ -134,7 +115,6 @@ impl StateDB { // TODO: make the cache size actually accurate by moving the account storage cache // into the `AccountCache` structure as its own `LruCache<(Address, H256), H256>`. pub fn new(db: Box, cache_size: usize) -> StateDB { - let bloom = Self::load_bloom(&**db.backing()); let acc_cache_size = cache_size * ACCOUNT_CACHE_RATIO / 100; let code_cache_size = cache_size - acc_cache_size; let cache_items = acc_cache_size / ::std::mem::size_of::>(); @@ -147,7 +127,6 @@ impl StateDB { })), code_cache: Arc::new(Mutex::new(MemoryLruCache::new(code_cache_size))), local_cache: Vec::new(), - account_bloom: Arc::new(Mutex::new(bloom)), cache_size: cache_size, parent_hash: None, commit_hash: None, @@ -155,56 +134,6 @@ impl StateDB { } } - /// Loads accounts bloom from the database - /// This bloom is used to handle request for the non-existant account fast - pub fn load_bloom(db: &dyn KeyValueDB) -> Bloom { - let hash_count_entry = db - .get(COL_ACCOUNT_BLOOM, ACCOUNT_BLOOM_HASHCOUNT_KEY) - .expect("Low-level database error"); - - let hash_count_bytes = match hash_count_entry { - Some(bytes) => bytes, - None => return Bloom::new(ACCOUNT_BLOOM_SPACE, DEFAULT_ACCOUNT_PRESET), - }; - - assert_eq!(hash_count_bytes.len(), 1); - let hash_count = hash_count_bytes[0]; - - let mut bloom_parts = vec![0u64; ACCOUNT_BLOOM_SPACE / 8]; - let mut key = [0u8; 8]; - for i in 0..ACCOUNT_BLOOM_SPACE / 8 { - LittleEndian::write_u64(&mut key, i as u64); - bloom_parts[i] = db - .get(COL_ACCOUNT_BLOOM, &key) - .expect("low-level database error") - .and_then(|val| Some(LittleEndian::read_u64(&val[..]))) - .unwrap_or(0u64); - } - - let bloom = Bloom::from_parts(&bloom_parts, hash_count as u32); - trace!(target: "account_bloom", "Bloom is {:?} full, hash functions count = {:?}", bloom.saturation(), hash_count); - bloom - } - - /// Commit blooms journal to the database transaction - pub fn commit_bloom(batch: &mut DBTransaction, journal: BloomJournal) -> io::Result<()> { - assert!(journal.hash_functions <= 255); - batch.put( - COL_ACCOUNT_BLOOM, - ACCOUNT_BLOOM_HASHCOUNT_KEY, - &[journal.hash_functions as u8], - ); - let mut key = [0u8; 8]; - let mut val = [0u8; 8]; - - for (bloom_part_index, bloom_part_value) in journal.entries { - LittleEndian::write_u64(&mut key, bloom_part_index as u64); - LittleEndian::write_u64(&mut val, bloom_part_value); - batch.put(COL_ACCOUNT_BLOOM, &key, &val); - } - Ok(()) - } - /// Journal all recent operations under the given era and ID. pub fn journal_under( &mut self, @@ -212,10 +141,6 @@ impl StateDB { now: u64, id: &H256, ) -> io::Result { - { - let mut bloom_lock = self.account_bloom.lock(); - Self::commit_bloom(batch, bloom_lock.drain_journal())?; - } let records = self.db.journal_under(batch, now, id)?; self.commit_hash = Some(id.clone()); self.commit_number = Some(now); @@ -365,7 +290,6 @@ impl StateDB { account_cache: self.account_cache.clone(), code_cache: self.code_cache.clone(), local_cache: Vec::new(), - account_bloom: self.account_bloom.clone(), cache_size: self.cache_size, parent_hash: None, commit_hash: None, @@ -380,7 +304,6 @@ impl StateDB { account_cache: self.account_cache.clone(), code_cache: self.code_cache.clone(), local_cache: Vec::new(), - account_bloom: self.account_bloom.clone(), cache_size: self.cache_size, parent_hash: Some(parent.clone()), commit_hash: None, @@ -510,19 +433,6 @@ impl state::Backend for StateDB { cache.get_mut(hash).map(|code| code.clone()) } - - fn note_non_null_account(&self, address: &Address) { - trace!(target: "account_bloom", "Note account bloom: {:?}", address); - let mut bloom = self.account_bloom.lock(); - bloom.set(&*keccak(address)); - } - - fn is_known_null(&self, address: &Address) -> bool { - trace!(target: "account_bloom", "Check account bloom: {:?}", address); - let bloom = self.account_bloom.lock(); - let is_null = !bloom.check(&*keccak(address)); - is_null - } } /// Sync wrapper for the account. diff --git a/parity/db/rocksdb/migration.rs b/parity/db/rocksdb/migration.rs index 61ce30904..9ad64cc4e 100644 --- a/parity/db/rocksdb/migration.rs +++ b/parity/db/rocksdb/migration.rs @@ -47,7 +47,7 @@ pub const TO_V12: ChangeColumns = ChangeColumns { /// Database is assumed to be at default version, when no version file is found. const DEFAULT_VERSION: u32 = 5; /// Current version of database models. -const CURRENT_VERSION: u32 = 13; +const CURRENT_VERSION: u32 = 16; /// A version of database at which blooms-db was introduced const BLOOMS_DB_VERSION: u32 = 13; /// Defines how many items are migrated to the new version of database at once.