diff --git a/Cargo.lock b/Cargo.lock index 4f26cd8c1..de181f962 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -156,9 +156,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.89" +version = "1.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" +checksum = "37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95" [[package]] name = "approx" @@ -268,7 +268,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -279,7 +279,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -512,9 +512,9 @@ dependencies = [ [[package]] name = "bytemuck" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" +checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" [[package]] name = "byteorder" @@ -542,9 +542,9 @@ checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6" [[package]] name = "cc" -version = "1.1.28" +version = "1.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e80e3b6a3ab07840e1cae9b0666a63970dc28e8ed5ffbcdacbfc760c281bfc1" +checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" dependencies = [ "shlex", ] @@ -614,9 +614,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.19" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" +checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" dependencies = [ "clap_builder", "clap_derive", @@ -624,9 +624,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.19" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" +checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" dependencies = [ "anstream", "anstyle", @@ -643,7 +643,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -668,45 +668,6 @@ dependencies = [ "portable-atomic", ] -[[package]] -name = "console-api" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ed14aa9c9f927213c6e4f3ef75faaad3406134efe84ba2cb7983431d5f0931" -dependencies = [ - "futures-core", - "prost", - "prost-types", - "tonic", - "tracing-core", -] - -[[package]] -name = "console-subscriber" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e3a111a37f3333946ebf9da370ba5c5577b18eb342ec683eb488dd21980302" -dependencies = [ - "console-api", - "crossbeam-channel", - "crossbeam-utils", - "futures-task", - "hdrhistogram", - "humantime", - "hyper-util", - "prost", - "prost-types", - "serde", - "serde_json", - "thread_local", - "tokio", - "tokio-stream", - "tonic", - "tracing", - "tracing-core", - "tracing-subscriber", -] - [[package]] name = "const-oid" version = "0.9.6" @@ -865,15 +826,6 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - [[package]] name = "crossbeam" version = "0.8.4" @@ -1011,7 +963,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1022,7 +974,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1047,13 +999,13 @@ checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "delegate" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5060bb0febb73fa907273f8a7ed17ab4bf831d585eac835b28ec24a1e2460956" +checksum = "bc2323e10c92e1cf4d86e11538512e6dc03ceb586842970b6332af3d4046a046" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1096,7 +1048,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1165,7 +1117,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1206,7 +1158,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1342,21 +1294,11 @@ dependencies = [ "rustc_version", ] -[[package]] -name = "flate2" -version = "1.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - [[package]] name = "flume" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" dependencies = [ "futures-core", "futures-sink", @@ -1412,7 +1354,6 @@ dependencies = [ "chacha20poly1305", "chrono", "clap", - "console-subscriber", "cookie", "crossbeam", "ctrlc", @@ -1432,7 +1373,7 @@ dependencies = [ "opentelemetry-jaeger", "opentelemetry-otlp", "opentelemetry_sdk 0.26.0", - "ordered-float 4.3.0", + "ordered-float 4.4.0", "parking_lot", "pav_regression", "pico-args", @@ -1471,7 +1412,7 @@ version = "0.0.5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1613,7 +1554,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -1764,19 +1705,6 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "base64 0.21.7", - "byteorder", - "flate2", - "nom", - "num-traits", -] - [[package]] name = "headers" version = "0.4.0" @@ -1976,17 +1904,11 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" -[[package]] -name = "humantime" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" - [[package]] name = "hyper" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" dependencies = [ "bytes", "futures-channel", @@ -2013,7 +1935,7 @@ dependencies = [ "http 1.1.0", "hyper", "hyper-util", - "rustls 0.23.14", + "rustls 0.23.15", "rustls-pki-types", "tokio", "tokio-rustls 0.26.0", @@ -2249,9 +2171,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ "wasm-bindgen", ] @@ -2293,9 +2215,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" [[package]] name = "libm" @@ -2502,6 +2424,18 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "mio" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +dependencies = [ + "hermit-abi 0.3.9", + "libc", + "wasi", + "windows-sys 0.52.0", +] + [[package]] name = "more-asserts" version = "0.2.2" @@ -2534,7 +2468,7 @@ checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -2590,7 +2524,7 @@ dependencies = [ "kqueue", "libc", "log", - "mio", + "mio 0.8.11", "walkdir", "windows-sys 0.48.0", ] @@ -2711,9 +2645,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.66" +version = "0.10.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" +checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -2732,7 +2666,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -2743,9 +2677,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.103" +version = "0.9.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" +checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" dependencies = [ "cc", "libc", @@ -2846,9 +2780,9 @@ dependencies = [ [[package]] name = "opentelemetry-proto" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abbbb5e699de56aacd607631354d0ed0315e67ed36b7398849e4f8a039eaa07e" +checksum = "c9d3968ce3aefdcca5c27e3c4ea4391b37547726a70893aab52d3de95d5f8b34" dependencies = [ "opentelemetry 0.26.0", "opentelemetry_sdk 0.26.0", @@ -2875,7 +2809,7 @@ dependencies = [ "lazy_static", "once_cell", "opentelemetry 0.23.0", - "ordered-float 4.3.0", + "ordered-float 4.4.0", "percent-encoding", "rand", "thiserror", @@ -2948,9 +2882,9 @@ dependencies = [ [[package]] name = "ordered-float" -version = "4.3.0" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d501f1a72f71d3c063a6bbc8f7271fa73aa09fe5d6283b6571e2ed176a2537" +checksum = "83e7ccb95e240b7c9506a3d544f10d935e142cc90b0a1d56954fb44d89ad6b97" dependencies = [ "num-traits", ] @@ -3044,7 +2978,7 @@ checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -3148,9 +3082,9 @@ checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" [[package]] name = "portable-atomic-util" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcdd8420072e66d54a407b3316991fe946ce3ab1083a7f575b2463866624704d" +checksum = "90a7d5beecc52a491b54d6dd05c7a45ba1801666a5baad9fdbfc6fef8d2d206c" dependencies = [ "portable-atomic", ] @@ -3196,9 +3130,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" dependencies = [ "unicode-ident", ] @@ -3223,16 +3157,7 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn 2.0.79", -] - -[[package]] -name = "prost-types" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4759aa0d3a6232fb8dbdb97b61de2c20047c68aca932c7ed76da9d788508d670" -dependencies = [ - "prost", + "syn 2.0.80", ] [[package]] @@ -3344,9 +3269,9 @@ dependencies = [ [[package]] name = "redb" -version = "2.1.3" +version = "2.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4760ad04a88ef77075ba86ba9ea79b919e6bab29c1764c5747237cd6eaedcaa" +checksum = "074373f3e7e5d27d8741d19512232adb47be8622d3daef3a45bcae72050c3d2a" dependencies = [ "libc", ] @@ -3609,9 +3534,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.14" +version = "0.23.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "415d9944693cb90382053259f89fbb077ea730ad7273047ec63b19bc9b160ba8" +checksum = "5fbb44d7acc4e873d613422379f69f237a1b141928c02f6bc6ccfddddc2d7993" dependencies = [ "once_cell", "ring", @@ -3641,9 +3566,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e696e35370c65c9c541198af4543ccd580cf17fc25d8e05c5a242b202488c55" +checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" [[package]] name = "rustls-webpki" @@ -3668,9 +3593,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" +checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" [[package]] name = "ryu" @@ -3698,9 +3623,9 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.24" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" +checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" dependencies = [ "windows-sys 0.59.0", ] @@ -3813,14 +3738,14 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ "itoa", "memchr", @@ -3886,7 +3811,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -4088,7 +4013,7 @@ dependencies = [ "once_cell", "paste", "percent-encoding", - "rustls 0.23.14", + "rustls 0.23.15", "rustls-pemfile 2.2.0", "serde", "serde_json", @@ -4113,7 +4038,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -4136,7 +4061,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.79", + "syn 2.0.80", "tempfile", "tokio", "url", @@ -4320,9 +4245,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.79" +version = "2.0.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "e6e185e337f816bc8da115b8afcb3324006ccc82eeaddf35113888d3bd8e44ac" dependencies = [ "proc-macro2", "quote", @@ -4418,7 +4343,7 @@ checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -4501,33 +4426,31 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.38.1" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb2caba9f80616f438e09748d5acda951967e1ea58508ef53d9c6402485a46df" +checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" dependencies = [ "backtrace", "bytes", "libc", - "mio", - "num_cpus", + "mio 1.0.2", "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2", "tokio-macros", - "tracing", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "tokio-macros" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -4556,7 +4479,7 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ - "rustls 0.23.14", + "rustls 0.23.15", "rustls-pki-types", "tokio", ] @@ -4755,7 +4678,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] @@ -4827,9 +4750,9 @@ dependencies = [ [[package]] name = "triomphe" -version = "0.1.13" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6631e42e10b40c0690bf92f404ebcfe6e1fdb480391d15f17cc8e96eeed5369" +checksum = "ef8f7726da4807b58ea5c96fdc122f80702030edc33b35aff9190a51148ccc85" dependencies = [ "serde", "stable_deref_trait", @@ -4879,12 +4802,9 @@ dependencies = [ [[package]] name = "unicase" -version = "2.7.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" -dependencies = [ - "version_check", -] +checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" [[package]] name = "unicode-bidi" @@ -4977,9 +4897,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" [[package]] name = "valuable" @@ -5038,9 +4958,9 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" dependencies = [ "cfg-if", "once_cell", @@ -5051,24 +4971,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.43" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" dependencies = [ "cfg-if", "js-sys", @@ -5078,9 +4998,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5088,22 +5008,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "wasm-encoder" @@ -5285,9 +5205,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" dependencies = [ "js-sys", "wasm-bindgen", @@ -5314,9 +5234,9 @@ dependencies = [ [[package]] name = "wg" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dadf90865f15d5c2d87f126a56ce3715b3a233641acdd10f59200aa7f4c81fb9" +checksum = "7aafc5e81e847f05d6770e074faf7b1cd4a5dec9a0e88eac5d55e20fdfebee9a" dependencies = [ "event-listener 5.3.1", "futures-core", @@ -5684,7 +5604,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.80", ] [[package]] diff --git a/crates/core/Cargo.toml b/crates/core/Cargo.toml index 49c61f4cf..dd6e34931 100644 --- a/crates/core/Cargo.toml +++ b/crates/core/Cargo.toml @@ -88,7 +88,7 @@ pico-args = "0.5" statrs = "0.17" tempfile = "3" tracing = "0.1" -console-subscriber = { version = "0.4" } +# console-subscriber = { version = "0.4" } [features] default = ["redb", "trace", "websocket"] diff --git a/crates/core/src/transport/connection_handler.rs b/crates/core/src/transport/connection_handler.rs index 3a45c50ca..d395a1c0e 100644 --- a/crates/core/src/transport/connection_handler.rs +++ b/crates/core/src/transport/connection_handler.rs @@ -340,7 +340,7 @@ impl UdpPacketsListener { // Handling of connection events connection_event = self.connection_handler.recv() => { let Some((remote_addr, event)) = connection_event else { - tracing::debug!("connection handler closed"); + tracing::debug!(%self.this_addr, "connection handler closed"); return Ok(()); }; if let Some(_conn) = self.remote_connections.remove(&remote_addr) { @@ -1030,7 +1030,7 @@ mod test { barrier_cp.wait().await; for (peer_pub, peer_addr) in &peer_keys_and_addr { let peer_conn = tokio::time::timeout( - Duration::from_secs(10), + Duration::from_secs(2), peer.connect(peer_pub.clone(), *peer_addr).await, ); establish_conns.push(peer_conn); @@ -1043,7 +1043,7 @@ mod test { let extra_wait = if config.wait_time.as_secs() > 10 { Duration::from_secs(3) } else { - Duration::from_secs(1) + Duration::from_millis(200) }; for ((_, peer_addr), mut peer_conn) in peer_keys_and_addr.into_iter().zip(connections) @@ -1115,7 +1115,6 @@ mod test { #[tokio::test] async fn simulate_nat_traversal() -> anyhow::Result<()> { - // crate::config::set_logger(); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1142,7 +1141,6 @@ mod test { #[tokio::test] async fn simulate_nat_traversal_drop_first_packets_for_all() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(PacketDropPolicy::Ranges(vec![0..1]), channels.clone()).await?; @@ -1169,7 +1167,6 @@ mod test { #[tokio::test] async fn simulate_nat_traversal_drop_first_packets_of_peerb() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1198,7 +1195,6 @@ mod test { #[tokio::test] async fn simulate_nat_traversal_drop_packet_ranges_of_peerb_killed() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1210,23 +1206,25 @@ mod test { let peer_b = tokio::spawn(async move { let peer_a_conn = peer_b.connect(peer_a_pub, peer_a_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(60), peer_a_conn).await??; - let _ = tokio::time::timeout(Duration::from_secs(3), conn.recv()).await; - conn.send("some data").await.unwrap(); + let mut conn = tokio::time::timeout(Duration::from_secs(2), peer_a_conn).await??; + conn.send("some data").await.inspect_err(|error| { + tracing::error!(%error, "error while sending message to peer a"); + })?; + tracing::info!("Dropping peer b"); Ok::<_, anyhow::Error>(()) }); let peer_a = tokio::spawn(async move { let peer_b_conn = peer_a.connect(peer_b_pub, peer_b_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(60), peer_b_conn).await??; - let _ = tokio::time::timeout(Duration::from_secs(3), conn.recv()).await; + let mut conn = tokio::time::timeout(Duration::from_secs(2), peer_b_conn).await??; + let b = tokio::time::timeout(Duration::from_secs(2), conn.recv()).await??; // we should receive the message - let b = conn.recv().await.unwrap(); - assert_eq!(b, b"some data"); - // as peer b will drop all packets after the third packet, the connection should be broken - tokio::time::sleep(Duration::from_secs(10)).await; + assert_eq!(&b[8..], b"some data"); + tracing::info!("Peer a received package from peer b"); + tokio::time::sleep(Duration::from_secs(3)).await; // conn should be broken as the remote peer cannot receive message and ping - conn.recv().await.unwrap_err(); + let res = conn.recv().await; + assert!(res.is_err()); Ok::<_, anyhow::Error>(()) }); @@ -1239,7 +1237,6 @@ mod test { #[tokio::test] async fn simulate_nat_traversal_drop_packet_ranges_of_peerb() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE), None); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1248,44 +1245,56 @@ mod test { let peer_b = tokio::spawn(async move { let peer_a_conn = peer_b.connect(peer_a_pub, peer_a_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(60), peer_a_conn).await??; - let _ = tokio::time::timeout(Duration::from_secs(3), conn.recv()).await; - conn.send("some foo").await.unwrap(); - - tokio::time::sleep(Duration::from_secs(10)).await; - + let mut conn = tokio::time::timeout(Duration::from_secs(2), peer_a_conn) + .await + .inspect_err(|_| tracing::error!("peer a timed out"))? + .inspect_err(|error| tracing::error!(%error, "error while connecting to peer a"))?; + tracing::info!("Connected peer b to peer a"); + conn.send("some foo").await.inspect_err(|error| { + tracing::error!(%error, "error while sending 1st message"); + })?; + tokio::time::sleep(Duration::from_secs(2)).await; // although we drop some packets, we still alive - conn.send("some data").await.unwrap(); - Ok::<_, anyhow::Error>(()) + conn.send("some data").await.inspect_err(|error| { + tracing::error!(%error, "error while sending 2nd message"); + })?; + let _ = tokio::time::timeout(Duration::from_secs(3), conn.recv()).await; + Ok::<_, anyhow::Error>(conn) }); let peer_a = tokio::spawn(async move { let peer_b_conn = peer_a.connect(peer_b_pub, peer_b_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(60), peer_b_conn).await??; - let _ = tokio::time::timeout(Duration::from_secs(3), conn.recv()).await; + let mut conn = tokio::time::timeout(Duration::from_secs(2), peer_b_conn) + .await + .inspect_err(|_| tracing::error!("peer b timed out"))? + .inspect_err(|error| tracing::error!(%error, "error while connecting to peer b"))?; + tracing::info!("Connected peer a to peer b"); - tokio::time::sleep(Duration::from_secs(5)).await; // we should receive the message - let b = conn.recv().await.unwrap(); + let b = conn.recv().await.inspect_err(|error| { + tracing::error!(%error, "error while receiving 1st message"); + })?; assert_eq!(&b[8..], b"some foo"); - - tokio::time::sleep(Duration::from_secs(10)).await; // conn should not be broken - let b = conn.recv().await.unwrap(); + let b = conn.recv().await.inspect_err(|error| { + tracing::error!(%error, "error while receiving 2nd message"); + })?; assert_eq!(&b[8..], b"some data"); - Ok::<_, anyhow::Error>(()) + let _ = conn.send("complete").await.inspect_err(|error| { + tracing::error!(%error, "error while sending 3rd message"); + }); + Ok::<_, anyhow::Error>(conn) }); let (a, b) = tokio::try_join!(peer_a, peer_b)?; - a?; - b?; + let _ = a?; + let _ = b?; Ok(()) } #[tokio::test] async fn simulate_gateway_connection() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE), None); let channels = Arc::new(DashMap::new()); let (_peer_a_pub, mut peer_a, _peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1314,7 +1323,6 @@ mod test { #[tokio::test] async fn simulate_gateway_connection_drop_first_packets_of_gateway() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (_peer_a_pub, mut peer_a, _peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1343,7 +1351,6 @@ mod test { #[tokio::test] async fn simulate_gateway_connection_drop_first_packets_for_all() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (_peer_a_pub, mut peer_a, _peer_a_addr) = set_peer_connection(PacketDropPolicy::Ranges(vec![0..1]), channels.clone()).await?; @@ -1372,7 +1379,6 @@ mod test { #[tokio::test] async fn simulate_gateway_connection_drop_first_packets_of_peer() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); let channels = Arc::new(DashMap::new()); let (_peer_a_pub, mut peer_a, _peer_a_addr) = set_peer_connection(PacketDropPolicy::Ranges(vec![0..1]), channels.clone()).await?; @@ -1401,7 +1407,6 @@ mod test { #[tokio::test] async fn simulate_send_short_message() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE), None); #[derive(Clone, Copy)] struct TestData(&'static str); @@ -1434,7 +1439,6 @@ mod test { /// by using public send API can be directly sent #[tokio::test] async fn simulate_send_max_short_message() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::ERROR)); let channels = Arc::new(DashMap::new()); let (peer_a_pub, mut peer_a, peer_a_addr) = set_peer_connection(Default::default(), channels.clone()).await?; @@ -1443,7 +1447,7 @@ mod test { let peer_b = tokio::spawn(async move { let peer_a_conn = peer_b.connect(peer_a_pub, peer_a_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(500), peer_a_conn).await??; + let mut conn = tokio::time::timeout(Duration::from_secs(5), peer_a_conn).await??; let data = vec![0u8; 1324]; let data = tokio::task::spawn_blocking(move || bincode::serialize(&data).unwrap()) .await @@ -1454,7 +1458,7 @@ mod test { let peer_a = tokio::spawn(async move { let peer_b_conn = peer_a.connect(peer_b_pub, peer_b_addr).await; - let mut conn = tokio::time::timeout(Duration::from_secs(500), peer_b_conn).await??; + let mut conn = tokio::time::timeout(Duration::from_secs(5), peer_b_conn).await??; let msg = conn.recv().await?; assert!(msg.len() <= MAX_DATA_SIZE); Ok::<_, anyhow::Error>(()) @@ -1499,7 +1503,6 @@ mod test { #[tokio::test] async fn simulate_send_streamed_message() -> anyhow::Result<()> { - // crate::config::set_logger(Some(tracing::level_filters::LevelFilter::TRACE)); #[derive(Clone, Copy)] struct TestData(&'static str); diff --git a/crates/core/src/transport/peer_connection.rs b/crates/core/src/transport/peer_connection.rs index 34dbaa01b..722316630 100644 --- a/crates/core/src/transport/peer_connection.rs +++ b/crates/core/src/transport/peer_connection.rs @@ -207,13 +207,13 @@ impl PeerConnection { // listen for incoming messages or receipts or wait until is time to do anything else again let mut resend_check = Some(tokio::time::sleep(tokio::time::Duration::from_millis(10))); - // #[cfg(debug_assertions)] - // const KEEP_ALIVE_INTERVAL: Duration = Duration::from_secs(2); - // #[cfg(not(debug_assertions))] + #[cfg(debug_assertions)] + const KEEP_ALIVE_INTERVAL: Duration = Duration::from_secs(2); + #[cfg(not(debug_assertions))] const KEEP_ALIVE_INTERVAL: Duration = Duration::from_secs(20); - // #[cfg(debug_assertions)] - // const KILL_CONNECTION_AFTER: Duration = Duration::from_secs(6); - // #[cfg(not(debug_assertions))] + #[cfg(debug_assertions)] + const KILL_CONNECTION_AFTER: Duration = Duration::from_secs(6); + #[cfg(not(debug_assertions))] const KILL_CONNECTION_AFTER: Duration = Duration::from_secs(60); let mut keep_alive = tokio::time::interval(KEEP_ALIVE_INTERVAL); @@ -306,7 +306,7 @@ impl PeerConnection { } _ = resend_check.take().unwrap_or(tokio::time::sleep(Duration::from_millis(10))) => { loop { - tracing::trace!(remote = ?self.remote_conn.remote_addr, "checking for resends"); + // tracing::trace!(remote = ?self.remote_conn.remote_addr, "checking for resends"); let maybe_resend = self.remote_conn .sent_tracker .lock() diff --git a/crates/core/src/transport/received_packet_tracker.rs b/crates/core/src/transport/received_packet_tracker.rs index 9191039ba..fa3443703 100644 --- a/crates/core/src/transport/received_packet_tracker.rs +++ b/crates/core/src/transport/received_packet_tracker.rs @@ -20,7 +20,7 @@ const MAX_PENDING_RECEIPTS: usize = 20; /// if the returned list is not empty, the list should be sent as receipts immediately in a noop. /// This may look something like this: /// -/// ```rust,no_run +/// ```ignore /// use super::MAX_CONFIRMATION_DELAY; /// use std::thread::sleep; /// let mut received_packet_tracker = todo!(); diff --git a/crates/core/src/transport/sent_packet_tracker.rs b/crates/core/src/transport/sent_packet_tracker.rs index 734677a0b..aa641427f 100644 --- a/crates/core/src/transport/sent_packet_tracker.rs +++ b/crates/core/src/transport/sent_packet_tracker.rs @@ -39,7 +39,7 @@ const PACKET_LOSS_DECAY_FACTOR: f64 = 1.0 / 1000.0; /// The expectation is that get_resend will be called as part of a loop that looks something like /// this: /// -/// ```rust,no_run +/// ```ignore /// let mut sent_packet_tracker = todo!(); /// loop { /// match sent_packet_tracker.get_resend() {