From b81f7594fa2f11ff830d0c80b2978b36ed899994 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Tr=C4=85d?= Date: Tue, 15 Oct 2024 11:44:57 +0200 Subject: [PATCH] Update telemetry + traces + cleanup (#788) --- Cargo.lock | 2321 ++++++++++------- Cargo.toml | 10 +- crates/tx-sitter-client/Cargo.toml | 4 +- crates/tx-sitter-client/src/lib.rs | 25 +- src/bin/tool.rs | 8 +- src/database/query.rs | 94 +- src/database/types.rs | 32 +- src/ethereum/read/mod.rs | 18 +- src/prover/mod.rs | 60 +- .../custom_middleware/api_metrics_layer.rs | 5 +- src/server/custom_middleware/logging_layer.rs | 37 +- .../custom_middleware/remove_auth_layer.rs | 6 +- src/server/custom_middleware/timeout_layer.rs | 10 +- src/server/mod.rs | 11 +- src/shutdown.rs | 16 +- supply-chain/audits.toml | 2 +- supply-chain/config.toml | 636 +++-- supply-chain/imports.lock | 1809 +++++++------ tests/common/mod.rs | 275 +- tests/dynamic_batch_sizes.rs | 14 +- tests/malformed_payload.rs | 24 +- tests/unreduced_identity.rs | 32 +- 22 files changed, 3055 insertions(+), 2394 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fbeca1d9..67011c53 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8,7 +8,7 @@ version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" dependencies = [ - "lazy_static 1.4.0", + "lazy_static 1.5.0", "regex", ] @@ -27,11 +27,17 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + [[package]] name = "aes" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" dependencies = [ "cfg-if", "cipher", @@ -40,9 +46,9 @@ dependencies = [ [[package]] name = "ahash" -version = "0.7.7" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ "getrandom", "once_cell", @@ -51,9 +57,9 @@ dependencies = [ [[package]] name = "ahash" -version = "0.8.7" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", "getrandom", @@ -64,24 +70,24 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ "memchr", ] [[package]] name = "allocator-api2" -version = "0.2.16" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "alloy-rlp" -version = "0.3.4" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d58d9f5da7b40e9bfff0b7e7816700be4019db97d4b6359fe7f94a9e22e42ac" +checksum = "26154390b1d205a4a7ac7352aa2eb4f81f391399d4e2f546fb81a2f8bb383f62" dependencies = [ "arrayvec", "bytes", @@ -104,47 +110,48 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.11" +version = "0.6.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5" +checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", + "is_terminal_polyfill", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" +checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" [[package]] name = "anstyle-parse" -version = "0.2.3" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.2" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" dependencies = [ "windows-sys 0.52.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.2" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" dependencies = [ "anstyle", "windows-sys 0.52.0", @@ -152,9 +159,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" [[package]] name = "ark-bn254" @@ -185,7 +192,7 @@ dependencies = [ "cfg-if", "color-eyre", "criterion", - "ethers-core 2.0.13 (git+https://github.com/gakonst/ethers-rs)", + "ethers-core 2.0.14 (git+https://github.com/gakonst/ethers-rs)", "fnv", "hex", "num", @@ -267,7 +274,7 @@ dependencies = [ "num-traits", "paste", "rayon", - "rustc_version 0.4.0", + "rustc_version 0.4.1", "zeroize", ] @@ -444,9 +451,9 @@ dependencies = [ [[package]] name = "arrayvec" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "ascii-canvas" @@ -459,9 +466,9 @@ dependencies = [ [[package]] name = "async-stream" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" dependencies = [ "async-stream-impl", "futures-core", @@ -470,24 +477,24 @@ dependencies = [ [[package]] name = "async-stream-impl" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "async-trait" -version = "0.1.77" +version = "0.1.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" +checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -498,7 +505,7 @@ checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" dependencies = [ "futures", "pharos", - "rustc_version 0.4.0", + "rustc_version 0.4.1", ] [[package]] @@ -511,14 +518,10 @@ dependencies = [ ] [[package]] -name = "atomic-write-file" -version = "0.1.2" +name = "atomic-waker" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edcdbedc2236483ab103a53415653d6b4442ea6141baf1ffa85df29635e88436" -dependencies = [ - "nix 0.27.1", - "rand", -] +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "atty" @@ -533,26 +536,26 @@ dependencies = [ [[package]] name = "auto_impl" -version = "1.1.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "823b8bb275161044e2ac7a25879cb3e2480cb403e3943022c7c769c599b756aa" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "autocfg" -version = "1.1.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "aws-config" -version = "1.5.6" +version = "1.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "848d7b9b605720989929279fa644ce8f244d0ce3146fcca5b70e4eb7b3c020fc" +checksum = "7198e6f03240fdceba36656d8be440297b6b82270325908c7381f37d826a74f6" dependencies = [ "aws-credential-types", "aws-runtime", @@ -569,8 +572,8 @@ dependencies = [ "bytes", "fastrand", "hex", - "http 0.2.11", - "ring 0.17.7", + "http 0.2.12", + "ring 0.17.8", "time", "tokio", "tracing", @@ -590,6 +593,33 @@ dependencies = [ "zeroize", ] +[[package]] +name = "aws-lc-rs" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdd82dba44d209fddb11c190e0a94b78651f95299598e472215667417a03ff1d" +dependencies = [ + "aws-lc-sys", + "mirai-annotations", + "paste", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7a4168111d7eb622a31b214057b8509c0a7e1794f44c546d742330dc793972" +dependencies = [ + "bindgen", + "cc", + "cmake", + "dunce", + "fs_extra", + "libc", + "paste", +] + [[package]] name = "aws-runtime" version = "1.4.3" @@ -606,20 +636,20 @@ dependencies = [ "aws-types", "bytes", "fastrand", - "http 0.2.11", + "http 0.2.12", "http-body 0.4.6", "once_cell", "percent-encoding", "pin-project-lite", "tracing", - "uuid 1.7.0", + "uuid 1.10.0", ] [[package]] name = "aws-sdk-cognitoidentityprovider" -version = "1.51.0" +version = "1.54.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92cf43607d45e6de232b2476c02648c6b69819a9c0b4e7e53543ea65fe8b496" +checksum = "b74f17a2c8752d3e285a9bf6176490e8de6ab5a54f028b6b6557d7d9ab689534" dependencies = [ "aws-credential-types", "aws-runtime", @@ -631,7 +661,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes", - "http 0.2.11", + "http 0.2.12", "once_cell", "regex-lite", "tracing", @@ -639,9 +669,9 @@ dependencies = [ [[package]] name = "aws-sdk-sso" -version = "1.43.0" +version = "1.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a9d27ed1c12b1140c47daf1bc541606c43fdafd918c4797d520db0043ceef2" +checksum = "0dc2faec3205d496c7e57eff685dd944203df7ce16a4116d0281c44021788a7b" dependencies = [ "aws-credential-types", "aws-runtime", @@ -653,7 +683,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes", - "http 0.2.11", + "http 0.2.12", "once_cell", "regex-lite", "tracing", @@ -661,9 +691,9 @@ dependencies = [ [[package]] name = "aws-sdk-ssooidc" -version = "1.44.0" +version = "1.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44514a6ca967686cde1e2a1b81df6ef1883d0e3e570da8d8bc5c491dcb6fc29b" +checksum = "c93c241f52bc5e0476e259c953234dab7e2a35ee207ee202e86c0095ec4951dc" dependencies = [ "aws-credential-types", "aws-runtime", @@ -675,7 +705,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes", - "http 0.2.11", + "http 0.2.12", "once_cell", "regex-lite", "tracing", @@ -683,9 +713,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "1.43.0" +version = "1.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7a4d279762a35b9df97209f6808b95d4fe78547fe2316b4d200a0283960c5a" +checksum = "b259429be94a3459fa1b00c5684faee118d74f9577cc50aebadc36e507c63b5f" dependencies = [ "aws-credential-types", "aws-runtime", @@ -698,7 +728,7 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "http 0.2.11", + "http 0.2.12", "once_cell", "regex-lite", "tracing", @@ -718,8 +748,8 @@ dependencies = [ "form_urlencoded", "hex", "hmac", - "http 0.2.11", - "http 1.0.0", + "http 0.2.12", + "http 1.1.0", "once_cell", "percent-encoding", "sha2", @@ -755,7 +785,7 @@ dependencies = [ "bytes", "bytes-utils", "futures-core", - "http 0.2.11", + "http 0.2.12", "http-body 0.4.6", "once_cell", "percent-encoding", @@ -785,9 +815,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.7.1" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1ce695746394772e7000b39fe073095db6d45a862d0767dd5ad0ac0d7f8eb87" +checksum = "a065c0fe6fdbdf9f11817eb68582b2ab4aff9e9c39e986ae48f7ec576c6322db" dependencies = [ "aws-smithy-async", "aws-smithy-http", @@ -795,17 +825,17 @@ dependencies = [ "aws-smithy-types", "bytes", "fastrand", - "h2", - "http 0.2.11", + "h2 0.3.26", + "http 0.2.12", "http-body 0.4.6", "http-body 1.0.1", "httparse", - "hyper", - "hyper-rustls", + "hyper 0.14.30", + "hyper-rustls 0.24.2", "once_cell", "pin-project-lite", "pin-utils", - "rustls", + "rustls 0.21.12", "tokio", "tracing", ] @@ -819,8 +849,8 @@ dependencies = [ "aws-smithy-async", "aws-smithy-types", "bytes", - "http 0.2.11", - "http 1.0.0", + "http 0.2.12", + "http 1.1.0", "pin-project-lite", "tokio", "tracing", @@ -829,16 +859,16 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "1.2.6" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03701449087215b5369c7ea17fef0dd5d24cb93439ec5af0c7615f58c3f22605" +checksum = "147100a7bea70fa20ef224a6bad700358305f5dc0f84649c53769761395b355b" dependencies = [ "base64-simd", "bytes", "bytes-utils", "futures-core", - "http 0.2.11", - "http 1.0.0", + "http 0.2.12", + "http 1.1.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -872,7 +902,7 @@ dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", "aws-smithy-types", - "rustc_version 0.4.0", + "rustc_version 0.4.1", "tracing", ] @@ -883,13 +913,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" dependencies = [ "async-trait", - "axum-core", + "axum-core 0.3.4", "bitflags 1.3.2", "bytes", "futures-util", - "http 0.2.11", + "http 0.2.12", "http-body 0.4.6", - "hyper", + "hyper 0.14.30", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "tokio", + "tower 0.4.13", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" +dependencies = [ + "async-trait", + "axum-core 0.4.5", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-util", "itoa", "matchit", "memchr", @@ -901,11 +964,12 @@ dependencies = [ "serde_json", "serde_path_to_error", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 1.0.1", "tokio", - "tower", + "tower 0.5.1", "tower-layer", "tower-service", + "tracing", ] [[package]] @@ -917,7 +981,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 0.2.11", + "http 0.2.12", "http-body 0.4.6", "mime", "rustversion", @@ -925,32 +989,57 @@ dependencies = [ "tower-service", ] +[[package]] +name = "axum-core" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper 1.0.1", + "tower-layer", + "tower-service", + "tracing", +] + [[package]] name = "axum-server" -version = "0.4.7" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bace45b270e36e3c27a190c65883de6dfc9f1d18c829907c127464815dc67b24" +checksum = "56bac90848f6a9393ac03c63c640925c4b7c8ca21654de40d53f55964667c7d8" dependencies = [ "bytes", "futures-util", - "http 0.2.11", - "http-body 0.4.6", - "hyper", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "pin-project-lite", "tokio", + "tower 0.4.13", "tower-service", ] [[package]] name = "backtrace" -version = "0.3.69" +version = "0.3.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" dependencies = [ "addr2line", "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.4", "object 0.32.2", "rustc-demangle", ] @@ -973,6 +1062,12 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + [[package]] name = "base64-simd" version = "0.8.0" @@ -1004,6 +1099,29 @@ dependencies = [ "serde", ] +[[package]] +name = "bindgen" +version = "0.69.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" +dependencies = [ + "bitflags 2.6.0", + "cexpr", + "clang-sys", + "itertools 0.12.1", + "lazy_static 1.5.0", + "lazycell", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 2.0.79", + "which", +] + [[package]] name = "bit-set" version = "0.5.3" @@ -1027,9 +1145,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.2" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" dependencies = [ "serde", ] @@ -1076,9 +1194,9 @@ dependencies = [ [[package]] name = "bs58" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ "sha2", "tinyvec", @@ -1086,20 +1204,20 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.17" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" dependencies = [ - "lazy_static 1.4.0", "memchr", - "regex-automata 0.1.10", + "regex-automata 0.4.8", + "serde", ] [[package]] name = "bumpalo" -version = "3.14.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "byte-slice-cast" @@ -1131,9 +1249,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" @@ -1143,9 +1261,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.5.0" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" +checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" dependencies = [ "serde", ] @@ -1183,27 +1301,27 @@ dependencies = [ [[package]] name = "cadence" -version = "1.1.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51923ae2126911a3456e05ddf421ece6380a214722bffa0ef15c5912d8fe8761" +checksum = "62fd689c825a93386a2ac05a46f88342c6df9ec3e79416f665650614e92e7475" dependencies = [ "crossbeam-channel", ] [[package]] name = "camino" -version = "1.1.6" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" +checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" dependencies = [ "serde", ] [[package]] name = "cargo-platform" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d" +checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" dependencies = [ "serde", ] @@ -1216,7 +1334,7 @@ checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform", - "semver 1.0.21", + "semver 1.0.23", "serde", "serde_json", "thiserror", @@ -1230,12 +1348,22 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.0.83" +version = "1.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" dependencies = [ "jobserver", "libc", + "shlex", +] + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", ] [[package]] @@ -1246,9 +1374,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.33" +version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f13690e35a5e4ace198e7beea2895d29f3a9cc55015fcebe6336bd2010af9eb" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1256,7 +1384,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets 0.52.0", + "windows-targets 0.52.6", ] [[package]] @@ -1269,6 +1397,17 @@ dependencies = [ "inout", ] +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading 0.8.5", +] + [[package]] name = "clap" version = "2.34.0" @@ -1282,9 +1421,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.18" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c" +checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" dependencies = [ "clap_builder", "clap_derive", @@ -1292,33 +1431,42 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.18" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7" +checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim", + "strsim 0.11.1", ] [[package]] name = "clap_derive" -version = "4.4.7" +version = "4.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" dependencies = [ - "heck", + "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "clap_lex" -version = "0.6.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" +checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" + +[[package]] +name = "cmake" +version = "0.1.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a" +dependencies = [ + "cc", +] [[package]] name = "cobs" @@ -1347,7 +1495,7 @@ dependencies = [ "digest 0.10.7", "hex", "hmac", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "num-bigint", "rand", "regex", @@ -1421,9 +1569,9 @@ dependencies = [ [[package]] name = "color-eyre" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204" +checksum = "55146f5e46f237f7423d74111267d4597b59b0dad0ffaf7303bce9945d843ad5" dependencies = [ "backtrace", "color-spantrace", @@ -1448,15 +1596,15 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" +checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" [[package]] name = "combine" -version = "4.6.6" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ "bytes", "memchr", @@ -1470,7 +1618,7 @@ checksum = "23738e11972c7643e4ec947840fc463b6a571afcd3e735bdfce7d03c7a784aca" dependencies = [ "async-trait", "json5", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "nom", "pathdiff", "ron", @@ -1488,16 +1636,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" dependencies = [ "encode_unicode", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "libc", "windows-sys 0.52.0", ] [[package]] name = "const-hex" -version = "1.11.0" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d59688ad0945eaf6b84cb44fedbe93484c81b48970e98f09db8a22832d7961" +checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" dependencies = [ "cfg-if", "cpufeatures", @@ -1530,9 +1678,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "corosensei" @@ -1549,9 +1697,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" dependencies = [ "libc", ] @@ -1617,9 +1765,9 @@ dependencies = [ [[package]] name = "crc" -version = "3.0.1" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" dependencies = [ "crc-catalog", ] @@ -1632,9 +1780,9 @@ checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" -version = "1.3.2" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] @@ -1651,7 +1799,7 @@ dependencies = [ "criterion-plot", "csv", "itertools 0.10.5", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "num-traits", "oorandom", "plotters", @@ -1677,9 +1825,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.11" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ "crossbeam-utils", ] @@ -1714,9 +1862,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crunchy" @@ -1800,7 +1948,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -1817,7 +1965,7 @@ checksum = "98532a60dedaebc4848cb2cba5023337cc9ea3af16a5b062633fabfd9f18fb60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -1832,12 +1980,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.5" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc5d6b04b3fd0ba9926f945895de7d806260a2d7431ba82e7edaecb043c4c6b8" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ - "darling_core 0.20.5", - "darling_macro 0.20.5", + "darling_core 0.20.10", + "darling_macro 0.20.10", ] [[package]] @@ -1850,21 +1998,21 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", + "strsim 0.10.0", "syn 1.0.109", ] [[package]] name = "darling_core" -version = "0.20.5" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e48a959bcd5c761246f5d090ebc2fbf7b9cd527a492b07a67510c108f1e7e3" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -1880,26 +2028,26 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.5" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1545d67a2149e1d93b7e5c7752dce5a7426eb5d1357ddcfd89336b94444f77" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ - "darling_core 0.20.5", + "darling_core 0.20.10", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "data-encoding" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "der" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" dependencies = [ "const-oid", "pem-rfc7468", @@ -1928,21 +2076,15 @@ dependencies = [ [[package]] name = "derive_more" -version = "0.99.17" +version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.79", ] -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - [[package]] name = "digest" version = "0.9.0" @@ -2020,9 +2162,9 @@ checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" [[package]] name = "dunce" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "e2e-tests" @@ -2032,7 +2174,7 @@ dependencies = [ "ethers", "hex", "hex-literal", - "hyper", + "hyper 0.14.30", "rand", "retry", "serde", @@ -2061,9 +2203,9 @@ dependencies = [ [[package]] name = "either" -version = "1.9.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" dependencies = [ "serde", ] @@ -2101,9 +2243,9 @@ checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d" [[package]] name = "ena" -version = "0.14.2" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c533630cf40e9caa44bd91aadc88a75d75a4c3a12b4cfde353cbed41daa1e1f1" +checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" dependencies = [ "log", ] @@ -2116,18 +2258,18 @@ checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" [[package]] name = "encoding_rs" -version = "0.8.33" +version = "0.8.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" dependencies = [ "cfg-if", ] [[package]] name = "enr" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe81b5c06ecfdbc71dd845216f225f53b62a10cb8a16c946836a3467f701d05b" +checksum = "2a3d8dc56e02f954cac8eb489772c552c473346fc34f67412bb6244fd647f7e4" dependencies = [ "base64 0.21.7", "bytes", @@ -2143,14 +2285,14 @@ dependencies = [ [[package]] name = "enum-as-inner" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" +checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" dependencies = [ - "heck", + "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -2175,23 +2317,23 @@ dependencies = [ [[package]] name = "enumset" -version = "1.1.3" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d" +checksum = "d07a4b049558765cef5f0c1a273c3fc57084d768b44d2f98127aef4cceb17293" dependencies = [ "enumset_derive", ] [[package]] name = "enumset_derive" -version = "0.8.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af" +checksum = "59c3b24c345d8c314966bdc1832f6c2635bfcce8e7cf363bd115987bba2ee242" dependencies = [ - "darling 0.20.5", + "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -2202,9 +2344,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", "windows-sys 0.52.0", @@ -2293,13 +2435,13 @@ dependencies = [ [[package]] name = "ethers" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c7cd562832e2ff584fa844cd2f6e5d4f35bbe11b28c7c9b8df957b2e1d0c701" +checksum = "816841ea989f0c69e459af1cf23a6b0033b19a55424a1ea3a30099becdb8dec0" dependencies = [ "ethers-addressbook", "ethers-contract", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "ethers-etherscan", "ethers-middleware", "ethers-providers", @@ -2309,11 +2451,11 @@ dependencies = [ [[package]] name = "ethers-addressbook" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35dc9a249c066d17e8947ff52a4116406163cf92c7f0763cb8c001760b26403f" +checksum = "5495afd16b4faa556c3bba1f21b98b4983e53c1755022377051a975c3b021759" dependencies = [ - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell", "serde", "serde_json", @@ -2321,14 +2463,14 @@ dependencies = [ [[package]] name = "ethers-contract" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43304317c7f776876e47f2f637859f6d0701c1ec7930a150f169d5fbe7d76f5a" +checksum = "6fceafa3578c836eeb874af87abacfb041f92b4da0a78a5edd042564b8ecdaaa" dependencies = [ "const-hex", "ethers-contract-abigen", "ethers-contract-derive", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "ethers-providers", "futures-util", "once_cell", @@ -2340,49 +2482,49 @@ dependencies = [ [[package]] name = "ethers-contract-abigen" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f96502317bf34f6d71a3e3d270defaa9485d754d789e15a8e04a84161c95eb" +checksum = "04ba01fbc2331a38c429eb95d4a570166781f14290ef9fdb144278a90b5a739b" dependencies = [ "Inflector", "const-hex", "dunce", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "ethers-etherscan", "eyre", "prettyplease", "proc-macro2", "quote", "regex", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", - "syn 2.0.48", - "toml 0.8.10", + "syn 2.0.79", + "toml 0.8.19", "walkdir", ] [[package]] name = "ethers-contract-derive" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "452ff6b0a64507ce8d67ffd48b1da3b42f03680dcf5382244e9c93822cbbf5de" +checksum = "87689dcabc0051cde10caaade298f9e9093d65f6125c14575db3fd8c669a168f" dependencies = [ "Inflector", "const-hex", "ethers-contract-abigen", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2", "quote", "serde_json", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "ethers-core" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aab3cef6cc1c9fd7f787043c81ad3052eff2b96a3878ef1526aa446311bdbfc9" +checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" dependencies = [ "arrayvec", "bytes", @@ -2400,8 +2542,8 @@ dependencies = [ "rlp", "serde", "serde_json", - "strum", - "syn 2.0.48", + "strum 0.26.3", + "syn 2.0.79", "tempfile", "thiserror", "tiny-keccak", @@ -2410,8 +2552,8 @@ dependencies = [ [[package]] name = "ethers-core" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs#4d267f763a19e42a09e92741e1489c123f852f53" +version = "2.0.14" +source = "git+https://github.com/gakonst/ethers-rs#6e2ff0ef8af8c0ee3c21b7e1960f8c025bcd5588" dependencies = [ "arrayvec", "bytes", @@ -2427,7 +2569,7 @@ dependencies = [ "rlp", "serde", "serde_json", - "strum", + "strum 0.26.3", "tempfile", "thiserror", "tiny-keccak", @@ -2436,14 +2578,14 @@ dependencies = [ [[package]] name = "ethers-etherscan" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d45b981f5fa769e1d0343ebc2a44cfa88c9bc312eb681b676318b40cef6fb1" +checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ "chrono", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest", - "semver 1.0.21", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.11.27", + "semver 1.0.23", "serde", "serde_json", "thiserror", @@ -2452,14 +2594,14 @@ dependencies = [ [[package]] name = "ethers-middleware" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145211f34342487ef83a597c1e69f0d3e01512217a7c72cc8a25931854c7dca0" +checksum = "48f9fdf09aec667c099909d91908d5eaf9be1bd0e2500ba4172c1d28bfaa43de" dependencies = [ "async-trait", "auto_impl", "ethers-contract", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "ethers-etherscan", "ethers-providers", "ethers-signers", @@ -2467,7 +2609,7 @@ dependencies = [ "futures-locks", "futures-util", "instant", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -2479,9 +2621,9 @@ dependencies = [ [[package]] name = "ethers-providers" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb6b15393996e3b8a78ef1332d6483c11d839042c17be58decc92fa8b1c3508a" +checksum = "6434c9a33891f1effc9c75472e12666db2fa5a0fec4b29af6221680a6fe83ab2" dependencies = [ "async-trait", "auto_impl", @@ -2489,18 +2631,18 @@ dependencies = [ "bytes", "const-hex", "enr", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "futures-channel", "futures-core", "futures-timer", "futures-util", "hashers", - "http 0.2.11", + "http 0.2.12", "instant", "jsonwebtoken", "once_cell", "pin-project", - "reqwest", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -2518,9 +2660,9 @@ dependencies = [ [[package]] name = "ethers-signers" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3b125a103b56aef008af5d5fb48191984aa326b50bfd2557d231dc499833de3" +checksum = "228875491c782ad851773b652dd8ecac62cda8571d3bc32a5853644dd26766c2" dependencies = [ "async-trait", "coins-bip32", @@ -2528,7 +2670,7 @@ dependencies = [ "const-hex", "elliptic-curve", "eth-keystore", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "rand", "sha2", "thiserror", @@ -2537,15 +2679,15 @@ dependencies = [ [[package]] name = "ethers-solc" -version = "2.0.13" +version = "2.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d21df08582e0a43005018a858cc9b465c5fff9cf4056651be64f844e57d1f55f" +checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" dependencies = [ "cfg-if", "const-hex", "dirs", "dunce", - "ethers-core 2.0.13 (registry+https://github.com/rust-lang/crates.io-index)", + "ethers-core 2.0.14 (registry+https://github.com/rust-lang/crates.io-index)", "glob", "home", "md-5", @@ -2554,7 +2696,7 @@ dependencies = [ "path-slash", "rayon", "regex", - "semver 1.0.21", + "semver 1.0.23", "serde", "serde_json", "solang-parser", @@ -2591,9 +2733,9 @@ checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" [[package]] name = "fastrand" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fastrlp" @@ -2616,12 +2758,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "finl_unicode" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" - [[package]] name = "fixed-hash" version = "0.8.0" @@ -2661,17 +2797,17 @@ checksum = "7693d9dd1ec1c54f52195dfe255b627f7cec7da33b679cd56de949e662b3db10" dependencies = [ "flame", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "flate2" -version = "1.0.28" +version = "1.0.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" +checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -2725,6 +2861,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + [[package]] name = "funty" version = "2.0.0" @@ -2733,9 +2875,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" dependencies = [ "futures-channel", "futures-core", @@ -2748,9 +2890,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" dependencies = [ "futures-core", "futures-sink", @@ -2758,15 +2900,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" [[package]] name = "futures-executor" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" dependencies = [ "futures-core", "futures-task", @@ -2786,9 +2928,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" [[package]] name = "futures-locks" @@ -2802,32 +2944,32 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" [[package]] name = "futures-timer" -version = "3.0.2" +version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" dependencies = [ "gloo-timers", "send_wrapper 0.4.0", @@ -2835,9 +2977,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ "futures-channel", "futures-core", @@ -2873,9 +3015,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.12" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "libc", @@ -2930,17 +3072,36 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" dependencies = [ "bytes", "fnv", "futures-core", "futures-sink", "futures-util", - "http 0.2.11", - "indexmap 2.2.2", + "http 0.2.12", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.1.0", + "indexmap 2.6.0", "slab", "tokio", "tokio-util", @@ -2949,9 +3110,9 @@ dependencies = [ [[package]] name = "half" -version = "1.8.2" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" +checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" [[package]] name = "hashbrown" @@ -2959,7 +3120,7 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" dependencies = [ - "ahash 0.7.7", + "ahash 0.7.8", ] [[package]] @@ -2968,7 +3129,7 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" dependencies = [ - "ahash 0.7.7", + "ahash 0.7.8", ] [[package]] @@ -2977,19 +3138,25 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.7", + "ahash 0.8.11", ] [[package]] name = "hashbrown" -version = "0.14.3" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash 0.8.7", + "ahash 0.8.11", "allocator-api2", ] +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + [[package]] name = "hashers" version = "1.0.1" @@ -3005,7 +3172,7 @@ version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" dependencies = [ - "hashbrown 0.14.3", + "hashbrown 0.14.5", ] [[package]] @@ -3017,6 +3184,12 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + [[package]] name = "hermit-abi" version = "0.1.19" @@ -3028,9 +3201,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.5" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" [[package]] name = "hex" @@ -3073,9 +3246,9 @@ dependencies = [ [[package]] name = "http" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" dependencies = [ "bytes", "fnv", @@ -3084,9 +3257,9 @@ dependencies = [ [[package]] name = "http" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" dependencies = [ "bytes", "fnv", @@ -3100,7 +3273,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" dependencies = [ "bytes", - "http 0.2.11", + "http 0.2.12", "pin-project-lite", ] @@ -3111,7 +3284,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.0.0", + "http 1.1.0", ] [[package]] @@ -3122,16 +3295,16 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.0.0", + "http 1.1.0", "http-body 1.0.1", "pin-project-lite", ] [[package]] name = "httparse" -version = "1.8.0" +version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" +checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" [[package]] name = "httpdate" @@ -3157,16 +3330,16 @@ dependencies = [ [[package]] name = "hyper" -version = "0.14.28" +version = "0.14.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" +checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" dependencies = [ "bytes", "futures-channel", "futures-core", "futures-util", - "h2", - "http 0.2.11", + "h2 0.3.26", + "http 0.2.12", "http-body 0.4.6", "httparse", "httpdate", @@ -3179,6 +3352,27 @@ dependencies = [ "want", ] +[[package]] +name = "hyper" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.6", + "http 1.1.0", + "http-body 1.0.1", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + [[package]] name = "hyper-rustls" version = "0.24.2" @@ -3186,33 +3380,87 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", - "http 0.2.11", - "hyper", + "http 0.2.12", + "hyper 0.14.30", "log", - "rustls", - "rustls-native-certs", + "rustls 0.21.12", + "rustls-native-certs 0.6.3", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", ] [[package]] -name = "hyper-tls" -version = "0.5.0" +name = "hyper-rustls" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ - "bytes", - "hyper", - "native-tls", + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "log", + "rustls 0.23.14", + "rustls-native-certs 0.8.0", + "rustls-pki-types", "tokio", - "tokio-native-tls", + "tokio-rustls 0.26.0", + "tower-service", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper 0.14.30", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "hyper-tls" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +dependencies = [ + "bytes", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "native-tls", + "tokio", + "tokio-native-tls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "hyper 1.4.1", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", ] [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -3304,19 +3552,19 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.2" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.14.3", + "hashbrown 0.15.0", ] [[package]] name = "indoc" -version = "2.0.4" +version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" [[package]] name = "inout" @@ -3329,29 +3577,24 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", ] [[package]] name = "ipnet" -version = "2.9.0" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" +checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" [[package]] -name = "is-terminal" -version = "0.4.10" +name = "is_terminal_polyfill" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455" -dependencies = [ - "hermit-abi 0.3.5", - "rustix", - "windows-sys 0.52.0", -] +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] name = "itertools" @@ -3391,24 +3634,24 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "jobserver" -version = "0.1.27" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.68" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ "wasm-bindgen", ] @@ -3440,9 +3683,9 @@ dependencies = [ [[package]] name = "k256" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ "cfg-if", "ecdsa", @@ -3463,31 +3706,33 @@ dependencies = [ [[package]] name = "lalrpop" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4081d44f4611b66c6dd725e6de3169f9f63905421e8626fcb86b6a898998b8" +checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" dependencies = [ "ascii-canvas", "bit-set", - "diff", "ena", - "is-terminal", - "itertools 0.10.5", + "itertools 0.11.0", "lalrpop-util", "petgraph", "regex", - "regex-syntax 0.7.5", + "regex-syntax 0.8.5", "string_cache", "term", "tiny-keccak", "unicode-xid", + "walkdir", ] [[package]] name = "lalrpop-util" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f35c735096c0293d313e8f2a641627472b83d01b937177fe76e5e2708d31e0d" +checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" +dependencies = [ + "regex-automata 0.4.8", +] [[package]] name = "lazy_static" @@ -3497,13 +3742,19 @@ checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ - "spin 0.5.2", + "spin 0.9.8", ] +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + [[package]] name = "leb128" version = "0.2.5" @@ -3512,9 +3763,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.153" +version = "0.2.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" [[package]] name = "libloading" @@ -3526,6 +3777,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "libloading" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +dependencies = [ + "cfg-if", + "windows-targets 0.52.6", +] + [[package]] name = "libm" version = "0.2.8" @@ -3534,13 +3795,12 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" [[package]] name = "libredox" -version = "0.0.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.6.0", "libc", - "redox_syscall 0.4.1", ] [[package]] @@ -3571,15 +3831,15 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lock_api" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ "autocfg", "scopeguard", @@ -3587,9 +3847,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.20" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "loupe" @@ -3663,9 +3923,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.1" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memmap2" @@ -3705,24 +3965,26 @@ dependencies = [ [[package]] name = "metrics" -version = "0.22.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd71d9db2e4287c3407fa04378b8c2ee570aebe0854431562cdd89ca091854f4" +checksum = "884adb57038347dfbaf2d5065887b6cf4312330dc8e94bc30a1a839bd79d3261" dependencies = [ - "ahash 0.8.7", + "ahash 0.8.11", "portable-atomic", ] [[package]] name = "metrics-exporter-prometheus" -version = "0.13.1" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bf4e7146e30ad172c42c39b3246864bd2d3c6396780711a1baf749cfe423e21" +checksum = "b4f0c8427b39666bf970460908b213ec09b3b350f20c0c2eabcbba51704a08e6" dependencies = [ - "base64 0.21.7", - "hyper", - "hyper-tls", - "indexmap 2.2.2", + "base64 0.22.1", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.3", + "hyper-util", + "indexmap 2.6.0", "ipnet", "metrics", "metrics-util", @@ -3734,9 +3996,9 @@ dependencies = [ [[package]] name = "metrics-exporter-statsd" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82bd7bb16e431f15d56a61b18ee34881cd9d427da7b4450d1a588c911c1d9ac3" +checksum = "a0905009f54328c743a2046a86c88157621f473a2202cfa922cb716615c4b292" dependencies = [ "cadence", "metrics", @@ -3745,13 +4007,13 @@ dependencies = [ [[package]] name = "metrics-util" -version = "0.16.2" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ece71ab046dcf45604e573329966ec1db5ff4b81cfa170a924ff4c959ab5451a" +checksum = "4259040465c955f9f2f1a4a8a16dc46726169bca0f88e8fb2dbeced487c3e828" dependencies = [ "crossbeam-epoch", "crossbeam-utils", - "hashbrown 0.14.3", + "hashbrown 0.14.5", "metrics", "num_cpus", "quanta", @@ -3764,11 +4026,11 @@ version = "0.1.0" dependencies = [ "anyhow", "async-trait", - "axum", + "axum 0.6.20", "chrono", - "clap 4.4.18", + "clap 4.5.20", "ethers", - "hyper", + "hyper 0.14.30", "oz-api", "serde", "serde_json", @@ -3791,24 +4053,40 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", ] +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + [[package]] name = "mio" -version = "0.8.10" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ + "hermit-abi 0.3.9", "libc", "wasi", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] +[[package]] +name = "mirai-annotations" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" + [[package]] name = "mmap-rs" version = "0.6.1" @@ -3819,7 +4097,7 @@ dependencies = [ "combine", "libc", "mach2", - "nix 0.26.4", + "nix", "sysctl", "thiserror", "widestring", @@ -3834,11 +4112,10 @@ checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" [[package]] name = "native-tls" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" dependencies = [ - "lazy_static 1.4.0", "libc", "log", "openssl", @@ -3852,9 +4129,9 @@ dependencies = [ [[package]] name = "new_debug_unreachable" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "nix" @@ -3869,17 +4146,6 @@ dependencies = [ "pin-utils", ] -[[package]] -name = "nix" -version = "0.27.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" -dependencies = [ - "bitflags 2.4.2", - "cfg-if", - "libc", -] - [[package]] name = "nom" version = "7.1.3" @@ -3902,9 +4168,9 @@ dependencies = [ [[package]] name = "num" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" dependencies = [ "num-bigint", "num-complex", @@ -3916,11 +4182,10 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.4" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ - "autocfg", "num-integer", "num-traits", "rand", @@ -3933,7 +4198,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" dependencies = [ "byteorder", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "libm", "num-integer", "num-iter", @@ -3945,9 +4210,9 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ "num-traits", ] @@ -3960,19 +4225,18 @@ checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" [[package]] name = "num-integer" -version = "0.1.45" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "autocfg", "num-traits", ] [[package]] name = "num-iter" -version = "0.1.43" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" dependencies = [ "autocfg", "num-integer", @@ -3981,11 +4245,10 @@ dependencies = [ [[package]] name = "num-rational" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ - "autocfg", "num-bigint", "num-integer", "num-traits", @@ -3993,9 +4256,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.17" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", "libm", @@ -4007,29 +4270,29 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.5", + "hermit-abi 0.3.9", "libc", ] [[package]] name = "num_enum" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ - "proc-macro-crate 3.1.0", + "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -4055,15 +4318,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.19.0" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "oorandom" -version = "11.1.3" +version = "11.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" +checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" [[package]] name = "open-fastrlp" @@ -4092,11 +4355,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.63" +version = "0.10.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" +checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.6.0", "cfg-if", "foreign-types", "libc", @@ -4113,7 +4376,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -4124,9 +4387,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.99" +version = "0.9.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" +checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" dependencies = [ "cc", "libc", @@ -4136,80 +4399,77 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.21.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e32339a5dc40459130b3bd269e9892439f55b33e772d2a9d402a789baaf4e8a" +checksum = "4c365a63eec4f55b7efeceb724f1336f26a9cf3427b70e59e2cd2a5b947fba96" dependencies = [ "futures-core", "futures-sink", - "indexmap 2.2.2", "js-sys", "once_cell", "pin-project-lite", "thiserror", - "urlencoding", ] [[package]] name = "opentelemetry-datadog" -version = "0.9.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e09667367cb509f10d7cf5960a83f9c4d96e93715f750b164b4b98d46c3cbf4" +checksum = "73dafb74db03f88cbfdf1d7e93680ced6cbf7557c3dafb7c762649fc384f04fd" dependencies = [ + "ahash 0.8.11", "futures-core", - "http 0.2.11", - "indexmap 2.2.2", + "http 1.1.0", + "indexmap 2.6.0", "itertools 0.11.0", + "itoa", "once_cell", "opentelemetry", "opentelemetry-http", "opentelemetry-semantic-conventions", "opentelemetry_sdk", - "reqwest", + "reqwest 0.12.8", "rmp", + "ryu", "thiserror", "url", ] [[package]] name = "opentelemetry-http" -version = "0.10.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f51189ce8be654f9b5f7e70e49967ed894e84a06fc35c6c042e64ac1fc5399e" +checksum = "ad31e9de44ee3538fb9d64fe3376c1362f406162434609e79aea2a41a0af78ab" dependencies = [ "async-trait", "bytes", - "http 0.2.11", + "http 1.1.0", "opentelemetry", - "reqwest", + "reqwest 0.12.8", ] [[package]] name = "opentelemetry-semantic-conventions" -version = "0.13.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5774f1ef1f982ef2a447f6ee04ec383981a3ab99c8e77a1a7b30182e65bbc84" -dependencies = [ - "opentelemetry", -] +checksum = "9b8e442487022a943e2315740e443dc5ee95fd541c18f509a5a6251b408a9f95" [[package]] name = "opentelemetry_sdk" -version = "0.21.2" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f16aec8a98a457a52664d69e0091bac3a0abd18ead9b641cb00202ba4e0efe4" +checksum = "692eac490ec80f24a17828d49b40b60f5aeaccdfe6a503f939713afd22bc28df" dependencies = [ "async-trait", - "crossbeam-channel", "futures-channel", "futures-executor", "futures-util", "glob", "once_cell", "opentelemetry", - "ordered-float", "percent-encoding", "rand", + "serde_json", "thiserror", "tokio", "tokio-stream", @@ -4221,15 +4481,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" -[[package]] -name = "ordered-float" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76df7075c7d4d01fdcb46c912dd17fba5b60c78ea480b475f2b6ab6f666584e" -dependencies = [ - "num-traits", -] - [[package]] name = "ordered-multimap" version = "0.4.3" @@ -4266,8 +4517,8 @@ dependencies = [ "chrono", "cognitoauth", "ethers", - "hyper", - "reqwest", + "hyper 0.14.30", + "reqwest 0.11.27", "serde", "serde_json", "thiserror", @@ -4278,9 +4529,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.9" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" dependencies = [ "arrayvec", "bitvec", @@ -4292,11 +4543,11 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.9" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" dependencies = [ - "proc-macro-crate 2.0.0", + "proc-macro-crate", "proc-macro2", "quote", "syn 1.0.109", @@ -4304,9 +4555,9 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.12.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", "parking_lot_core", @@ -4314,15 +4565,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.4.1", + "redox_syscall 0.5.7", "smallvec", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -4338,9 +4589,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "path-slash" @@ -4350,9 +4601,9 @@ checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" [[package]] name = "pathdiff" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" +checksum = "d61c5ce1153ab5b689d0c074c4e7fc613e942dfb7dd9eea5ab202d2ad91fe361" [[package]] name = "pbkdf2" @@ -4402,9 +4653,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.7" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546" +checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" dependencies = [ "memchr", "thiserror", @@ -4413,9 +4664,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.7.7" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1288dbd7786462961e69bfd4df7848c1e37e8b74303dbdab82c3a9cdd2809" +checksum = "d214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd" dependencies = [ "pest", "pest_generator", @@ -4423,22 +4674,22 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.7" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1381c29a877c6d34b8c176e734f35d7f7f5b3adaefe940cb4d1bb7af94678e2e" +checksum = "eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "pest_meta" -version = "2.7.7" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0934d6907f148c22a3acbda520c7eed243ad7487a30f51f6ce52b58b7077a8a" +checksum = "b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d" dependencies = [ "once_cell", "pest", @@ -4447,12 +4698,12 @@ dependencies = [ [[package]] name = "petgraph" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.2.2", + "indexmap 2.6.0", ] [[package]] @@ -4462,7 +4713,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" dependencies = [ "futures", - "rustc_version 0.4.0", + "rustc_version 0.4.1", ] [[package]] @@ -4495,7 +4746,7 @@ dependencies = [ "phf_shared 0.11.2", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -4518,29 +4769,29 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.4" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0" +checksum = "baf123a161dde1e524adf36f90bc5d8d3462824a9c43553ad07a8183161189ec" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.4" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690" +checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "pin-project-lite" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" [[package]] name = "pin-utils" @@ -4571,15 +4822,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.29" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "plotters" -version = "0.3.5" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45" +checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" dependencies = [ "num-traits", "plotters-backend", @@ -4590,24 +4841,24 @@ dependencies = [ [[package]] name = "plotters-backend" -version = "0.3.5" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609" +checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" [[package]] name = "plotters-svg" -version = "0.3.5" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab" +checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" dependencies = [ "plotters-backend", ] [[package]] name = "portable-atomic" -version = "1.6.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" +checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" [[package]] name = "postcard" @@ -4640,9 +4891,12 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] [[package]] name = "precomputed-hash" @@ -4652,12 +4906,12 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] name = "prettyplease" -version = "0.2.16" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" +checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" dependencies = [ "proc-macro2", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -4676,30 +4930,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" -dependencies = [ - "once_cell", - "toml_edit 0.19.15", -] - -[[package]] -name = "proc-macro-crate" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" -dependencies = [ - "toml_edit 0.20.7", -] - -[[package]] -name = "proc-macro-crate" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.21.1", + "toml_edit", ] [[package]] @@ -4728,22 +4963,22 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a" dependencies = [ "unicode-ident", ] [[package]] name = "prometheus" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "449811d15fbdf5ceb5c1144416066429cf82316e2ec8ce0c1f6f8a02e7bbcf8c" +checksum = "3d33c28a30771f7f96db69893f78b857f7450d7e0237e9c8fc6427a81bae7ed1" dependencies = [ "cfg-if", "fnv", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "memchr", "parking_lot", "protobuf", @@ -4752,17 +4987,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ - "bitflags 2.4.2", - "lazy_static 1.4.0", + "bitflags 2.6.0", + "lazy_static 1.5.0", "num-traits", "rand", "rand_chacha", "rand_xorshift", - "regex-syntax 0.8.2", + "regex-syntax 0.8.5", "unarray", ] @@ -4794,9 +5029,9 @@ dependencies = [ [[package]] name = "quanta" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca0b7bac0b97248c40bb77288fc52029cf1459c0461ea1b05ee32ccf011de2c" +checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" dependencies = [ "crossbeam-utils", "libc", @@ -4809,9 +5044,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.35" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" dependencies = [ "proc-macro2", ] @@ -4863,18 +5098,18 @@ dependencies = [ [[package]] name = "raw-cpuid" -version = "11.0.1" +version = "11.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1" +checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.6.0", ] [[package]] name = "rayon" -version = "1.8.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ "either", "rayon-core", @@ -4898,18 +5133,18 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.4.1" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.6.0", ] [[package]] name = "redox_users" -version = "0.4.4" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", "libredox", @@ -4929,14 +5164,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.10.3" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" +checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.5", - "regex-syntax 0.8.2", + "regex-automata 0.4.8", + "regex-syntax 0.8.5", ] [[package]] @@ -4950,20 +5185,20 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.5" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" +checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.2", + "regex-syntax 0.8.5", ] [[package]] name = "regex-lite" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e" +checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" [[package]] name = "regex-syntax" @@ -4973,26 +5208,20 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" - -[[package]] -name = "regex-syntax" -version = "0.8.2" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "region" -version = "3.0.0" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" +checksum = "e6b6ebd13bc009aef9cd476c1310d49ac354d36e240cf1bd753290f3dc7199a7" dependencies = [ "bitflags 1.3.2", "libc", - "mach", - "winapi", + "mach2", + "windows-sys 0.52.0", ] [[package]] @@ -5006,21 +5235,21 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.24" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "base64 0.21.7", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2", - "http 0.2.11", + "h2 0.3.26", + "http 0.2.12", "http-body 0.4.6", - "hyper", - "hyper-rustls", - "hyper-tls", + "hyper 0.14.30", + "hyper-rustls 0.24.2", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log", @@ -5029,16 +5258,16 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls", - "rustls-pemfile", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", - "system-configuration", + "sync_wrapper 0.1.2", + "system-configuration 0.5.1", "tokio", "tokio-native-tls", - "tokio-rustls", + "tokio-rustls 0.24.1", "tower-service", "url", "wasm-bindgen", @@ -5048,6 +5277,50 @@ dependencies = [ "winreg", ] +[[package]] +name = "reqwest" +version = "0.12.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" +dependencies = [ + "base64 0.22.1", + "bytes", + "encoding_rs", + "futures-channel", + "futures-core", + "futures-util", + "h2 0.4.6", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.3", + "hyper-tls 0.6.0", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls-pemfile 2.2.0", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "system-configuration 0.6.1", + "tokio", + "tokio-native-tls", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows-registry", +] + [[package]] name = "retry" version = "2.0.0" @@ -5084,16 +5357,17 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.7" +version = "0.17.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", + "cfg-if", "getrandom", "libc", "spin 0.9.8", "untrusted 0.9.0", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -5107,9 +5381,9 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.44" +version = "0.7.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0" +checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" dependencies = [ "bitvec", "bytecheck", @@ -5120,14 +5394,14 @@ dependencies = [ "rkyv_derive", "seahash", "tinyvec", - "uuid 1.7.0", + "uuid 1.10.0", ] [[package]] name = "rkyv_derive" -version = "0.7.44" +version = "0.7.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65" +checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" dependencies = [ "proc-macro2", "quote", @@ -5158,9 +5432,9 @@ dependencies = [ [[package]] name = "rmp" -version = "0.8.12" +version = "0.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20" +checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" dependencies = [ "byteorder", "num-traits", @@ -5243,9 +5517,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -5270,20 +5544,20 @@ dependencies = [ [[package]] name = "rustc_version" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.21", + "semver 1.0.23", ] [[package]] name = "rustix" -version = "0.38.31" +version = "0.38.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", @@ -5292,24 +5566,52 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.10" +version = "0.21.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", - "ring 0.17.7", - "rustls-webpki", + "ring 0.17.8", + "rustls-webpki 0.101.7", "sct", ] +[[package]] +name = "rustls" +version = "0.23.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "415d9944693cb90382053259f89fbb077ea730ad7273047ec63b19bc9b160ba8" +dependencies = [ + "aws-lc-rs", + "log", + "once_cell", + "rustls-pki-types", + "rustls-webpki 0.102.8", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +dependencies = [ + "openssl-probe", + "rustls-pemfile 1.0.4", + "schannel", + "security-framework", +] + [[package]] name = "rustls-native-certs" -version = "0.6.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 2.2.0", + "rustls-pki-types", "schannel", "security-framework", ] @@ -5323,27 +5625,54 @@ dependencies = [ "base64 0.21.7", ] +[[package]] +name = "rustls-pemfile" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e696e35370c65c9c541198af4543ccd580cf17fc25d8e05c5a242b202488c55" + [[package]] name = "rustls-webpki" version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ - "ring 0.17.7", + "ring 0.17.8", + "untrusted 0.9.0", +] + +[[package]] +name = "rustls-webpki" +version = "0.102.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" +dependencies = [ + "aws-lc-rs", + "ring 0.17.8", + "rustls-pki-types", "untrusted 0.9.0", ] [[package]] name = "rustversion" -version = "1.0.14" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "salsa20" @@ -5365,9 +5694,9 @@ dependencies = [ [[package]] name = "scale-info" -version = "2.10.0" +version = "2.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7d66a1128282b7ef025a8ead62a4a9fcf017382ec53b8ffbf4d7bf77bd3c60" +checksum = "eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024" dependencies = [ "cfg-if", "derive_more", @@ -5377,11 +5706,11 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.10.0" +version = "2.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abf2c68b89cafb3b8d918dd07b42be0da66ff202cf1155c5739a4e0c1ea0dc19" +checksum = "2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate", "proc-macro2", "quote", "syn 1.0.109", @@ -5389,11 +5718,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.23" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -5426,7 +5755,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "ring 0.17.7", + "ring 0.17.8", "untrusted 0.9.0", ] @@ -5452,11 +5781,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.9.2" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.6.0", "core-foundation", "core-foundation-sys", "libc", @@ -5465,9 +5794,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.9.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" dependencies = [ "core-foundation-sys", "libc", @@ -5490,7 +5819,7 @@ dependencies = [ "bytemuck", "color-eyre", "ethabi", - "ethers-core 2.0.13 (git+https://github.com/gakonst/ethers-rs)", + "ethers-core 2.0.14 (git+https://github.com/gakonst/ethers-rs)", "hex", "hex-literal", "itertools 0.13.0", @@ -5499,7 +5828,7 @@ dependencies = [ "once_cell", "rand", "rayon", - "reqwest", + "reqwest 0.11.27", "ruint", "semaphore-depth-config", "semaphore-depth-macros", @@ -5525,7 +5854,7 @@ dependencies = [ "proc-macro2", "quote", "semaphore-depth-config", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -5539,9 +5868,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" dependencies = [ "serde", ] @@ -5569,18 +5898,18 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.196" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] [[package]] name = "serde_bytes" -version = "0.11.14" +version = "0.11.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" dependencies = [ "serde", ] @@ -5597,31 +5926,32 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.196" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "serde_json" -version = "1.0.113" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" +checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" dependencies = [ "itoa", + "memchr", "ryu", "serde", ] [[package]] name = "serde_path_to_error" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" dependencies = [ "itoa", "serde", @@ -5629,9 +5959,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.5" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" dependencies = [ "serde", ] @@ -5708,14 +6038,20 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ - "lazy_static 1.4.0", + "lazy_static 1.5.0", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "signal-hook-registry" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" dependencies = [ "libc", ] @@ -5737,11 +6073,11 @@ dependencies = [ "anyhow", "async-stream", "async-trait", - "axum", + "axum 0.7.7", "axum-server", "bytes", "chrono", - "clap 4.4.18", + "clap 4.5.20", "config", "dotenvy", "ethers", @@ -5753,9 +6089,9 @@ dependencies = [ "hex-literal", "humantime", "humantime-serde", - "hyper", + "hyper 1.4.1", "indoc", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "maplit", "micro-oz", "once_cell", @@ -5763,7 +6099,7 @@ dependencies = [ "postgres-docker-utils", "prometheus", "regex", - "reqwest", + "reqwest 0.12.8", "ruint", "semaphore", "serde", @@ -5778,7 +6114,7 @@ dependencies = [ "testcontainers-modules", "thiserror", "tokio", - "toml 0.8.10", + "toml 0.8.19", "tracing", "tracing-futures", "tracing-subscriber 0.3.18", @@ -5790,15 +6126,15 @@ dependencies = [ [[package]] name = "simdutf8" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" [[package]] name = "similar" -version = "2.4.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32fea41aca09ee824cc9724996433064c89f7777e60762749a4170a14abbfa21" +checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" dependencies = [ "bstr", "unicode-segmentation", @@ -5806,9 +6142,9 @@ dependencies = [ [[package]] name = "similar-asserts" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e041bb827d1bfca18f213411d51b665309f1afb37a04a5d1464530e13779fc0f" +checksum = "cfe85670573cd6f0fa97940f26e7e6601213c3b0555246c24234131f88c5709e" dependencies = [ "console", "similar", @@ -5849,18 +6185,18 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.5" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" dependencies = [ "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -5904,20 +6240,19 @@ dependencies = [ [[package]] name = "sqlformat" -version = "0.2.3" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce81b7bd7c4493975347ef60d8c7e8b742d4694f4c49f93e0a12ea263938176c" +checksum = "7bba3a93db0cc4f7bdece8bb09e77e2e785c20bfebf79eb8340ed80708048790" dependencies = [ - "itertools 0.12.1", "nom", "unicode_categories", ] [[package]] name = "sqlx" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dba03c279da73694ef99763320dea58b51095dfe87d001b1d4b5fe78ba8763cf" +checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" dependencies = [ "sqlx-core", "sqlx-macros", @@ -5928,18 +6263,17 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d84b0a3c3739e220d94b3239fd69fb1f74bc36e16643423bd99de3b43c21bfbd" +checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" dependencies = [ - "ahash 0.8.7", + "ahash 0.8.11", "atoi", "byteorder", "bytes", "chrono", "crc", "crossbeam-queue", - "dotenvy", "either", "event-listener", "futures-channel", @@ -5949,7 +6283,7 @@ dependencies = [ "futures-util", "hashlink", "hex", - "indexmap 2.2.2", + "indexmap 2.6.0", "log", "memchr", "native-tls", @@ -5970,9 +6304,9 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89961c00dc4d7dffb7aee214964b065072bff69e36ddb9e2c107541f75e4f2a5" +checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" dependencies = [ "proc-macro2", "quote", @@ -5983,14 +6317,13 @@ dependencies = [ [[package]] name = "sqlx-macros-core" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0bd4519486723648186a08785143599760f7cc81c52334a55d6a83ea1e20841" +checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" dependencies = [ - "atomic-write-file", "dotenvy", "either", - "heck", + "heck 0.4.1", "hex", "once_cell", "proc-macro2", @@ -6010,13 +6343,13 @@ dependencies = [ [[package]] name = "sqlx-mysql" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e37195395df71fd068f6e2082247891bc11e3289624bbc776a0cdfa1ca7f1ea4" +checksum = "1ed31390216d20e538e447a7a9b959e06ed9fc51c37b514b46eb758016ecd418" dependencies = [ "atoi", "base64 0.21.7", - "bitflags 2.4.2", + "bitflags 2.6.0", "byteorder", "bytes", "chrono", @@ -6053,13 +6386,13 @@ dependencies = [ [[package]] name = "sqlx-postgres" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6ac0ac3b7ccd10cc96c7ab29791a7dd236bd94021f31eec7ba3d46a74aa1c24" +checksum = "7c824eb80b894f926f89a0b9da0c7f435d27cdd35b8c655b114e58223918577e" dependencies = [ "atoi", "base64 0.21.7", - "bitflags 2.4.2", + "bitflags 2.6.0", "byteorder", "chrono", "crc", @@ -6081,7 +6414,6 @@ dependencies = [ "rand", "serde", "serde_json", - "sha1", "sha2", "smallvec", "sqlx-core", @@ -6093,9 +6425,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "210976b7d948c7ba9fced8ca835b11cbb2d677c59c79de41ac0d397e14547490" +checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" dependencies = [ "atoi", "chrono", @@ -6142,13 +6474,13 @@ dependencies = [ [[package]] name = "stringprep" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" +checksum = "7b4df3d392d81bd458a8a621b8bffbd2302a12ffe288a9d931670948749463b1" dependencies = [ - "finl_unicode", "unicode-bidi", "unicode-normalization", + "unicode-properties", ] [[package]] @@ -6157,13 +6489,28 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + [[package]] name = "strum" version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" dependencies = [ - "strum_macros", + "strum_macros 0.25.3", +] + +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", ] [[package]] @@ -6172,18 +6519,31 @@ version = "0.25.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" dependencies = [ - "heck", + "heck 0.4.1", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.79", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck 0.5.0", "proc-macro2", "quote", "rustversion", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "svm-rs" @@ -6195,8 +6555,8 @@ dependencies = [ "fs2", "hex", "once_cell", - "reqwest", - "semver 1.0.21", + "reqwest 0.11.27", + "semver 1.0.23", "serde", "serde_json", "sha2", @@ -6218,9 +6578,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" dependencies = [ "proc-macro2", "quote", @@ -6233,13 +6593,22 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + [[package]] name = "sysctl" version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec7dddc5f0fee506baf8b9fdb989e242f17e4b11c61dfbb0635b705217199eea" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.6.0", "byteorder", "enum-as-inner", "libc", @@ -6255,7 +6624,18 @@ checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation", - "system-configuration-sys", + "system-configuration-sys 0.5.0", +] + +[[package]] +name = "system-configuration" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" +dependencies = [ + "bitflags 2.6.0", + "core-foundation", + "system-configuration-sys 0.6.0", ] [[package]] @@ -6268,6 +6648,16 @@ dependencies = [ "libc", ] +[[package]] +name = "system-configuration-sys" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "take_mut" version = "0.2.2" @@ -6282,18 +6672,18 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.12.13" +version = "0.12.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "telemetry-batteries" version = "0.1.0" -source = "git+https://github.com/worldcoin/telemetry-batteries.git?rev=12cc036234b4e9b86f22ff7e35d499e2ff1e6304#12cc036234b4e9b86f22ff7e35d499e2ff1e6304" +source = "git+https://github.com/worldcoin/telemetry-batteries.git?rev=901ea26e478c81e10d5d4355ac628ab7b15afca7#901ea26e478c81e10d5d4355ac628ab7b15afca7" dependencies = [ "chrono", "dirs", - "http 0.2.11", + "http 1.1.0", "metrics", "metrics-exporter-prometheus", "metrics-exporter-statsd", @@ -6302,7 +6692,7 @@ dependencies = [ "opentelemetry-http", "opentelemetry_sdk", "rand", - "reqwest", + "reqwest 0.12.8", "serde", "serde_json", "thiserror", @@ -6316,14 +6706,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.10.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" dependencies = [ "cfg-if", "fastrand", + "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -6364,7 +6755,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -6375,7 +6766,7 @@ checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", "test-case-core", ] @@ -6416,22 +6807,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.56" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.56" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -6447,9 +6838,9 @@ dependencies = [ [[package]] name = "thread_local" -version = "1.1.7" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ "cfg-if", "once_cell", @@ -6507,9 +6898,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.6.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" dependencies = [ "tinyvec_macros", ] @@ -6522,33 +6913,32 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.36.0" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" +checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" dependencies = [ "backtrace", "bytes", "libc", "mio", - "num_cpus", "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.2.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -6567,15 +6957,26 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls", + "rustls 0.21.12", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.14", + "rustls-pki-types", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.14" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" +checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" dependencies = [ "futures-core", "pin-project-lite", @@ -6591,26 +6992,25 @@ dependencies = [ "futures-util", "log", "native-tls", - "rustls", + "rustls 0.21.12", "tokio", "tokio-native-tls", - "tokio-rustls", + "tokio-rustls 0.24.1", "tungstenite", "webpki-roots", ] [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" dependencies = [ "bytes", "futures-core", "futures-sink", "pin-project-lite", "tokio", - "tracing", ] [[package]] @@ -6624,65 +7024,32 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.10" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.4", + "toml_edit", ] [[package]] name = "toml_datetime" -version = "0.6.5" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.2.2", - "toml_datetime", - "winnow", -] - -[[package]] -name = "toml_edit" -version = "0.20.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" -dependencies = [ - "indexmap 2.2.2", - "toml_datetime", - "winnow", -] - -[[package]] -name = "toml_edit" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" -dependencies = [ - "indexmap 2.2.2", - "toml_datetime", - "winnow", -] - -[[package]] -name = "toml_edit" -version = "0.22.4" +version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.2.2", + "indexmap 2.6.0", "serde", "serde_spanned", "toml_datetime", @@ -6705,17 +7072,33 @@ dependencies = [ "tracing", ] +[[package]] +name = "tower" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper 0.1.2", + "tokio", + "tower-layer", + "tower-service", + "tracing", +] + [[package]] name = "tower-layer" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" [[package]] name = "tower-service" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" @@ -6749,7 +7132,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -6795,9 +7178,9 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.22.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c67ac25c5407e7b961fafc6f7e9aa5958fd297aada2d20fa2ae1737357e55596" +checksum = "a9784ed4da7d921bc8df6963f8c80a0e4ce34ba6ba76668acadd3edbd985ff3b" dependencies = [ "js-sys", "once_cell", @@ -6853,11 +7236,10 @@ dependencies = [ [[package]] name = "tracing-test" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a2c0ff408fe918a94c428a3f2ad04e4afd5c95bbc08fcf868eff750c15728a4" +checksum = "557b891436fe0d5e0e363427fc7f217abf9ccd510d5136549847bdcbcd011d68" dependencies = [ - "lazy_static 1.4.0", "tracing-core", "tracing-subscriber 0.3.18", "tracing-test-macro", @@ -6865,13 +7247,12 @@ dependencies = [ [[package]] name = "tracing-test-macro" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bc1c4f8e2e73a977812ab339d503e6feeb92700f6d07a6de4d321522d5c08" +checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ - "lazy_static 1.4.0", "quote", - "syn 1.0.109", + "syn 2.0.79", ] [[package]] @@ -6889,12 +7270,12 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 0.2.11", + "http 0.2.12", "httparse", "log", "native-tls", "rand", - "rustls", + "rustls 0.21.12", "sha1", "thiserror", "url", @@ -6908,10 +7289,11 @@ dependencies = [ "anyhow", "ethers", "indoc", - "reqwest", + "reqwest 0.12.8", "serde", "serde_json", - "strum", + "strum 0.25.0", + "telemetry-batteries", "tracing", ] @@ -6923,9 +7305,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" [[package]] name = "uint" @@ -6947,42 +7329,48 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-bidi" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unicode-normalization" -version = "0.1.22" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-properties" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0" + [[package]] name = "unicode-segmentation" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] name = "unicode-width" -version = "0.1.11" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-xid" -version = "0.2.4" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "unicode_categories" @@ -7004,9 +7392,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.0" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", @@ -7028,9 +7416,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" [[package]] name = "utf8parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" @@ -7044,9 +7432,9 @@ dependencies = [ [[package]] name = "uuid" -version = "1.7.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" +checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" [[package]] name = "valuable" @@ -7062,9 +7450,9 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" [[package]] name = "version_check" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "vsimd" @@ -7074,9 +7462,9 @@ checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" [[package]] name = "walkdir" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" dependencies = [ "same-file", "winapi-util", @@ -7097,36 +7485,43 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasite" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" + [[package]] name = "wasm-bindgen" -version = "0.2.91" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" dependencies = [ "cfg-if", + "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.91" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.41" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" dependencies = [ "cfg-if", "js-sys", @@ -7136,9 +7531,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.91" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7146,30 +7541,31 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.91" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.91" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "wasm-encoder" -version = "0.41.0" +version = "0.219.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e09bca7d6388637d27fb5edbeab11f56bfabcef8743c55ae34370e1e5030a071" +checksum = "29cbbd772edcb8e7d524a82ee8cef8dd046fc14033796a754c3ad246d019fa54" dependencies = [ "leb128", + "wasmparser 0.219.1", ] [[package]] @@ -7227,7 +7623,7 @@ dependencies = [ "target-lexicon", "thiserror", "wasmer-types", - "wasmparser", + "wasmparser 0.83.0", ] [[package]] @@ -7270,7 +7666,7 @@ checksum = "3f98f010978c244db431b392aeab0661df7ea0822343334f8f2a920763548e45" dependencies = [ "backtrace", "enumset", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "loupe", "memmap2 0.5.10", "more-asserts", @@ -7295,7 +7691,7 @@ dependencies = [ "enum-iterator", "enumset", "leb128", - "libloading", + "libloading 0.7.4", "loupe", "object 0.28.4", "rkyv", @@ -7387,7 +7783,7 @@ dependencies = [ "corosensei", "enum-iterator", "indexmap 1.9.3", - "lazy_static 1.4.0", + "lazy_static 1.5.0", "libc", "loupe", "mach", @@ -7409,11 +7805,21 @@ version = "0.83.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" +[[package]] +name = "wasmparser" +version = "0.219.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c771866898879073c53b565a6c7b49953795159836714ac56a5befb581227c5" +dependencies = [ + "bitflags 2.6.0", + "indexmap 2.6.0", +] + [[package]] name = "wast" -version = "70.0.2" +version = "219.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3d5061300042ff5065123dae1e27d00c03f567d34a2937c8472255148a216dc" +checksum = "4f79a9d9df79986a68689a6b40bcc8d5d40d807487b235bebc2ac69a242b54a1" dependencies = [ "bumpalo", "leb128", @@ -7424,18 +7830,18 @@ dependencies = [ [[package]] name = "wat" -version = "1.0.85" +version = "1.219.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afd7357b6cc46d46a2509c43dcb1dd4131dafbf4e75562d87017b5a05ffad2d6" +checksum = "8bc3cf014fb336883a411cd662f987abf6a1d2a27f2f0008616a0070bbf6bd0d" dependencies = [ "wast", ] [[package]] name = "web-sys" -version = "0.3.68" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" dependencies = [ "js-sys", "wasm-bindgen", @@ -7443,9 +7849,9 @@ dependencies = [ [[package]] name = "web-time" -version = "0.2.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" dependencies = [ "js-sys", "wasm-bindgen", @@ -7471,15 +7877,19 @@ dependencies = [ [[package]] name = "whoami" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22fc3756b8a9133049b26c7f61ab35416c130e8c09b660f5b3958b446f52cc50" +checksum = "372d5b87f58ec45c384ba03563b03544dc5fadc3983e434b286913f5b4a9bb6d" +dependencies = [ + "redox_syscall 0.5.7", + "wasite", +] [[package]] name = "widestring" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" [[package]] name = "winapi" @@ -7499,11 +7909,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.6" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "winapi", + "windows-sys 0.59.0", ] [[package]] @@ -7527,7 +7937,37 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", ] [[package]] @@ -7558,7 +7998,16 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", ] [[package]] @@ -7578,17 +8027,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", ] [[package]] @@ -7599,9 +8049,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" @@ -7617,9 +8067,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" @@ -7635,9 +8085,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.0" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" @@ -7653,9 +8109,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" @@ -7671,9 +8127,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" @@ -7683,9 +8139,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" @@ -7701,15 +8157,15 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.0" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.5.39" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5389a154b01683d28c77f8f68f49dea75f0a4da32557a58f68ee51ebba472d29" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" dependencies = [ "memchr", ] @@ -7755,7 +8211,7 @@ dependencies = [ "js-sys", "log", "pharos", - "rustc_version 0.4.0", + "rustc_version 0.4.1", "send_wrapper 0.6.0", "thiserror", "wasm-bindgen", @@ -7795,29 +8251,30 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" [[package]] name = "zerocopy" -version = "0.7.32" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ + "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.32" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] name = "zeroize" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" dependencies = [ "zeroize_derive", ] @@ -7830,7 +8287,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.79", ] [[package]] @@ -7874,9 +8331,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.9+zstd.1.5.5" +version = "2.0.13+zstd.1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" +checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index efe286ac..b62911d0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,12 +25,12 @@ default = [] anyhow = { version = "1.0.68" } async-stream = "0.3.3" async-trait = "0.1.64" -axum = "0.6.4" -axum-server = "0.4.4" +axum = "0.7.7" +axum-server = "0.7.1" bytes = "1.4.0" chrono = { version = "0.4.19", features = ["serde"] } clap = { version = "4.0", features = ["derive", "env"] } -telemetry-batteries = { git = "https://github.com/worldcoin/telemetry-batteries.git", rev = "12cc036234b4e9b86f22ff7e35d499e2ff1e6304" } +telemetry-batteries = { git = "https://github.com/worldcoin/telemetry-batteries.git", rev = "901ea26e478c81e10d5d4355ac628ab7b15afca7" } config = "0.13.4" ethers = { version = "2.0.10", features = ["ws", "ipc", "openssl", "abigen"] } ethers-solc = "2.0.10" @@ -41,13 +41,13 @@ hex = "0.4.3" hex-literal = "0.4.1" humantime = "2.1.0" humantime-serde = "1.1.1" -hyper = { version = "^0.14.17", features = ["server", "tcp", "http1", "http2"] } +hyper = { version = "1.4.1", features = ["server", "http1", "http2"] } indoc = "2.0.4" once_cell = "1.8" oz-api = { path = "crates/oz-api" } # We need upstream PR#465 to fix #272. prometheus = "0.13.3" -reqwest = { version = "0.11.18", features = ["json"] } +reqwest = { version = "0.12.8", features = ["json"] } ruint = { version = "1.12.3", features = ["primitive-types", "sqlx"] } semaphore = { git = "https://github.com/worldcoin/semaphore-rs", rev = "251e908d89d598c976901306bc29f06ab59e799d", features = [ "depth_30", diff --git a/crates/tx-sitter-client/Cargo.toml b/crates/tx-sitter-client/Cargo.toml index 993e4047..d5e81296 100644 --- a/crates/tx-sitter-client/Cargo.toml +++ b/crates/tx-sitter-client/Cargo.toml @@ -5,9 +5,11 @@ edition = "2021" publish = false [dependencies] +telemetry-batteries = { git = "https://github.com/worldcoin/telemetry-batteries.git", rev = "901ea26e478c81e10d5d4355ac628ab7b15afca7" } + anyhow = "1.0" ethers = { version = "2.0.10", features = [ ] } -reqwest = "0.11.14" +reqwest = { version = "0.12.8", features = ["json"] } serde = { version = "1.0.154", features = ["derive"] } serde_json = "1.0.94" strum = { version = "0.25", features = ["derive"] } diff --git a/crates/tx-sitter-client/src/lib.rs b/crates/tx-sitter-client/src/lib.rs index 82680cd5..9d5b29d5 100644 --- a/crates/tx-sitter-client/src/lib.rs +++ b/crates/tx-sitter-client/src/lib.rs @@ -1,28 +1,41 @@ use data::{GetTxResponse, SendTxRequest, SendTxResponse, TxStatus}; -use reqwest::Response; +use reqwest::header::HeaderMap; +use reqwest::{RequestBuilder, Response}; +use telemetry_batteries::tracing::trace_to_headers; use tracing::instrument; pub mod data; pub struct TxSitterClient { client: reqwest::Client, - url: String, + url: String, } impl TxSitterClient { pub fn new(url: impl ToString) -> Self { Self { client: reqwest::Client::new(), - url: url.to_string(), + url: url.to_string(), } } + fn inject_tracing_headers(req_builder: RequestBuilder) -> RequestBuilder { + let mut headers = HeaderMap::new(); + + trace_to_headers(&mut headers); + + req_builder.headers(headers) + } + async fn json_post(&self, url: &str, body: T) -> anyhow::Result where T: serde::Serialize, R: serde::de::DeserializeOwned, { - let response = self.client.post(url).json(&body).send().await?; + let response = Self::inject_tracing_headers(self.client.post(url)) + .json(&body) + .send() + .await?; let response = Self::validate_response(response).await?; @@ -33,7 +46,9 @@ impl TxSitterClient { where R: serde::de::DeserializeOwned, { - let response = self.client.get(url).send().await?; + let response = Self::inject_tracing_headers(self.client.get(url)) + .send() + .await?; let response = Self::validate_response(response).await?; diff --git a/src/bin/tool.rs b/src/bin/tool.rs index 7b3eccfa..269c5763 100644 --- a/src/bin/tool.rs +++ b/src/bin/tool.rs @@ -141,7 +141,7 @@ async fn main() -> anyhow::Result<()> { let client = reqwest::Client::new(); let response = client - .post(&format!("{}/insertIdentity", args.sequencer_url)) + .post(format!("{}/insertIdentity", args.sequencer_url)) .basic_auth(basic_auth_username, Some(basic_auth_password)) .json(&InsertCommitmentRequest { identity_commitment, @@ -167,7 +167,7 @@ async fn main() -> anyhow::Result<()> { let client = reqwest::Client::new(); let response = client - .post(&format!("{}/inclusionProof", args.sequencer_url)) + .post(format!("{}/inclusionProof", args.sequencer_url)) .json(&InclusionProofRequest { identity_commitment, }) @@ -199,7 +199,7 @@ async fn main() -> anyhow::Result<()> { let client = reqwest::Client::new(); let response = client - .post(&format!("{}/verifySemaphoreProof", args.sequencer_url)) + .post(format!("{}/verifySemaphoreProof", args.sequencer_url)) .json(&proof_request) .send() .await?; @@ -218,7 +218,7 @@ async fn main() -> anyhow::Result<()> { let client = reqwest::Client::new(); let response = client - .post(&format!("{}/inclusionProof", args.sequencer_url)) + .post(format!("{}/inclusionProof", args.sequencer_url)) .json(&InclusionProofRequest { identity_commitment: identity.commitment(), }) diff --git a/src/database/query.rs b/src/database/query.rs index 01d2f1f9..b9f755bc 100644 --- a/src/database/query.rs +++ b/src/database/query.rs @@ -6,9 +6,7 @@ use sqlx::{Executor, Postgres, Row}; use tracing::instrument; use types::{DeletionEntry, LatestDeletionEntry, RecoveryEntry}; -use crate::database::types::{ - BatchEntry, BatchEntryData, BatchType, LatestInsertionEntry, TransactionEntry, -}; +use crate::database::types::{BatchEntry, BatchEntryData, BatchType, LatestInsertionEntry}; use crate::database::{types, Error}; use crate::identity_tree::{ Hash, ProcessedStatus, RootItem, TreeItem, TreeUpdate, UnprocessedStatus, @@ -186,17 +184,6 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { .collect()) } - async fn get_latest_root(self) -> Result, Error> { - Ok(sqlx::query( - r#" - SELECT root FROM identities ORDER BY id DESC LIMIT 1 - "#, - ) - .fetch_optional(self) - .await? - .map(|r| r.get::(0))) - } - async fn get_latest_root_by_status( self, status: ProcessedStatus, @@ -439,6 +426,7 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { Ok(()) } + #[cfg(test)] async fn get_all_recoveries(self) -> Result, Error> { Ok( sqlx::query_as::<_, RecoveryEntry>("SELECT * FROM recoveries") @@ -620,7 +608,7 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { .bind(BatchType::Insertion) .bind(sqlx::types::Json::from(BatchEntryData { identities: vec![], - indexes: vec![], + indexes: vec![], })); self.execute(query).await?; @@ -652,13 +640,14 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { .bind(batch_type) .bind(sqlx::types::Json::from(BatchEntryData { identities: identities.to_vec(), - indexes: indexes.to_vec(), + indexes: indexes.to_vec(), })); self.execute(query).await?; Ok(()) } + #[cfg(test)] async fn get_next_batch(self, prev_root: &Hash) -> Result, Error> { let res = sqlx::query_as::<_, BatchEntry>( r#" @@ -701,29 +690,6 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { Ok(res) } - async fn get_latest_batch_with_transaction(self) -> Result, Error> { - let res = sqlx::query_as::<_, BatchEntry>( - r#" - SELECT - batches.id, - batches.next_root, - batches.prev_root, - batches.created_at, - batches.batch_type, - batches.data - FROM batches - LEFT JOIN transactions ON batches.next_root = transactions.batch_next_root - WHERE transactions.batch_next_root IS NOT NULL AND batches.prev_root IS NOT NULL - ORDER BY batches.id DESC - LIMIT 1 - "#, - ) - .fetch_optional(self) - .await?; - - Ok(res) - } - async fn get_next_batch_without_transaction(self) -> Result, Error> { let res = sqlx::query_as::<_, BatchEntry>( r#" @@ -767,26 +733,6 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { Ok(res) } - async fn get_all_batches_after(self, id: i64) -> Result, Error> { - let res = sqlx::query_as::<_, BatchEntry>( - r#" - SELECT - id, - next_root, - prev_root, - created_at, - batch_type, - data - FROM batches WHERE id >= $1 ORDER BY id ASC - "#, - ) - .bind(id) - .fetch_all(self) - .await?; - - Ok(res) - } - #[instrument(skip(self), level = "debug")] async fn delete_batches_after_root(self, root: &Hash) -> Result<(), Error> { let query = sqlx::query( @@ -813,15 +759,6 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { Ok(()) } - async fn root_in_batch_chain(self, root: &Hash) -> Result { - let query = sqlx::query( - r#"SELECT exists(SELECT 1 FROM batches where prev_root = $1 OR next_root = $1)"#, - ) - .bind(root); - let row_unprocessed = self.fetch_one(query).await?; - Ok(row_unprocessed.get::(0)) - } - async fn insert_new_transaction( self, transaction_id: &String, @@ -842,25 +779,4 @@ pub trait DatabaseQuery<'a>: Executor<'a, Database = Postgres> { self.execute(query).await?; Ok(()) } - - async fn get_transaction_for_batch( - self, - next_root: &Hash, - ) -> Result, Error> { - let res = sqlx::query_as::<_, TransactionEntry>( - r#" - SELECT - transaction_id, - batch_next_root, - created_at - FROM transactions WHERE batch_next_root = $1 - LIMIT 1 - "#, - ) - .bind(next_root) - .fetch_optional(self) - .await?; - - Ok(res) - } } diff --git a/src/database/types.rs b/src/database/types.rs index a0fbe585..fae96891 100644 --- a/src/database/types.rs +++ b/src/database/types.rs @@ -10,18 +10,22 @@ use crate::identity_tree::{Hash, UnprocessedStatus}; use crate::prover::identity::Identity; pub struct UnprocessedCommitment { - pub commitment: Hash, - pub status: UnprocessedStatus, - pub created_at: DateTime, - pub processed_at: Option>, - pub error_message: Option, + pub commitment: Hash, + pub status: UnprocessedStatus, + pub created_at: DateTime, + pub processed_at: Option>, + pub error_message: Option, pub eligibility_timestamp: DateTime, } #[derive(FromRow)] pub struct RecoveryEntry { + // existing commitment is used in tests only, but recoveries in general + // are used in production code via the FromRow trait + // so removing this field would break the production code + #[allow(unused)] pub existing_commitment: Hash, - pub new_commitment: Hash, + pub new_commitment: Hash, } pub struct LatestInsertionEntry { @@ -68,26 +72,20 @@ impl std::fmt::Display for BatchType { #[derive(Debug, Clone, FromRow)] pub struct BatchEntry { - pub id: i64, - pub next_root: Hash, + pub id: i64, + pub next_root: Hash, // In general prev_root is present all the time except the first row (head of the batches // chain) - pub prev_root: Option, + pub prev_root: Option, pub created_at: DateTime, pub batch_type: BatchType, - pub data: sqlx::types::Json, + pub data: sqlx::types::Json, } #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] pub struct BatchEntryData { pub identities: Vec, - pub indexes: Vec, -} - -#[derive(Debug, Clone, FromRow)] -pub struct TransactionEntry { - pub batch_next_root: Hash, - pub transaction_id: String, + pub indexes: Vec, } #[derive(Debug, Clone, PartialEq, Eq)] diff --git a/src/ethereum/read/mod.rs b/src/ethereum/read/mod.rs index b8adde94..c989e895 100644 --- a/src/ethereum/read/mod.rs +++ b/src/ethereum/read/mod.rs @@ -3,7 +3,7 @@ use chrono::{Duration as ChronoDuration, Utc}; use ethers::abi::Error as AbiError; use ethers::providers::{Http, Middleware, Provider}; use ethers::types::{BlockId, BlockNumber, Chain, U256}; -use futures::{try_join, FutureExt}; +use futures::try_join; use thiserror::Error; use tracing::{error, info}; use url::Url; @@ -16,9 +16,8 @@ type InnerProvider = Provider>; #[derive(Clone, Debug)] pub struct ReadProvider { - inner: InnerProvider, + inner: InnerProvider, pub chain_id: U256, - pub legacy: bool, } impl ReadProvider { @@ -30,7 +29,7 @@ impl ReadProvider { // TODO: Does the WebSocket impl handle dropped connections by // reconnecting? What is the timeout on stalled connections? What is // the retry policy? - let (provider, chain_id, eip1559) = { + let (provider, chain_id) = { info!( provider = %url, "Connecting to provider" @@ -40,13 +39,10 @@ impl ReadProvider { let provider = Provider::new(logger); // Fetch state of the chain. - let (version, chain_id, latest_block, eip1559) = try_join!( + let (version, chain_id, latest_block) = try_join!( provider.client_version(), provider.get_chainid(), provider.get_block(BlockId::Number(BlockNumber::Latest)), - provider - .fee_history(1, BlockNumber::Latest, &[]) - .map(|r| Ok(r.is_ok())) )?; // Identify chain. @@ -63,7 +59,7 @@ impl ReadProvider { .number .ok_or_else(|| anyhow!("Could not read latest block number"))?; let block_time = latest_block.time()?; - info!(%version, %chain_id, %chain, %eip1559, %block_number, ?block_hash, %block_time, "Connected to Ethereum provider"); + info!(%version, %chain_id, %chain, %block_number, ?block_hash, %block_time, "Connected to Ethereum provider"); // Sanity check the block timestamp let now = Utc::now(); @@ -77,13 +73,13 @@ impl ReadProvider { // Log an error, but proceed anyway since this doesn't technically block us. error!(%now, %block_time, %block_age, "Block time is more than 30 minutes from now."); } - (provider, chain_id, eip1559) + + (provider, chain_id) }; Ok(Self { inner: provider, chain_id, - legacy: !eip1559, }) } } diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 79926a80..8cac637c 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -18,12 +18,14 @@ use std::time::Duration; use ethers::types::U256; use ethers::utils::keccak256; +use hyper::HeaderMap; pub use map::ProverMap; use once_cell::sync::Lazy; use prometheus::{exponential_buckets, register_histogram, Histogram}; pub use proof::Proof; use serde::{Deserialize, Serialize}; use sqlx::FromRow; +use telemetry_batteries::tracing::trace_to_headers; use url::Url; use crate::prover::identity::Identity; @@ -106,10 +108,10 @@ impl PartialEq for ProverConfig { /// A representation of the connection to the MTB prover service. #[derive(Clone, Debug)] pub struct Prover { - target_url: Url, - client: reqwest::Client, - batch_size: usize, - timeout_s: u64, + target_url: Url, + client: reqwest::Client, + batch_size: usize, + timeout_s: u64, prover_type: ProverType, } @@ -216,11 +218,15 @@ impl Prover { merkle_proofs, }; + let mut headers = HeaderMap::new(); + trace_to_headers(&mut headers); + let request = self .client .post(self.target_url.join(MTB_PROVE_ENDPOINT)?) .body("OH MY GOD") .json(&proof_input) + .headers(headers) .build()?; let prover_proving_time_timer = PROVER_PROVING_TIME.start_timer(); @@ -272,11 +278,15 @@ impl Prover { merkle_proofs, }; + let mut headers = HeaderMap::new(); + trace_to_headers(&mut headers); + let request = self .client .post(self.target_url.join(MTB_PROVE_ENDPOINT)?) .body("OH MY GOD") .json(&proof_input) + .headers(headers) .build()?; let prover_proving_time_timer = PROVER_PROVING_TIME.start_timer(); @@ -378,7 +388,7 @@ pub fn compute_deletion_proof_input_hash( #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] struct ProverError { - pub code: String, + pub code: String, pub message: String, } @@ -395,23 +405,23 @@ impl Display for ProverError { #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] struct InsertionProofInput { - input_hash: U256, - start_index: u32, - pre_root: U256, - post_root: U256, + input_hash: U256, + start_index: u32, + pre_root: U256, + post_root: U256, identity_commitments: Vec, - merkle_proofs: Vec>, + merkle_proofs: Vec>, } #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] struct DeletionProofInput { - input_hash: U256, - pre_root: U256, - post_root: U256, - deletion_indices: Vec, + input_hash: U256, + pre_root: U256, + post_root: U256, + deletion_indices: Vec, identity_commitments: Vec, - merkle_proofs: Vec>, + merkle_proofs: Vec>, } #[cfg(test)] @@ -424,9 +434,9 @@ mod test { let mock_service = mock::Service::new(mock_url.clone()).await?; let options = ProverConfig { - url: "http://localhost:3001".into(), - timeout_s: 30, - batch_size: 3, + url: "http://localhost:3001".into(), + timeout_s: 30, + batch_size: 3, prover_type: ProverType::Insertion, }; let mtb = Prover::new(&options).unwrap(); @@ -456,9 +466,9 @@ mod test { let mock_service = mock::Service::new(mock_url.clone()).await?; let options = ProverConfig { - url: "http://localhost:3002".into(), - timeout_s: 30, - batch_size: 3, + url: "http://localhost:3002".into(), + timeout_s: 30, + batch_size: 3, prover_type: ProverType::Insertion, }; let mtb = Prover::new(&options).unwrap(); @@ -484,9 +494,9 @@ mod test { #[tokio::test] async fn prover_should_error_if_batch_size_wrong() -> anyhow::Result<()> { let options = ProverConfig { - url: "http://localhost:3002".into(), - timeout_s: 30, - batch_size: 10, + url: "http://localhost:3002".into(), + timeout_s: 30, + batch_size: 10, prover_type: ProverType::Insertion, }; let mtb = Prover::new(&options).unwrap(); @@ -697,7 +707,7 @@ pub mod mock { } _ => { let error = ProverError { - code: "Oh no!".into(), + code: "Oh no!".into(), message: "Things went wrong.".into(), }; Json(ProveResponse::ProofFailure(error)) diff --git a/src/server/custom_middleware/api_metrics_layer.rs b/src/server/custom_middleware/api_metrics_layer.rs index b284c8f2..868f0fac 100644 --- a/src/server/custom_middleware/api_metrics_layer.rs +++ b/src/server/custom_middleware/api_metrics_layer.rs @@ -1,4 +1,5 @@ -use axum::http::{Request, StatusCode}; +use axum::extract::Request; +use axum::http::StatusCode; use axum::middleware::Next; use axum::response::Response; use once_cell::sync::Lazy; @@ -23,7 +24,7 @@ static LATENCY: Lazy = Lazy::new(|| { register_histogram!("api_latency_seconds", "The API latency in seconds.").unwrap() }); -pub async fn middleware(request: Request, next: Next) -> Result { +pub async fn middleware(request: Request, next: Next) -> Result { let _timer = LATENCY.start_timer(); // Observes on drop REQUESTS.inc(); diff --git a/src/server/custom_middleware/logging_layer.rs b/src/server/custom_middleware/logging_layer.rs index 3c3bfb2d..9d911224 100644 --- a/src/server/custom_middleware/logging_layer.rs +++ b/src/server/custom_middleware/logging_layer.rs @@ -1,22 +1,20 @@ #![allow(clippy::cast_possible_truncation)] -use axum::http::{Request, StatusCode}; +use axum::body::Body; +use axum::extract::Request; +use axum::http::StatusCode; use axum::middleware::Next; use axum::response::Response; -use bytes::Bytes; -use hyper::body::HttpBody; -use hyper::{Body, Method}; +use bytes::{BufMut, Bytes}; +use futures::StreamExt; +use hyper::{body::Body as _, Method}; use telemetry_batteries::tracing::{trace_from_headers, trace_to_headers}; use tracing::{error, info, info_span, warn, Instrument}; // 1 MiB const MAX_REQUEST_BODY_SIZE: u64 = 1024 * 1024; -pub async fn middleware(request: Request, next: Next) -> Result -where - B: HttpBody, - ::Error: std::error::Error, -{ +pub async fn middleware(request: Request, next: Next) -> Result { let (parts, body) = request.into_parts(); let uri_path = parts.uri.path().to_string(); @@ -126,7 +124,7 @@ async fn handle_response( ); } - let body = axum::body::boxed(Body::from(response_body)); + let body = Body::from(response_body); Response::from_parts(parts, body) } else { @@ -146,13 +144,7 @@ async fn handle_response( /// Reads the body of a request into a `Bytes` object chunk by chunk /// and returns an error if the body is larger than `MAX_REQUEST_BODY_SIZE`. -async fn body_to_bytes_safe(body: B) -> Result -where - B: HttpBody, - ::Error: std::error::Error, -{ - use bytes::BufMut; - +async fn body_to_bytes_safe(body: Body) -> Result { let size_hint = body .size_hint() .upper() @@ -168,10 +160,9 @@ where } let mut body_bytes = Vec::with_capacity(size_hint as usize); + let mut data_stream = body.into_data_stream(); - futures_util::pin_mut!(body); - - while let Some(chunk) = body.data().await { + while let Some(chunk) = data_stream.next().await { let chunk = chunk.map_err(|error| { error!("Error reading body: {}", error); StatusCode::INTERNAL_SERVER_ERROR @@ -193,11 +184,7 @@ where Ok(body_bytes.into()) } -async fn body_to_string(body: B) -> Result -where - B: HttpBody, - ::Error: std::error::Error, -{ +async fn body_to_string(body: Body) -> Result { let body_bytes = body_to_bytes_safe(body).await?; let s = match String::from_utf8(body_bytes.to_vec()) { diff --git a/src/server/custom_middleware/remove_auth_layer.rs b/src/server/custom_middleware/remove_auth_layer.rs index 8eb03c3a..c784009c 100644 --- a/src/server/custom_middleware/remove_auth_layer.rs +++ b/src/server/custom_middleware/remove_auth_layer.rs @@ -1,11 +1,13 @@ +use axum::extract::Request; use axum::http::header::AUTHORIZATION; -use axum::http::{Request, StatusCode}; +use axum::http::StatusCode; use axum::middleware::Next; use axum::response::Response; -pub async fn middleware(mut request: Request, next: Next) -> Result { +pub async fn middleware(mut request: Request, next: Next) -> Result { request.headers_mut().remove(AUTHORIZATION); let response = next.run(request).await; + Ok(response) } diff --git a/src/server/custom_middleware/timeout_layer.rs b/src/server/custom_middleware/timeout_layer.rs index 08910ef3..1b5ac8eb 100644 --- a/src/server/custom_middleware/timeout_layer.rs +++ b/src/server/custom_middleware/timeout_layer.rs @@ -1,14 +1,14 @@ use std::time::Duration; -use axum::extract::State; -use axum::http::{Request, StatusCode}; +use axum::extract::{Request, State}; +use axum::http::StatusCode; use axum::middleware::Next; use axum::response::Response; -pub async fn middleware( +pub async fn middleware( State(timeout_duration): State, - request: Request, - next: Next, + request: Request, + next: Next, ) -> Result { match tokio::time::timeout(timeout_duration, next.run(request)).await { Ok(response) => Ok(response), diff --git a/src/server/mod.rs b/src/server/mod.rs index 3a4af36d..cf11ffc8 100644 --- a/src/server/mod.rs +++ b/src/server/mod.rs @@ -1,17 +1,18 @@ pub mod error; -use std::net::TcpListener; use std::sync::Arc; use std::time::Duration; +use axum::body::Body; use axum::extract::{Query, State}; use axum::response::Response; use axum::routing::{get, post}; use axum::{middleware, Json, Router}; use error::Error; use hyper::header::CONTENT_TYPE; -use hyper::{Body, StatusCode}; +use hyper::StatusCode; use prometheus::{Encoder, TextEncoder}; +use tokio::net::TcpListener; use tracing::info; use crate::app::App; @@ -150,7 +151,7 @@ pub async fn run( shutdown: Arc, ) -> anyhow::Result<()> { info!("Will listen on {}", config.address); - let listener = TcpListener::bind(config.address)?; + let listener = TcpListener::bind(config.address).await?; bind_from_listener(app, config.serve_timeout, listener, shutdown).await?; @@ -196,9 +197,7 @@ pub async fn bind_from_listener( )) .with_state(app.clone()); - let server = axum::Server::from_tcp(listener)? - .serve(router.into_make_service()) - .with_graceful_shutdown(shutdown.await_shutdown()); + let server = axum::serve(listener, router).with_graceful_shutdown(shutdown.await_shutdown()); server.await?; diff --git a/src/shutdown.rs b/src/shutdown.rs index b6755958..62b9cbf4 100644 --- a/src/shutdown.rs +++ b/src/shutdown.rs @@ -1,3 +1,4 @@ +use std::future::Future; use std::sync::Arc; use eyre::Result; @@ -5,7 +6,7 @@ use tokio::sync::watch::{self, Receiver, Sender}; use tracing::info; pub struct Shutdown { - sender: Sender, + sender: Sender, receiver: Receiver, } @@ -31,13 +32,16 @@ impl Shutdown { /// /// Resolves immediately if the program is already shutting down. /// The resulting future is safe to cancel by dropping. - pub async fn await_shutdown(&self) { + pub fn await_shutdown(&self) -> impl Future + 'static { let mut watch = self.receiver.clone(); - if *watch.borrow_and_update() { - return; + + async move { + if *watch.borrow_and_update() { + return; + } + // Does not fail because the channel never closes test_config. + watch.changed().await.unwrap(); } - // Does not fail because the channel never closes test_config. - watch.changed().await.unwrap(); } } diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml index f32df1f3..c8fb8155 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml @@ -192,7 +192,7 @@ end = "2024-11-09" [[trusted.libc]] criteria = "safe-to-deploy" -user-id = 51017 # Yuki Okushi (JohnTitor) +user-id = 51017 start = "2020-03-17" end = "2024-11-09" diff --git a/supply-chain/config.toml b/supply-chain/config.toml index 9681d8ff..5585fddf 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -22,7 +22,7 @@ url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" [imports.zcash] url = "https://raw.githubusercontent.com/zcash/rust-ecosystem/main/supply-chain/audits.toml" -[policy."ethers-core:2.0.13@git:4d267f763a19e42a09e92741e1489c123f852f53"] +[policy."ethers-core:2.0.14@git:6e2ff0ef8af8c0ee3c21b7e1960f8c025bcd5588"] audit-as-crates-io = true [[exemptions.Inflector]] @@ -41,20 +41,12 @@ criteria = "safe-to-deploy" version = "0.7.6" criteria = "safe-to-deploy" -[[exemptions.ahash]] -version = "0.7.7" -criteria = "safe-to-deploy" - [[exemptions.aho-corasick]] version = "1.1.1" criteria = "safe-to-deploy" -[[exemptions.allocator-api2]] -version = "0.2.14" -criteria = "safe-to-deploy" - [[exemptions.alloy-rlp]] -version = "0.3.4" +version = "0.3.8" criteria = "safe-to-deploy" [[exemptions.android-tzdata]] @@ -133,14 +125,18 @@ criteria = "safe-to-deploy" version = "0.4.0" criteria = "safe-to-deploy" -[[exemptions.arrayvec]] -version = "0.7.4" -criteria = "safe-to-deploy" - [[exemptions.ascii-canvas]] version = "3.0.0" criteria = "safe-to-deploy" +[[exemptions.async-stream]] +version = "0.3.6" +criteria = "safe-to-deploy" + +[[exemptions.async-stream-impl]] +version = "0.3.6" +criteria = "safe-to-deploy" + [[exemptions.async_io_stream]] version = "0.3.3" criteria = "safe-to-deploy" @@ -149,40 +145,52 @@ criteria = "safe-to-deploy" version = "2.0.0" criteria = "safe-to-deploy" -[[exemptions.atomic-write-file]] -version = "0.1.2" +[[exemptions.atomic-waker]] +version = "1.1.2" criteria = "safe-to-deploy" [[exemptions.auto_impl]] -version = "1.1.2" +version = "1.2.0" +criteria = "safe-to-deploy" + +[[exemptions.autocfg]] +version = "1.4.0" criteria = "safe-to-deploy" [[exemptions.aws-config]] -version = "1.5.6" +version = "1.5.8" criteria = "safe-to-deploy" [[exemptions.aws-credential-types]] version = "1.2.1" criteria = "safe-to-deploy" +[[exemptions.aws-lc-rs]] +version = "1.10.0" +criteria = "safe-to-deploy" + +[[exemptions.aws-lc-sys]] +version = "0.22.0" +criteria = "safe-to-deploy" + [[exemptions.aws-runtime]] version = "1.4.3" criteria = "safe-to-deploy" [[exemptions.aws-sdk-cognitoidentityprovider]] -version = "1.51.0" +version = "1.54.0" criteria = "safe-to-deploy" [[exemptions.aws-sdk-sso]] -version = "1.43.0" +version = "1.46.0" criteria = "safe-to-deploy" [[exemptions.aws-sdk-ssooidc]] -version = "1.44.0" +version = "1.47.0" criteria = "safe-to-deploy" [[exemptions.aws-sdk-sts]] -version = "1.43.0" +version = "1.46.0" criteria = "safe-to-deploy" [[exemptions.aws-sigv4]] @@ -210,7 +218,7 @@ version = "0.60.7" criteria = "safe-to-deploy" [[exemptions.aws-smithy-runtime]] -version = "1.7.1" +version = "1.7.2" criteria = "safe-to-deploy" [[exemptions.aws-smithy-runtime-api]] @@ -218,7 +226,7 @@ version = "1.7.2" criteria = "safe-to-deploy" [[exemptions.aws-smithy-types]] -version = "1.2.6" +version = "1.2.7" criteria = "safe-to-deploy" [[exemptions.aws-smithy-xml]] @@ -233,12 +241,20 @@ criteria = "safe-to-deploy" version = "0.6.20" criteria = "safe-to-deploy" +[[exemptions.axum]] +version = "0.7.7" +criteria = "safe-to-deploy" + [[exemptions.axum-core]] version = "0.3.4" criteria = "safe-to-deploy" +[[exemptions.axum-core]] +version = "0.4.5" +criteria = "safe-to-deploy" + [[exemptions.axum-server]] -version = "0.4.7" +version = "0.7.1" criteria = "safe-to-deploy" [[exemptions.backtrace]] @@ -265,6 +281,10 @@ criteria = "safe-to-deploy" version = "1.3.3" criteria = "safe-to-deploy" +[[exemptions.bindgen]] +version = "0.69.5" +criteria = "safe-to-deploy" + [[exemptions.bitvec]] version = "1.0.1" criteria = "safe-to-deploy" @@ -282,7 +302,7 @@ version = "0.5.0" criteria = "safe-to-deploy" [[exemptions.bstr]] -version = "0.2.17" +version = "1.10.0" criteria = "safe-to-run" [[exemptions.byte-slice-cast]] @@ -297,8 +317,12 @@ criteria = "safe-to-deploy" version = "0.6.12" criteria = "safe-to-deploy" +[[exemptions.bytemuck]] +version = "1.19.0" +criteria = "safe-to-deploy" + [[exemptions.bytes]] -version = "1.4.0" +version = "1.7.1" criteria = "safe-to-deploy" [[exemptions.bytes-utils]] @@ -306,39 +330,47 @@ version = "0.1.4" criteria = "safe-to-deploy" [[exemptions.cadence]] -version = "1.1.0" +version = "1.5.0" criteria = "safe-to-deploy" [[exemptions.camino]] -version = "1.1.6" +version = "1.1.9" criteria = "safe-to-deploy" [[exemptions.cargo-platform]] -version = "0.1.6" +version = "0.1.8" criteria = "safe-to-deploy" [[exemptions.cast]] version = "0.3.0" criteria = "safe-to-deploy" +[[exemptions.cc]] +version = "1.1.30" +criteria = "safe-to-deploy" + [[exemptions.chrono]] -version = "0.4.33" +version = "0.4.38" criteria = "safe-to-deploy" [[exemptions.cipher]] version = "0.3.0" criteria = "safe-to-deploy" -[[exemptions.clap]] -version = "2.34.0" +[[exemptions.clang-sys]] +version = "1.8.1" criteria = "safe-to-deploy" [[exemptions.clap]] -version = "4.4.18" +version = "2.34.0" criteria = "safe-to-deploy" [[exemptions.clap_derive]] -version = "4.4.7" +version = "4.5.18" +criteria = "safe-to-deploy" + +[[exemptions.cmake]] +version = "0.1.51" criteria = "safe-to-deploy" [[exemptions.cognito_srp]] @@ -358,15 +390,19 @@ version = "0.8.7" criteria = "safe-to-deploy" [[exemptions.color-eyre]] -version = "0.6.2" +version = "0.6.3" criteria = "safe-to-deploy" [[exemptions.color-spantrace]] version = "0.2.1" criteria = "safe-to-deploy" +[[exemptions.colorchoice]] +version = "1.0.2" +criteria = "safe-to-deploy" + [[exemptions.combine]] -version = "4.6.6" +version = "4.6.7" criteria = "safe-to-deploy" [[exemptions.config]] @@ -378,7 +414,7 @@ version = "0.15.8" criteria = "safe-to-run" [[exemptions.const-hex]] -version = "1.11.0" +version = "1.13.1" criteria = "safe-to-deploy" [[exemptions.const-oid]] @@ -389,22 +425,22 @@ criteria = "safe-to-deploy" version = "0.1.5" criteria = "safe-to-deploy" +[[exemptions.core-foundation-sys]] +version = "0.8.7" +criteria = "safe-to-deploy" + [[exemptions.cpufeatures]] -version = "0.2.12" +version = "0.2.13" criteria = "safe-to-deploy" [[exemptions.crc]] -version = "3.0.1" +version = "3.2.1" criteria = "safe-to-deploy" [[exemptions.crc-catalog]] version = "2.4.0" criteria = "safe-to-deploy" -[[exemptions.crc32fast]] -version = "1.3.2" -criteria = "safe-to-deploy" - [[exemptions.criterion]] version = "0.3.6" criteria = "safe-to-deploy" @@ -453,28 +489,16 @@ criteria = "safe-to-deploy" version = "0.13.4" criteria = "safe-to-deploy" -[[exemptions.darling]] -version = "0.20.5" -criteria = "safe-to-deploy" - [[exemptions.darling_core]] version = "0.13.4" criteria = "safe-to-deploy" -[[exemptions.darling_core]] -version = "0.20.5" -criteria = "safe-to-deploy" - [[exemptions.darling_macro]] version = "0.13.4" criteria = "safe-to-deploy" -[[exemptions.darling_macro]] -version = "0.20.5" -criteria = "safe-to-deploy" - [[exemptions.data-encoding]] -version = "2.5.0" +version = "2.6.0" criteria = "safe-to-deploy" [[exemptions.der]] @@ -485,8 +509,8 @@ criteria = "safe-to-deploy" version = "2.2.0" criteria = "safe-to-deploy" -[[exemptions.diff]] -version = "0.1.13" +[[exemptions.derive_more]] +version = "0.99.18" criteria = "safe-to-deploy" [[exemptions.digest]] @@ -514,7 +538,7 @@ version = "0.15.7" criteria = "safe-to-deploy" [[exemptions.dunce]] -version = "1.0.4" +version = "1.0.5" criteria = "safe-to-deploy" [[exemptions.ecdsa]] @@ -530,7 +554,7 @@ version = "0.6.1" criteria = "safe-to-deploy" [[exemptions.ena]] -version = "0.14.2" +version = "0.14.3" criteria = "safe-to-deploy" [[exemptions.encode_unicode]] @@ -538,11 +562,11 @@ version = "0.3.6" criteria = "safe-to-run" [[exemptions.enr]] -version = "0.9.1" +version = "0.10.0" criteria = "safe-to-deploy" [[exemptions.enum-as-inner]] -version = "0.6.0" +version = "0.6.1" criteria = "safe-to-deploy" [[exemptions.enum-iterator]] @@ -554,11 +578,11 @@ version = "0.7.0" criteria = "safe-to-deploy" [[exemptions.enumset]] -version = "1.1.3" +version = "1.1.5" criteria = "safe-to-deploy" [[exemptions.enumset_derive]] -version = "0.6.1" +version = "0.10.0" criteria = "safe-to-deploy" [[exemptions.etcetera]] @@ -582,51 +606,51 @@ version = "0.14.1" criteria = "safe-to-deploy" [[exemptions.ethers]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-addressbook]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-contract]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-contract-abigen]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-contract-derive]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-core]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-core]] -version = "2.0.13@git:4d267f763a19e42a09e92741e1489c123f852f53" +version = "2.0.14@git:6e2ff0ef8af8c0ee3c21b7e1960f8c025bcd5588" criteria = "safe-to-deploy" [[exemptions.ethers-etherscan]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-middleware]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-providers]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-signers]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.ethers-solc]] -version = "2.0.13" +version = "2.0.14" criteria = "safe-to-deploy" [[exemptions.event-listener]] @@ -649,10 +673,6 @@ criteria = "safe-to-deploy" version = "0.12.1" criteria = "safe-to-deploy" -[[exemptions.finl_unicode]] -version = "1.2.0" -criteria = "safe-to-deploy" - [[exemptions.fixed-hash]] version = "0.8.0" criteria = "safe-to-deploy" @@ -669,10 +689,6 @@ criteria = "safe-to-deploy" version = "0.5.0" criteria = "safe-to-deploy" -[[exemptions.flate2]] -version = "1.0.24" -criteria = "safe-to-deploy" - [[exemptions.flume]] version = "0.11.0" criteria = "safe-to-deploy" @@ -681,36 +697,60 @@ criteria = "safe-to-deploy" version = "0.4.3" criteria = "safe-to-deploy" +[[exemptions.fs_extra]] +version = "1.3.0" +criteria = "safe-to-deploy" + [[exemptions.funty]] version = "2.0.0" criteria = "safe-to-deploy" +[[exemptions.futures]] +version = "0.3.31" +criteria = "safe-to-deploy" + +[[exemptions.futures-channel]] +version = "0.3.31" +criteria = "safe-to-deploy" + +[[exemptions.futures-core]] +version = "0.3.31" +criteria = "safe-to-deploy" + +[[exemptions.futures-executor]] +version = "0.3.31" +criteria = "safe-to-deploy" + [[exemptions.futures-intrusive]] version = "0.5.0" criteria = "safe-to-deploy" +[[exemptions.futures-io]] +version = "0.3.31" +criteria = "safe-to-deploy" + [[exemptions.futures-locks]] version = "0.7.1" criteria = "safe-to-deploy" [[exemptions.futures-macro]] -version = "0.3.30" +version = "0.3.31" criteria = "safe-to-deploy" [[exemptions.futures-sink]] -version = "0.3.30" +version = "0.3.31" criteria = "safe-to-deploy" [[exemptions.futures-task]] -version = "0.3.28" +version = "0.3.31" criteria = "safe-to-deploy" [[exemptions.futures-timer]] -version = "3.0.2" +version = "3.0.3" criteria = "safe-to-deploy" [[exemptions.futures-util]] -version = "0.3.28" +version = "0.3.31" criteria = "safe-to-deploy" [[exemptions.generic-array]] @@ -737,6 +777,10 @@ criteria = "safe-to-deploy" version = "0.12.1" criteria = "safe-to-deploy" +[[exemptions.half]] +version = "1.8.3" +criteria = "safe-to-deploy" + [[exemptions.hashers]] version = "1.0.1" criteria = "safe-to-deploy" @@ -750,7 +794,7 @@ version = "0.1.19" criteria = "safe-to-deploy" [[exemptions.hermit-abi]] -version = "0.3.5" +version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.hex-literal]] @@ -777,8 +821,16 @@ criteria = "safe-to-deploy" version = "0.24.2" criteria = "safe-to-deploy" +[[exemptions.hyper-rustls]] +version = "0.27.3" +criteria = "safe-to-deploy" + +[[exemptions.hyper-util]] +version = "0.1.9" +criteria = "safe-to-deploy" + [[exemptions.iana-time-zone]] -version = "0.1.60" +version = "0.1.61" criteria = "safe-to-deploy" [[exemptions.impl-codec]] @@ -802,19 +854,19 @@ version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.indoc]] -version = "2.0.4" +version = "2.0.5" criteria = "safe-to-deploy" [[exemptions.instant]] -version = "0.1.12" +version = "0.1.13" criteria = "safe-to-deploy" [[exemptions.ipnet]] -version = "2.5.0" +version = "2.10.1" criteria = "safe-to-deploy" -[[exemptions.is-terminal]] -version = "0.4.10" +[[exemptions.is_terminal_polyfill]] +version = "1.70.1" criteria = "safe-to-deploy" [[exemptions.itertools]] @@ -829,12 +881,8 @@ criteria = "safe-to-deploy" version = "0.13.0" criteria = "safe-to-deploy" -[[exemptions.jobserver]] -version = "0.1.27" -criteria = "safe-to-deploy" - [[exemptions.js-sys]] -version = "0.3.68" +version = "0.3.72" criteria = "safe-to-deploy" [[exemptions.json5]] @@ -842,7 +890,7 @@ version = "0.4.1" criteria = "safe-to-deploy" [[exemptions.k256]] -version = "0.13.3" +version = "0.13.4" criteria = "safe-to-deploy" [[exemptions.keccak]] @@ -850,21 +898,33 @@ version = "0.1.5" criteria = "safe-to-deploy" [[exemptions.lalrpop]] -version = "0.20.0" +version = "0.20.2" criteria = "safe-to-deploy" [[exemptions.lalrpop-util]] -version = "0.20.0" +version = "0.20.2" criteria = "safe-to-deploy" [[exemptions.lazy_static]] version = "0.2.11" criteria = "safe-to-deploy" +[[exemptions.lazycell]] +version = "1.3.0" +criteria = "safe-to-deploy" + +[[exemptions.libc]] +version = "0.2.159" +criteria = "safe-to-deploy" + [[exemptions.libloading]] version = "0.7.4" criteria = "safe-to-deploy" +[[exemptions.libloading]] +version = "0.8.5" +criteria = "safe-to-deploy" + [[exemptions.libm]] version = "0.2.2" criteria = "safe-to-deploy" @@ -878,11 +938,11 @@ version = "0.25.2" criteria = "safe-to-deploy" [[exemptions.linux-raw-sys]] -version = "0.4.13" +version = "0.4.14" criteria = "safe-to-deploy" [[exemptions.lock_api]] -version = "0.4.11" +version = "0.4.12" criteria = "safe-to-deploy" [[exemptions.loupe]] @@ -926,19 +986,19 @@ version = "0.6.5" criteria = "safe-to-deploy" [[exemptions.metrics]] -version = "0.22.1" +version = "0.23.0" criteria = "safe-to-deploy" [[exemptions.metrics-exporter-prometheus]] -version = "0.13.1" +version = "0.15.3" criteria = "safe-to-deploy" [[exemptions.metrics-exporter-statsd]] -version = "0.7.0" +version = "0.8.0" criteria = "safe-to-deploy" [[exemptions.metrics-util]] -version = "0.16.2" +version = "0.17.0" criteria = "safe-to-deploy" [[exemptions.minimal-lexical]] @@ -946,7 +1006,11 @@ version = "0.2.1" criteria = "safe-to-deploy" [[exemptions.mio]] -version = "0.8.10" +version = "1.0.2" +criteria = "safe-to-deploy" + +[[exemptions.mirai-annotations]] +version = "1.12.0" criteria = "safe-to-deploy" [[exemptions.mmap-rs]] @@ -957,12 +1021,24 @@ criteria = "safe-to-deploy" version = "0.2.2" criteria = "safe-to-deploy" +[[exemptions.native-tls]] +version = "0.2.12" +criteria = "safe-to-deploy" + +[[exemptions.new_debug_unreachable]] +version = "1.0.6" +criteria = "safe-to-deploy" + [[exemptions.nix]] version = "0.15.0" criteria = "safe-to-deploy" [[exemptions.num]] -version = "0.4.1" +version = "0.4.3" +criteria = "safe-to-deploy" + +[[exemptions.num-bigint]] +version = "0.4.6" criteria = "safe-to-deploy" [[exemptions.num-bigint-dig]] @@ -970,7 +1046,15 @@ version = "0.8.4" criteria = "safe-to-deploy" [[exemptions.num-complex]] -version = "0.4.5" +version = "0.4.6" +criteria = "safe-to-deploy" + +[[exemptions.num_enum]] +version = "0.7.3" +criteria = "safe-to-deploy" + +[[exemptions.num_enum_derive]] +version = "0.7.3" criteria = "safe-to-deploy" [[exemptions.object]] @@ -978,11 +1062,11 @@ version = "0.28.4" criteria = "safe-to-deploy" [[exemptions.once_cell]] -version = "1.17.1" +version = "1.20.2" criteria = "safe-to-deploy" [[exemptions.oorandom]] -version = "11.1.3" +version = "11.1.4" criteria = "safe-to-deploy" [[exemptions.open-fastrlp]] @@ -994,41 +1078,37 @@ version = "0.1.1" criteria = "safe-to-deploy" [[exemptions.openssl]] -version = "0.10.63" +version = "0.10.66" criteria = "safe-to-deploy" [[exemptions.openssl-sys]] -version = "0.9.99" +version = "0.9.103" criteria = "safe-to-deploy" [[exemptions.opentelemetry]] -version = "0.21.0" +version = "0.24.0" criteria = "safe-to-deploy" [[exemptions.opentelemetry-datadog]] -version = "0.9.0" +version = "0.13.0" criteria = "safe-to-deploy" [[exemptions.opentelemetry-http]] -version = "0.10.0" +version = "0.13.0" criteria = "safe-to-deploy" [[exemptions.opentelemetry-semantic-conventions]] -version = "0.13.0" +version = "0.25.0" criteria = "safe-to-deploy" [[exemptions.opentelemetry_sdk]] -version = "0.21.2" +version = "0.24.1" criteria = "safe-to-deploy" [[exemptions.option-ext]] version = "0.2.0" criteria = "safe-to-deploy" -[[exemptions.ordered-float]] -version = "4.2.0" -criteria = "safe-to-deploy" - [[exemptions.ordered-multimap]] version = "0.4.3" criteria = "safe-to-deploy" @@ -1042,19 +1122,19 @@ version = "3.5.0" criteria = "safe-to-deploy" [[exemptions.parity-scale-codec]] -version = "3.6.1" +version = "3.6.12" criteria = "safe-to-deploy" [[exemptions.parity-scale-codec-derive]] -version = "3.6.5" +version = "3.6.12" criteria = "safe-to-deploy" [[exemptions.parking_lot]] -version = "0.11.2" +version = "0.12.2" criteria = "safe-to-deploy" [[exemptions.parking_lot_core]] -version = "0.9.9" +version = "0.9.10" criteria = "safe-to-deploy" [[exemptions.password-hash]] @@ -1066,7 +1146,7 @@ version = "0.2.1" criteria = "safe-to-deploy" [[exemptions.pathdiff]] -version = "0.2.1" +version = "0.2.2" criteria = "safe-to-deploy" [[exemptions.pbkdf2]] @@ -1086,23 +1166,23 @@ version = "0.7.0" criteria = "safe-to-deploy" [[exemptions.pest]] -version = "2.7.7" +version = "2.7.14" criteria = "safe-to-deploy" [[exemptions.pest_derive]] -version = "2.7.7" +version = "2.7.14" criteria = "safe-to-deploy" [[exemptions.pest_generator]] -version = "2.7.7" +version = "2.7.14" criteria = "safe-to-deploy" [[exemptions.pest_meta]] -version = "2.7.7" +version = "2.7.14" criteria = "safe-to-deploy" [[exemptions.petgraph]] -version = "0.6.4" +version = "0.6.5" criteria = "safe-to-deploy" [[exemptions.pharos]] @@ -1126,11 +1206,11 @@ version = "0.10.0" criteria = "safe-to-deploy" [[exemptions.pin-project]] -version = "1.1.4" +version = "1.1.6" criteria = "safe-to-deploy" [[exemptions.pin-project-internal]] -version = "1.1.4" +version = "1.1.6" criteria = "safe-to-deploy" [[exemptions.pkcs1]] @@ -1141,20 +1221,24 @@ criteria = "safe-to-deploy" version = "0.10.2" criteria = "safe-to-deploy" +[[exemptions.pkg-config]] +version = "0.3.31" +criteria = "safe-to-deploy" + [[exemptions.plotters]] -version = "0.3.5" +version = "0.3.7" criteria = "safe-to-deploy" [[exemptions.plotters-backend]] -version = "0.3.5" +version = "0.3.7" criteria = "safe-to-deploy" [[exemptions.plotters-svg]] -version = "0.3.5" +version = "0.3.7" criteria = "safe-to-deploy" [[exemptions.portable-atomic]] -version = "1.6.0" +version = "1.9.0" criteria = "safe-to-deploy" [[exemptions.postcard]] @@ -1162,7 +1246,7 @@ version = "1.0.10" criteria = "safe-to-deploy" [[exemptions.ppv-lite86]] -version = "0.2.17" +version = "0.2.20" criteria = "safe-to-deploy" [[exemptions.primitive-types]] @@ -1170,15 +1254,7 @@ version = "0.12.2" criteria = "safe-to-deploy" [[exemptions.proc-macro-crate]] -version = "1.2.1" -criteria = "safe-to-deploy" - -[[exemptions.proc-macro-crate]] -version = "2.0.0" -criteria = "safe-to-deploy" - -[[exemptions.proc-macro-crate]] -version = "3.1.0" +version = "3.2.0" criteria = "safe-to-deploy" [[exemptions.proc-macro-error]] @@ -1186,11 +1262,11 @@ version = "1.0.4" criteria = "safe-to-deploy" [[exemptions.prometheus]] -version = "0.13.3" +version = "0.13.4" criteria = "safe-to-deploy" [[exemptions.proptest]] -version = "1.2.0" +version = "1.5.0" criteria = "safe-to-deploy" [[exemptions.protobuf]] @@ -1206,7 +1282,7 @@ version = "0.1.4" criteria = "safe-to-deploy" [[exemptions.quanta]] -version = "0.12.2" +version = "0.12.3" criteria = "safe-to-deploy" [[exemptions.radium]] @@ -1218,7 +1294,7 @@ version = "0.8.5" criteria = "safe-to-deploy" [[exemptions.raw-cpuid]] -version = "11.0.1" +version = "11.2.0" criteria = "safe-to-deploy" [[exemptions.redox_syscall]] @@ -1226,11 +1302,11 @@ version = "0.1.57" criteria = "safe-to-deploy" [[exemptions.redox_syscall]] -version = "0.4.1" +version = "0.5.7" criteria = "safe-to-deploy" [[exemptions.redox_users]] -version = "0.4.3" +version = "0.4.6" criteria = "safe-to-deploy" [[exemptions.regalloc]] @@ -1238,7 +1314,7 @@ version = "0.0.34" criteria = "safe-to-deploy" [[exemptions.regex]] -version = "1.10.3" +version = "1.11.0" criteria = "safe-to-deploy" [[exemptions.regex-automata]] @@ -1246,11 +1322,11 @@ version = "0.1.10" criteria = "safe-to-deploy" [[exemptions.regex-automata]] -version = "0.4.5" +version = "0.4.8" criteria = "safe-to-deploy" [[exemptions.regex-lite]] -version = "0.1.5" +version = "0.1.6" criteria = "safe-to-deploy" [[exemptions.regex-syntax]] @@ -1258,11 +1334,11 @@ version = "0.6.28" criteria = "safe-to-deploy" [[exemptions.regex-syntax]] -version = "0.7.2" +version = "0.8.5" criteria = "safe-to-deploy" [[exemptions.region]] -version = "3.0.0" +version = "2.2.0" criteria = "safe-to-deploy" [[exemptions.rend]] @@ -1278,7 +1354,7 @@ version = "0.16.20" criteria = "safe-to-deploy" [[exemptions.ring]] -version = "0.17.7" +version = "0.17.8" criteria = "safe-to-deploy" [[exemptions.ripemd]] @@ -1286,11 +1362,11 @@ version = "0.1.3" criteria = "safe-to-deploy" [[exemptions.rkyv]] -version = "0.7.44" +version = "0.7.45" criteria = "safe-to-deploy" [[exemptions.rkyv_derive]] -version = "0.7.44" +version = "0.7.45" criteria = "safe-to-deploy" [[exemptions.rlp]] @@ -1301,10 +1377,6 @@ criteria = "safe-to-deploy" version = "0.1.0" criteria = "safe-to-deploy" -[[exemptions.rmp]] -version = "0.8.12" -criteria = "safe-to-deploy" - [[exemptions.ron]] version = "0.7.0" criteria = "safe-to-deploy" @@ -1334,25 +1406,45 @@ version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.rustix]] -version = "0.38.31" +version = "0.38.34" criteria = "safe-to-deploy" [[exemptions.rustls]] -version = "0.21.10" +version = "0.21.8" +criteria = "safe-to-deploy" + +[[exemptions.rustls]] +version = "0.23.14" criteria = "safe-to-deploy" [[exemptions.rustls-native-certs]] version = "0.6.3" criteria = "safe-to-deploy" +[[exemptions.rustls-native-certs]] +version = "0.8.0" +criteria = "safe-to-deploy" + [[exemptions.rustls-pemfile]] version = "1.0.4" criteria = "safe-to-deploy" +[[exemptions.rustls-pemfile]] +version = "2.2.0" +criteria = "safe-to-deploy" + +[[exemptions.rustls-pki-types]] +version = "1.9.0" +criteria = "safe-to-deploy" + [[exemptions.rustls-webpki]] version = "0.101.7" criteria = "safe-to-deploy" +[[exemptions.rustls-webpki]] +version = "0.102.8" +criteria = "safe-to-deploy" + [[exemptions.salsa20]] version = "0.10.2" criteria = "safe-to-deploy" @@ -1362,15 +1454,15 @@ version = "1.0.6" criteria = "safe-to-deploy" [[exemptions.scale-info]] -version = "2.10.0" +version = "2.11.3" criteria = "safe-to-deploy" [[exemptions.scale-info-derive]] -version = "2.10.0" +version = "2.11.3" criteria = "safe-to-deploy" [[exemptions.schannel]] -version = "0.1.23" +version = "0.1.26" criteria = "safe-to-deploy" [[exemptions.scrypt]] @@ -1390,21 +1482,17 @@ version = "0.7.3" criteria = "safe-to-deploy" [[exemptions.security-framework]] -version = "2.9.2" +version = "2.11.1" criteria = "safe-to-deploy" [[exemptions.security-framework-sys]] -version = "2.9.1" +version = "2.12.0" criteria = "safe-to-deploy" [[exemptions.semver]] version = "0.11.0" criteria = "safe-to-deploy" -[[exemptions.semver]] -version = "1.0.21" -criteria = "safe-to-deploy" - [[exemptions.semver-parser]] version = "0.10.2" criteria = "safe-to-deploy" @@ -1437,16 +1525,24 @@ criteria = "safe-to-deploy" version = "0.10.8" criteria = "safe-to-deploy" +[[exemptions.shlex]] +version = "1.3.0" +criteria = "safe-to-deploy" + +[[exemptions.signal-hook-registry]] +version = "1.4.2" +criteria = "safe-to-deploy" + [[exemptions.simdutf8]] -version = "0.1.4" +version = "0.1.5" criteria = "safe-to-deploy" [[exemptions.similar]] -version = "2.4.0" +version = "2.6.0" criteria = "safe-to-run" [[exemptions.similar-asserts]] -version = "1.5.0" +version = "1.6.0" criteria = "safe-to-run" [[exemptions.simple_asn1]] @@ -1466,7 +1562,7 @@ version = "0.4.9" criteria = "safe-to-deploy" [[exemptions.smallvec]] -version = "1.13.1" +version = "1.8.0" criteria = "safe-to-deploy" [[exemptions.socket2]] @@ -1490,35 +1586,35 @@ version = "0.7.3" criteria = "safe-to-deploy" [[exemptions.sqlformat]] -version = "0.2.3" +version = "0.2.6" criteria = "safe-to-deploy" [[exemptions.sqlx]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-core]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-macros]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-macros-core]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-mysql]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-postgres]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.sqlx-sqlite]] -version = "0.7.3" +version = "0.7.4" criteria = "safe-to-deploy" [[exemptions.stable_deref_trait]] @@ -1530,7 +1626,15 @@ version = "0.8.7" criteria = "safe-to-deploy" [[exemptions.stringprep]] -version = "0.1.4" +version = "0.1.5" +criteria = "safe-to-deploy" + +[[exemptions.strum]] +version = "0.26.3" +criteria = "safe-to-deploy" + +[[exemptions.strum_macros]] +version = "0.26.4" criteria = "safe-to-deploy" [[exemptions.svm-rs]] @@ -1549,16 +1653,24 @@ criteria = "safe-to-deploy" version = "0.5.1" criteria = "safe-to-deploy" +[[exemptions.system-configuration]] +version = "0.6.1" +criteria = "safe-to-deploy" + [[exemptions.system-configuration-sys]] version = "0.5.0" criteria = "safe-to-deploy" +[[exemptions.system-configuration-sys]] +version = "0.6.0" +criteria = "safe-to-deploy" + [[exemptions.target-lexicon]] -version = "0.12.13" +version = "0.12.16" criteria = "safe-to-deploy" [[exemptions.tempfile]] -version = "3.10.0" +version = "3.13.0" criteria = "safe-to-deploy" [[exemptions.term]] @@ -1610,31 +1722,43 @@ version = "1.2.1" criteria = "safe-to-deploy" [[exemptions.tokio-macros]] -version = "2.2.0" +version = "2.4.0" criteria = "safe-to-deploy" [[exemptions.tokio-rustls]] version = "0.24.1" criteria = "safe-to-deploy" +[[exemptions.tokio-rustls]] +version = "0.26.0" +criteria = "safe-to-deploy" + +[[exemptions.tokio-stream]] +version = "0.1.16" +criteria = "safe-to-deploy" + [[exemptions.tokio-tungstenite]] version = "0.20.1" criteria = "safe-to-deploy" [[exemptions.tokio-util]] -version = "0.7.10" +version = "0.7.12" criteria = "safe-to-deploy" [[exemptions.tower]] version = "0.4.13" criteria = "safe-to-deploy" +[[exemptions.tower]] +version = "0.5.1" +criteria = "safe-to-deploy" + [[exemptions.tower-layer]] -version = "0.3.2" +version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.tower-service]] -version = "0.3.2" +version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.tracing]] @@ -1649,10 +1773,6 @@ criteria = "safe-to-deploy" version = "0.1.23" criteria = "safe-to-deploy" -[[exemptions.tracing-core]] -version = "0.1.30" -criteria = "safe-to-deploy" - [[exemptions.tracing-error]] version = "0.2.0" criteria = "safe-to-deploy" @@ -1666,7 +1786,7 @@ version = "0.2.0" criteria = "safe-to-deploy" [[exemptions.tracing-opentelemetry]] -version = "0.22.0" +version = "0.25.0" criteria = "safe-to-deploy" [[exemptions.tracing-serde]] @@ -1677,6 +1797,14 @@ criteria = "safe-to-deploy" version = "0.2.25" criteria = "safe-to-deploy" +[[exemptions.tracing-test]] +version = "0.2.5" +criteria = "safe-to-deploy" + +[[exemptions.tracing-test-macro]] +version = "0.2.5" +criteria = "safe-to-deploy" + [[exemptions.tungstenite]] version = "0.20.1" criteria = "safe-to-deploy" @@ -1686,7 +1814,7 @@ version = "1.15.0" criteria = "safe-to-deploy" [[exemptions.ucd-trie]] -version = "0.1.6" +version = "0.1.7" criteria = "safe-to-deploy" [[exemptions.uint]] @@ -1697,6 +1825,26 @@ criteria = "safe-to-deploy" version = "0.1.4" criteria = "safe-to-deploy" +[[exemptions.unicode-bidi]] +version = "0.3.17" +criteria = "safe-to-deploy" + +[[exemptions.unicode-normalization]] +version = "0.1.24" +criteria = "safe-to-deploy" + +[[exemptions.unicode-properties]] +version = "0.1.3" +criteria = "safe-to-deploy" + +[[exemptions.unicode-segmentation]] +version = "1.12.0" +criteria = "safe-to-deploy" + +[[exemptions.unicode-width]] +version = "0.1.14" +criteria = "safe-to-deploy" + [[exemptions.unicode_categories]] version = "0.1.1" criteria = "safe-to-deploy" @@ -1705,6 +1853,10 @@ criteria = "safe-to-deploy" version = "0.9.0" criteria = "safe-to-deploy" +[[exemptions.url]] +version = "2.5.2" +criteria = "safe-to-deploy" + [[exemptions.urlencoding]] version = "2.1.3" criteria = "safe-to-deploy" @@ -1713,12 +1865,20 @@ criteria = "safe-to-deploy" version = "0.7.6" criteria = "safe-to-deploy" +[[exemptions.utf8parse]] +version = "0.2.2" +criteria = "safe-to-deploy" + [[exemptions.uuid]] version = "0.8.2" criteria = "safe-to-deploy" [[exemptions.uuid]] -version = "1.7.0" +version = "1.10.0" +criteria = "safe-to-deploy" + +[[exemptions.version_check]] +version = "0.9.5" criteria = "safe-to-deploy" [[exemptions.vsimd]] @@ -1726,35 +1886,39 @@ version = "0.8.0" criteria = "safe-to-deploy" [[exemptions.walkdir]] -version = "2.4.0" +version = "2.5.0" criteria = "safe-to-deploy" [[exemptions.wasi]] version = "0.11.0+wasi-snapshot-preview1" criteria = "safe-to-deploy" +[[exemptions.wasite]] +version = "0.1.0" +criteria = "safe-to-deploy" + [[exemptions.wasm-bindgen]] -version = "0.2.91" +version = "0.2.95" criteria = "safe-to-deploy" [[exemptions.wasm-bindgen-backend]] -version = "0.2.91" +version = "0.2.95" criteria = "safe-to-deploy" [[exemptions.wasm-bindgen-futures]] -version = "0.4.41" +version = "0.4.45" criteria = "safe-to-deploy" [[exemptions.wasm-bindgen-macro]] -version = "0.2.91" +version = "0.2.95" criteria = "safe-to-deploy" [[exemptions.wasm-bindgen-macro-support]] -version = "0.2.91" +version = "0.2.95" criteria = "safe-to-deploy" [[exemptions.wasm-bindgen-shared]] -version = "0.2.91" +version = "0.2.95" criteria = "safe-to-deploy" [[exemptions.wasmer]] @@ -1810,11 +1974,11 @@ version = "0.83.0" criteria = "safe-to-deploy" [[exemptions.web-sys]] -version = "0.3.68" +version = "0.3.72" criteria = "safe-to-deploy" [[exemptions.web-time]] -version = "0.2.4" +version = "1.1.0" criteria = "safe-to-deploy" [[exemptions.which]] @@ -1822,11 +1986,11 @@ version = "4.3.0" criteria = "safe-to-deploy" [[exemptions.whoami]] -version = "1.4.1" +version = "1.5.2" criteria = "safe-to-deploy" [[exemptions.widestring]] -version = "1.0.2" +version = "1.1.0" criteria = "safe-to-deploy" [[exemptions.winapi]] @@ -1838,7 +2002,7 @@ version = "0.4.0" criteria = "safe-to-deploy" [[exemptions.winapi-util]] -version = "0.1.6" +version = "0.1.9" criteria = "safe-to-deploy" [[exemptions.winapi-x86_64-pc-windows-gnu]] @@ -1853,6 +2017,26 @@ criteria = "safe-to-deploy" version = "0.52.0" criteria = "safe-to-deploy" +[[exemptions.windows-registry]] +version = "0.2.0" +criteria = "safe-to-deploy" + +[[exemptions.windows-result]] +version = "0.2.0" +criteria = "safe-to-deploy" + +[[exemptions.windows-strings]] +version = "0.1.0" +criteria = "safe-to-deploy" + +[[exemptions.windows-sys]] +version = "0.59.0" +criteria = "safe-to-deploy" + +[[exemptions.windows_i686_gnullvm]] +version = "0.52.6" +criteria = "safe-to-deploy" + [[exemptions.winreg]] version = "0.50.0" criteria = "safe-to-deploy" @@ -1873,8 +2057,16 @@ criteria = "safe-to-deploy" version = "0.5.1" criteria = "safe-to-deploy" +[[exemptions.zerocopy]] +version = "0.7.35" +criteria = "safe-to-deploy" + +[[exemptions.zerocopy-derive]] +version = "0.7.35" +criteria = "safe-to-deploy" + [[exemptions.zeroize]] -version = "1.7.0" +version = "1.8.1" criteria = "safe-to-deploy" [[exemptions.zeroize_derive]] @@ -1894,5 +2086,5 @@ version = "5.0.2+zstd.1.5.2" criteria = "safe-to-deploy" [[exemptions.zstd-sys]] -version = "2.0.9+zstd.1.5.5" +version = "2.0.13+zstd.1.5.6" criteria = "safe-to-deploy" diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock index 3e978c38..d18bbeba 100644 --- a/supply-chain/imports.lock +++ b/supply-chain/imports.lock @@ -2,57 +2,57 @@ # cargo-vet imports lock [[publisher.anstream]] -version = "0.6.11" -when = "2024-01-18" +version = "0.6.15" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.anstyle]] -version = "1.0.6" -when = "2024-02-05" +version = "1.0.8" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.anstyle-parse]] -version = "0.2.3" -when = "2023-12-04" +version = "0.2.5" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.anstyle-query]] -version = "1.0.2" -when = "2023-12-08" +version = "1.1.1" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.anstyle-wincon]] -version = "3.0.2" -when = "2023-12-04" +version = "3.0.4" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.anyhow]] -version = "1.0.79" -when = "2024-01-02" +version = "1.0.89" +when = "2024-09-15" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.async-trait]] -version = "0.1.77" -when = "2024-01-02" +version = "0.1.83" +when = "2024-09-24" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.bumpalo]] -version = "3.14.0" -when = "2023-09-14" +version = "3.16.0" +when = "2024-04-08" user-id = 696 user-login = "fitzgen" user-name = "Nick Fitzgerald" @@ -71,16 +71,23 @@ user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" +[[publisher.cexpr]] +version = "0.6.0" +when = "2021-10-11" +user-id = 3788 +user-login = "emilio" +user-name = "Emilio Cobos Álvarez" + [[publisher.clap_builder]] -version = "4.4.18" -when = "2024-01-16" +version = "4.5.20" +when = "2024-10-08" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.clap_lex]] -version = "0.6.0" -when = "2023-10-24" +version = "0.7.2" +when = "2024-07-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" @@ -92,13 +99,6 @@ user-id = 5946 user-login = "jrmuizel" user-name = "Jeff Muizelaar" -[[publisher.core-foundation-sys]] -version = "0.8.4" -when = "2023-04-03" -user-id = 5946 -user-login = "jrmuizel" -user-name = "Jeff Muizelaar" - [[publisher.corosensei]] version = "0.1.4" when = "2023-08-23" @@ -171,8 +171,8 @@ user-login = "dtolnay" user-name = "David Tolnay" [[publisher.encoding_rs]] -version = "0.8.33" -when = "2023-08-23" +version = "0.8.34" +when = "2024-04-10" user-id = 4484 user-login = "hsivonen" user-name = "Henri Sivonen" @@ -185,8 +185,15 @@ user-login = "cuviper" user-name = "Josh Stone" [[publisher.h2]] -version = "0.3.24" -when = "2024-01-17" +version = "0.3.26" +when = "2024-04-03" +user-id = 359 +user-login = "seanmonstar" +user-name = "Sean McArthur" + +[[publisher.h2]] +version = "0.4.6" +when = "2024-08-19" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" @@ -206,22 +213,29 @@ user-login = "Amanieu" user-name = "Amanieu d'Antras" [[publisher.hashbrown]] -version = "0.14.3" -when = "2023-11-26" +version = "0.14.5" +when = "2024-04-28" +user-id = 2915 +user-login = "Amanieu" +user-name = "Amanieu d'Antras" + +[[publisher.hashbrown]] +version = "0.15.0" +when = "2024-10-01" user-id = 2915 user-login = "Amanieu" user-name = "Amanieu d'Antras" [[publisher.http]] -version = "0.2.11" -when = "2023-11-13" +version = "0.2.12" +when = "2024-03-04" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.http]] -version = "1.0.0" -when = "2023-11-15" +version = "1.1.0" +when = "2024-03-04" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" @@ -241,15 +255,22 @@ user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.httparse]] -version = "1.8.0" -when = "2022-08-30" +version = "1.9.5" +when = "2024-09-30" +user-id = 359 +user-login = "seanmonstar" +user-name = "Sean McArthur" + +[[publisher.hyper]] +version = "0.14.30" +when = "2024-07-09" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.hyper]] -version = "0.14.28" -when = "2023-12-18" +version = "1.4.1" +when = "2024-07-09" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" @@ -261,6 +282,13 @@ user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" +[[publisher.hyper-tls]] +version = "0.6.0" +when = "2023-11-27" +user-id = 359 +user-login = "seanmonstar" +user-name = "Sean McArthur" + [[publisher.indexmap]] version = "1.9.3" when = "2023-03-24" @@ -269,18 +297,25 @@ user-login = "cuviper" user-name = "Josh Stone" [[publisher.indexmap]] -version = "2.2.2" -when = "2024-01-31" +version = "2.6.0" +when = "2024-10-01" user-id = 539 user-login = "cuviper" user-name = "Josh Stone" -[[publisher.libc]] -version = "0.2.153" -when = "2024-01-31" -user-id = 51017 -user-login = "JohnTitor" -user-name = "Yuki Okushi" +[[publisher.itoa]] +version = "1.0.11" +when = "2024-03-26" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.jobserver]] +version = "0.1.25" +when = "2022-09-23" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" [[publisher.mime]] version = "0.3.17" @@ -297,29 +332,36 @@ user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.paste]] -version = "1.0.14" -when = "2023-07-15" +version = "1.0.15" +when = "2024-05-07" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.prettyplease]] -version = "0.2.16" -when = "2024-01-02" +version = "0.2.22" +when = "2024-08-25" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.reqwest]] -version = "0.11.24" -when = "2024-01-31" +version = "0.11.27" +when = "2024-03-19" +user-id = 359 +user-login = "seanmonstar" +user-name = "Sean McArthur" + +[[publisher.reqwest]] +version = "0.12.8" +when = "2024-09-30" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.ryu]] -version = "1.0.16" -when = "2023-12-09" +version = "1.0.18" +when = "2024-05-07" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" @@ -339,36 +381,43 @@ user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde]] -version = "1.0.196" -when = "2024-01-26" +version = "1.0.210" +when = "2024-09-06" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_bytes]] -version = "0.11.14" -when = "2024-01-02" +version = "0.11.15" +when = "2024-06-25" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.serde_derive]] +version = "1.0.210" +when = "2024-09-06" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_json]] -version = "1.0.113" -when = "2024-01-29" +version = "1.0.128" +when = "2024-09-04" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_path_to_error]] -version = "0.1.15" -when = "2024-01-02" +version = "0.1.16" +when = "2024-03-09" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_spanned]] -version = "0.6.5" -when = "2023-12-19" +version = "0.6.8" +when = "2024-09-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" @@ -381,29 +430,29 @@ user-login = "dtolnay" user-name = "David Tolnay" [[publisher.syn]] -version = "2.0.48" -when = "2024-01-04" +version = "2.0.79" +when = "2024-09-27" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.thiserror]] -version = "1.0.56" -when = "2024-01-02" +version = "1.0.64" +when = "2024-09-22" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.thiserror-impl]] -version = "1.0.56" -when = "2024-01-02" +version = "1.0.64" +when = "2024-09-22" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.tokio]] -version = "1.36.0" -when = "2024-02-02" +version = "1.40.0" +when = "2024-08-30" user-id = 6741 user-login = "Darksonn" user-name = "Alice Ryhl" @@ -416,43 +465,22 @@ user-login = "epage" user-name = "Ed Page" [[publisher.toml]] -version = "0.8.10" -when = "2024-02-05" +version = "0.8.19" +when = "2024-07-31" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.toml_datetime]] -version = "0.6.5" -when = "2023-10-23" -user-id = 6743 -user-login = "epage" -user-name = "Ed Page" - -[[publisher.toml_edit]] -version = "0.19.15" -when = "2023-09-08" -user-id = 6743 -user-login = "epage" -user-name = "Ed Page" - -[[publisher.toml_edit]] -version = "0.20.7" -when = "2023-10-27" -user-id = 6743 -user-login = "epage" -user-name = "Ed Page" - -[[publisher.toml_edit]] -version = "0.21.1" -when = "2024-01-31" +version = "0.6.8" +when = "2024-07-30" user-id = 6743 user-login = "epage" user-name = "Ed Page" [[publisher.toml_edit]] -version = "0.22.4" -when = "2024-02-06" +version = "0.22.22" +when = "2024-09-24" user-id = 6743 user-login = "epage" user-name = "Ed Page" @@ -465,53 +493,35 @@ user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.unicode-ident]] -version = "1.0.12" -when = "2023-09-13" +version = "1.0.13" +when = "2024-09-11" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" -[[publisher.unicode-normalization]] -version = "0.1.22" -when = "2022-09-16" -user-id = 1139 -user-login = "Manishearth" -user-name = "Manish Goregaokar" - -[[publisher.unicode-segmentation]] -version = "1.11.0" -when = "2024-02-07" -user-id = 1139 -user-login = "Manishearth" -user-name = "Manish Goregaokar" - -[[publisher.unicode-width]] -version = "0.1.11" -when = "2023-09-19" -user-id = 1139 -user-login = "Manishearth" -user-name = "Manish Goregaokar" - [[publisher.wasm-encoder]] -version = "0.41.0" -when = "2024-01-29" -user-id = 1 -user-login = "alexcrichton" -user-name = "Alex Crichton" +version = "0.219.1" +when = "2024-10-10" +user-id = 73222 +user-login = "wasmtime-publish" + +[[publisher.wasmparser]] +version = "0.219.1" +when = "2024-10-10" +user-id = 73222 +user-login = "wasmtime-publish" [[publisher.wast]] -version = "70.0.2" -when = "2024-01-29" -user-id = 1 -user-login = "alexcrichton" -user-name = "Alex Crichton" +version = "219.0.1" +when = "2024-10-10" +user-id = 73222 +user-login = "wasmtime-publish" [[publisher.wat]] -version = "1.0.85" -when = "2024-01-29" -user-id = 1 -user-login = "alexcrichton" -user-name = "Alex Crichton" +version = "1.219.1" +when = "2024-10-10" +user-id = 73222 +user-login = "wasmtime-publish" [[publisher.windows-sys]] version = "0.33.0" @@ -542,8 +552,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows-targets]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -556,8 +566,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_aarch64_gnullvm]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -577,8 +587,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_aarch64_msvc]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -598,8 +608,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_i686_gnu]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -619,8 +629,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_i686_msvc]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -640,8 +650,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_x86_64_gnu]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -654,8 +664,8 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_x86_64_gnullvm]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" @@ -675,15 +685,15 @@ user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.windows_x86_64_msvc]] -version = "0.52.0" -when = "2023-11-15" +version = "0.52.6" +when = "2024-07-03" user-id = 64539 user-login = "kennykerr" user-name = "Kenny Kerr" [[publisher.winnow]] -version = "0.5.39" -when = "2024-02-06" +version = "0.6.20" +when = "2024-09-25" user-id = 6743 user-login = "epage" user-name = "Ed Page" @@ -746,40 +756,49 @@ notes = "The Bytecode Alliance is the author of this crate." [[audits.bytecodealliance.wildcard-audits.wasm-encoder]] who = "Alex Crichton " criteria = "safe-to-deploy" -user-id = 1 # Alex Crichton (alexcrichton) -start = "2020-12-11" -end = "2025-07-30" +user-id = 73222 # wasmtime-publish +start = "2023-01-01" +end = "2025-05-08" +notes = """ +The Bytecode Alliance uses the `wasmtime-publish` crates.io account to automate +publication of this crate from CI. This repository requires all PRs are reviewed +by a Bytecode Alliance maintainer and it owned by the Bytecode Alliance itself. +""" + +[[audits.bytecodealliance.wildcard-audits.wasmparser]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +user-id = 73222 # wasmtime-publish +start = "2023-01-01" +end = "2025-05-08" notes = """ -This is a Bytecode Alliance authored crate maintained in the `wasm-tools` -repository of which I'm one of the primary maintainers and publishers for. -I am employed by a member of the Bytecode Alliance and plan to continue doing -so and will actively maintain this crate over time. +The Bytecode Alliance uses the `wasmtime-publish` crates.io account to automate +publication of this crate from CI. This repository requires all PRs are reviewed +by a Bytecode Alliance maintainer and it owned by the Bytecode Alliance itself. """ [[audits.bytecodealliance.wildcard-audits.wast]] who = "Alex Crichton " criteria = "safe-to-deploy" -user-id = 1 # Alex Crichton (alexcrichton) -start = "2019-10-16" -end = "2025-07-30" +user-id = 73222 # wasmtime-publish +start = "2023-01-01" +end = "2025-05-08" notes = """ -This is a Bytecode Alliance authored crate maintained in the `wasm-tools` -repository of which I'm one of the primary maintainers and publishers for. -I am employed by a member of the Bytecode Alliance and plan to continue doing -so and will actively maintain this crate over time. +The Bytecode Alliance uses the `wasmtime-publish` crates.io account to automate +publication of this crate from CI. This repository requires all PRs are reviewed +by a Bytecode Alliance maintainer and it owned by the Bytecode Alliance itself. """ [[audits.bytecodealliance.wildcard-audits.wat]] who = "Alex Crichton " criteria = "safe-to-deploy" -user-id = 1 # Alex Crichton (alexcrichton) -start = "2019-10-18" -end = "2025-07-30" +user-id = 73222 # wasmtime-publish +start = "2023-01-01" +end = "2025-05-08" notes = """ -This is a Bytecode Alliance authored crate maintained in the `wasm-tools` -repository of which I'm one of the primary maintainers and publishers for. -I am employed by a member of the Bytecode Alliance and plan to continue doing -so and will actively maintain this crate over time. +The Bytecode Alliance uses the `wasmtime-publish` crates.io account to automate +publication of this crate from CI. This repository requires all PRs are reviewed +by a Bytecode Alliance maintainer and it owned by the Bytecode Alliance itself. """ [[audits.bytecodealliance.audits.addr2line]] @@ -809,6 +828,12 @@ criteria = "safe-to-deploy" version = "1.0.2" notes = "This is a small crate which forbids unsafe code and is a straightforward implementation of the adler hashing algorithm." +[[audits.bytecodealliance.audits.adler2]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +version = "2.0.0" +notes = "Fork of the original `adler` crate, zero unsfae code, works in `no_std`, does what it says on th tin." + [[audits.bytecodealliance.audits.ahash]] who = "Chris Fallin " criteria = "safe-to-deploy" @@ -823,6 +848,15 @@ Shuffling of features in this update and while there are updates to `unsafe` code it's no different than before and the usage remains the same. """ +[[audits.bytecodealliance.audits.arrayvec]] +who = "Nick Fitzgerald " +criteria = "safe-to-deploy" +version = "0.7.2" +notes = """ +Well documented invariants, good assertions for those invariants in unsafe code, +and tested with MIRI to boot. LGTM. +""" + [[audits.bytecodealliance.audits.atty]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -839,6 +873,39 @@ criteria = "safe-to-deploy" version = "0.21.0" notes = "This crate has no dependencies, no build.rs, and contains no unsafe code." +[[audits.bytecodealliance.audits.base64]] +who = "Andrew Brown " +criteria = "safe-to-deploy" +delta = "0.21.3 -> 0.22.1" + +[[audits.bytecodealliance.audits.bitflags]] +who = "Jamey Sharp " +criteria = "safe-to-deploy" +delta = "2.1.0 -> 2.2.1" +notes = """ +This version adds unsafe impls of traits from the bytemuck crate when built +with that library enabled, but I believe the impls satisfy the documented +safety requirements for bytemuck. The other changes are minor. +""" + +[[audits.bytecodealliance.audits.bitflags]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "2.3.2 -> 2.3.3" +notes = """ +Nothing outside the realm of what one would expect from a bitflags generator, +all as expected. +""" + +[[audits.bytecodealliance.audits.bitflags]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "2.4.1 -> 2.6.0" +notes = """ +Changes in how macros are invoked and various bits and pieces of macro-fu. +Otherwise no major changes and nothing dealing with `unsafe`. +""" + [[audits.bytecodealliance.audits.block-buffer]] who = "Benjamin Bouvier " criteria = "safe-to-deploy" @@ -856,12 +923,6 @@ criteria = "safe-to-deploy" delta = "0.17.0 -> 0.18.1" notes = "No major changes, no unsafe code here." -[[audits.bytecodealliance.audits.cc]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "1.0.73" -notes = "I am the author of this crate." - [[audits.bytecodealliance.audits.cfg-if]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -880,15 +941,6 @@ criteria = "safe-to-deploy" version = "0.11.1" notes = "This library uses `forbid(unsafe_code)` and has no filesystem or network I/O." -[[audits.bytecodealliance.audits.core-foundation-sys]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.8.4 -> 0.8.6" -notes = """ -The changes here are all typical bindings updates: new functions, types, and -constants. I have not audited all the bindings for ABI conformance. -""" - [[audits.bytecodealliance.audits.crypto-common]] who = "Benjamin Bouvier " criteria = "safe-to-deploy" @@ -899,6 +951,12 @@ who = "Benjamin Bouvier " criteria = "safe-to-deploy" delta = "0.9.0 -> 0.10.3" +[[audits.bytecodealliance.audits.either]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "1.8.1 -> 1.13.0" +notes = "More utilities and such for the `Either` type, no `unsafe` code." + [[audits.bytecodealliance.audits.embedded-io]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -926,12 +984,6 @@ This update had a few doc updates but no otherwise-substantial source code updates. """ -[[audits.bytecodealliance.audits.flate2]] -who = "Andrew Brown " -criteria = "safe-to-deploy" -delta = "1.0.26 -> 1.0.28" -notes = "No new `unsafe` and no large changes in function. This diff is mostly refactoring with a lot of docs, CI, test changes. Adds some defensive clearing out of certain variables as a safeguard." - [[audits.bytecodealliance.audits.foreign-types]] who = "Pat Hickey " criteria = "safe-to-deploy" @@ -943,34 +995,11 @@ who = "Pat Hickey " criteria = "safe-to-deploy" version = "0.1.1" -[[audits.bytecodealliance.audits.futures-channel]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "0.3.27" -notes = "build.rs is just detecting the target and setting cfg. unsafety is for implementing a concurrency primitives using atomics and unsafecell, and is not obviously incorrect (this is the sort of thing I wouldn't certify as correct without formal methods)" - -[[audits.bytecodealliance.audits.futures-core]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "0.3.27" -notes = "Unsafe used to implement a concurrency primitive AtomicWaker. Well-commented and not obviously incorrect. Like my other audits of these concurrency primitives inside the futures family, I couldn't certify that it is correct without formal methods, but that is out of scope for this vetting." - -[[audits.bytecodealliance.audits.futures-executor]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "0.3.27" -notes = "Unsafe used to implement the unpark mutex, which is well commented and not obviously incorrect. Like with futures-channel I wouldn't be able to certify it as correct without formal methods." - -[[audits.bytecodealliance.audits.futures-io]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "0.3.27" - [[audits.bytecodealliance.audits.heck]] who = "Alex Crichton " criteria = "safe-to-deploy" -version = "0.4.0" -notes = "Contains `forbid_unsafe` and only uses `std::fmt` from the standard library. Otherwise only contains string manipulation." +delta = "0.4.1 -> 0.5.0" +notes = "Minor changes for a `no_std` upgrade but otherwise everything looks as expected." [[audits.bytecodealliance.audits.http-body-util]] who = "Pat Hickey " @@ -1009,6 +1038,11 @@ Minimal `unsafe` usage. Few blocks that existed looked reasonable. Does what it says on the tin: lots of iterators. """ +[[audits.bytecodealliance.audits.jobserver]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.1.25 -> 0.1.32" + [[audits.bytecodealliance.audits.leb128]] who = "Nick Fitzgerald " criteria = "safe-to-deploy" @@ -1059,11 +1093,11 @@ its own longevity should be relatively hardened against some of the more common compression-related issues. """ -[[audits.bytecodealliance.audits.native-tls]] -who = "Pat Hickey " +[[audits.bytecodealliance.audits.miniz_oxide]] +who = "Alex Crichton " criteria = "safe-to-deploy" -version = "0.2.11" -notes = "build is only looking for environment variables to set cfg. only two minor uses of unsafe,on macos, with ffi bindings to digest primitives and libc atexit. otherwise, this is an abstraction over three very complex systems (schannel, security-framework, and openssl) which may end up having subtle differences, but none of those are apparent from the implementation of this crate" +delta = "0.7.1 -> 0.8.0" +notes = "Minor updates, using new Rust features like `const`, no major changes." [[audits.bytecodealliance.audits.nu-ansi-term]] who = "Pat Hickey " @@ -1071,6 +1105,12 @@ criteria = "safe-to-deploy" version = "0.46.0" notes = "one use of unsafe to call windows specific api to get console handle." +[[audits.bytecodealliance.audits.num-traits]] +who = "Andrew Brown " +criteria = "safe-to-deploy" +version = "0.2.19" +notes = "As advertised: a numeric library. The only `unsafe` is from some float-to-int conversions, which seems expected." + [[audits.bytecodealliance.audits.object]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1110,24 +1150,27 @@ a few `unsafe` blocks related to utf-8 validation which are locally verifiable as correct and otherwise this crate is good to go. """ -[[audits.bytecodealliance.audits.pin-utils]] -who = "Pat Hickey " +[[audits.bytecodealliance.audits.pin-project-lite]] +who = "Alex Crichton " criteria = "safe-to-deploy" -version = "0.1.0" +delta = "0.2.13 -> 0.2.14" +notes = "No substantive changes in this update" -[[audits.bytecodealliance.audits.pkg-config]] +[[audits.bytecodealliance.audits.pin-utils]] who = "Pat Hickey " criteria = "safe-to-deploy" -version = "0.3.25" -notes = "This crate shells out to the pkg-config executable, but it appears to sanitize inputs reasonably." +version = "0.1.0" -[[audits.bytecodealliance.audits.pkg-config]] +[[audits.bytecodealliance.audits.region]] who = "Alex Crichton " criteria = "safe-to-deploy" -delta = "0.3.26 -> 0.3.29" +delta = "2.2.0 -> 3.0.2" notes = """ -No `unsafe` additions or anything outside of the purview of the crate in this -change. +This release brings a number of refactorings and new platforms to be supported +in the crate. Lots of `unsafe` code because that's what the crate is +fundamentally doing, managing virtual memory. That being said it's all largely +the same as before where it's all as expected and the `unsafe` has to do with +managing OS APIs. """ [[audits.bytecodealliance.audits.rustc-demangle]] @@ -1136,16 +1179,46 @@ criteria = "safe-to-deploy" version = "0.1.21" notes = "I am the author of this crate." +[[audits.bytecodealliance.audits.rustc-demangle]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.1.21 -> 0.1.24" + +[[audits.bytecodealliance.audits.rustix]] +who = "Dan Gohman " +criteria = "safe-to-deploy" +delta = "0.38.34 -> 0.38.37" + +[[audits.bytecodealliance.audits.semver]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "1.0.17" +notes = "plenty of unsafe pointer and vec tricks, but in well-structured and commented code that appears to be correct" + [[audits.bytecodealliance.audits.sharded-slab]] who = "Pat Hickey " criteria = "safe-to-deploy" version = "0.1.4" notes = "I always really enjoy reading eliza's code, she left perfect comments at every use of unsafe." -[[audits.bytecodealliance.audits.signal-hook-registry]] -who = "Pat Hickey " +[[audits.bytecodealliance.audits.smallvec]] +who = "Dan Gohman " criteria = "safe-to-deploy" -version = "1.4.1" +delta = "1.8.0 -> 1.11.0" +notes = """ +The main change is the switch to use `NonNull` internally instead of +`*mut T`. This seems reasonable, as `Vec` also never stores a null pointer, +and in particular the new `NonNull::new_unchecked`s look ok. + +Most of the rest of the changes are adding some new unstable features which +aren't enabled by default. +""" + +[[audits.bytecodealliance.audits.smallvec]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "1.11.0 -> 1.13.2" +notes = "Mostly minor updates, the one semi-substantial update looks good." [[audits.bytecodealliance.audits.static_assertions]] who = "Andrew Brown " @@ -1190,15 +1263,6 @@ who = "Pat Hickey " criteria = "safe-to-deploy" version = "0.3.17" -[[audits.bytecodealliance.audits.unicode-bidi]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "0.3.8" -notes = """ -This crate has no unsafe code and does not use `std::*`. Skimming the crate it -does not attempt to out of the bounds of what it's already supposed to be doing. -""" - [[audits.bytecodealliance.audits.vcpkg]] who = "Pat Hickey " criteria = "safe-to-deploy" @@ -1232,18 +1296,6 @@ criteria = "safe-to-deploy" delta = "0.15.4 -> 0.17.0" notes = "No notable changes" -[[audits.embark.audits.colorchoice]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "1.0.0" -notes = "No unsafe usage or ambient capabilities" - -[[audits.embark.audits.derive_more]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.99.17" -notes = "No unsafe usage or ambient capabilities" - [[audits.embark.audits.ident_case]] who = "Johan Andersson " criteria = "safe-to-deploy" @@ -1262,52 +1314,12 @@ criteria = "safe-to-deploy" version = "8.3.0" notes = "No unsafe usage or ambient capabilities" -[[audits.embark.audits.num_enum]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.5.11" -notes = "No unsafe usage or ambient capabilities" - -[[audits.embark.audits.num_enum]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -delta = "0.5.11 -> 0.6.1" -notes = "Minor changes" - -[[audits.embark.audits.num_enum]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -delta = "0.6.1 -> 0.7.0" - -[[audits.embark.audits.num_enum_derive]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.5.11" -notes = "Proc macro that generates some unsafe code for conversion but looks sound, no ambient capabilities" - -[[audits.embark.audits.num_enum_derive]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -delta = "0.5.11 -> 0.6.1" -notes = "Minor changes" - -[[audits.embark.audits.num_enum_derive]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -delta = "0.6.1 -> 0.7.0" - [[audits.embark.audits.tap]] who = "Johan Andersson " criteria = "safe-to-deploy" version = "1.0.1" notes = "No unsafe usage or ambient capabilities" -[[audits.embark.audits.utf8parse]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.2.1" -notes = "Single unsafe usage that looks sound, no ambient capabilities" - [[audits.embark.audits.valuable]] who = "Johan Andersson " criteria = "safe-to-deploy" @@ -1339,51 +1351,15 @@ invariants. """ aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.async-stream]] -who = "Tyler Mandry " -criteria = "safe-to-deploy" -version = "0.3.4" -notes = "Reviewed on https://fxrev.dev/761470" -aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" - -[[audits.google.audits.async-stream]] +[[audits.google.audits.aes]] who = "David Koloski " criteria = "safe-to-deploy" -delta = "0.3.4 -> 0.3.5" -notes = "Reviewed on https://fxrev.dev/906795" +delta = "0.8.2 -> 0.8.4" +notes = "Audited at https://fxrev.dev/987054" aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.async-stream-impl]] -who = "Tyler Mandry " -criteria = "safe-to-deploy" -version = "0.3.4" -notes = "Reviewed on https://fxrev.dev/761470" -aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" - -[[audits.google.audits.async-stream-impl]] -who = "David Koloski " -criteria = "safe-to-deploy" -delta = "0.3.4 -> 0.3.5" -notes = "Reviewed on https://fxrev.dev/906795" -aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" - -[[audits.google.audits.autocfg]] -who = "Lukasz Anforowicz " -criteria = "safe-to-deploy" -version = "1.1.0" -notes = """ -Grepped for `-i cipher`, `-i crypto`, `'\bfs\b'``, `'\bnet\b'``, `'\bunsafe\b'`` -and there were no hits except for reasonable, client-controlled usage of -`std::fs` in `AutoCfg::with_dir`. - -This crate has been added to Chromium in -https://source.chromium.org/chromium/chromium/src/+/591a0f30c5eac93b6a3d981c2714ffa4db28dbcb -The CL description contains a link to a Google-internal document with audit details. -""" -aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" - -[[audits.google.audits.base64]] -who = "Adam Langley " +[[audits.google.audits.base64]] +who = "Adam Langley " criteria = "safe-to-deploy" version = "0.13.1" notes = "Skimmed the uses of `std` to ensure that nothing untoward is happening. Code uses `forbid(unsafe_code)` and, indeed, there are no uses of `unsafe`" @@ -1405,55 +1381,54 @@ Additional review comments can be found at https://crrev.com/c/4723145/31 """ aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.bitflags]] -who = "Lukasz Anforowicz " +[[audits.google.audits.byteorder]] +who = "danakj " criteria = "safe-to-deploy" -version = "2.4.2" -notes = """ -Audit notes: - -* I've checked for any discussion in Google-internal cl/546819168 (where audit - of version 2.3.3 happened) -* `src/lib.rs` contains `#![cfg_attr(not(test), forbid(unsafe_code))]` -* There are 2 cases of `unsafe` in `src/external.rs` but they seem to be - correct in a straightforward way - they just propagate the marker trait's - impl (e.g. `impl bytemuck::Pod`) from the inner to the outer type -* Additional discussion and/or notes may be found in https://crrev.com/c/5238056 -""" +version = "1.5.0" +notes = "Unsafe review in https://crrev.com/c/5838022" aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.bytemuck]] +[[audits.google.audits.clap]] who = "Lukasz Anforowicz " criteria = "safe-to-deploy" -version = "1.16.3" -notes = """ -Review notes from the original audit (of 1.14.3) may be found in -https://crrev.com/c/5362675. Note that this audit has initially missed UB risk -that was fixed in 1.16.2 - see https://github.com/Lokathor/bytemuck/pull/258. -Because of this, the original audit has been edited to certify version `1.16.3` -instead (see also https://crrev.com/c/5771867). -""" +version = "4.5.15" +notes = ''' +Grepped for `-i cipher`, `-i crypto`, `'\bfs\b'`, `'\bnet\b'`, `'\bunsafe\b'` +and there were no hits, except for `std::net::IpAddr` usage in +`examples/typed-derive.rs`. +''' aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.bytemuck]] -who = "Lukasz Anforowicz " +[[audits.google.audits.clap]] +who = "danakj " criteria = "safe-to-deploy" -delta = "1.16.3 -> 1.17.1" -notes = "Unsafe review comments can be found in https://crrev.com/c/5813463" +delta = "4.5.15 -> 4.5.17" +notes = "Minor code change and toml changes." aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.bytemuck]] -who = "Adrian Taylor " +[[audits.google.audits.clap]] +who = "Lukasz Anforowicz " criteria = "safe-to-deploy" -delta = "1.17.1 -> 1.18.0" -notes = "No code changes - just altering feature flag arrangements" +delta = "4.5.17 -> 4.5.18" aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.byteorder]] +[[audits.google.audits.clap]] who = "danakj " criteria = "safe-to-deploy" -version = "1.5.0" -notes = "Unsafe review in https://crrev.com/c/5838022" +delta = "4.5.18 -> 4.5.20" +notes = "Trivial changes" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.crc32fast]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +version = "1.4.2" +notes = """ +Security review of earlier versions of the crate can be found at +(Google-internal, sorry): go/image-crate-chromium-security-review + +Audit comments for 1.4.2 can be found at https://crrev.com/c/4723145. +""" aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" [[audits.google.audits.dirs-next]] @@ -1472,15 +1447,92 @@ that the RNG here is not cryptographically secure. """ aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" -[[audits.google.audits.futures]] -who = "George Burgess IV " +[[audits.google.audits.flate2]] +who = "Lukasz Anforowicz " criteria = "safe-to-deploy" -version = "0.3.28" +version = "1.0.30" +notes = ''' +WARNING: This certification is a result of a **partial** audit. The +`any_zlib` code has **not** been audited. Ability to track partial +audits is tracked in https://github.com/mozilla/cargo-vet/issues/380 +Chromium does use the `any_zlib` feature(s). Accidentally depending on +this feature in the future is prevented using the `ban_features` feature +of `gnrt` - see: +https://crrev.com/c/4723145/31/third_party/rust/chromium_crates_io/gnrt_config.toml + +Security review of earlier versions of the crate can be found at +(Google-internal, sorry): go/image-crate-chromium-security-review + +I grepped for `-i cipher`, `-i crypto`, `'\bfs\b'`, `'\bnet\b'`, `'\bunsafe\b'`. + +All `unsafe` in `flate2` is gated behind `#[cfg(feature = "any_zlib")]`: + +* The code under `src/ffi/...` will not be used because the `mod c` + declaration in `src/ffi/mod.rs` depends on the `any_zlib` config +* 7 uses of `unsafe` in `src/mem.rs` also all depend on the + `any_zlib` config: + - 2 in `fn set_dictionary` (under `impl Compress`) + - 2 in `fn set_level` (under `impl Compress`) + - 3 in `fn set_dictionary` (under `impl Decompress`) + +All hits of `'\bfs\b'` are in comments, or example code, or test code +(but not in product code). + +There were no hits of `-i cipher`, `-i crypto`, `'\bnet\b'`. +''' +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.flate2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.30 -> 1.0.31" notes = """ -`futures` has no logic other than tests - it simply `pub use`s things from -other crates. +WARNING: This certification is a result of a **partial** audit. The +`any_zlib` code has **not** been audited. See the audit of 1.0.30 for +more details. + +Only benign changes: + +* Comment-only changes in `.rs` files +* Also changing dependency version in `Cargo.toml`, but this is for `any_zlib` + feature which is not used in Chromium (i.e. this is a *partial* audit - see + the previous audit notes for 1.0.30) """ -aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.flate2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.31 -> 1.0.33" +notes = """ +WARNING: This certification is a result of a **partial** audit. The +`any_zlib` code has **not** been audited. See the audit of 1.0.30 for +more details. + +This delta audit has been reviewed in https://crrev.com/c/5811890 +The delta can be seen at https://diff.rs/flate2/1.0.31/1.0.33 +The delta bumps up `miniz_oxide` dependency to `0.8.0` +The delta also contains some changes to `src/ffi/c.rs` which is *NOT* used by Chromium +and therefore hasn't been covered by this partial audit. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.flate2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.33 -> 1.0.34" +notes = """ +WARNING: This certification is a result of a **partial** audit. The +`any_zlib` code has **not** been audited. See the audit of 1.0.30 for +more details. + +The delta can be seen at https://diff.rs/flate2/1.0.33/1.0.34 +The delta bumps up `libz-rs-sys` dependency from `0.2.1` to `0.3.0` +The delta in `lib.rs` only tweaks comments and has no code changes. +The delta also contains some changes to `src/ffi/c.rs` which is *NOT* used by Chromium +and therefore hasn't been covered by this partial audit. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" [[audits.google.audits.glob]] who = "George Burgess IV " @@ -1488,27 +1540,46 @@ criteria = "safe-to-deploy" version = "0.3.1" aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" +[[audits.google.audits.heck]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +version = "0.4.1" +notes = """ +Grepped for `-i cipher`, `-i crypto`, `'\bfs\b'``, `'\bnet\b'``, `'\bunsafe\b'`` +and there were no hits. + +`heck` (version `0.3.3`) has been added to Chromium in +https://source.chromium.org/chromium/chromium/src/+/28841c33c77833cc30b286f9ae24c97e7a8f4057 +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.httpdate]] who = "George Burgess IV " criteria = "safe-to-deploy" version = "1.0.3" aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" -[[audits.google.audits.itoa]] +[[audits.google.audits.lazy_static]] who = "Lukasz Anforowicz " criteria = "safe-to-deploy" -version = "1.0.10" +version = "1.4.0" notes = ''' I grepped for \"crypt\", \"cipher\", \"fs\", \"net\" - there were no hits. -There are a few places where `unsafe` is used. Unsafe review notes can be found -in https://crrev.com/c/5350697. +There are two places where `unsafe` is used. Unsafe review notes can be found +in https://crrev.com/c/5347418. -Version 1.0.1 of this crate has been added to Chromium in -https://crrev.com/c/3321896. +This crate has been added to Chromium in https://crrev.com/c/3321895. ''' aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" +[[audits.google.audits.lazy_static]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.4.0 -> 1.5.0" +notes = "Unsafe review notes: https://crrev.com/c/5650836" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.link-cplusplus]] who = "George Burgess IV " criteria = "safe-to-deploy" @@ -1519,6 +1590,34 @@ are made about the safety of either of those libraries. :) """ aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" +[[audits.google.audits.log]] +who = "danakj " +criteria = "safe-to-deploy" +version = "0.4.22" +notes = """ +Unsafe review in https://docs.google.com/document/d/1IXQbD1GhTRqNHIGxq6yy7qHqxeO4CwN5noMFXnqyDIM/edit?usp=sharing + +Unsafety is generally very well-documented, with one exception, which we +describe in the review doc. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.miniz_oxide]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +version = "0.7.4" +notes = ''' +Grepped for `-i cipher`, `-i crypto`, `'\bfs\b'`, `'\bnet\b'`, `'\bunsafe\b'` +and there were no hits, except for some mentions of "unsafe" in the `README.md` +and in a comment in `src/deflate/core.rs`. The comment discusses whether a +function should be treated as unsafe, but there is no actual `unsafe` code, so +the crate meets the `ub-risk-0` criteria. + +Note that some additional, internal notes about an older version of this crate +can be found at go/image-crate-chromium-security-review. +''' +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.nom]] who = "danakj@chromium.org" criteria = "safe-to-deploy" @@ -1572,6 +1671,71 @@ Notes from the `unsafe` review can be found in https://crrev.com/c/5385745. """ aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" +[[audits.google.audits.proc-macro2]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.78 -> 1.0.79" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.79 -> 1.0.80" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Dustin J. Mitchell " +criteria = "safe-to-deploy" +delta = "1.0.80 -> 1.0.81" +notes = "Comment changes only" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj " +criteria = "safe-to-deploy" +delta = "1.0.81 -> 1.0.82" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Dustin J. Mitchell " +criteria = "safe-to-deploy" +delta = "1.0.82 -> 1.0.83" +notes = "Substantive change is replacing String with Box, saving memory." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.83 -> 1.0.84" +notes = "Only doc comment changes in `src/lib.rs`." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj@chromium.org" +criteria = "safe-to-deploy" +delta = "1.0.84 -> 1.0.85" +notes = "Test-only changes." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.85 -> 1.0.86" +notes = """ +Comment-only changes in `build.rs`. +Reordering of `Cargo.toml` entries. +Just bumping up the version number in `lib.rs`. +Config-related changes in `test_size.rs`. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj " +criteria = "safe-to-deploy" +delta = "1.0.86 -> 1.0.87" +notes = "No new unsafe interactions." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.quote]] who = "Lukasz Anforowicz " criteria = "safe-to-deploy" @@ -1582,6 +1746,22 @@ Grepped for \"unsafe\", \"crypt\", \"cipher\", \"fs\", \"net\" - there were no h """ aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" +[[audits.google.audits.quote]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.35 -> 1.0.36" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.quote]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.36 -> 1.0.37" +notes = """ +The delta just 1) inlines/expands `impl ToTokens` that used to be handled via +`primitive!` macro and 2) adds `impl ToTokens` for `CStr` and `CString`. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.rustversion]] who = "Lukasz Anforowicz " criteria = "safe-to-deploy" @@ -1611,11 +1791,23 @@ https://source.chromium.org/chromium/chromium/src/+/28841c33c77833cc30b286f9ae24 """ aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.serde_derive]] -who = "Lukasz Anforowicz " +[[audits.google.audits.rustversion]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.14 -> 1.0.15" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.rustversion]] +who = "danakj " +criteria = "safe-to-deploy" +delta = "1.0.15 -> 1.0.16" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.rustversion]] +who = "Dustin J. Mitchell " criteria = "safe-to-deploy" -version = "1.0.196" -notes = "Grepped for \"unsafe\", \"crypt\", \"cipher\", \"fs\", \"net\" - there were no hits" +delta = "1.0.16 -> 1.0.17" +notes = "Just updates windows compat" aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" [[audits.google.audits.socket2]] @@ -1665,37 +1857,30 @@ version = "0.2.2" notes = "Reviewed on https://fxrev.dev/883543" aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.tokio-stream]] -who = "David Koloski " +[[audits.google.audits.tinyvec]] +who = "Adrian Taylor " criteria = "safe-to-deploy" -version = "0.1.11" -notes = "Reviewed on https://fxrev.dev/804724" -aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" +delta = "1.6.0 -> 1.6.1" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.tokio-stream]] -who = "David Koloski " +[[audits.google.audits.tinyvec]] +who = "Adrian Taylor " criteria = "safe-to-deploy" -delta = "0.1.11 -> 0.1.14" -notes = "Reviewed on https://fxrev.dev/907732." -aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" +delta = "1.6.1 -> 1.7.0" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.unicode-xid]] -who = "George Burgess IV " +[[audits.google.audits.tinyvec]] +who = "Dustin J. Mitchell " criteria = "safe-to-deploy" -version = "0.2.4" -aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" +delta = "1.7.0 -> 1.8.0" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.version_check]] +[[audits.google.audits.unicode-xid]] who = "George Burgess IV " criteria = "safe-to-deploy" -version = "0.9.4" +version = "0.2.4" aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" -[[audits.isrg.audits.aes]] -who = "Brandon Pitman " -criteria = "safe-to-deploy" -delta = "0.8.2 -> 0.8.3" - [[audits.isrg.audits.base64]] who = "Tim Geoghegan " criteria = "safe-to-deploy" @@ -1747,40 +1932,40 @@ who = "David Cook " criteria = "safe-to-deploy" delta = "0.2.11 -> 0.2.12" -[[audits.isrg.audits.hmac]] +[[audits.isrg.audits.getrandom]] who = "David Cook " criteria = "safe-to-deploy" -version = "0.12.1" +delta = "0.2.12 -> 0.2.14" -[[audits.isrg.audits.num-bigint]] +[[audits.isrg.audits.getrandom]] who = "David Cook " criteria = "safe-to-deploy" -delta = "0.4.3 -> 0.4.4" +delta = "0.2.14 -> 0.2.15" -[[audits.isrg.audits.num-traits]] +[[audits.isrg.audits.hmac]] who = "David Cook " criteria = "safe-to-deploy" -delta = "0.2.15 -> 0.2.16" +version = "0.12.1" -[[audits.isrg.audits.num-traits]] -who = "Ameer Ghani " +[[audits.isrg.audits.num-integer]] +who = "David Cook " criteria = "safe-to-deploy" -delta = "0.2.16 -> 0.2.17" +delta = "0.1.45 -> 0.1.46" -[[audits.isrg.audits.once_cell]] -who = "Brandon Pitman " +[[audits.isrg.audits.num-iter]] +who = "David Cook " criteria = "safe-to-deploy" -delta = "1.17.1 -> 1.17.2" +delta = "0.1.43 -> 0.1.44" -[[audits.isrg.audits.once_cell]] +[[audits.isrg.audits.num-iter]] who = "David Cook " criteria = "safe-to-deploy" -delta = "1.17.2 -> 1.18.0" +delta = "0.1.44 -> 0.1.45" -[[audits.isrg.audits.once_cell]] +[[audits.isrg.audits.num-rational]] who = "Brandon Pitman " criteria = "safe-to-deploy" -delta = "1.18.0 -> 1.19.0" +delta = "0.4.1 -> 0.4.2" [[audits.isrg.audits.rand_chacha]] who = "David Cook " @@ -1807,6 +1992,16 @@ who = "Ameer Ghani " criteria = "safe-to-deploy" delta = "1.8.0 -> 1.8.1" +[[audits.isrg.audits.rayon]] +who = "Brandon Pitman " +criteria = "safe-to-deploy" +delta = "1.8.1 -> 1.9.0" + +[[audits.isrg.audits.rayon]] +who = "Brandon Pitman " +criteria = "safe-to-deploy" +delta = "1.9.0 -> 1.10.0" + [[audits.isrg.audits.rayon-core]] who = "Ameer Ghani " criteria = "safe-to-deploy" @@ -1827,26 +2022,30 @@ who = "Brandon Pitman " criteria = "safe-to-deploy" delta = "0.10.7 -> 0.10.8" +[[audits.isrg.audits.subtle]] +who = "David Cook " +criteria = "safe-to-deploy" +delta = "2.5.0 -> 2.6.1" + [[audits.isrg.audits.untrusted]] who = "David Cook " criteria = "safe-to-deploy" version = "0.7.1" -[[audits.mozilla.wildcard-audits.core-foundation]] -who = "Bobby Holley " +[[audits.mozilla.wildcard-audits.cexpr]] +who = "Emilio Cobos Álvarez " criteria = "safe-to-deploy" -user-id = 5946 # Jeff Muizelaar (jrmuizel) -start = "2019-03-29" -end = "2023-05-04" -renew = false -notes = "I've reviewed every source contribution that was neither authored nor reviewed by Mozilla." +user-id = 3788 # Emilio Cobos Álvarez (emilio) +start = "2021-06-21" +end = "2024-04-21" +notes = "No unsafe code, rather straight-forward parser." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.wildcard-audits.core-foundation-sys]] +[[audits.mozilla.wildcard-audits.core-foundation]] who = "Bobby Holley " criteria = "safe-to-deploy" user-id = 5946 # Jeff Muizelaar (jrmuizel) -start = "2020-10-14" +start = "2019-03-29" end = "2023-05-04" renew = false notes = "I've reviewed every source contribution that was neither authored nor reviewed by Mozilla." @@ -1861,31 +2060,22 @@ end = "2024-08-28" notes = "I, Henri Sivonen, wrote encoding_rs for Gecko and have reviewed contributions by others. There are two caveats to the certification: 1) The crate does things that are documented to be UB but that do not appear to actually be UB due to integer types differing from the general rule; https://github.com/hsivonen/encoding_rs/issues/79 . 2) It would be prudent to re-review the code that reinterprets buffers of integers as SIMD vectors; see https://github.com/hsivonen/encoding_rs/issues/87 ." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.wildcard-audits.unicode-normalization]] -who = "Manish Goregaokar " +[[audits.mozilla.audits.ahash]] +who = "Mike Hommey " criteria = "safe-to-deploy" -user-id = 1139 # Manish Goregaokar (Manishearth) -start = "2019-11-06" -end = "2024-05-03" -notes = "All code written or reviewed by Manish" +delta = "0.7.6 -> 0.7.8" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.wildcard-audits.unicode-segmentation]] -who = "Manish Goregaokar " +[[audits.mozilla.audits.ahash]] +who = "Erich Gubler " criteria = "safe-to-deploy" -user-id = 1139 # Manish Goregaokar (Manishearth) -start = "2019-05-15" -end = "2024-05-03" -notes = "All code written or reviewed by Manish" +delta = "0.8.7 -> 0.8.11" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.wildcard-audits.unicode-width]] -who = "Manish Goregaokar " +[[audits.mozilla.audits.allocator-api2]] +who = "Nicolas Silva " criteria = "safe-to-deploy" -user-id = 1139 # Manish Goregaokar (Manishearth) -start = "2019-12-05" -end = "2024-05-03" -notes = "All code written or reviewed by Manish" +version = "0.2.18" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" [[audits.mozilla.audits.android_system_properties]] @@ -1907,6 +2097,13 @@ criteria = "safe-to-deploy" delta = "0.1.4 -> 0.1.5" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.arrayvec]] +who = "Alex Franchuk " +criteria = "safe-to-deploy" +delta = "0.7.2 -> 0.7.6" +notes = "Manually verified new unsafe pointer arithmetic." +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.bit-set]] who = "Aria Beingessner " criteria = "safe-to-deploy" @@ -1927,24 +2124,44 @@ version = "0.6.3" notes = "Another crate I own via contain-rs that is ancient and in maintenance mode but otherwise perfectly fine." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.block-buffer]] -who = "Mike Hommey " +[[audits.mozilla.audits.bitflags]] +who = "Alex Franchuk " criteria = "safe-to-deploy" -delta = "0.10.2 -> 0.10.3" +delta = "1.3.2 -> 2.0.2" +notes = "Removal of some unsafe code/methods. No changes to externals, just some refactoring (mostly internal)." +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.bitflags]] +who = "Nicolas Silva " +criteria = "safe-to-deploy" +delta = "2.0.2 -> 2.1.0" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.bitflags]] +who = "Teodor Tanasoaia " +criteria = "safe-to-deploy" +delta = "2.2.1 -> 2.3.2" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.cc]] +[[audits.mozilla.audits.bitflags]] who = "Mike Hommey " criteria = "safe-to-deploy" -delta = "1.0.73 -> 1.0.78" +delta = "2.3.3 -> 2.4.0" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.cc]] +[[audits.mozilla.audits.bitflags]] who = "Jan-Erik Rediger " criteria = "safe-to-deploy" -delta = "1.0.78 -> 1.0.83" +delta = "2.4.0 -> 2.4.1" +notes = "Only allowing new clippy lints" aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" +[[audits.mozilla.audits.block-buffer]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.10.2 -> 0.10.3" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.core-foundation]] who = "Teodor Tanasoaia " criteria = "safe-to-deploy" @@ -1965,18 +2182,110 @@ criteria = "safe-to-deploy" delta = "0.5.8 -> 0.5.11" aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" +[[audits.mozilla.audits.crossbeam-channel]] +who = "Jan-Erik Rediger " +criteria = "safe-to-deploy" +delta = "0.5.11 -> 0.5.12" +notes = "Minimal change fixing a memory leak." +aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" + +[[audits.mozilla.audits.crossbeam-channel]] +who = "Glenn Watson " +criteria = "safe-to-deploy" +delta = "0.5.12 -> 0.5.13" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.crossbeam-utils]] who = "Jan-Erik Rediger " criteria = "safe-to-deploy" delta = "0.8.14 -> 0.8.19" aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" +[[audits.mozilla.audits.crossbeam-utils]] +who = "Alex Franchuk " +criteria = "safe-to-deploy" +delta = "0.8.19 -> 0.8.20" +notes = "Minor changes." +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.crypto-common]] who = "Mike Hommey " criteria = "safe-to-deploy" delta = "0.1.3 -> 0.1.6" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.darling]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.13.4 -> 0.14.2" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.2 -> 0.14.3" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.3 -> 0.20.1" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling]] +who = "Ben Dean-Kawamura " +criteria = "safe-to-deploy" +delta = "0.20.1 -> 0.20.10" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_core]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.13.4 -> 0.14.2" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_core]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.2 -> 0.14.3" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_core]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.3 -> 0.20.1" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_core]] +who = "Ben Dean-Kawamura " +criteria = "safe-to-deploy" +delta = "0.20.1 -> 0.20.10" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_macro]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.13.4 -> 0.14.2" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_macro]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.2 -> 0.14.3" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_macro]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.14.3 -> 0.20.1" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.darling_macro]] +who = "Ben Dean-Kawamura " +criteria = "safe-to-deploy" +delta = "0.20.1 -> 0.20.10" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.deranged]] who = "Alex Franchuk " criteria = "safe-to-deploy" @@ -2012,12 +2321,6 @@ criteria = "safe-to-deploy" delta = "1.8.0 -> 1.8.1" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.enumset_derive]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.6.1 -> 0.8.1" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.errno]] who = "Mike Hommey " criteria = "safe-to-deploy" @@ -2030,19 +2333,12 @@ criteria = "safe-to-deploy" delta = "1.9.0 -> 2.0.0" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.flate2]] +[[audits.mozilla.audits.fastrand]] who = "Mike Hommey " criteria = "safe-to-deploy" -delta = "1.0.24 -> 1.0.25" +delta = "2.0.1 -> 2.1.0" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.flate2]] -who = "Jan-Erik Rediger " -criteria = "safe-to-deploy" -delta = "1.0.25 -> 1.0.26" -notes = "Few dep updates, internal refactorings" -aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" - [[audits.mozilla.audits.fnv]] who = "Bobby Holley " criteria = "safe-to-deploy" @@ -2062,30 +2358,6 @@ criteria = "safe-to-deploy" delta = "1.2.0 -> 1.2.1" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.futures-channel]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.3.27 -> 0.3.28" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.futures-core]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.3.27 -> 0.3.28" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.futures-executor]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.3.27 -> 0.3.28" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.futures-io]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.3.27 -> 0.3.28" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.fxhash]] who = "Bobby Holley " criteria = "safe-to-deploy" @@ -2099,17 +2371,6 @@ criteria = "safe-to-deploy" delta = "0.2.8 -> 0.2.9" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.half]] -who = "John M. Schanck " -criteria = "safe-to-deploy" -version = "1.8.2" -notes = """ -This crate contains unsafe code for bitwise casts to/from binary16 floating-point -format. I've reviewed these and found no issues. There are no uses of ambient -capabilities. -""" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.hashbrown]] who = "Mike Hommey " criteria = "safe-to-deploy" @@ -2117,12 +2378,6 @@ version = "0.12.3" notes = "This version is used in rust's libstd, so effectively we're already trusting it" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.heck]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.4.0 -> 0.4.1" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.hex]] who = "Simon Friedberger " criteria = "safe-to-deploy" @@ -2135,13 +2390,6 @@ criteria = "safe-to-deploy" delta = "0.4.0 -> 0.5.0" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.lazy_static]] -who = "Nika Layzell " -criteria = "safe-to-deploy" -version = "1.4.0" -notes = "I have read over the macros, and audited the unsafe code." -aggregated-from = "https://raw.githubusercontent.com/mozilla/cargo-vet/main/supply-chain/audits.toml" - [[audits.mozilla.audits.libsqlite3-sys]] who = "Ben Dean-Kawamura " criteria = "safe-to-deploy" @@ -2168,26 +2416,6 @@ delta = "0.5.4 -> 0.5.6" notes = "New unsafe code has debug assertions and meets invariants. All other changes are formatting-related." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.log]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -version = "0.4.17" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.log]] -who = "Jan-Erik Rediger " -criteria = "safe-to-deploy" -delta = "0.4.17 -> 0.4.18" -notes = "One dependency removed, others updated (which we don't rely on), some APIs (which we don't use) changed." -aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" - -[[audits.mozilla.audits.log]] -who = "Kagami Sascha Rosylight " -criteria = "safe-to-deploy" -delta = "0.4.18 -> 0.4.20" -notes = "Only cfg attribute and internal macro changes and module refactorings" -aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" - [[audits.mozilla.audits.mach2]] who = "Gabriele Svelto " criteria = "safe-to-deploy" @@ -2200,13 +2428,6 @@ criteria = "safe-to-deploy" delta = "0.6.5 -> 0.7.1" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.new_debug_unreachable]] -who = "Bobby Holley " -criteria = "safe-to-deploy" -version = "1.0.4" -notes = "This is a trivial crate." -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.nix]] who = "Gabriele Svelto " criteria = "safe-to-deploy" @@ -2223,20 +2444,7 @@ aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-ch [[audits.mozilla.audits.nix]] who = "Mike Hommey " criteria = "safe-to-deploy" -delta = "0.25.1 -> 0.26.2" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.nix]] -who = "Gabriele Svelto " -criteria = "safe-to-deploy" -delta = "0.26.2 -> 0.27.1" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.num-bigint]] -who = "Josh Stone " -criteria = "safe-to-deploy" -version = "0.4.3" -notes = "All code written or reviewed by Josh Stone." +delta = "0.25.1 -> 0.26.2" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" [[audits.mozilla.audits.num-integer]] @@ -2253,13 +2461,6 @@ version = "0.4.1" notes = "All code written or reviewed by Josh Stone." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.num-traits]] -who = "Josh Stone " -criteria = "safe-to-deploy" -version = "0.2.15" -notes = "All code written or reviewed by Josh Stone." -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.object]] who = "Mike Hommey " criteria = "safe-to-deploy" @@ -2308,12 +2509,6 @@ criteria = "safe-to-deploy" delta = "0.10.0 -> 0.11.2" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.pkg-config]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "0.3.25 -> 0.3.26" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.powerfmt]] who = "Alex Franchuk " criteria = "safe-to-deploy" @@ -2350,6 +2545,16 @@ criteria = "safe-to-deploy" delta = "1.5.3 -> 1.6.1" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.rmp]] +who = "Ben Dean-Kawamura " +criteria = "safe-to-deploy" +version = "0.8.14" +notes = """ +Very popular crate. 1 instance of unsafe code, which is used to adjust a slice to work around +lifetime issues. No network or file access. +""" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.ron]] who = "Mike Hommey " criteria = "safe-to-deploy" @@ -2375,6 +2580,18 @@ criteria = "safe-to-deploy" delta = "0.11.1 -> 0.11.2" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.socket2]] +who = "Kershaw Chang " +criteria = "safe-to-deploy" +delta = "0.5.5 -> 0.5.7" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.strsim]] +who = "Ben Dean-Kawamura " +criteria = "safe-to-deploy" +delta = "0.10.0 -> 0.11.1" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.subtle]] who = "Simon Friedberger " criteria = "safe-to-deploy" @@ -2441,67 +2658,33 @@ criteria = "safe-to-deploy" delta = "0.2.10 -> 0.2.18" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.typenum]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.15.0 -> 1.16.0" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.unicode-bidi]] -who = "Makoto Kato " -criteria = "safe-to-deploy" -delta = "0.3.8 -> 0.3.13" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.unicode-bidi]] -who = "Jonathan Kew " -criteria = "safe-to-deploy" -delta = "0.3.13 -> 0.3.14" -notes = "I am the author of the bulk of the upstream changes in this version, and also checked the remaining post-0.3.13 changes." -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.unicode-bidi]] -who = "Jonathan Kew " -criteria = "safe-to-deploy" -delta = "0.3.14 -> 0.3.15" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.url]] -who = "Valentin Gosu " -criteria = "safe-to-deploy" -version = "2.4.0" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.url]] -who = "Valentin Gosu " +[[audits.mozilla.audits.tracing-core]] +who = "Alex Franchuk " criteria = "safe-to-deploy" -delta = "2.4.0 -> 2.4.1" +version = "0.1.30" +notes = """ +Most unsafe code is in implementing non-std sync primitives. Unsafe impls are +logically correct and justified in comments, and unsafe code is sound and +justified in comments. +""" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.url]] -who = "Valentin Gosu " +[[audits.mozilla.audits.typenum]] +who = "Mike Hommey " criteria = "safe-to-deploy" -delta = "2.4.1 -> 2.5.0" +delta = "1.15.0 -> 1.16.0" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.zerocopy]] -who = "Alex Franchuk " +[[audits.mozilla.audits.unicode-xid]] +who = "Teodor Tanasoaia " criteria = "safe-to-deploy" -version = "0.7.32" -notes = """ -This crate is `no_std` so doesn't use any side-effectful std functions. It -contains quite a lot of `unsafe` code, however. I verified portions of this. It -also has a large, thorough test suite. The project claims to run tests with -Miri to have stronger soundness checks, and also claims to use formal -verification tools to prove correctness. -""" +delta = "0.2.4 -> 0.2.5" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.zerocopy-derive]] -who = "Alex Franchuk " +[[audits.mozilla.audits.unicode-xid]] +who = "Jim Blandy " criteria = "safe-to-deploy" -version = "0.7.32" -notes = "Clean, safe macros for zerocopy." +delta = "0.2.5 -> 0.2.6" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" [[audits.zcash.audits.aho-corasick]] @@ -2510,23 +2693,10 @@ criteria = "safe-to-deploy" delta = "1.1.1 -> 1.1.2" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.allocator-api2]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.2.14 -> 0.2.15" -notes = """ -- Some existing `unsafe` code is moved without being altered. -- The new `SliceExt` extension trait uses `unsafe` methods `Vec::set_len` and - `core::ptr::copy_nonoverlapping` to initialize a `Vec` efficiently. The safety - requirements appear to be satisfied. -""" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.allocator-api2]] -who = "Jack Grigg " +[[audits.zcash.audits.aho-corasick]] +who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "0.2.15 -> 0.2.16" -notes = "Change to `unsafe` block is to fix the `Drop` impl of `Box` to drop its value." +delta = "1.1.2 -> 1.1.3" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" [[audits.zcash.audits.backtrace]] @@ -2547,6 +2717,13 @@ being mmapped and loaded. """ aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.backtrace]] +who = "Daira-Emma Hopwood " +criteria = "safe-to-deploy" +delta = "0.3.69 -> 0.3.71" +notes = "This crate inherently requires a lot of `unsafe` code, but the changes look plausible." +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.base64]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2578,16 +2755,16 @@ delta = "0.10.3 -> 0.10.4" notes = "Adds panics to prevent a block size of zero from causing unsoundness." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.bs58]] +who = "Daira-Emma Hopwood " +criteria = "safe-to-deploy" +delta = "0.5.0 -> 0.5.1" +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.bytes]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "1.4.0 -> 1.5.0" -notes = """ -- Introduces new `unsafe` blocks inside new `UninitSlice` constructors, but these replace - existing equivalent `unsafe` blocks that were directly constructing `UninitSlice`. -- Adds `unsafe impl BufMut for &mut [core::mem::MaybeUninit]`, which is implemented - almost identically to the existing `unsafe impl BufMut for &mut [u8]`. -""" +delta = "1.7.1 -> 1.7.2" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" [[audits.zcash.audits.cipher]] @@ -2604,6 +2781,16 @@ delta = "0.4.3 -> 0.4.4" notes = "Adds panics to prevent a block size of zero from causing unsoundness." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.cpufeatures]] +who = "Jack Grigg " +criteria = "safe-to-deploy" +delta = "0.2.13 -> 0.2.14" +notes = """ +New `unsafe` block is to call `sysctlbyname` to detect DIT on Apple ARM64, which +is done in the same way as existing target feature checks on that arch. +""" +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.crossbeam-channel]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2611,10 +2798,11 @@ delta = "0.5.6 -> 0.5.7" notes = "Fixes wrapping overflows for large timeouts." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.either]] -who = "Jack Grigg " +[[audits.zcash.audits.der]] +who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "1.8.1 -> 1.9.0" +delta = "0.7.8 -> 0.7.9" +notes = "The change to ignore RUSTSEC-2023-0071 is correct for this crate." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" [[audits.zcash.audits.errno]] @@ -2623,93 +2811,22 @@ criteria = "safe-to-deploy" delta = "0.3.3 -> 0.3.8" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.ff]] -who = "Sean Bowe " -criteria = "safe-to-deploy" -delta = "0.12.1 -> 0.13.0" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.30" -notes = "Only sub-crate updates and corresponding changes to tests." -aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-channel]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.29" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-channel]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.29 -> 0.3.30" -notes = "Removes `build.rs` now that it can rely on the `target_has_atomic` attribute." -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-core]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.29" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-core]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.29 -> 0.3.30" -notes = "Removes `build.rs` now that it can rely on the `target_has_atomic` attribute." -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-executor]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.30" -aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-io]] -who = "Jack Grigg " +[[audits.zcash.audits.errno]] +who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.30" +delta = "0.3.8 -> 0.3.9" aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" -[[audits.zcash.audits.futures-task]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.29" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-task]] +[[audits.zcash.audits.fastrand]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "0.3.29 -> 0.3.30" -notes = "Removes `build.rs` now that it can rely on the `target_has_atomic` attribute." +delta = "2.1.0 -> 2.1.1" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.futures-util]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.3.28 -> 0.3.29" -notes = """ -Only change to `unsafe` code is to add a `Fut: Send` bound to the -`unsafe impl Sync for FuturesUnordered`. -""" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.futures-util]] -who = "Jack Grigg " +[[audits.zcash.audits.ff]] +who = "Sean Bowe " criteria = "safe-to-deploy" -delta = "0.3.29 -> 0.3.30" -notes = """ -- Removes `build.rs` now that it can rely on the `target_has_atomic` attribute. -- Almost all changes to `unsafe` blocks are to either move them around, or - replace them with safe method calls. -- One new `unsafe` block is added for a slice lifetime transmutation. The slice - reconstruction is obviously correct. AFAICT the lifetime transmutation is also - correct; the slice's lifetime logically comes from the `AsyncBufRead` reader - inside `FillBuf`, rather than the `Context`. -""" +delta = "0.12.1 -> 0.13.0" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" [[audits.zcash.audits.group]] @@ -2718,6 +2835,12 @@ criteria = "safe-to-deploy" delta = "0.12.1 -> 0.13.0" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.hermit-abi]] +who = "Daira-Emma Hopwood " +criteria = "safe-to-deploy" +delta = "0.3.3 -> 0.3.9" +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.http-body-util]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2732,30 +2855,6 @@ version = "0.1.3" notes = "Reviewed in full." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.ipnet]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "2.5.0 -> 2.7.1" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.ipnet]] -who = "Sean Bowe " -criteria = "safe-to-deploy" -delta = "2.7.1 -> 2.7.2" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.ipnet]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "2.7.2 -> 2.8.0" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.ipnet]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "2.8.0 -> 2.9.0" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - [[audits.zcash.audits.libm]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2763,6 +2862,12 @@ delta = "0.2.7 -> 0.2.8" notes = "Forces some intermediate values to not have too much precision on the x87 FPU." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.libredox]] +who = "Daira-Emma Hopwood " +criteria = "safe-to-deploy" +delta = "0.0.1 -> 0.1.3" +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.memchr]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2780,12 +2885,18 @@ code (but adapted to `u16` and `u8` reads, instead of `u32`). """ aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.miniz_oxide]] +[[audits.zcash.audits.memchr]] who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "0.7.1 -> 0.7.2" +delta = "2.7.1 -> 2.7.2" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.memchr]] +who = "Jack Grigg " +criteria = "safe-to-deploy" +delta = "2.7.2 -> 2.7.4" +aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" + [[audits.zcash.audits.nix]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2806,18 +2917,6 @@ criteria = "safe-to-deploy" version = "0.1.0" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.num_enum]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.7.0 -> 0.7.2" -aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" - -[[audits.zcash.audits.num_enum_derive]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "0.7.0 -> 0.7.2" -aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" - [[audits.zcash.audits.object]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2830,113 +2929,121 @@ criteria = "safe-to-deploy" delta = "0.32.1 -> 0.32.2" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.parity-scale-codec]] +[[audits.zcash.audits.parking_lot]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "3.6.1 -> 3.6.5" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +delta = "0.12.2 -> 0.12.3" +aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" -[[audits.zcash.audits.parity-scale-codec]] -who = "Jack Grigg " +[[audits.zcash.audits.rand_xorshift]] +who = "Sean Bowe " criteria = "safe-to-deploy" -delta = "3.6.5 -> 3.6.9" +version = "0.3.0" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.parity-scale-codec-derive]] -who = "Jack Grigg " +[[audits.zcash.audits.regex-syntax]] +who = "Sean Bowe " criteria = "safe-to-deploy" -delta = "3.6.5 -> 3.6.9" +delta = "0.6.28 -> 0.6.29" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.parking_lot]] -who = "Jack Grigg " +[[audits.zcash.audits.rustc_version]] +who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "0.11.2 -> 0.12.1" -notes = "Most `unsafe {}` changes were to reduce the scope of the unsafe blocks. I didn't closely review the migration to the asm! macro but it looks reasonable." -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +version = "0.4.0" +notes = """ +Most of the crate is code to parse and validate the output of `rustc -vV`. The caller can +choose which `rustc` to use, or can use `rustc_version::{version, version_meta}` which will +try `$RUSTC` followed by `rustc`. -[[audits.zcash.audits.proc-macro-crate]] -who = "Jack Grigg " -criteria = "safe-to-deploy" -delta = "1.2.1 -> 1.3.0" -notes = "Migrates from `toml` to `toml_edit`." +If an adversary can arbitrarily set the `$RUSTC` environment variable then this crate will +execute arbitrary code. But when this crate is used within a build script, `$RUSTC` should +be set correctly by `cargo`. +""" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.proc-macro-crate]] +[[audits.zcash.audits.rustc_version]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "1.3.0 -> 1.3.1" -notes = "Bumps MSRV to 1.60." +delta = "0.4.0 -> 0.4.1" +notes = "Changes to `Command` usage are to add support for `RUSTC_WRAPPER`." aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.proptest]] -who = "Jack Grigg " +[[audits.zcash.audits.rustls]] +who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "1.2.0 -> 1.4.0" +delta = "0.21.8 -> 0.21.12" notes = """ -Adds support for generating arbitrary `PathBuf`s, but as this crate is intended -for fuzzing in test environments this is within its expected scope (and the new -API would be used intentionally by downstream tests). +A comment in get_sni_extension asks whether the behaviour of parsing an IPv4 or IPv6 address +in a host_name field of a server_name extension, but then ignoring the extension (because +'Literal IPv4 and IPv6 addresses are not permitted in \"HostName\"'), as the server, is +compliant with RFC 6066. As an original author of RFC 3546 which has very similar wording, +I can speak to the intent: yes this is fine. The client is clearly nonconformant in this +case, but the server isn't. + +RFC 3546 said \"If the server understood the client hello extension but does not recognize +the server name, it SHOULD send an \"unrecognized_name\" alert (which MAY be fatal).\" +This wording was preserved in RFC 5746, and then updated in RFC 6066 to: + + If the server understood the ClientHello extension but + does not recognize the server name, the server SHOULD take one of two + actions: either abort the handshake by sending a fatal-level + unrecognized_name(112) alert or continue the handshake. It is NOT + RECOMMENDED to send a warning-level unrecognized_name(112) alert, + because the client's behavior in response to warning-level alerts is + unpredictable. If there is a mismatch between the server name used + by the client application and the server name of the credential + chosen by the server, this mismatch will become apparent when the + client application performs the server endpoint identification, at + which point the client application will have to decide whether to + proceed with the communication. + +To me it's clear that it is reasonable to consider an IP address as a name that the +server does not recognize. And so the server SHOULD *either* send a fatal unrecognized_name +alert, *or* continue the handshake and let the client application decide when it \"performs +the server endpoint identification\". There's no conformance requirement for the server to +take any notice of a host_name that is \"not permitted\". (It would have been clearer to +express this by specifying the allowed client and server behaviour separately, i.e. saying +that the client MUST NOT send an IP address in host_name, and then explicitly specifying +the server behaviour if it does so anyway. That's how I would write it now. But honestly +this extension was one of the most bikeshedded parts of RFC 3546, to a much greater extent +than I'd anticipated, and I was tired.) """ -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.rand_xorshift]] -who = "Sean Bowe " -criteria = "safe-to-deploy" -version = "0.3.0" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" -[[audits.zcash.audits.redox_users]] +[[audits.zcash.audits.semver]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "0.4.3 -> 0.4.4" -notes = "Switches from `redox_syscall` crate to `libredox` crate for syscalls." -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.regex-syntax]] -who = "Sean Bowe " -criteria = "safe-to-deploy" -delta = "0.6.28 -> 0.6.29" +delta = "1.0.17 -> 1.0.18" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.regex-syntax]] +[[audits.zcash.audits.semver]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "0.7.2 -> 0.7.5" +delta = "1.0.18 -> 1.0.19" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.regex-syntax]] +[[audits.zcash.audits.semver]] who = "Jack Grigg " criteria = "safe-to-deploy" -delta = "0.7.5 -> 0.8.2" -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" - -[[audits.zcash.audits.rustc-demangle]] -who = "Sean Bowe " -criteria = "safe-to-deploy" -delta = "0.1.21 -> 0.1.22" +delta = "1.0.19 -> 1.0.20" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.rustc-demangle]] -who = "Jack Grigg " +[[audits.zcash.audits.semver]] +who = "Daira-Emma Hopwood " criteria = "safe-to-deploy" -delta = "0.1.22 -> 0.1.23" +delta = "1.0.20 -> 1.0.22" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" -[[audits.zcash.audits.rustc_version]] +[[audits.zcash.audits.semver]] who = "Jack Grigg " criteria = "safe-to-deploy" -version = "0.4.0" +delta = "1.0.22 -> 1.0.23" notes = """ -Most of the crate is code to parse and validate the output of `rustc -vV`. The caller can -choose which `rustc` to use, or can use `rustc_version::{version, version_meta}` which will -try `$RUSTC` followed by `rustc`. - -If an adversary can arbitrarily set the `$RUSTC` environment variable then this crate will -execute arbitrary code. But when this crate is used within a build script, `$RUSTC` should -be set correctly by `cargo`. +`build.rs` change is to enable checking for expected `#[cfg]` names if compiling +with Rust 1.80 or later. """ -aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" [[audits.zcash.audits.sharded-slab]] who = "Jack Grigg " @@ -2967,6 +3074,12 @@ criteria = "safe-to-deploy" delta = "0.3.10 -> 0.3.11" aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.sync_wrapper]] +who = "Jack Grigg " +criteria = "safe-to-deploy" +delta = "0.1.2 -> 1.0.1" +aggregated-from = "https://raw.githubusercontent.com/zcash/librustzcash/main/supply-chain/audits.toml" + [[audits.zcash.audits.thread_local]] who = "Jack Grigg " criteria = "safe-to-deploy" @@ -2978,6 +3091,16 @@ New `unsafe` usage: """ aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" +[[audits.zcash.audits.thread_local]] +who = "Daira-Emma Hopwood " +criteria = "safe-to-deploy" +delta = "1.1.7 -> 1.1.8" +notes = """ +Adds `unsafe` code that makes an assumption that `ptr::null_mut::>()` is a valid representation +of an `AtomicPtr>`, but this is likely a correct assumption. +""" +aggregated-from = "https://raw.githubusercontent.com/zcash/zcash/master/qa/supply-chain/audits.toml" + [[audits.zcash.audits.time-core]] who = "Jack Grigg " criteria = "safe-to-deploy" diff --git a/tests/common/mod.rs b/tests/common/mod.rs index 32d43492..e44f6dc6 100644 --- a/tests/common/mod.rs +++ b/tests/common/mod.rs @@ -25,10 +25,9 @@ pub mod prelude { pub use ethers::types::{Bytes, H256, U128, U256}; pub use ethers::utils::{Anvil, AnvilInstance}; pub use ethers_solc::artifacts::{Bytecode, BytecodeObject}; - pub use hyper::client::HttpConnector; - pub use hyper::{Body, Client, Request}; pub use once_cell::sync::Lazy; pub use postgres_docker_utils::DockerContainer; + pub use reqwest::{Client, StatusCode}; pub use semaphore::identity::Identity; pub use semaphore::merkle_tree::{self, Branch}; pub use semaphore::poseidon_tree::{PoseidonHash, PoseidonTree}; @@ -69,13 +68,13 @@ pub mod prelude { } use std::collections::HashMap; -use std::net::{SocketAddr, TcpListener}; +use std::net::SocketAddr; use std::str::FromStr; use std::sync::{Arc, Once}; use futures::stream::FuturesUnordered; use futures::StreamExt; -use hyper::StatusCode; +use reqwest::{Body, Client, Method, Request, RequestBuilder, StatusCode}; use semaphore::poseidon_tree::Proof; use signup_sequencer::identity_tree::{InclusionProof, TreeState, TreeVersionReadOps}; use signup_sequencer::server::data::{ @@ -84,6 +83,7 @@ use signup_sequencer::server::data::{ }; use signup_sequencer::task_monitor::TaskMonitor; use testcontainers::clients::Cli; +use tokio::net::TcpListener; use tracing::trace; use self::chain_mock::{spawn_mock_chain, MockChain, SpecialisedContract}; @@ -98,7 +98,7 @@ const NUM_ATTEMPTS_FOR_INCLUSION_PROOF: usize = 20; #[instrument(skip_all)] pub async fn test_verify_proof( uri: &str, - client: &Client, + client: &Client, root: Field, signal_hash: Field, nullifier_hash: Field, @@ -124,7 +124,7 @@ pub async fn test_verify_proof( #[instrument(skip_all)] pub async fn test_verify_proof_with_age( uri: &str, - client: &Client, + client: &Client, root: Field, signal_hash: Field, nullifier_hash: Field, @@ -151,7 +151,7 @@ pub async fn test_verify_proof_with_age( #[instrument(skip_all)] async fn test_verify_proof_inner( uri: &str, - client: &Client, + client: &Client, root: Field, signal_hash: Field, nullifier_hash: Field, @@ -175,26 +175,25 @@ async fn test_verify_proof_inner( None => format!("{uri}/verifySemaphoreProof"), }; - let req = Request::builder() - .method("POST") - .uri(uri) + let response = client + .request(Method::POST, uri) .header("Content-Type", "application/json") .body(body) - .expect("Failed to create verify proof hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to execute request"); - let bytes = hyper::body::to_bytes(response.body_mut()) + let response_status = response.status(); + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); + let result = String::from_utf8(bytes.into_iter().collect()) .expect("Could not parse response bytes to utf-8"); if let Some(expected_failure) = expected_failure { - assert!(!response.status().is_success()); + assert!(!response_status.is_success()); assert!( result.contains(expected_failure), "Result (`{}`) did not contain expected failure (`{}`)", @@ -202,7 +201,7 @@ async fn test_verify_proof_inner( expected_failure ); } else { - assert!(response.status().is_success()); + assert!(response_status.is_success()); } } @@ -243,7 +242,7 @@ pub async fn test_verify_proof_on_chain( pub async fn test_inclusion_proof( mock_chain: &MockChain, uri: &str, - client: &Client, + client: &Client, leaf_index: usize, ref_tree: &PoseidonTree, leaf: &Hash, @@ -253,17 +252,13 @@ pub async fn test_inclusion_proof( for i in 0..NUM_ATTEMPTS_FOR_INCLUSION_PROOF { let body = construct_inclusion_proof_body(leaf); info!(?uri, "Contacting"); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/inclusionProof") + let response = client + .post(uri.to_owned() + "/inclusionProof") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create inclusion proof hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to execute request"); if expect_failure { assert!(!response.status().is_success()); @@ -272,9 +267,12 @@ pub async fn test_inclusion_proof( assert!(response.status().is_success()); } - let bytes = hyper::body::to_bytes(response.body_mut()) + let response_status = response.status(); + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); + let result = String::from_utf8(bytes.into_iter().collect()) .expect("Could not parse response bytes to utf-8"); let result = serde_json::from_str::(&result) @@ -307,7 +305,7 @@ pub async fn test_inclusion_proof( } assert_eq!(result, generate_reference_proof(ref_tree, leaf_index)); - assert_eq!(response.status(), StatusCode::OK); + assert_eq!(response_status, StatusCode::OK); info!("Got pending, waiting 5 seconds, iteration {}", i); tokio::time::sleep(Duration::from_secs(5)).await; } @@ -322,7 +320,7 @@ pub async fn test_inclusion_proof( pub async fn test_inclusion_proof_mined( mock_chain: &MockChain, uri: &str, - client: &Client, + client: &Client, leaf: &Hash, expect_failure: bool, offchain_mode_enabled: bool, @@ -330,17 +328,14 @@ pub async fn test_inclusion_proof_mined( for i in 0..NUM_ATTEMPTS_FOR_INCLUSION_PROOF { let body = construct_inclusion_proof_body(leaf); info!(?uri, "Contacting"); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/inclusionProof") + + let response = client + .post(uri.to_owned() + "/inclusionProof") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create inclusion proof hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create inclusion proof"); if expect_failure { assert!(!response.status().is_success()); @@ -349,9 +344,10 @@ pub async fn test_inclusion_proof_mined( assert!(response.status().is_success()); } - let bytes = hyper::body::to_bytes(response.body_mut()) + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); let result = String::from_utf8(bytes.into_iter().collect()) .expect("Could not parse response bytes to utf-8"); let result = serde_json::from_str::(&result) @@ -388,26 +384,23 @@ pub async fn test_inclusion_proof_mined( } #[instrument(skip_all)] -pub async fn test_not_in_tree(uri: &str, client: &Client, leaf: &Hash) { +pub async fn test_not_in_tree(uri: &str, client: &Client, leaf: &Hash) { let body = construct_inclusion_proof_body(leaf); info!(?uri, "Contacting"); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/inclusionProof") + let response = client + .post(uri.to_owned() + "/inclusionProof") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create inclusion proof hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create inclusion proof"); assert_eq!(response.status(), StatusCode::OK); - let bytes = hyper::body::to_bytes(response.body_mut()) + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); let result = String::from_utf8(bytes.into_iter().collect()) .expect("Could not parse response bytes to utf-8"); @@ -418,26 +411,23 @@ pub async fn test_not_in_tree(uri: &str, client: &Client, leaf: & } #[instrument(skip_all)] -pub async fn test_in_tree(uri: &str, client: &Client, leaf: &Hash) { +pub async fn test_in_tree(uri: &str, client: &Client, leaf: &Hash) { let body = construct_inclusion_proof_body(leaf); info!(?uri, "Contacting"); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/inclusionProof") + let response = client + .post(uri.to_owned() + "/inclusionProof") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create inclusion proof hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create inclusion proof"); assert_eq!(response.status(), StatusCode::OK); - let bytes = hyper::body::to_bytes(response.body_mut()) + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); let result = String::from_utf8(bytes.into_iter().collect()) .expect("Could not parse response bytes to utf-8"); @@ -449,33 +439,28 @@ pub async fn test_in_tree(uri: &str, client: &Client, leaf: &Hash assert_ne!(root, U256::zero(), "Hash is not zero"); } -pub async fn api_delete_identity( - uri: &str, - client: &Client, - leaf: &Field, - expect_failure: bool, -) { +pub async fn api_delete_identity(uri: &str, client: &Client, leaf: &Field, expect_failure: bool) { let body = construct_delete_identity_body(leaf); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/deleteIdentity") + let response = client + .post(uri.to_owned() + "/deleteIdentity") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create insert identity hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); - let bytes = hyper::body::to_bytes(response.body_mut()) + .expect("Failed to create insert identity"); + + let response_status = response.status(); + + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); if expect_failure { - assert!(!response.status().is_success()); + assert!(!response_status.is_success()); } else { - assert!(response.status().is_success()); + assert!(response_status.is_success()); assert!(bytes.is_empty()); } } @@ -483,7 +468,7 @@ pub async fn api_delete_identity( #[instrument(skip_all)] pub async fn test_delete_identity( uri: &str, - client: &Client, + client: &Client, ref_tree: &mut PoseidonTree, test_leaves: &[Field], leaf_index: usize, @@ -497,7 +482,7 @@ pub async fn test_delete_identity( #[instrument(skip_all)] pub async fn test_recover_identity( uri: &str, - client: &Client, + client: &Client, ref_tree: &mut PoseidonTree, test_leaves: &[Field], previous_leaf_index: usize, @@ -509,26 +494,25 @@ pub async fn test_recover_identity( let body = construct_recover_identity_body(&previous_leaf, &new_leaf); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/recoverIdentity") + let response = client + .post(uri.to_owned() + "/recoverIdentity") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create insert identity hyper::Body"); - - let mut response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create insert identity"); - let bytes = hyper::body::to_bytes(response.body_mut()) + let response_status = response.status(); + + let bytes = response + .bytes() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to get response bytes"); if expect_failure { - assert!(!response.status().is_success()); + assert!(!response_status.is_success()); } else { - assert!(response.status().is_success()); + assert!(response_status.is_success()); assert!(bytes.is_empty()); } @@ -551,7 +535,7 @@ pub async fn test_add_batch_size( prover_url: impl Into, batch_size: u64, prover_type: ProverType, - client: &Client, + client: &Client, ) -> anyhow::Result<()> { let body = Body::from(serde_json::to_string(&AddBatchSizeRequest { url: prover_url.into(), @@ -559,17 +543,14 @@ pub async fn test_add_batch_size( timeout_seconds: 3, prover_type, })?); - let request = Request::builder() - .method("POST") - .uri(uri.into() + "/addBatchSize") - .header("Content-Type", "application/json") - .body(body) - .expect("Failed to create add batch size hyper::Body"); client - .request(request) + .post(uri.into() + "/addBatchSize") + .header("Content-Type", "application/json") + .body(body) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create add batch size"); Ok(()) } @@ -578,7 +559,7 @@ pub async fn test_add_batch_size( pub async fn test_remove_batch_size( uri: impl Into, batch_size: u64, - client: &Client, + client: &Client, prover_type: ProverType, expect_failure: bool, ) -> anyhow::Result<()> { @@ -586,23 +567,21 @@ pub async fn test_remove_batch_size( batch_size: batch_size as usize, prover_type, })?); - let request = Request::builder() - .method("POST") - .uri(uri.into() + "/removeBatchSize") + + let response = client + .post(uri.into() + "/removeBatchSize") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create remove batch size hyper::Body"); - - let mut result = client - .request(request) + .send() .await - .expect("Request didn't return."); + .expect("Failed to create remove batch size"); - let body_bytes = hyper::body::to_bytes(result.body_mut()) + let bytes = response + .bytes() .await - .expect("Failed to get response bytes."); - let body_str = - String::from_utf8(body_bytes.into_iter().collect()).expect("Failed to decode response."); + .expect("Failed to get response bytes"); + + let body_str = String::from_utf8(bytes.to_vec()).expect("Failed to decode response."); if expect_failure && body_str != "The last batch size cannot be removed" { anyhow::bail!("Expected failure, but got success"); @@ -612,33 +591,32 @@ pub async fn test_remove_batch_size( } #[instrument(skip_all)] -pub async fn api_insert_identity(uri: &str, client: &Client, leaf: &Field) { +pub async fn api_insert_identity(uri: &str, client: &Client, leaf: &Field) { let body = construct_insert_identity_body(leaf); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/insertIdentity") + let response = client + .post(uri.to_owned() + "/insertIdentity") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create insert identity hyper::Body"); - - let mut response = client - .request(req) - .await - .expect("Failed to execute request."); - let bytes = hyper::body::to_bytes(response.body_mut()) + .send() .await - .expect("Failed to convert response body to bytes"); + .expect("Failed to create insert identity"); + if !response.status().is_success() { panic!("Failed to insert identity"); } + let bytes = response + .bytes() + .await + .expect("Failed to get response bytes"); + assert!(bytes.is_empty()); } #[instrument(skip_all)] pub async fn test_insert_identity( uri: &str, - client: &Client, + client: &Client, ref_tree: &mut PoseidonTree, test_leaves: &[Field], leaf_index: usize, @@ -675,7 +653,7 @@ pub fn construct_recover_identity_body( Body::from( serde_json::to_string(&RecoveryRequest { previous_identity_commitment: *previous_identity_commitment, - new_identity_commitment: *new_identity_commitment, + new_identity_commitment: *new_identity_commitment, }) .expect("Cannot serialize RecoveryRequest"), ) @@ -721,7 +699,9 @@ pub async fn spawn_app( let task_monitor = TaskMonitor::new(app.clone(), shutdown.clone()); task_monitor.start().await; - let listener = TcpListener::bind(server_config.address).expect("Failed to bind random port"); + let listener = TcpListener::bind(server_config.address) + .await + .expect("Failed to bind random port"); let local_addr = listener.local_addr()?; info!("Waiting for tree initialization"); @@ -762,15 +742,12 @@ pub async fn spawn_app( pub async fn check_metrics(socket_addr: &SocketAddr) -> anyhow::Result<()> { let uri = format!("http://{}", socket_addr); let client = Client::new(); - let req = Request::builder() - .method("GET") - .uri(uri.to_owned() + "/metrics") - .body(Body::empty()) - .expect("Failed to create metrics hyper::Body"); let response = client - .request(req) + .get(uri.to_owned() + "/metrics") + .send() .await - .context("Failed to execute metrics request.")?; + .expect("Failed to create metrics"); + if !response.status().is_success() { anyhow::bail!("Metrics endpoint failed"); } @@ -781,15 +758,13 @@ pub async fn check_metrics(socket_addr: &SocketAddr) -> anyhow::Result<()> { pub async fn check_health(socket_addr: &SocketAddr) -> anyhow::Result<()> { let uri = format!("http://{}", socket_addr); let client = Client::new(); - let req = Request::builder() - .method("GET") - .uri(uri.to_owned() + "/health") - .body(Body::empty()) - .expect("Failed to create health check hyper::Body"); + let response = client - .request(req) + .get(uri.to_owned() + "/health") + .send() .await - .context("Failed to execute health check request.")?; + .expect("Failed to create health check"); + if !response.status().is_success() { anyhow::bail!("Health check failed"); } @@ -799,7 +774,7 @@ pub async fn check_health(socket_addr: &SocketAddr) -> anyhow::Result<()> { #[derive(Deserialize, Serialize, Debug)] struct CompiledContract { - abi: Abi, + abi: Abi, bytecode: Bytecode, } @@ -934,8 +909,8 @@ pub fn generate_reference_proof( leaf_idx: usize, ) -> InclusionProofResponse { InclusionProofResponse(InclusionProof { - root: Some(ref_tree.root()), - proof: ref_tree.proof(leaf_idx), + root: Some(ref_tree.root()), + proof: ref_tree.proof(leaf_idx), message: None, }) } diff --git a/tests/dynamic_batch_sizes.rs b/tests/dynamic_batch_sizes.rs index da27782d..5a42a2b7 100644 --- a/tests/dynamic_batch_sizes.rs +++ b/tests/dynamic_batch_sizes.rs @@ -1,9 +1,6 @@ mod common; -use std::str::FromStr; - use common::prelude::*; -use hyper::Uri; use crate::common::{test_add_batch_size, test_remove_batch_size}; @@ -134,15 +131,18 @@ async fn dynamic_batch_sizes(offchain_mode_enabled: bool) -> anyhow::Result<()> .expect("Failed to add batch size."); // Query for the available provers. - let batch_sizes_uri: Uri = - Uri::from_str(&format!("{}/listBatchSizes", uri.as_str())).expect("Unable to parse URI."); - let mut batch_sizes = client + let batch_sizes_uri = format!("{uri}/listBatchSizes"); + let batch_sizes = client .get(batch_sizes_uri) + .send() .await .expect("Failed to execute get request"); - let batch_sizes_bytes = hyper::body::to_bytes(batch_sizes.body_mut()) + + let batch_sizes_bytes = batch_sizes + .bytes() .await .expect("Failed to get response bytes"); + let batch_size_str = String::from_utf8(batch_sizes_bytes.into_iter().collect()) .expect("Failed to decode response"); let batch_size_json = diff --git a/tests/malformed_payload.rs b/tests/malformed_payload.rs index 4fba0964..eb329edb 100644 --- a/tests/malformed_payload.rs +++ b/tests/malformed_payload.rs @@ -1,7 +1,6 @@ mod common; use common::prelude::*; -use hyper::StatusCode; #[tokio::test] async fn malformed_payload_onchain() -> anyhow::Result<()> { @@ -65,28 +64,25 @@ async fn malformed_payload(offchain_mode_enabled: bool) -> anyhow::Result<()> { // 20 MiB zero bytes let body = vec![0u8; 1024 * 1024 * 20]; - let too_large_payload = Request::builder() - .method("POST") - .uri(format!("{uri}/insertIdentity")) + let response = client + .post(format!("{uri}/insertIdentity")) .header("Content-Type", "application/json") - .body(Body::from(body)) + .body(body) + .send() + .await .unwrap(); - let response = client.request(too_large_payload).await?; - assert_eq!(response.status(), StatusCode::PAYLOAD_TOO_LARGE); // A KiB of 0xffs is not a valid UTF-8 string let body = vec![0xffu8; 1024]; - let invalid_payload = Request::builder() - .method("POST") - .uri(format!("{uri}/insertIdentity")) + let response = client + .post(format!("{uri}/insertIdentity")) .header("Content-Type", "application/json") - .body(Body::from(body)) - .unwrap(); - - let response = client.request(invalid_payload).await?; + .body(body) + .send() + .await?; assert_eq!(response.status(), StatusCode::BAD_REQUEST); diff --git a/tests/unreduced_identity.rs b/tests/unreduced_identity.rs index cddf18f0..7303e6b6 100644 --- a/tests/unreduced_identity.rs +++ b/tests/unreduced_identity.rs @@ -58,21 +58,15 @@ async fn test_unreduced_identity(offchain_mode_enabled: bool) -> anyhow::Result< // Test unreduced identity for insertion let body = common::construct_insert_identity_body(&ruint::Uint::<256, 4>::MAX); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/insertIdentity") + let response = client + .post(uri.to_owned() + "/insertIdentity") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create insert identity hyper::Body"); - - let response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create insert identity"); - let bytes = hyper::body::to_bytes(response.into_body()) - .await - .expect("Failed to read body bytes"); + let bytes = response.bytes().await.expect("Failed to read body bytes"); let body_str = String::from_utf8_lossy(&bytes); assert_eq!( @@ -82,21 +76,15 @@ async fn test_unreduced_identity(offchain_mode_enabled: bool) -> anyhow::Result< // Test unreduced identity for recovery let body = common::construct_recover_identity_body(&Hash::ZERO, &ruint::Uint::<256, 4>::MAX); - let req = Request::builder() - .method("POST") - .uri(uri.to_owned() + "/recoverIdentity") + let response = client + .post(uri.to_owned() + "/recoverIdentity") .header("Content-Type", "application/json") .body(body) - .expect("Failed to create insert identity hyper::Body"); - - let response = client - .request(req) + .send() .await - .expect("Failed to execute request."); + .expect("Failed to create insert identity"); - let bytes = hyper::body::to_bytes(response.into_body()) - .await - .expect("Failed to read body bytes"); + let bytes = response.bytes().await.expect("Failed to read body bytes"); let body_str = String::from_utf8_lossy(&bytes); assert_eq!(