From e3e2839f53956e64e0eb1ecfc14b165c06482714 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 16:08:53 +0200 Subject: [PATCH 01/10] chore: update deps Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- Cargo.lock | 1091 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 653 insertions(+), 438 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b37cbbc6e..2c332138d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,9 +2,9 @@ # It is not intended for manual editing. [[package]] name = "aho-corasick" -version = "0.7.10" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada" +checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86" dependencies = [ "memchr", ] @@ -20,18 +20,15 @@ dependencies = [ [[package]] name = "arc-swap" -version = "0.3.11" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc4662175ead9cd84451d5c35070517777949a2ed84551764129cedb88384841" +checksum = "4d25d88fd6b8041580a654f9d0c581a047baee2b3efee13275f2fc392fc75034" [[package]] name = "arrayvec" -version = "0.4.12" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9" -dependencies = [ - "nodrop", -] +checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8" [[package]] name = "ascii" @@ -41,9 +38,9 @@ checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" [[package]] name = "assert-json-diff" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c356497fd3417158bcb318266ac83c391219ca3a5fa659049f42e0041ab57d6" +checksum = "4259cbe96513d2f1073027a259fc2ca917feb3026a5a8d984e3628e490255cc0" dependencies = [ "extend", "serde", @@ -52,15 +49,24 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.30" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da71fef07bc806586090247e971229289f64c210a278ee5ae419314eb386b31d" +checksum = "687c230d85c0a52504709705fc8a53e4a692b83a2184f03dae73e38e1e93a783" dependencies = [ "proc-macro2", "quote", "syn", ] +[[package]] +name = "atomic-shim" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d20fdac7156779a1a30d970e838195558b4810dd06aa69e7c7461bdc518edf9b" +dependencies = [ + "crossbeam", +] + [[package]] name = "atty" version = "0.2.14" @@ -69,14 +75,14 @@ checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ "hermit-abi", "libc", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] name = "autocfg" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" +checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" [[package]] name = "base64" @@ -95,9 +101,9 @@ checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7" [[package]] name = "base64" -version = "0.12.0" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5ca2cd0adc3f48f9e9ea5a6bbdf9ccc0bfade884847e484d452414c7ccffb3" +checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "bitflags" @@ -105,6 +111,15 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" +[[package]] +name = "bitmaps" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" +dependencies = [ + "typenum", +] + [[package]] name = "block-buffer" version = "0.7.3" @@ -114,7 +129,16 @@ dependencies = [ "block-padding", "byte-tools", "byteorder", - "generic-array", + "generic-array 0.12.3", +] + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array 0.14.4", ] [[package]] @@ -128,9 +152,9 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2889e6d50f394968c8bf4240dc3f2a7eb4680844d27308f798229ac9d4725f41" +checksum = "31accafdb70df7871592c058eca3985b71104e15ac32f64706022c58867da931" dependencies = [ "lazy_static", "memchr", @@ -140,9 +164,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.2.1" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12ae9db68ad7fac5fe51304d20f016c911539251075a214f8e663babefa35187" +checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" [[package]] name = "byte-tools" @@ -170,9 +194,9 @@ dependencies = [ [[package]] name = "bytes" -version = "0.5.4" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1" +checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" dependencies = [ "serde", ] @@ -188,9 +212,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.50" +version = "1.0.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd" +checksum = "ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c" [[package]] name = "cfg-if" @@ -200,20 +224,22 @@ checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" [[package]] name = "chrono" -version = "0.4.11" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80094f509cf8b5ae86a4966a39b3ff66cd7e2a3e594accec3743ff3fabeab5b2" +checksum = "d021fddb7bd3e734370acfa4a83f34095571d8570c039f1420d77540f68d5772" dependencies = [ + "libc", "num-integer", "num-traits", "time", + "winapi 0.3.9", ] [[package]] name = "clap" -version = "2.33.0" +version = "2.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9" +checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" dependencies = [ "bitflags", "textwrap", @@ -272,18 +298,24 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" +[[package]] +name = "cpuid-bool" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" + [[package]] name = "criterion" -version = "0.3.1" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc755679c12bda8e5523a71e4d654b6bf2e14bd838dfc48cde6559a05caf7d1" +checksum = "70daa7ceec6cf143990669a04c7df13391d55fb27bd4079d252fca774ba244d8" dependencies = [ "atty", "cast", "clap", "criterion-plot", "csv", - "itertools", + "itertools 0.9.0", "lazy_static", "num-traits", "oorandom", @@ -291,6 +323,7 @@ dependencies = [ "rayon", "regex", "serde", + "serde_cbor", "serde_derive", "serde_json", "tinytemplate", @@ -299,12 +332,36 @@ dependencies = [ [[package]] name = "criterion-plot" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01e15e0ea58e8234f96146b1f91fa9d0e4dd7a38da93ff7a75d42c0b9d3a545" +checksum = "e022feadec601fba1649cfa83586381a4ad31c6bf3a9ab7d408118b05dd9889d" dependencies = [ "cast", - "itertools", + "itertools 0.9.0", +] + +[[package]] +name = "crossbeam" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69323bff1fb41c635347b8ead484a5ca6c3f11914d784170b158d8449ab07f8e" +dependencies = [ + "cfg-if", + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-channel" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" +dependencies = [ + "crossbeam-utils", + "maybe-uninit", ] [[package]] @@ -314,7 +371,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" dependencies = [ "crossbeam-epoch", - "crossbeam-utils 0.7.2", + "crossbeam-utils", "maybe-uninit", ] @@ -326,7 +383,7 @@ checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" dependencies = [ "autocfg", "cfg-if", - "crossbeam-utils 0.7.2", + "crossbeam-utils", "lazy_static", "maybe-uninit", "memoffset", @@ -335,22 +392,13 @@ dependencies = [ [[package]] name = "crossbeam-queue" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c695eeca1e7173472a32221542ae469b3e9aac3a4fc81f7696bcad82029493db" -dependencies = [ - "cfg-if", - "crossbeam-utils 0.7.2", -] - -[[package]] -name = "crossbeam-utils" -version = "0.6.6" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6" +checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" dependencies = [ "cfg-if", - "lazy_static", + "crossbeam-utils", + "maybe-uninit", ] [[package]] @@ -395,6 +443,16 @@ dependencies = [ "sct", ] +[[package]] +name = "ctor" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fbaabec2c953050352311293be5c6aba8e141ba19d6811862b232d6fd020484" +dependencies = [ + "quote", + "syn", +] + [[package]] name = "difference" version = "2.0.0" @@ -407,26 +465,35 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" dependencies = [ - "generic-array", + "generic-array 0.12.3", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array 0.14.4", ] [[package]] name = "dtoa" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3" +checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b" [[package]] name = "either" -version = "1.5.3" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3" +checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "encoding_rs" -version = "0.8.22" +version = "0.8.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd8d03faa7fe0c1431609dfad7bbe827af30f82e1e2ae6f7ee4fca6bd764bc28" +checksum = "a51b8cf747471cb9499b6d59e59b0444f4c90eba8968c4e44874e92b5b64ace2" dependencies = [ "cfg-if", ] @@ -437,14 +504,14 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36" dependencies = [ - "log 0.4.8", + "log 0.4.11", ] [[package]] name = "extend" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9db393664b0e6c6230a14115e7e798f80b70f54038dc21165db24c6b7f28fc" +checksum = "f47da3a72ec598d9c8937a7ebca8962a5c7a1f28444e38c2b33c771ba3f55f05" dependencies = [ "proc-macro-error", "proc-macro2", @@ -460,9 +527,9 @@ checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" [[package]] name = "fnv" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foreign-types" @@ -509,9 +576,9 @@ checksum = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef" [[package]] name = "futures" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c329ae8753502fb44ae4fc2b622fa2a94652c41e795143765ba0927f92ab780" +checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613" dependencies = [ "futures-channel", "futures-core", @@ -524,9 +591,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0c77d04ce8edd9cb903932b608268b3fffec4163dc053b3b402bf47eac1f1a8" +checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5" dependencies = [ "futures-core", "futures-sink", @@ -534,9 +601,9 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f25592f769825e89b92358db00d26f965761e094951ac44d3663ef25b7ac464a" +checksum = "59f5fff90fd5d971f936ad674802482ba441b6f09ba5e15fd8b39145582ca399" [[package]] name = "futures-cpupool" @@ -550,9 +617,9 @@ dependencies = [ [[package]] name = "futures-executor" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f674f3e1bcb15b37284a90cedf55afdba482ab061c407a9c0ebbd0f3109741ba" +checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314" dependencies = [ "futures-core", "futures-task", @@ -561,15 +628,15 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a638959aa96152c7a4cddf50fcb1e3fede0583b27157c26e67d6f99904090dc6" +checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789" [[package]] name = "futures-macro" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7" +checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39" dependencies = [ "proc-macro-hack", "proc-macro2", @@ -583,28 +650,31 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc9a95ec273db7b9d07559e25f9cd75074fee2f437f1e502b0c3b610d129d554" dependencies = [ - "futures 0.3.4", + "futures 0.3.5", "pin-project", - "tokio 0.2.18", + "tokio 0.2.22", ] [[package]] name = "futures-sink" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3466821b4bc114d95b087b850a724c6f83115e929bc88f1fa98a3304a944c8a6" +checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc" [[package]] name = "futures-task" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0a34e53cf6cdcd0178aa573aed466b646eb3db769570841fda0c7ede375a27" +checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626" +dependencies = [ + "once_cell", +] [[package]] name = "futures-util" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22766cf25d64306bedf0384da004d05c9974ab104fcc4528f1236181c18004c5" +checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6" dependencies = [ "futures 0.1.29", "futures-channel", @@ -614,6 +684,7 @@ dependencies = [ "futures-sink", "futures-task", "memchr", + "pin-project", "pin-utils", "proc-macro-hack", "proc-macro-nested", @@ -629,15 +700,25 @@ dependencies = [ "typenum", ] +[[package]] +name = "generic-array" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "501466ecc8a30d1d3b7fc9229b122b2ce8ed6e9d9223f1138d4babb253e51817" +dependencies = [ + "typenum", + "version_check", +] + [[package]] name = "getrandom" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb" +checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6" dependencies = [ "cfg-if", "libc", - "wasi", + "wasi 0.9.0+wasi-snapshot-preview1", ] [[package]] @@ -652,7 +733,7 @@ dependencies = [ "futures 0.1.29", "http 0.1.21", "indexmap", - "log 0.4.8", + "log 0.4.11", "slab", "string", "tokio-io", @@ -660,23 +741,35 @@ dependencies = [ [[package]] name = "h2" -version = "0.2.4" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "377038bf3c89d18d6ca1431e7a5027194fbd724ca10592b9487ede5e8e144f42" +checksum = "993f9e0baeed60001cf565546b0d3dbe6a6ad23f2bd31644a133c641eccf6d53" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "fnv", "futures-core", "futures-sink", "futures-util", "http 0.2.1", "indexmap", - "log 0.4.8", "slab", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-util 0.3.1", + "tracing", ] +[[package]] +name = "half" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d36fab90f82edc3c747f9d438e06cf0a491055896f2a279638bb5beed6c40177" + +[[package]] +name = "hashbrown" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" + [[package]] name = "hdrhistogram" version = "6.3.4" @@ -693,13 +786,13 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed18eb2459bf1a09ad2d6b1547840c3e5e62882fa09b9a6a20b1de8e3228848f" dependencies = [ - "base64 0.12.0", + "base64 0.12.3", "bitflags", - "bytes 0.5.4", + "bytes 0.5.6", "headers-core", "http 0.2.1", "mime", - "sha-1", + "sha-1 0.8.2", "time", ] @@ -714,9 +807,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.1.10" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "725cf19794cf90aa94e65050cb4191ff5d8fa87a498383774c47b332e3af952e" +checksum = "4c30f6d0bc6b00693347368a67d41b58f2fb851215ff1da49e90fe2c5c667151" dependencies = [ "libc", ] @@ -744,7 +837,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "fnv", "itoa", ] @@ -767,7 +860,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "http 0.2.1", ] @@ -777,6 +870,12 @@ version = "1.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9" +[[package]] +name = "httpdate" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" + [[package]] name = "hyper" version = "0.12.35" @@ -792,7 +891,7 @@ dependencies = [ "httparse", "iovec", "itoa", - "log 0.4.8", + "log 0.4.11", "net2", "rustc_version", "time", @@ -809,25 +908,25 @@ dependencies = [ [[package]] name = "hyper" -version = "0.13.4" +version = "0.13.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed6081100e960d9d74734659ffc9cc91daf1c0fc7aceb8eaa94ee1a3f5046f2e" +checksum = "2f3afcfae8af5ad0576a31e768415edb627824129e8e5a29b8bfccb2f234e835" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "futures-channel", "futures-core", "futures-util", - "h2 0.2.4", + "h2 0.2.6", "http 0.2.1", "http-body 0.3.1", "httparse", + "httpdate", "itoa", - "log 0.4.8", - "net2", "pin-project", - "time", - "tokio 0.2.18", + "socket2", + "tokio 0.2.22", "tower-service", + "tracing", "want 0.3.0", ] @@ -850,14 +949,14 @@ dependencies = [ [[package]] name = "hyper-tls" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3adcd308402b9553630734e9c36b77a7e48b3821251ca2493e8cd596763aafaa" +checksum = "d979acc56dcb5b8dddba3917601745e877576475aa046df3226eabdecef78eed" dependencies = [ - "bytes 0.5.4", - "hyper 0.13.4", + "bytes 0.5.6", + "hyper 0.13.8", "native-tls", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-tls", ] @@ -893,7 +992,7 @@ dependencies = [ "serde", "serde_json", "thiserror", - "tungstenite", + "tungstenite 0.10.1", "url 2.1.1", ] @@ -904,12 +1003,12 @@ dependencies = [ "approx", "base64 0.11.0", "bytes 0.4.12", - "bytes 0.5.4", + "bytes 0.5.6", "cfg-if", "chrono", "clap", "config", - "futures 0.3.4", + "futures 0.3.5", "hex", "interledger", "libc", @@ -927,11 +1026,13 @@ dependencies = [ "secrecy", "serde", "serde_json", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-retry", "tracing", + "tracing-appender", "tracing-futures", "tracing-subscriber", + "tungstenite 0.10.1", "url 2.1.1", "uuid", "warp", @@ -940,22 +1041,26 @@ dependencies = [ [[package]] name = "im" -version = "12.3.4" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de38d1511a0ce7677538acb1e31b5df605147c458e061b2cdb89858afb1cd182" +checksum = "111c1983f3c5bb72732df25cddacee9b546d08325fb584b5ebd38148be7b0246" dependencies = [ - "rustc_version", + "bitmaps", + "rand_core 0.5.1", + "rand_xoshiro", "sized-chunks", "typenum", + "version_check", ] [[package]] name = "indexmap" -version = "1.3.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "076f042c5b7b98f31d205f1249267e12a6518c1481e9dae9764af19b707d2292" +checksum = "55e2e4c765aa53a0424761bf9f41aa7a6ac1efa87238f59560640e27fca028f2" dependencies = [ "autocfg", + "hashbrown", ] [[package]] @@ -964,7 +1069,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19a8a95243d5a0398cae618ec29477c6e3cb631152be5c19481f80bc71559754" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", ] [[package]] @@ -993,8 +1098,8 @@ name = "interledger-api" version = "1.0.0" dependencies = [ "async-trait", - "bytes 0.5.4", - "futures 0.3.4", + "bytes 0.5.6", + "futures 0.3.5", "futures-retry", "http 0.2.1", "interledger-btp", @@ -1015,7 +1120,7 @@ dependencies = [ "secrecy", "serde", "serde_json", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "url 2.1.1", "uuid", @@ -1030,7 +1135,7 @@ dependencies = [ "byteorder", "bytes 0.4.12", "chrono", - "futures 0.3.4", + "futures 0.3.5", "hex", "interledger-errors", "interledger-packet", @@ -1044,10 +1149,10 @@ dependencies = [ "secrecy", "stream-cancel", "thiserror", - "tokio 0.2.18", - "tokio-tungstenite", + "tokio 0.2.22", + "tokio-tungstenite 0.10.1", "tracing", - "tungstenite", + "tungstenite 0.10.1", "url 2.1.1", "uuid", "warp", @@ -1060,7 +1165,7 @@ dependencies = [ "async-trait", "byteorder", "bytes 0.4.12", - "futures 0.3.4", + "futures 0.3.5", "hex", "interledger-errors", "interledger-packet", @@ -1069,7 +1174,7 @@ dependencies = [ "parking_lot 0.10.2", "ring", "serde", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "uuid", ] @@ -1097,8 +1202,8 @@ name = "interledger-http" version = "1.0.0" dependencies = [ "async-trait", - "bytes 0.5.4", - "futures 0.3.4", + "bytes 0.5.6", + "futures 0.3.5", "http 0.2.1", "interledger-errors", "interledger-packet", @@ -1110,7 +1215,7 @@ dependencies = [ "serde", "serde_json", "serde_path_to_error", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "url 2.1.1", "uuid", @@ -1124,11 +1229,11 @@ dependencies = [ "async-trait", "byteorder", "bytes 0.4.12", - "futures 0.3.4", + "futures 0.3.5", "interledger-packet", "interledger-service", "once_cell", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "uuid", ] @@ -1139,7 +1244,7 @@ version = "1.0.0" dependencies = [ "byteorder", "bytes 0.4.12", - "bytes 0.5.4", + "bytes 0.5.6", "chrono", "criterion", "hex", @@ -1155,13 +1260,13 @@ name = "interledger-rates" version = "1.0.0" dependencies = [ "async-trait", - "futures 0.3.4", + "futures 0.3.5", "interledger-errors", "once_cell", "reqwest", "secrecy", "serde", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", ] @@ -1175,7 +1280,7 @@ dependencies = [ "interledger-service", "once_cell", "parking_lot 0.10.2", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "uuid", ] @@ -1185,7 +1290,7 @@ name = "interledger-service" version = "1.0.0" dependencies = [ "async-trait", - "futures 0.3.4", + "futures 0.3.5", "interledger-errors", "interledger-packet", "once_cell", @@ -1205,9 +1310,9 @@ dependencies = [ "async-trait", "byteorder", "bytes 0.4.12", - "bytes 0.5.4", + "bytes 0.5.6", "chrono", - "futures 0.3.4", + "futures 0.3.5", "hex", "interledger-errors", "interledger-packet", @@ -1221,7 +1326,7 @@ dependencies = [ "ring", "secrecy", "serde", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "url 2.1.1", "uuid", @@ -1232,12 +1337,12 @@ name = "interledger-settlement" version = "1.0.0" dependencies = [ "async-trait", - "bytes 0.5.4", + "bytes 0.5.6", "env_logger", - "futures 0.3.4", + "futures 0.3.5", "futures-retry", "http 0.2.1", - "hyper 0.13.4", + "hyper 0.13.8", "interledger-errors", "interledger-http", "interledger-packet", @@ -1254,7 +1359,7 @@ dependencies = [ "ring", "serde", "serde_json", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "url 2.1.1", "uuid", @@ -1267,9 +1372,9 @@ version = "1.0.0" dependencies = [ "base64 0.11.0", "bytes 0.4.12", - "bytes 0.5.4", - "futures 0.3.4", - "hyper 0.13.4", + "bytes 0.5.6", + "futures 0.3.5", + "hyper 0.13.8", "interledger-packet", "interledger-rates", "interledger-service", @@ -1278,7 +1383,7 @@ dependencies = [ "serde", "serde_json", "thiserror", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", ] @@ -1287,9 +1392,9 @@ name = "interledger-store" version = "1.0.0" dependencies = [ "async-trait", - "bytes 0.5.4", + "bytes 0.5.6", "env_logger", - "futures 0.3.4", + "futures 0.3.5", "http 0.2.1", "interledger-api", "interledger-btp", @@ -1315,7 +1420,7 @@ dependencies = [ "serde", "serde_json", "thiserror", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "url 2.1.1", "uuid", @@ -1332,7 +1437,7 @@ dependencies = [ "bytes 0.4.12", "chrono", "csv", - "futures 0.3.4", + "futures 0.3.5", "hex", "interledger-errors", "interledger-packet", @@ -1347,7 +1452,7 @@ dependencies = [ "ring", "serde", "thiserror", - "tokio 0.2.18", + "tokio 0.2.22", "tracing", "uuid", ] @@ -1361,6 +1466,12 @@ dependencies = [ "libc", ] +[[package]] +name = "ipnet" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135" + [[package]] name = "itertools" version = "0.8.2" @@ -1370,17 +1481,26 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" +dependencies = [ + "either", +] + [[package]] name = "itoa" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e" +checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" [[package]] name = "js-sys" -version = "0.3.37" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a27d435371a2fa5b6d2b028a74bbdb1234f308da363226a2854ca3ff8ba7055" +checksum = "ca059e81d9486668f12d455a4ea6daa600bd408134cd17e3d3fb5a32d1f016f8" dependencies = [ "wasm-bindgen", ] @@ -1403,28 +1523,28 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "lexical-core" -version = "0.6.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7043aa5c05dd34fb73b47acb8c3708eac428de4545ea3682ed2f11293ebd890" +checksum = "db65c6da02e61f55dae90a0ae427b2a5f6b3e8db09f58d10efab23af92592616" dependencies = [ "arrayvec", + "bitflags", "cfg-if", - "rustc_version", "ryu", "static_assertions", ] [[package]] name = "libc" -version = "0.2.69" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99e85c08494b21a9054e7fe1374a732aeadaff3980b6990b94bfd3a70f690005" +checksum = "f2f96b10ec2560088a8e76961b00d47107b3a625fecb76dedb29ee7ccbf98235" [[package]] name = "linked-hash-map" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" +checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a" [[package]] name = "lock_api" @@ -1441,14 +1561,14 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" dependencies = [ - "log 0.4.8", + "log 0.4.11", ] [[package]] name = "log" -version = "0.4.8" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" +checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b" dependencies = [ "cfg-if", ] @@ -1482,9 +1602,9 @@ checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" [[package]] name = "memoffset" -version = "0.5.4" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8" +checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" dependencies = [ "autocfg", ] @@ -1506,9 +1626,9 @@ checksum = "7c064b3a1ff41f4bf6c91185c8a0caeccf8a8a27e9d0f92cc54cf3dbec812f48" [[package]] name = "metrics-observer-prometheus" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f9bb94f40e189c87cf70ef1c78815b949ab9d28fe76ebb81f15f79bd19a33d6" +checksum = "4bfe24ad8285ef8b239232135a65f89cc5fa4690bbfaf8907f4bef38f8b08eba" dependencies = [ "hdrhistogram", "metrics-core", @@ -1517,18 +1637,19 @@ dependencies = [ [[package]] name = "metrics-runtime" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "beb3035626782c533953bcc1a349467543b7f0e9d7b0c92edc61ee2bda7033d6" +checksum = "ce0e4f69639ccc0c6b2f0612164f9817349eb25545ed1ffb5ef3e1e1c1d220b4" dependencies = [ "arc-swap", - "crossbeam-utils 0.6.6", + "atomic-shim", + "crossbeam-utils", "im", "metrics", "metrics-core", "metrics-observer-prometheus", "metrics-util", - "parking_lot 0.9.0", + "parking_lot 0.10.2", "quanta", ] @@ -1560,9 +1681,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.6.21" +version = "0.6.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f" +checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430" dependencies = [ "cfg-if", "fuchsia-zircon", @@ -1570,7 +1691,7 @@ dependencies = [ "iovec", "kernel32-sys", "libc", - "log 0.4.8", + "log 0.4.11", "miow", "net2", "slab", @@ -1579,9 +1700,9 @@ dependencies = [ [[package]] name = "mio-uds" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" +checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0" dependencies = [ "iovec", "libc", @@ -1610,7 +1731,7 @@ dependencies = [ "difference", "httparse", "lazy_static", - "log 0.4.8", + "log 0.4.11", "percent-encoding 2.1.0", "rand 0.7.3", "regex", @@ -1625,7 +1746,7 @@ checksum = "2b0d88c06fe90d5ee94048ba40409ef1d9315d86f6f38c2efdaad4fb50c58b2d" dependencies = [ "lazy_static", "libc", - "log 0.4.8", + "log 0.4.11", "openssl", "openssl-probe", "openssl-sys", @@ -1637,26 +1758,20 @@ dependencies = [ [[package]] name = "net2" -version = "0.2.33" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" +checksum = "3ebc3ec692ed7c9a255596c67808dee269f64655d8baf7b4f0638e51ba1d6853" dependencies = [ "cfg-if", "libc", - "winapi 0.3.8", + "winapi 0.3.9", ] -[[package]] -name = "nodrop" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" - [[package]] name = "nom" -version = "5.1.1" +version = "5.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b471253da97532da4b61552249c521e01e736071f71c1a4f7ebbfbf0a06aad6" +checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af" dependencies = [ "lexical-core", "memchr", @@ -1700,9 +1815,9 @@ dependencies = [ [[package]] name = "num-integer" -version = "0.1.42" +version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f6ea62e9d81a77cd3ee9a2a5b9b609447857f3d358704331e4ef39eb247fcba" +checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b" dependencies = [ "autocfg", "num-traits", @@ -1710,9 +1825,9 @@ dependencies = [ [[package]] name = "num-iter" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb0800a0291891dd9f4fe7bd9c19384f98f7fbe0cd0f39a2c6b88b9868bbc00" +checksum = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f" dependencies = [ "autocfg", "num-integer", @@ -1733,18 +1848,18 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096" +checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46203554f085ff89c235cd12f7075f3233af9b11ed7c9e16dfe2560d03313ce6" +checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" dependencies = [ "hermit-abi", "libc", @@ -1752,15 +1867,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.3.1" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c601810575c99596d4afc46f78a678c80105117c379eb3650cf99b8a21ce5b" +checksum = "260e51e7efe62b592207e9e13a68e43692a7a279171d6ba57abd208bf23645ad" [[package]] name = "oorandom" -version = "11.1.0" +version = "11.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebcec7c9c2a95cacc7cd0ecb89d8a8454eca13906f6deb55258ffff0adeb9405" +checksum = "a170cebd8021a008ea92e4db85a72f80b35df514ec664b296fdcbb654eac0b2c" [[package]] name = "opaque-debug" @@ -1768,11 +1883,17 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" +[[package]] +name = "opaque-debug" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" + [[package]] name = "openssl" -version = "0.10.29" +version = "0.10.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cee6d85f4cb4c4f59a6a85d5b68a233d280c82e29e822913b9c8b129fbf20bdd" +checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4" dependencies = [ "bitflags", "cfg-if", @@ -1790,9 +1911,9 @@ checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" [[package]] name = "openssl-sys" -version = "0.9.55" +version = "0.9.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7717097d810a0f2e2323f9e5d11e71608355e24828410b55b9d4f18aa5f9a5d8" +checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de" dependencies = [ "autocfg", "cc", @@ -1828,7 +1949,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" dependencies = [ "lock_api", - "parking_lot_core 0.7.1", + "parking_lot_core 0.7.2", ] [[package]] @@ -1843,21 +1964,21 @@ dependencies = [ "redox_syscall", "rustc_version", "smallvec 0.6.13", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] name = "parking_lot_core" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e136c1904604defe99ce5fd71a28d473fa60a12255d511aa78a9ddf11237aeb" +checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" dependencies = [ "cfg-if", "cloudabi", "libc", "redox_syscall", - "smallvec 1.3.0", - "winapi 0.3.8", + "smallvec 1.4.2", + "winapi 0.3.9", ] [[package]] @@ -1874,18 +1995,18 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] name = "pin-project" -version = "0.4.9" +version = "0.4.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f6a7f5eee6292c559c793430c55c00aea9d3b3d1905e855806ca4d7253426a2" +checksum = "f48fad7cfbff853437be7cf54d7b993af21f53be7f0988cbfe4a51535aa77205" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "0.4.9" +version = "0.4.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8988430ce790d8682672117bc06dda364c0be32d3abd738234f19f3240bad99a" +checksum = "24c6d293bdd3ca5a1697997854c6cf7855e43fb6a0ba1c47af57a5bcafd158ae" dependencies = [ "proc-macro2", "quote", @@ -1894,27 +2015,27 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.1.4" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "237844750cfbb86f67afe27eee600dfbbcb6188d734139b534cbfbf4f96792ae" +checksum = "4fe74897791e156a0cd8cce0db31b9b2198e67877316bf3086c3acd187f719f0" [[package]] name = "pin-utils" -version = "0.1.0-alpha.4" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.17" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677" +checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33" [[package]] name = "plotters" -version = "0.2.12" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e3bb8da247d27ae212529352020f3e5ee16e83c0c258061d27b08ab92675eeb" +checksum = "0d1685fbe7beba33de0330629da9d955ac75bd54f33d7b79f9a895590124f6bb" dependencies = [ "js-sys", "num-traits", @@ -1924,15 +2045,15 @@ dependencies = [ [[package]] name = "ppv-lite86" -version = "0.2.6" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b" +checksum = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20" [[package]] name = "proc-macro-error" -version = "0.4.12" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18f33027081eba0a6d8aba6d1b1c3a3be58cbb12106341c2d5759fcd9b5277e7" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", "proc-macro2", @@ -1943,53 +2064,53 @@ dependencies = [ [[package]] name = "proc-macro-error-attr" -version = "0.4.12" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a5b4b77fdb63c1eca72173d68d24501c54ab1269409f6b672c85deb18af69de" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ "proc-macro2", "quote", - "syn", - "syn-mid", "version_check", ] [[package]] name = "proc-macro-hack" -version = "0.5.15" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d659fe7c6d27f25e9d80a1a094c223f5246f6a6596453e09d7229bf42750b63" +checksum = "99c605b9a0adc77b7211c6b1f722dcb613d68d66859a44f3d485a6da332b0598" [[package]] name = "proc-macro-nested" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e946095f9d3ed29ec38de908c22f95d9ac008e424c7bcae54c75a79c527c694" +checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a" [[package]] name = "proc-macro2" -version = "1.0.10" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3" +checksum = "51ef7cd2518ead700af67bf9d1a658d90b6037d77110fd9c0445429d0ba1c6c9" dependencies = [ "unicode-xid", ] [[package]] name = "quanta" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f7a1905379198075914bc93d32a5465c40474f90a078bb13439cb00c547bcc" +checksum = "21484fda3d8ad7affee37755c77a5d0da527543f0af0c7f731c14e2215645d39" dependencies = [ + "atomic-shim", + "ctor", "libc", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] name = "quote" -version = "1.0.3" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bdc6c187c65bca4260c9011c9e3132efe4909da44726bad24cf7572ae338d7f" +checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" dependencies = [ "proc-macro2", ] @@ -2004,7 +2125,7 @@ dependencies = [ "libc", "rand_core 0.3.1", "rdrand", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -2063,12 +2184,22 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rand_xoshiro" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9fcdd2e881d02f1d9390ae47ad8e5696a9e4be7b547a1da2afbc61973217004" +dependencies = [ + "rand_core 0.5.1", +] + [[package]] name = "rayon" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098" +checksum = "cfd016f0c045ad38b5251be2c9c0ab806917f82da4d36b2a327e5166adad9270" dependencies = [ + "autocfg", "crossbeam-deque", "either", "rayon-core", @@ -2076,13 +2207,13 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9" +checksum = "e8c4fec834fb6e6d2dd5eece3c7b432a52f0ba887cf40e595190c4107edc08bf" dependencies = [ + "crossbeam-channel", "crossbeam-deque", - "crossbeam-queue", - "crossbeam-utils 0.7.2", + "crossbeam-utils", "lazy_static", "num_cpus", ] @@ -2102,7 +2233,7 @@ version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3eeb1fe3fc011cde97315f370bc88e4db3c23b08709a04915921e02b1d363b20" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "combine", "dtoa", "futures-executor", @@ -2111,22 +2242,22 @@ dependencies = [ "percent-encoding 2.1.0", "pin-project-lite", "sha1", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-util 0.2.0", "url 2.1.1", ] [[package]] name = "redox_syscall" -version = "0.1.56" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84" +checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "regex" -version = "1.3.6" +version = "1.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6946991529684867e47d86474e3a6d0c0ab9b82d5821e314b1ede31fa3a4b3" +checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6" dependencies = [ "aho-corasick", "memchr", @@ -2146,37 +2277,38 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.6.17" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae" +checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8" [[package]] name = "remove_dir_all" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e" +checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" dependencies = [ - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] name = "reqwest" -version = "0.10.4" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b81e49ddec5109a9dcfc5f2a317ff53377c915e9ae9d4f2fb50914b85614e2" +checksum = "e9eaa17ac5d7b838b7503d118fa16ad88f440498bf9ffe5424e621f93190d61e" dependencies = [ - "base64 0.11.0", - "bytes 0.5.4", + "base64 0.12.3", + "bytes 0.5.6", "encoding_rs", "futures-core", "futures-util", "http 0.2.1", "http-body 0.3.1", - "hyper 0.13.4", + "hyper 0.13.8", "hyper-tls", + "ipnet", "js-sys", "lazy_static", - "log 0.4.8", + "log 0.4.11", "mime", "mime_guess", "native-tls", @@ -2185,8 +2317,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "time", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-tls", "url 2.1.1", "wasm-bindgen", @@ -2197,17 +2328,17 @@ dependencies = [ [[package]] name = "ring" -version = "0.16.12" +version = "0.16.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba5a8ec64ee89a76c98c549af81ff14813df09c3e6dc4766c3856da48597a0c" +checksum = "952cd6b98c85bbc30efa1ba5783b8abf12fec8b3287ffa52605b9432313e34e4" dependencies = [ "cc", - "lazy_static", "libc", + "once_cell", "spin", "untrusted", "web-sys", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -2226,7 +2357,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b25a18b1bf7387f0145e7f8324e700805aade3842dd3db2e74e4cdeb4677c09e" dependencies = [ "base64 0.10.1", - "log 0.4.8", + "log 0.4.11", "ring", "sct", "webpki", @@ -2234,9 +2365,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "535622e6be132bccd223f4bb2b8ac8d53cda3c7a6394944d3b2b33fb974f9d76" +checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" [[package]] name = "same-file" @@ -2249,12 +2380,12 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "039c25b130bd8c1321ee2d7de7fde2659fa9c2744e4bb29711cfc852ea53cd19" +checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" dependencies = [ "lazy_static", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -2285,16 +2416,16 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9182278ed645df3477a9c27bfee0621c621aa16f6972635f7f795dae3d81070f" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "serde", "zeroize", ] [[package]] name = "security-framework" -version = "0.4.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "572dfa3a0785509e7a44b5b4bebcf94d41ba34e9ed9eb9df722545c3b3c4144a" +checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535" dependencies = [ "bitflags", "core-foundation", @@ -2305,9 +2436,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ddb15a5fec93b7021b8a9e96009c5d8d51c15673569f7c0f6b7204e5b7b404f" +checksum = "17bf11d99252f512695eb468de5516e5cf75455521e69dfe343f3b74e4748405" dependencies = [ "core-foundation-sys", "libc", @@ -2330,18 +2461,28 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.106" +version = "1.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36df6ac6412072f67cf767ebbde4133a5b2e88e76dc6187fa7104cd16f783399" +checksum = "96fe57af81d28386a513cbc6858332abc6117cfdb5999647c6444b8f43a370a5" 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.106" +version = "1.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c" +checksum = "f630a6370fd8e457873b4bd2ffdae75408bc291ba72be773772a4c2a065d9ae8" dependencies = [ "proc-macro2", "quote", @@ -2350,9 +2491,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.51" +version = "1.0.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da07b57ee2623368351e9a0488bb0b261322a15a6e0ae53e243cbdc0f4208da9" +checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c" dependencies = [ "itoa", "ryu", @@ -2361,18 +2502,18 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "359b895005d818163c78a24d272cc98567cce80c2461cf73f513da1d296c0b62" +checksum = "913be57cc4ce01e57709c49d3f9a73e0019ae0ba26c4063d7bc15351d68f3593" dependencies = [ "serde", ] [[package]] name = "serde_test" -version = "1.0.106" +version = "1.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48f80694c19c256c75e68ef3240d078e73d7ed56e0f14300656f8b7b000f3852" +checksum = "923edec3f1ab4a2f489f384e117dc4f826fd977a9d189b28717cba8474dd5c6b" dependencies = [ "serde", ] @@ -2395,10 +2536,23 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df" dependencies = [ - "block-buffer", - "digest", + "block-buffer 0.7.3", + "digest 0.8.1", "fake-simd", - "opaque-debug", + "opaque-debug 0.2.3", +] + +[[package]] +name = "sha-1" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "170a36ea86c864a3f16dd2687712dd6646f7019f301e57537c7f4dc9f5916770" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpuid-bool", + "digest 0.9.0", + "opaque-debug 0.3.0", ] [[package]] @@ -2409,19 +2563,20 @@ checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" [[package]] name = "sharded-slab" -version = "0.0.8" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae75d0445b5d3778c9da3d1f840faa16d0627c8607f78a74daf69e5b988c39a1" +checksum = "06d5a3f5166fb5b42a5439f2eee8b9de149e235961e3eb21c5808fc3ea17ff3e" dependencies = [ "lazy_static", ] [[package]] name = "sized-chunks" -version = "0.1.3" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d3e7f23bad2d6694e0f46f5e470ec27eb07b8f3e8b309a4b0dc17501928b9f2" +checksum = "1ec31ceca5644fa6d444cc77548b88b67f46db6f7c71683b0f9336e671830d2f" dependencies = [ + "bitmaps", "typenum", ] @@ -2442,9 +2597,21 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.3.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05720e22615919e4734f6a99ceae50d00226c3c5aca406e102ebc33298214e0a" +checksum = "fbee7696b84bbf3d89a1c2eccff0850e3047ed46bfcd2e92c29a2d074d57e252" + +[[package]] +name = "socket2" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1fa70dc5c8104ec096f4fe7ede7a221d35ae13dcd19ba1ad9a81d2cab9a1c44" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "winapi 0.3.9", +] [[package]] name = "spin" @@ -2454,9 +2621,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] name = "static_assertions" -version = "0.3.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f3eb36b47e512f8f1c9e3d10c2c1965bc992bd9cdb024fa581e2194501c83d3" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "stream-cancel" @@ -2467,7 +2634,7 @@ dependencies = [ "futures-core", "futures-util", "pin-project", - "tokio 0.2.18", + "tokio 0.2.22", ] [[package]] @@ -2481,26 +2648,15 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.17" +version = "1.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0df0eb663f387145cab623dea85b09c2c5b4b0aef44e945d928e682fce71bb03" +checksum = "9c51d92969d209b54a98397e1b91c8ae82d8c87a7bb87df0b29aa2ad81454228" dependencies = [ "proc-macro2", "quote", "unicode-xid", ] -[[package]] -name = "syn-mid" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "tempfile" version = "3.1.0" @@ -2512,7 +2668,7 @@ dependencies = [ "rand 0.7.3", "redox_syscall", "remove_dir_all", - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -2526,18 +2682,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.15" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b3d3d2ff68104100ab257bb6bb0cb26c901abe4bd4ba15961f3bf867924012" +checksum = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.15" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca972988113b7715266f91250ddb98070d033c62a011fa0fcc57434a649310dd" +checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793" dependencies = [ "proc-macro2", "quote", @@ -2555,25 +2711,31 @@ dependencies = [ [[package]] name = "time" -version = "0.1.42" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ "libc", - "redox_syscall", - "winapi 0.3.8", + "wasi 0.10.0+wasi-snapshot-preview1", + "winapi 0.3.9", ] [[package]] name = "tinytemplate" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a3c6667d3e65eb1bc3aed6fd14011c6cbc3a0665218ab7f5daf040b9ec371a" +checksum = "6d3dc76004a03cec1c5932bca4cdc2e39aaa798e3f82363dd94f9adf6098c12f" 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" @@ -2600,11 +2762,11 @@ dependencies = [ [[package]] name = "tokio" -version = "0.2.18" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ef16d072d2b6dc8b4a56c70f5c5ced1a37752116f8e7c1e80c659aa7cb6713" +checksum = "5d34ca54d84bf2b5b4d7d31e901a8464f7b60ac145a284fba25ceb801f2ddccd" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "fnv", "futures-core", "iovec", @@ -2657,7 +2819,7 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" dependencies = [ - "crossbeam-utils 0.7.2", + "crossbeam-utils", "futures 0.1.29", ] @@ -2680,7 +2842,7 @@ checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" dependencies = [ "bytes 0.4.12", "futures 0.1.29", - "log 0.4.8", + "log 0.4.11", ] [[package]] @@ -2700,10 +2862,10 @@ version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" dependencies = [ - "crossbeam-utils 0.7.2", + "crossbeam-utils", "futures 0.1.29", "lazy_static", - "log 0.4.8", + "log 0.4.11", "mio", "num_cpus", "parking_lot 0.9.0", @@ -2770,10 +2932,10 @@ checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89" dependencies = [ "crossbeam-deque", "crossbeam-queue", - "crossbeam-utils 0.7.2", + "crossbeam-utils", "futures 0.1.29", "lazy_static", - "log 0.4.8", + "log 0.4.11", "num_cpus", "slab", "tokio-executor", @@ -2785,7 +2947,7 @@ version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296" dependencies = [ - "crossbeam-utils 0.7.2", + "crossbeam-utils", "futures 0.1.29", "slab", "tokio-executor", @@ -2793,12 +2955,12 @@ dependencies = [ [[package]] name = "tokio-tls" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bde02a3a5291395f59b06ec6945a3077602fac2b07eeeaf0dee2122f3619828" +checksum = "9a70f4fcd7b3b24fb194f837560168208f669ca8cb70d0c4b862944452396343" dependencies = [ "native-tls", - "tokio 0.2.18", + "tokio 0.2.22", ] [[package]] @@ -2807,13 +2969,26 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8b8fe88007ebc363512449868d7da4389c9400072a3f666f212c7280082882a" dependencies = [ - "futures 0.3.4", - "log 0.4.8", + "futures 0.3.5", + "log 0.4.11", "native-tls", "pin-project", - "tokio 0.2.18", + "tokio 0.2.22", "tokio-tls", - "tungstenite", + "tungstenite 0.10.1", +] + +[[package]] +name = "tokio-tungstenite" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d9e878ad426ca286e4dcae09cbd4e1973a7f8987d97570e2469703dd7f5720c" +dependencies = [ + "futures-util", + "log 0.4.11", + "pin-project", + "tokio 0.2.22", + "tungstenite 0.11.1", ] [[package]] @@ -2824,7 +2999,7 @@ checksum = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82" dependencies = [ "bytes 0.4.12", "futures 0.1.29", - "log 0.4.8", + "log 0.4.11", "mio", "tokio-codec", "tokio-io", @@ -2833,15 +3008,15 @@ dependencies = [ [[package]] name = "tokio-uds" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5076db410d6fdc6523df7595447629099a1fdc47b3d9f896220780fa48faf798" +checksum = "ab57a4ac4111c8c9dbcf70779f6fc8bc35ae4b2454809febac840ad19bd7e4e0" dependencies = [ "bytes 0.4.12", "futures 0.1.29", "iovec", "libc", - "log 0.4.8", + "log 0.4.11", "mio", "mio-uds", "tokio-codec", @@ -2855,12 +3030,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "571da51182ec208780505a32528fc5512a8fe1443ab960b3f2f3ef093cd16930" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "futures-core", "futures-sink", - "log 0.4.8", + "log 0.4.11", "pin-project-lite", - "tokio 0.2.18", + "tokio 0.2.22", ] [[package]] @@ -2869,12 +3044,12 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499" dependencies = [ - "bytes 0.5.4", + "bytes 0.5.6", "futures-core", "futures-sink", - "log 0.4.8", + "log 0.4.11", "pin-project-lite", - "tokio 0.2.18", + "tokio 0.2.22", ] [[package]] @@ -2894,31 +3069,43 @@ checksum = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860" [[package]] name = "tracing" -version = "0.1.13" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1721cc8cf7d770cc4257872507180f35a4797272f5962f24c806af9e7faf52ab" +checksum = "b0987850db3733619253fe60e17cb59b82d37c7e6c0236bb81e4d6b87c879f27" dependencies = [ "cfg-if", - "log 0.4.8", + "log 0.4.11", + "pin-project-lite", "tracing-core", ] +[[package]] +name = "tracing-appender" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7aa52d56cc0d79ab604e8a022a1cebc4de33cf09dc9933c94353bea2e00d6e88" +dependencies = [ + "chrono", + "crossbeam-channel", + "tracing-subscriber", +] + [[package]] name = "tracing-core" -version = "0.1.10" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aa83a9a47081cd522c09c81b31aec2c9273424976f922ad61c053b58350b715" +checksum = "f50de3927f93d202783f4513cda820ab47ef17f624b03c096e86ef00c67e6b5f" dependencies = [ "lazy_static", ] [[package]] name = "tracing-futures" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58b0b7fd92dc7b71f29623cc6836dd7200f32161a2313dd78be233a8405694f6" +checksum = "ab7bb6f14721aa00656086e9335d363c5c8747bae02ebe32ea2c7dece5689b4c" dependencies = [ - "futures 0.3.4", + "futures 0.3.5", "futures-task", "pin-project", "tokio 0.1.22", @@ -2932,30 +3119,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e0f8c7178e13481ff6765bd169b33e8d554c5d2bbede5e32c356194be02b9b9" dependencies = [ "lazy_static", - "log 0.4.8", + "log 0.4.11", "tracing-core", ] [[package]] name = "tracing-subscriber" -version = "0.2.4" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfc50df245be6f0adf35c399cb16dea60e2c7d6cc83ff5dc22d727df06dd6f0c" +checksum = "82bb5079aa76438620837198db8a5c529fb9878c730bc2b28179b0241cf04c10" dependencies = [ "chrono", "lazy_static", "matchers", "regex", "sharded-slab", + "thread_local", "tracing-core", "tracing-log", ] [[package]] name = "try-lock" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" +checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "tungstenite" @@ -2965,14 +3153,33 @@ checksum = "cfea31758bf674f990918962e8e5f07071a3161bd7c4138ed23e416e1ac4264e" dependencies = [ "base64 0.11.0", "byteorder", - "bytes 0.5.4", + "bytes 0.5.6", "http 0.2.1", "httparse", "input_buffer", - "log 0.4.8", + "log 0.4.11", "native-tls", "rand 0.7.3", - "sha-1", + "sha-1 0.8.2", + "url 2.1.1", + "utf-8", +] + +[[package]] +name = "tungstenite" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0308d80d86700c5878b9ef6321f020f29b1bb9d5ff3cab25e75e23f3a492a23" +dependencies = [ + "base64 0.12.3", + "byteorder", + "bytes 0.5.6", + "http 0.2.1", + "httparse", + "input_buffer", + "log 0.4.11", + "rand 0.7.3", + "sha-1 0.9.1", "url 2.1.1", "utf-8", ] @@ -3003,24 +3210,24 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4" +checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977" dependencies = [ - "smallvec 1.3.0", + "tinyvec", ] [[package]] name = "unicode-width" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479" +checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" [[package]] name = "unicode-xid" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c" +checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" [[package]] name = "unreachable" @@ -3033,9 +3240,9 @@ dependencies = [ [[package]] name = "untrusted" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60369ef7a31de49bcb3f6ca728d4ba7300d9a1658f94c727d4cab8c8d9f4aece" +checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" @@ -3062,9 +3269,9 @@ dependencies = [ [[package]] name = "urlencoding" -version = "1.0.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df3561629a8bb4c57e5a2e4c43348d9e29c7c29d9b1c4c1f47166deca8f37ed" +checksum = "c9232eb53352b4442e40d7900465dfc534e8cb2dc8f18656fcb2ac16112b5593" [[package]] name = "utf-8" @@ -3084,15 +3291,15 @@ dependencies = [ [[package]] name = "vcpkg" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168" +checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c" [[package]] name = "version_check" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce" +checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" [[package]] name = "void" @@ -3107,7 +3314,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" dependencies = [ "same-file", - "winapi 0.3.8", + "winapi 0.3.9", "winapi-util", ] @@ -3118,7 +3325,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" dependencies = [ "futures 0.1.29", - "log 0.4.8", + "log 0.4.11", "try-lock", ] @@ -3128,22 +3335,22 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" dependencies = [ - "log 0.4.8", + "log 0.4.11", "try-lock", ] [[package]] name = "warp" -version = "0.2.2" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54cd1e2b3eb3539284d88b76a9afcf5e20f2ef2fab74db5b21a1c30d7d945e82" +checksum = "f41be6df54c97904af01aa23e613d4521eed7ab23537cede692d4058f6449407" dependencies = [ - "bytes 0.5.4", - "futures 0.3.4", + "bytes 0.5.6", + "futures 0.3.5", "headers", "http 0.2.1", - "hyper 0.13.4", - "log 0.4.8", + "hyper 0.13.8", + "log 0.4.11", "mime", "mime_guess", "pin-project", @@ -3151,9 +3358,11 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "tokio 0.2.18", - "tokio-tungstenite", + "tokio 0.2.22", + "tokio-tungstenite 0.11.0", "tower-service", + "tracing", + "tracing-futures", "urlencoding", ] @@ -3163,11 +3372,17 @@ version = "0.9.0+wasi-snapshot-preview1" 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" + [[package]] name = "wasm-bindgen" -version = "0.2.60" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc57ce05287f8376e998cbddfb4c8cb43b84a7ec55cf4551d7c00eef317a47f" +checksum = "1ac64ead5ea5f05873d7c12b545865ca2b8d28adfc50a49b84770a3a97265d42" dependencies = [ "cfg-if", "serde", @@ -3177,13 +3392,13 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.60" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d967d37bf6c16cca2973ca3af071d0a2523392e4a594548155d89a678f4237cd" +checksum = "f22b422e2a757c35a73774860af8e112bff612ce6cb604224e8e47641a9e4f68" dependencies = [ "bumpalo", "lazy_static", - "log 0.4.8", + "log 0.4.11", "proc-macro2", "quote", "syn", @@ -3192,9 +3407,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.10" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7add542ea1ac7fdaa9dc25e031a6af33b7d63376292bd24140c637d00d1c312a" +checksum = "b7866cab0aa01de1edf8b5d7936938a7e397ee50ce24119aef3e1eaa3b6171da" dependencies = [ "cfg-if", "js-sys", @@ -3204,9 +3419,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.60" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd151b63e1ea881bb742cd20e1d6127cef28399558f3b5d415289bc41eee3a4" +checksum = "6b13312a745c08c469f0b292dd2fcd6411dba5f7160f593da6ef69b64e407038" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3214,9 +3429,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.60" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d68a5b36eef1be7868f668632863292e37739656a80fc4b9acec7b0bd35a4931" +checksum = "f249f06ef7ee334cc3b8ff031bfc11ec99d00f34d86da7498396dc1e3b1498fe" dependencies = [ "proc-macro2", "quote", @@ -3227,15 +3442,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.60" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf76fe7d25ac79748a37538b7daeed1c7a6867c92d3245c12c6222e4a20d639" +checksum = "1d649a3145108d7d3fbcde896a468d1bd636791823c9921135218ad89be08307" [[package]] name = "web-sys" -version = "0.3.37" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d6f51648d8c56c366144378a33290049eafdd784071077f6fe37dae64c1c4cb" +checksum = "4bf6ef87ad7ae8008e15a355ce696bed26012b7caa21605188cfd8214ab51e2d" dependencies = [ "js-sys", "wasm-bindgen", @@ -3243,9 +3458,9 @@ dependencies = [ [[package]] name = "webpki" -version = "0.21.2" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1f50e1972865d6b1adb54167d1c8ed48606004c2c9d0ea5f1eeb34d95e863ef" +checksum = "ab146130f5f790d45f82aeeb09e55a256573373ec64409fc19a6fb82fb1032ae" dependencies = [ "ring", "untrusted", @@ -3268,9 +3483,9 @@ checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" [[package]] name = "winapi" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" dependencies = [ "winapi-i686-pc-windows-gnu", "winapi-x86_64-pc-windows-gnu", @@ -3290,11 +3505,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa515c5163a99cc82bab70fd3bfdd36d827be85de63737b40fcef2ce084a436e" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -3305,11 +3520,11 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winreg" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" +checksum = "0120db82e8a1e0b9fb3345a539c478767c0048d842860994d96113d5b667bd69" dependencies = [ - "winapi 0.3.8", + "winapi 0.3.9", ] [[package]] @@ -3324,9 +3539,9 @@ dependencies = [ [[package]] name = "yaml-rust" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65923dd1784f44da1d2c3dbbc5e822045628c590ba72123e1c73d3c230c4434d" +checksum = "39f0c922f1a334134dc2f7a8b67dc5d25f0735263feec974345ff706bcf20b0d" dependencies = [ "linked-hash-map", ] @@ -3343,7 +3558,7 @@ dependencies = [ "http 0.1.21", "hyper 0.12.35", "hyper-rustls", - "itertools", + "itertools 0.8.2", "log 0.3.9", "rustls", "serde", @@ -3357,6 +3572,6 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cbac2ed2ba24cc90f5e06485ac8c7c1e5449fe8911aef4d8877218af021a5b8" +checksum = "05f33972566adbd2d3588b0491eb94b98b43695c4ef897903470ede4f3f5a28a" From ff2e6d6cb61958f078081b77a6074de428655048 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 16:13:26 +0200 Subject: [PATCH 02/10] chore(api): set type lenght limit Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- crates/interledger-api/src/lib.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/interledger-api/src/lib.rs b/crates/interledger-api/src/lib.rs index 31e283264..532f8bb2c 100644 --- a/crates/interledger-api/src/lib.rs +++ b/crates/interledger-api/src/lib.rs @@ -1,3 +1,4 @@ +#![type_length_limit = "1707074"] use async_trait::async_trait; use bytes::Bytes; use interledger_btp::{BtpAccount, BtpOutgoingService}; From 97486cd419fab4da191c10dc8f85827a0a82a5aa Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 16:15:27 +0200 Subject: [PATCH 03/10] fix(service-util): outgoing amount f64 to u64 conversion Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- .../src/exchange_rates_service.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/crates/interledger-service-util/src/exchange_rates_service.rs b/crates/interledger-service-util/src/exchange_rates_service.rs index aa8e3a6e4..0af6c8b61 100644 --- a/crates/interledger-service-util/src/exchange_rates_service.rs +++ b/crates/interledger-service-util/src/exchange_rates_service.rs @@ -104,12 +104,15 @@ where match outgoing_amount { Ok(outgoing_amount) => { - // The conversion succeeded, but the produced f64 - // is larger than the maximum value for a u64. - // When it gets cast to a u64, it will end up being 0. - if outgoing_amount != 0.0 && outgoing_amount as u64 == 0 { + // Valid outgoing amount must be representable by a non-zero u64 once converted from f64. + // FIXME: f64 > u64::MAX as f64 isn't very reliable for comparisons for + // extremely small values; this should ideally be handled better. + if outgoing_amount != 0.0 + && (outgoing_amount > u64::MAX as f64 || outgoing_amount < 1.0) + { let (code, message) = if outgoing_amount < 1.0 { - // user wanted to send a positive value but it got rounded down to 0 + // Amount was too small to be converted to a non-zero u64, i.e. smaller + // than 1.0. ( ErrorCode::R01_INSUFFICIENT_SOURCE_AMOUNT, format!( @@ -118,7 +121,8 @@ where ), ) } else { - // amount that arrived was too large for us to forward + // Amount was too large to be converted to u64 from f64, i.e. greater + // than u64::MAX as f64. ( ErrorCode::F08_AMOUNT_TOO_LARGE, format!( From 2a820b3db90f1ce9d2a0e65b339844f42f0227c3 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 16:17:35 +0200 Subject: [PATCH 04/10] chore(CI): update node to 12.18.4 Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 5198d0aaf..f0a689592 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -70,7 +70,7 @@ jobs: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash export NVM_DIR="/home/circleci/.nvm" source $NVM_DIR/nvm.sh - nvm install "v11.15.0" + nvm install "v12.18.4" # install yarn & components (ganache-cli ilp-settlement-xrp conventional-changelog-cli) curl -o- -L https://yarnpkg.com/install.sh | bash From 849fc5d13c2bd91c73be49eb1984b3c7dc129f13 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 16:18:36 +0200 Subject: [PATCH 05/10] fix(cli): update accounts update & update_settings descriptions Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- crates/ilp-cli/src/parser.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/ilp-cli/src/parser.rs b/crates/ilp-cli/src/parser.rs index 5d8d34c76..609af430e 100644 --- a/crates/ilp-cli/src/parser.rs +++ b/crates/ilp-cli/src/parser.rs @@ -151,7 +151,7 @@ fn accounts_create<'a, 'b>() -> App<'a, 'b> { fn accounts_update<'a, 'b>() -> App<'a, 'b> { AuthorizedSubCommand::with_name("update") - .about("Creates a new account on this node") + .about("Overwrite the account on this node") .args(&[ Arg::with_name("username") .index(1) @@ -265,7 +265,7 @@ fn accounts_list<'a, 'b>() -> App<'a, 'b> { fn accounts_update_settings<'a, 'b>() -> App<'a, 'b> { AuthorizedSubCommand::with_name("update-settings") - .about("Overwrite the details of an account on this node") + .about("Update account settings (limited fields only) on this node") .args(&[ Arg::with_name("username") .index(1) From fe60de56ff0220496652ffa86a5c9e1f36c33197 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Thu, 1 Oct 2020 21:13:43 +0200 Subject: [PATCH 06/10] fix: clippy warnings Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- crates/interledger-api/src/lib.rs | 4 +--- crates/interledger-api/src/routes/accounts.rs | 2 +- .../src/echo_service.rs | 2 -- crates/interledger-spsp/src/client.rs | 8 +------ crates/interledger-stream/src/server.rs | 22 ++++++------------- 5 files changed, 10 insertions(+), 28 deletions(-) diff --git a/crates/interledger-api/src/lib.rs b/crates/interledger-api/src/lib.rs index 532f8bb2c..a80d68974 100644 --- a/crates/interledger-api/src/lib.rs +++ b/crates/interledger-api/src/lib.rs @@ -53,9 +53,7 @@ where { match NumOrStr::deserialize(deserializer)? { NumOrStr::Num(n) => Ok(Some(n)), - NumOrStr::Str(s) => T::from_str(&s) - .map_err(de::Error::custom) - .and_then(|n| Ok(Some(n))), + NumOrStr::Str(s) => T::from_str(&s).map_err(de::Error::custom).map(Some), } } diff --git a/crates/interledger-api/src/routes/accounts.rs b/crates/interledger-api/src/routes/accounts.rs index a4dbd2694..25e194b11 100644 --- a/crates/interledger-api/src/routes/accounts.rs +++ b/crates/interledger-api/src/routes/accounts.rs @@ -1,6 +1,6 @@ use crate::{number_or_string, AccountDetails, AccountSettings, NodeStore}; use bytes::Bytes; -use futures::{Future, FutureExt, StreamExt, TryFutureExt, TryStreamExt}; +use futures::{Future, FutureExt, StreamExt, TryFutureExt}; use interledger_btp::{connect_to_service_account, BtpAccount, BtpOutgoingService}; use interledger_ccp::{CcpRoutingAccount, Mode, RouteControlRequest, RoutingRelation}; use interledger_errors::*; diff --git a/crates/interledger-service-util/src/echo_service.rs b/crates/interledger-service-util/src/echo_service.rs index 334564d42..7e27a2c1c 100644 --- a/crates/interledger-service-util/src/echo_service.rs +++ b/crates/interledger-service-util/src/echo_service.rs @@ -136,8 +136,6 @@ where } }; - let source_address = Address::try_from(source_address).unwrap(); - // create a new prepare packet to echo the prepare let execution_condition = <[u8; 32]>::try_from(request.prepare.execution_condition()).unwrap(); diff --git a/crates/interledger-spsp/src/client.rs b/crates/interledger-spsp/src/client.rs index c01ef6548..f5829ecd8 100644 --- a/crates/interledger-spsp/src/client.rs +++ b/crates/interledger-spsp/src/client.rs @@ -1,11 +1,9 @@ use super::{Error, SpspResponse}; use futures::TryFutureExt; -use interledger_packet::Address; use interledger_rates::ExchangeRateStore; use interledger_service::{Account, IncomingService}; use interledger_stream::{send_money, StreamDelivery}; use reqwest::Client; -use std::convert::TryFrom; use tracing::{debug, error, trace}; /// Get an ILP Address and shared secret by the receiver of this payment for this connection @@ -48,11 +46,7 @@ where { let spsp = query(receiver).await?; let shared_secret = spsp.shared_secret; - let dest = spsp.destination_account; - let addr = Address::try_from(dest).map_err(move |err| { - error!("Error parsing address"); - Error::InvalidSpspServerResponseError(err.to_string()) - })?; + let addr = spsp.destination_account; debug!("Sending SPSP payment to address: {}", addr); let receipt = send_money( diff --git a/crates/interledger-stream/src/server.rs b/crates/interledger-stream/src/server.rs index 0797b1260..a617c0513 100644 --- a/crates/interledger-stream/src/server.rs +++ b/crates/interledger-stream/src/server.rs @@ -386,9 +386,8 @@ mod receiving_money { let data = stream_packet.into_encrypted(&shared_secret[..]); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -414,9 +413,8 @@ mod receiving_money { let data = stream_packet.into_encrypted(&shared_secret[..]); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -443,9 +441,8 @@ mod receiving_money { data.extend_from_slice(b"x"); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -482,9 +479,8 @@ mod receiving_money { let data = stream_packet.into_encrypted(&shared_secret[..]); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -534,7 +530,6 @@ mod stream_receiver_service { use interledger_packet::PrepareBuilder; use interledger_service::outgoing_service_fn; - use std::convert::TryFrom; use std::str::FromStr; use std::time::UNIX_EPOCH; @@ -549,9 +544,8 @@ mod stream_receiver_service { let data = stream_packet.into_encrypted(&shared_secret[..]); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -602,10 +596,9 @@ mod stream_receiver_service { let execution_condition = generate_condition(&shared_secret[..], &data); data.extend_from_slice(b"extra"); - let dest = Address::try_from(destination_account).unwrap(); let prepare = PrepareBuilder { - destination: dest, + destination: destination_account, amount: 100, expires_at: UNIX_EPOCH, data: &data[..], @@ -663,8 +656,7 @@ mod stream_receiver_service { let data = stream_packet.into_encrypted(&shared_secret[..]); let execution_condition = generate_condition(&shared_secret[..], &data); - let dest = Address::try_from(destination_account).unwrap(); - let dest = dest.with_suffix(b"extra").unwrap(); + let dest = destination_account.with_suffix(b"extra").unwrap(); let prepare = PrepareBuilder { destination: dest, From 7cdfa0df0e3d935067473554691af17b9da0f84d Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Fri, 2 Oct 2020 12:50:29 +0200 Subject: [PATCH 07/10] doc(README): update minimum Rust to 1.45 Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fd54c5d42..8491c7979 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ All crates require Rust 2018 edition and are tested on the following channels: -- `1.39.0` (minimum supported) +- `1.45.0` (minimum supported) - `stable` ## Connecting to the Testnet From 0fce79649c541a4f99fe25b4eb3040c3fcd87994 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Mon, 5 Oct 2020 15:24:43 +0200 Subject: [PATCH 08/10] fix(CI): cargo audit warnings Co-authored-by: Belsy Yuen Signed-off-by: Niklas Long --- .circleci/config.yml | 8 ++-- Cargo.lock | 8 ++-- crates/ilp-node/Cargo.toml | 2 +- crates/ilp-node/tests/redis/redis_helpers.rs | 46 +++++++++++++------ crates/interledger-btp/Cargo.toml | 2 +- crates/interledger-btp/src/lib.rs | 15 ++++-- crates/interledger-settlement/Cargo.toml | 2 +- .../redis/test_helpers/redis_helpers.rs | 16 +++---- crates/interledger-store/Cargo.toml | 2 +- .../tests/redis/redis_tests.rs | 15 +++--- 10 files changed, 70 insertions(+), 46 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f0a689592..d82148a07 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -44,9 +44,11 @@ jobs: cargo clippy --all-targets --all-features -- -D warnings - run: name: Audit Dependencies - # Disable: - # 1. http/hyper advisory: outdated http due to yup-oauth2 3.1.1, tungstenite 0.9.2 - command: cargo audit --ignore RUSTSEC-2019-0033 --ignore RUSTSEC-2019-0034 + # FIXME: Disabled: + # 1. spin: is no longer actively maintained + # 2. sized-chunks: no safe upgrade. + # 3. net2: has been removed from crates, still present as a dep to tokio + command: cargo audit --ignore RUSTSEC-2019-0031 --ignore RUSTSEC-2020-0041 --ignore RUSTSEC-2020-0016 test-md: docker: diff --git a/Cargo.lock b/Cargo.lock index 2c332138d..5d6f2f972 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1015,7 +1015,6 @@ dependencies = [ "metrics", "metrics-core", "metrics-runtime", - "net2", "num-bigint", "once_cell", "parking_lot 0.10.2", @@ -1026,6 +1025,7 @@ dependencies = [ "secrecy", "serde", "serde_json", + "socket2", "tokio 0.2.22", "tokio-retry", "tracing", @@ -1140,13 +1140,13 @@ dependencies = [ "interledger-errors", "interledger-packet", "interledger-service", - "net2", "num-bigint", "once_cell", "parking_lot 0.10.2", "pin-project", "rand 0.7.3", "secrecy", + "socket2", "stream-cancel", "thiserror", "tokio 0.2.22", @@ -1348,7 +1348,6 @@ dependencies = [ "interledger-packet", "interledger-service", "mockito", - "net2", "num-bigint", "num-traits", "once_cell", @@ -1359,6 +1358,7 @@ dependencies = [ "ring", "serde", "serde_json", + "socket2", "tokio 0.2.22", "tracing", "url 2.1.1", @@ -1408,7 +1408,6 @@ dependencies = [ "interledger-service-util", "interledger-settlement", "interledger-stream", - "net2", "num-bigint", "once_cell", "os_type", @@ -1419,6 +1418,7 @@ dependencies = [ "secrecy", "serde", "serde_json", + "socket2", "thiserror", "tokio 0.2.22", "tracing", diff --git a/crates/ilp-node/Cargo.toml b/crates/ilp-node/Cargo.toml index d2119752e..877ad1da1 100644 --- a/crates/ilp-node/Cargo.toml +++ b/crates/ilp-node/Cargo.toml @@ -74,7 +74,7 @@ metrics-runtime = { version = "0.13.0", default-features = false, features = ["m [dev-dependencies] approx = { version = "0.3.2", default-features = false } base64 = { version = "0.11.0", default-features = false } -net2 = { version = "0.2.33", default-features = false } +socket2 = "0.3.15" rand = { version = "0.7.2", default-features = false } reqwest = { version = "0.10.0", default-features = false, features = ["default-tls", "json"] } serde_json = { version = "1.0.41", default-features = false } diff --git a/crates/ilp-node/tests/redis/redis_helpers.rs b/crates/ilp-node/tests/redis/redis_helpers.rs index b541650fd..a7eb0f450 100644 --- a/crates/ilp-node/tests/redis/redis_helpers.rs +++ b/crates/ilp-node/tests/redis/redis_helpers.rs @@ -3,8 +3,10 @@ use futures::TryFutureExt; use redis_crate::{self as redis, ConnectionAddr, ConnectionInfo, RedisError}; +use socket2::{Domain, Socket, Type}; use std::env; use std::fs; +use std::net::SocketAddr; use std::path::PathBuf; use std::process; use std::thread::sleep; @@ -22,20 +24,35 @@ pub fn connection_info_to_string(info: ConnectionInfo) -> String { pub fn get_open_port(try_port: Option) -> u16 { if let Some(port) = try_port { - let listener = net2::TcpBuilder::new_v4().unwrap(); - listener.reuse_address(true).unwrap(); - if let Ok(listener) = listener.bind(&format!("127.0.0.1:{}", port)) { - return listener.listen(1).unwrap().local_addr().unwrap().port(); + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + if socket + .bind( + &format!("127.0.0.1:{}", port) + .parse::() + .unwrap() + .into(), + ) + .is_ok() + { + socket.listen(1).unwrap(); + let listener = socket.into_tcp_listener(); + return listener.local_addr().unwrap().port(); } } for _i in 0..1000 { - let listener = net2::TcpBuilder::new_v4().unwrap(); - listener.reuse_address(true).unwrap(); - if let Ok(listener) = listener.bind("127.0.0.1:0") { - return listener.listen(1).unwrap().local_addr().unwrap().port(); + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + if socket + .bind(&"127.0.0.1:0".parse::().unwrap().into()) + .is_ok() + { + let listener = socket.into_tcp_listener(); + return listener.local_addr().unwrap().port(); } } + panic!("Cannot find open port!"); } @@ -79,14 +96,13 @@ impl RedisServer { ServerType::Tcp => { // this is technically a race but we can't do better with // the tools that redis gives us :( - let listener = net2::TcpBuilder::new_v4() - .unwrap() - .reuse_address(true) - .unwrap() - .bind("127.0.0.1:0") - .unwrap() - .listen(1) + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + socket + .bind(&"127.0.0.1:0".parse::().unwrap().into()) .unwrap(); + socket.listen(1).unwrap(); + let listener = socket.into_tcp_listener(); let server_port = listener.local_addr().unwrap().port(); cmd.arg("--port") .arg(server_port.to_string()) diff --git a/crates/interledger-btp/Cargo.toml b/crates/interledger-btp/Cargo.toml index 591724a2d..caa86314f 100644 --- a/crates/interledger-btp/Cargo.toml +++ b/crates/interledger-btp/Cargo.toml @@ -35,4 +35,4 @@ pin-project = { version = "0.4.6", default-features = false } [dev-dependencies] hex = { version = "0.4.0", default-features = false } -net2 = { version = "0.2.33", default-features = false } +socket2 = "0.3.15" diff --git a/crates/interledger-btp/src/lib.rs b/crates/interledger-btp/src/lib.rs index a61ed777a..46baa3cd1 100644 --- a/crates/interledger-btp/src/lib.rs +++ b/crates/interledger-btp/src/lib.rs @@ -54,7 +54,7 @@ mod client_server { use super::*; use interledger_packet::{Address, ErrorCode, FulfillBuilder, PrepareBuilder, RejectBuilder}; use interledger_service::*; - use net2::TcpBuilder; + use socket2::{Domain, Socket, Type}; use std::str::FromStr; use std::{ net::SocketAddr, @@ -67,10 +67,15 @@ mod client_server { fn get_open_port() -> SocketAddr { for _i in 0..1000 { - let listener = TcpBuilder::new_v4().unwrap(); - listener.reuse_address(true).unwrap(); - if let Ok(listener) = listener.bind("127.0.0.1:0") { - return listener.listen(1).unwrap().local_addr().unwrap(); + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + if socket + .bind(&"127.0.0.1:0".parse::().unwrap().into()) + .is_ok() + { + socket.listen(1).unwrap(); + let listener = socket.into_tcp_listener(); + return listener.local_addr().unwrap(); } } panic!("Cannot find open port!"); diff --git a/crates/interledger-settlement/Cargo.toml b/crates/interledger-settlement/Cargo.toml index dd8a8c381..ed8fa88d5 100644 --- a/crates/interledger-settlement/Cargo.toml +++ b/crates/interledger-settlement/Cargo.toml @@ -37,7 +37,7 @@ futures-retry = { version = "0.4.0", default-features = false } parking_lot = { version = "0.10.0", default-features = false } mockito = { version = "0.23.1", default-features = false } env_logger = { version = "0.7.0", default-features = false } -net2 = { version = "0.2.33", default-features = false } +socket2 = "0.3.15" rand = { version = "0.7.2", default-features = false } [features] diff --git a/crates/interledger-settlement/src/core/backends_common/redis/test_helpers/redis_helpers.rs b/crates/interledger-settlement/src/core/backends_common/redis/test_helpers/redis_helpers.rs index 4bdb63bba..6f2f40690 100644 --- a/crates/interledger-settlement/src/core/backends_common/redis/test_helpers/redis_helpers.rs +++ b/crates/interledger-settlement/src/core/backends_common/redis/test_helpers/redis_helpers.rs @@ -3,7 +3,8 @@ use futures::TryFutureExt; use redis_crate::{self as redis, RedisError}; -use std::{env, fs, path::PathBuf, process, thread::sleep, time::Duration}; +use socket2::{Domain, Socket, Type}; +use std::{env, fs, net::SocketAddr, path::PathBuf, process, thread::sleep, time::Duration}; #[derive(PartialEq)] enum ServerType { @@ -48,14 +49,13 @@ impl RedisServer { ServerType::Tcp => { // this is technically a race but we can't do better with // the tools that redis gives us :( - let listener = net2::TcpBuilder::new_v4() - .unwrap() - .reuse_address(true) - .unwrap() - .bind("127.0.0.1:0") - .unwrap() - .listen(1) + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + socket + .bind(&"127.0.0.1:0".parse::().unwrap().into()) .unwrap(); + socket.listen(1).unwrap(); + let listener = socket.into_tcp_listener(); let server_port = listener.local_addr().unwrap().port(); cmd.arg("--port") .arg(server_port.to_string()) diff --git a/crates/interledger-store/Cargo.toml b/crates/interledger-store/Cargo.toml index e70b3c08d..0e71fc758 100644 --- a/crates/interledger-store/Cargo.toml +++ b/crates/interledger-store/Cargo.toml @@ -57,6 +57,6 @@ redis_crate = { package = "redis", version = "0.15.1", default-features = false, [dev-dependencies] env_logger = { version = "0.7.0", default-features = false } -net2 = { version = "0.2.33", default-features = false } rand = { version = "0.7.2", default-features = false } +socket2 = "0.3.15" os_type = { version = "2.2", default-features = false } diff --git a/crates/interledger-store/tests/redis/redis_tests.rs b/crates/interledger-store/tests/redis/redis_tests.rs index ce54d5154..9ee6ef012 100644 --- a/crates/interledger-store/tests/redis/redis_tests.rs +++ b/crates/interledger-store/tests/redis/redis_tests.rs @@ -88,8 +88,10 @@ mod redis_helpers { #![allow(dead_code)] use redis_crate::{self, RedisError}; + use socket2::{Domain, Socket, Type}; use std::env; use std::fs; + use std::net::SocketAddr; use std::path::PathBuf; use std::process; use std::thread::sleep; @@ -146,14 +148,13 @@ mod redis_helpers { ServerType::Tcp => { // this is technically a race but we can't do better with // the tools that redis gives us :( - let listener = net2::TcpBuilder::new_v4() - .unwrap() - .reuse_address(true) - .unwrap() - .bind("127.0.0.1:0") - .unwrap() - .listen(1) + let socket = Socket::new(Domain::ipv4(), Type::stream(), None).unwrap(); + socket.reuse_address().unwrap(); + socket + .bind(&"127.0.0.1:0".parse::().unwrap().into()) .unwrap(); + socket.listen(1).unwrap(); + let listener = socket.into_tcp_listener(); let server_port = listener.local_addr().unwrap().port(); cmd.arg("--port") .arg(server_port.to_string()) From 252eda99a50a333bc855fb57fd5807c184878366 Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Fri, 9 Oct 2020 12:46:09 +0200 Subject: [PATCH 09/10] fix: missing socket listen call Signed-off-by: Niklas Long --- crates/ilp-node/tests/redis/redis_helpers.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/ilp-node/tests/redis/redis_helpers.rs b/crates/ilp-node/tests/redis/redis_helpers.rs index a7eb0f450..b74150461 100644 --- a/crates/ilp-node/tests/redis/redis_helpers.rs +++ b/crates/ilp-node/tests/redis/redis_helpers.rs @@ -48,6 +48,7 @@ pub fn get_open_port(try_port: Option) -> u16 { .bind(&"127.0.0.1:0".parse::().unwrap().into()) .is_ok() { + socket.listen(1).unwrap(); let listener = socket.into_tcp_listener(); return listener.local_addr().unwrap().port(); } From 85fcd119ce41b22bf53d724e3e3ebe624ce72dcd Mon Sep 17 00:00:00 2001 From: Niklas Long Date: Fri, 9 Oct 2020 13:48:38 +0200 Subject: [PATCH 10/10] fix(btp/stream): clippy lints Signed-off-by: Niklas Long --- crates/interledger-btp/src/oer.rs | 10 ++-------- crates/interledger-stream/src/client.rs | 10 +++++----- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/crates/interledger-btp/src/oer.rs b/crates/interledger-btp/src/oer.rs index 8fcda007d..efe69ae82 100644 --- a/crates/interledger-btp/src/oer.rs +++ b/crates/interledger-btp/src/oer.rs @@ -146,10 +146,7 @@ mod writer_ext { assert_eq!(one, vec![0x01, 0xb0]); let mut larger = vec![]; - let mut larger_string: Vec = Vec::with_capacity(256 as usize); - for _ in 0..256 { - larger_string.push(0xb0); - } + let larger_string: Vec = vec![0xb0; 256]; larger.write_var_octet_string(&larger_string).unwrap(); let mut expected = vec![0x82, 0x01, 0x00]; expected.extend(larger_string); @@ -178,10 +175,7 @@ mod reader_ext { ); let mut larger = vec![0x82, 0x01, 0x00]; - let mut larger_string: Vec = Vec::with_capacity(256 as usize); - for _ in 0..256 { - larger_string.push(0xb0); - } + let larger_string: Vec = vec![0xb0; 256]; larger.extend(&larger_string); assert_eq!( Cursor::new(larger).read_var_octet_string().unwrap(), diff --git a/crates/interledger-stream/src/client.rs b/crates/interledger-stream/src/client.rs index c77da1452..aa3f54538 100644 --- a/crates/interledger-stream/src/client.rs +++ b/crates/interledger-stream/src/client.rs @@ -211,12 +211,12 @@ impl StreamPayment { // Apply F99, T00, T01 to fail-fast threshold. // Other final/relative errors should immediately fail; T02-T99 may be resolved with time. - let apply_to_fail_fast = match reject.code() { + let apply_to_fail_fast = matches!( + reject.code(), IlpErrorCode::T00_INTERNAL_ERROR - | IlpErrorCode::T01_PEER_UNREACHABLE - | IlpErrorCode::F99_APPLICATION_ERROR => true, - _ => false, - }; + | IlpErrorCode::T01_PEER_UNREACHABLE + | IlpErrorCode::F99_APPLICATION_ERROR + ); if apply_to_fail_fast { self.fail_fast_rejects += 1; }