From df3fb7477011a14414e1752599a7d78aa661ff59 Mon Sep 17 00:00:00 2001 From: Park Juhyung Date: Tue, 7 Apr 2020 13:44:27 +0900 Subject: [PATCH] Use tokio --- Cargo.lock | 191 +++++++++++++++++++++++++++++++++---------------- rpc/Cargo.toml | 1 + 2 files changed, 131 insertions(+), 61 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cd11eda9d1..3d2e853d33 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -62,7 +62,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -77,6 +77,12 @@ dependencies = [ "xdg", ] +[[package]] +name = "arc-swap" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d663a8e9a99154b5fb793032533f6328da35e23aac63d5c152279aa8ba356825" + [[package]] name = "arrayvec" version = "0.4.7" @@ -94,7 +100,7 @@ checksum = "2fc4a1aa4c24c0718a250f0681885c1af91419d242f29eb8f2ab28502d80dbd1" dependencies = [ "libc", "termion", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -113,7 +119,7 @@ dependencies = [ "cfg-if", "libc", "rustc-demangle", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -228,6 +234,12 @@ dependencies = [ "iovec", ] +[[package]] +name = "bytes" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1" + [[package]] name = "c2-chacha" version = "0.2.2" @@ -569,6 +581,7 @@ dependencies = [ "serde_derive", "serde_json", "time", + "tokio 0.2.16", ] [[package]] @@ -822,7 +835,7 @@ dependencies = [ "openssl-sys", "pkg-config", "vcpkg", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -981,7 +994,7 @@ dependencies = [ "cfg-if", "libc", "redox_syscall", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1074,7 +1087,7 @@ dependencies = [ "lazy_static 1.2.0", "libc", "libloading", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1099,6 +1112,12 @@ version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2037ec1c6c1c4f79557762eab1f7eae1f64f6cb418ace90fae88f0942b60139" +[[package]] +name = "futures-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f25592f769825e89b92358db00d26f965761e094951ac44d3663ef25b7ac464a" + [[package]] name = "futures-cpupool" version = "0.1.8" @@ -1194,7 +1213,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b53def7bb0253af7718036fe9338c15defd209136819464384f3a553e07481b" dependencies = [ "byteorder", - "bytes", + "bytes 0.4.12", "fnv", "futures", "http", @@ -1211,7 +1230,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1245,7 +1264,7 @@ version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eed324f0f0daf6ec10c474f150505af2c143f251722bf9dbd1261bd1f2ee2c1a" dependencies = [ - "bytes", + "bytes 0.4.12", "fnv", "itoa", ] @@ -1290,7 +1309,7 @@ version = "0.12.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1ebec079129e43af5e234ef36ee3d7e6085687d145b7ea653b262d16c6b65f1" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "futures-cpupool", "h2", @@ -1301,7 +1320,7 @@ dependencies = [ "log 0.4.6", "net2", "time", - "tokio", + "tokio 0.1.17", "tokio-executor", "tokio-io", "tokio-reactor", @@ -1317,7 +1336,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a800d6aa50af4b5850b2b0f659625ce9504df908e9733b635720483be26174f" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "hyper 0.12.19", "native-tls", @@ -1360,12 +1379,11 @@ checksum = "141340095b15ed7491bd3d4ced9d20cebfb826174b6bb03386381f62b01e3d77" [[package]] name = "iovec" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" +checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" dependencies = [ "libc", - "winapi 0.2.8", ] [[package]] @@ -1392,7 +1410,7 @@ version = "14.0.3" source = "git+https://github.com/paritytech/jsonrpc.git?tag=v14.0.3#2135c25df57715238f1709365e3ea3bedc88e030" dependencies = [ "proc-macro-crate", - "proc-macro2 1.0.6", + "proc-macro2 1.0.10", "quote 1.0.2", "syn 1.0.7", ] @@ -1440,12 +1458,12 @@ name = "jsonrpc-server-utils" version = "14.0.3" source = "git+https://github.com/paritytech/jsonrpc.git?tag=v14.0.3#2135c25df57715238f1709365e3ea3bedc88e030" dependencies = [ - "bytes", + "bytes 0.4.12", "globset", "jsonrpc-core", "lazy_static 1.2.0", "log 0.4.6", - "tokio", + "tokio 0.1.17", "tokio-codec", "unicase 2.1.0", ] @@ -1564,7 +1582,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" dependencies = [ "cc", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1730,15 +1748,15 @@ dependencies = [ [[package]] name = "mio" -version = "0.6.16" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" +checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f" dependencies = [ + "cfg-if", "fuchsia-zircon", "fuchsia-zircon-sys", "iovec", "kernel32-sys", - "lazycell", "libc", "log 0.4.6", "miow 0.2.1", @@ -1768,7 +1786,7 @@ dependencies = [ "log 0.4.6", "mio", "miow 0.3.3", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1801,7 +1819,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "396aa0f2003d7df8395cb93e09871561ccc3e785f0acb369170e8cc74ddf9226" dependencies = [ "socket2", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -1839,7 +1857,7 @@ checksum = "9044faf1413a1057267be51b5afba8eb1090bd2231c693664aa1db716fe1eae0" dependencies = [ "cfg-if", "libc", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2013,16 +2031,16 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8281bf4f1d6429573f89589bf68d89451c46750977a8264f8ea3edbabeba7947" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "log 0.4.6", "mio-named-pipes", "miow 0.3.3", "rand 0.7.2", - "tokio", + "tokio 0.1.17", "tokio-named-pipes", "tokio-uds", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2056,7 +2074,7 @@ dependencies = [ "rand 0.5.5", "rustc_version", "smallvec 0.6.4", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2071,7 +2089,7 @@ dependencies = [ "redox_syscall", "rustc_version", "smallvec 0.6.4", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2135,6 +2153,12 @@ dependencies = [ "unicase 1.4.2", ] +[[package]] +name = "pin-project-lite" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "237844750cfbb86f67afe27eee600dfbbcb6188d734139b534cbfbf4f96792ae" + [[package]] name = "pkg-config" version = "0.3.14" @@ -2193,9 +2217,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.6" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27" +checksum = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3" dependencies = [ "unicode-xid 0.2.0", ] @@ -2239,7 +2263,7 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe" dependencies = [ - "proc-macro2 1.0.6", + "proc-macro2 1.0.10", ] [[package]] @@ -2250,7 +2274,7 @@ checksum = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" dependencies = [ "fuchsia-zircon", "libc", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2263,7 +2287,7 @@ dependencies = [ "fuchsia-zircon", "libc", "rand_core 0.2.2", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2282,7 +2306,7 @@ dependencies = [ "rand_pcg", "rand_xorshift", "rustc_version", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2427,7 +2451,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2437,7 +2461,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab52e462d1e15891441aeefadff68bdea005174328ce3da0a314f2ad313ec837" dependencies = [ "base64", - "bytes", + "bytes 0.4.12", "encoding_rs", "futures", "http", @@ -2451,7 +2475,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "tokio", + "tokio 0.1.17", "tokio-io", "url 1.7.2", "uuid", @@ -2468,7 +2492,7 @@ dependencies = [ "libc", "spin", "untrusted", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2579,7 +2603,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339" dependencies = [ "lazy_static 1.2.0", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2752,6 +2776,16 @@ dependencies = [ "winapi-build", ] +[[package]] +name = "signal-hook-registry" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f478ede9f64724c5d173d7bb56099ec3e2d9fc2774aac65d34b8b890405f41" +dependencies = [ + "arc-swap", + "libc", +] + [[package]] name = "siphasher" version = "0.2.3" @@ -2814,7 +2848,7 @@ dependencies = [ "cfg-if", "libc", "redox_syscall", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -2901,7 +2935,7 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e7bedb3320d0f3035594b0b723c8a28d7d336a3eda3881db79e61d676fb644c" dependencies = [ - "proc-macro2 1.0.6", + "proc-macro2 1.0.10", "quote 1.0.2", "unicode-xid 0.2.0", ] @@ -2955,7 +2989,7 @@ dependencies = [ "rand 0.7.2", "redox_syscall", "remove_dir_all", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -3013,7 +3047,7 @@ checksum = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" dependencies = [ "libc", "redox_syscall", - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -3040,7 +3074,7 @@ version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1021bb1f4150435ab8f222eb7ed37c60b2d57037def63ba43085a79f387512d7" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "mio", "num_cpus", @@ -3059,13 +3093,37 @@ dependencies = [ "tokio-uds", ] +[[package]] +name = "tokio" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee5a0dd887e37d37390c13ff8ac830f992307fe30a1fff0ab8427af67211ba28" +dependencies = [ + "bytes 0.5.4", + "fnv", + "futures-core", + "iovec", + "lazy_static 1.2.0", + "libc", + "memchr", + "mio", + "mio-named-pipes", + "mio-uds", + "num_cpus", + "pin-project-lite", + "signal-hook-registry", + "slab 0.4.2", + "tokio-macros", + "winapi 0.3.8", +] + [[package]] name = "tokio-codec" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "tokio-io", ] @@ -3076,13 +3134,13 @@ version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aeeffbbb94209023feaef3c196a41cbcdafa06b4a6f893f68779bb5e53796f71" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "iovec", "log 0.4.6", "mio", "scoped-tls", - "tokio", + "tokio 0.1.17", "tokio-executor", "tokio-io", "tokio-reactor", @@ -3126,22 +3184,33 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "log 0.4.6", ] +[[package]] +name = "tokio-macros" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0c3acc6aa564495a0f2e1d59fab677cd7f81a19994cfc7f3ad0e64301560389" +dependencies = [ + "proc-macro2 1.0.10", + "quote 1.0.2", + "syn 1.0.7", +] + [[package]] name = "tokio-named-pipes" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d282d483052288b2308ba5ee795f5673b159c9bdf63c385a05609da782a5eae" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "mio", "mio-named-pipes", - "tokio", + "tokio 0.1.17", ] [[package]] @@ -3183,7 +3252,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec9b094851aadd2caf83ba3ad8e8c4ce65a42104f7b94d9e6550023f0407853f" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "iovec", "mio", @@ -3234,7 +3303,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "137bda266504893ac4774e0ec4c2108f7ccdbcb7ac8dced6305fe9e4e0b5041a" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "log 0.4.6", "mio", @@ -3248,7 +3317,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" dependencies = [ - "bytes", + "bytes 0.4.12", "futures", "iovec", "libc", @@ -3480,9 +3549,9 @@ checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" [[package]] name = "winapi" -version = "0.3.6" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" +checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" dependencies = [ "winapi-i686-pc-windows-gnu", "winapi-x86_64-pc-windows-gnu", @@ -3506,7 +3575,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afc5508759c5bf4285e61feb862b6083c8480aec864fa17a81fdec6f69b461ab" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -3521,7 +3590,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eeb06499a3a4d44302791052df005d5232b927ed1a9658146d842165c4de7767" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", ] [[package]] @@ -3530,7 +3599,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "561ed901ae465d6185fa7864d63fbd5720d0ef718366c9a4dc83cf6170d7e9ba" dependencies = [ - "winapi 0.3.6", + "winapi 0.3.8", "winapi-util", ] @@ -3541,7 +3610,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c51a2c47b5798ccc774ffb93ff536aec7c4275d722fd9c740c83cdd1af1f2d94" dependencies = [ "byteorder", - "bytes", + "bytes 0.4.12", "httparse", "log 0.4.6", "mio", diff --git a/rpc/Cargo.toml b/rpc/Cargo.toml index c5c0b717ea..a7d0e95f0b 100644 --- a/rpc/Cargo.toml +++ b/rpc/Cargo.toml @@ -20,6 +20,7 @@ codechain-types = { path = "../types" } kvdb = "0.1" lazy_static = "1.2" log = "0.4.6" +tokio = { version = "0.2.13", features = ["full"] } parking_lot = "0.6.0" primitives = { git = "https://github.com/CodeChain-io/rust-codechain-primitives.git", version = "0.4" } rlp = { git = "https://github.com/CodeChain-io/rlp.git", version = "0.4" }