diff --git a/Cargo.lock b/Cargo.lock
index a7debaa761..7e95ccb232 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -220,7 +220,7 @@ checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565"
dependencies = [
"num-bigint",
"num-traits",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -302,7 +302,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -366,7 +366,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87bf87e6e8b47264efa9bde63d6225c6276a52e05e91bf37eaa8afd0032d6b71"
dependencies = [
"askama_shared",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"syn 1.0.109",
]
@@ -389,7 +389,7 @@ dependencies = [
"nom",
"num-traits",
"percent-encoding",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"serde",
"syn 1.0.109",
@@ -398,9 +398,9 @@ dependencies = [
[[package]]
name = "asn1-rs"
-version = "0.3.1"
+version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30ff05a702273012438132f449575dbc804e27b2f3cbe3069aa237d26c98fa33"
+checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048"
dependencies = [
"asn1-rs-derive",
"asn1-rs-impl",
@@ -408,31 +408,31 @@ dependencies = [
"nom",
"num-traits",
"rusticata-macros",
- "thiserror",
+ "thiserror 1.0.61",
"time",
]
[[package]]
name = "asn1-rs-derive"
-version = "0.1.0"
+version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf"
+checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 1.0.109",
+ "syn 2.0.90",
"synstructure",
]
[[package]]
name = "asn1-rs-impl"
-version = "0.1.0"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed"
+checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 1.0.109",
+ "syn 2.0.90",
]
[[package]]
@@ -464,55 +464,56 @@ dependencies = [
[[package]]
name = "async-http-codec"
-version = "0.5.8"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "afc4f0600c43df768851edad95ad43119ebde70e2feec8e39b91f97c9b62029e"
+checksum = "096146020b08dbc4587685b0730a7ba905625af13c65f8028035cdfd69573c91"
dependencies = [
"anyhow",
"futures",
- "http",
+ "http 1.2.0",
"httparse",
"log",
]
[[package]]
name = "async-io"
-version = "1.13.0"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
+checksum = "43a2b323ccce0a1d90b449fd71f2a06ca7faa7c54c2751f06c9bd851fc061059"
dependencies = [
"async-lock",
- "autocfg",
"cfg-if",
"concurrent-queue",
- "futures-lite 1.13.0",
- "log",
+ "futures-io",
+ "futures-lite",
"parking",
"polling",
- "rustix 0.37.27",
+ "rustix",
"slab",
- "socket2 0.4.10",
- "waker-fn",
+ "tracing",
+ "windows-sys 0.59.0",
]
[[package]]
name = "async-lock"
-version = "2.8.0"
+version = "3.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
+checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
dependencies = [
- "event-listener 2.5.3",
+ "event-listener",
+ "event-listener-strategy",
+ "pin-project-lite",
]
[[package]]
name = "async-net"
-version = "1.8.0"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0434b1ed18ce1cf5769b8ac540e33f01fa9471058b5e89da9e06f3c882a8c12f"
+checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7"
dependencies = [
"async-io",
"blocking",
- "futures-lite 1.13.0",
+ "futures-lite",
]
[[package]]
@@ -532,9 +533,9 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -549,53 +550,27 @@ version = "0.1.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
name = "async-web-client"
-version = "0.2.7"
+version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3838368c36426d00ad882467ea2308b17eceee33a10d840c2c90fd0923ee3b7e"
+checksum = "37381fb4fad3cd9b579628c21a58f528ef029d1f072d10f16cb9431aa2236d29"
dependencies = [
"async-http-codec",
"async-net",
- "async-ws",
"futures",
"futures-rustls",
- "gloo-net",
- "http",
- "js-sys",
+ "http 1.2.0",
"lazy_static",
"log",
- "rustls 0.21.12",
- "thiserror",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "webpki-roots 0.25.4",
-]
-
-[[package]]
-name = "async-ws"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1b9363f44ce91e6425b719432e3ff359a803434af3e577754a07e5d9ddbeda4"
-dependencies = [
- "async-io",
- "base64 0.13.1",
- "futures",
- "futures-lite 1.13.0",
- "generic_static",
- "http",
- "log",
- "rand",
- "ring 0.16.20",
- "strum 0.24.1",
- "thiserror",
- "utf-8",
+ "rustls-pki-types",
+ "thiserror 1.0.61",
+ "webpki-roots",
]
[[package]]
@@ -639,21 +614,49 @@ version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
+[[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",
+ "untrusted 0.7.1",
+ "zeroize",
+]
+
+[[package]]
+name = "aws-lc-sys"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df7a4168111d7eb622a31b214057b8509c0a7e1794f44c546d742330dc793972"
+dependencies = [
+ "bindgen 0.69.4",
+ "cc",
+ "cmake",
+ "dunce",
+ "fs_extra",
+ "libc",
+ "paste",
+]
+
[[package]]
name = "axum"
-version = "0.6.20"
+version = "0.7.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf"
+checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f"
dependencies = [
"async-trait",
"axum-core",
- "bitflags 1.3.2",
"bytes",
"futures-util",
- "headers",
- "http",
- "http-body",
- "hyper",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "hyper 1.5.1",
+ "hyper-util",
"itoa",
"matchit",
"memchr",
@@ -665,47 +668,80 @@ dependencies = [
"serde_json",
"serde_path_to_error",
"serde_urlencoded",
- "sync_wrapper",
+ "sync_wrapper 1.0.2",
"tokio",
- "tower",
+ "tower 0.5.2",
"tower-layer",
"tower-service",
+ "tracing",
]
[[package]]
name = "axum-core"
-version = "0.3.4"
+version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
+checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199"
dependencies = [
"async-trait",
"bytes",
"futures-util",
- "http",
- "http-body",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
"mime",
+ "pin-project-lite",
"rustversion",
+ "sync_wrapper 1.0.2",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "axum-extra"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c794b30c904f0a1c2fb7740f7df7f7972dfaa14ef6f57cb6178dc63e5dca2f04"
+dependencies = [
+ "axum",
+ "axum-core",
+ "bytes",
+ "fastrand",
+ "futures-util",
+ "headers",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "mime",
+ "multer",
+ "pin-project-lite",
+ "serde",
+ "tower 0.5.2",
"tower-layer",
"tower-service",
]
[[package]]
name = "axum-server"
-version = "0.5.1"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447f28c85900215cc1bea282f32d4a2f22d55c5a300afdfbc661c8d6a632e063"
+checksum = "56bac90848f6a9393ac03c63c640925c4b7c8ca21654de40d53f55964667c7d8"
dependencies = [
"arc-swap",
"bytes",
"futures-util",
- "http",
- "http-body",
- "hyper",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "hyper 1.5.1",
+ "hyper-util",
"pin-project-lite",
- "rustls 0.21.12",
- "rustls-pemfile 1.0.4",
+ "rustls 0.23.20",
+ "rustls-pemfile 2.2.0",
+ "rustls-pki-types",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.26.1",
+ "tower 0.4.13",
"tower-service",
]
@@ -730,12 +766,6 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
-[[package]]
-name = "base64"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-
[[package]]
name = "base64"
version = "0.21.7"
@@ -795,12 +825,12 @@ dependencies = [
"lazycell",
"peeking_take_while",
"prettyplease",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"regex",
"rustc-hash",
"shlex",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -815,12 +845,15 @@ dependencies = [
"itertools 0.12.1",
"lazy_static",
"lazycell",
- "proc-macro2 1.0.86",
+ "log",
+ "prettyplease",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"regex",
"rustc-hash",
"shlex",
- "syn 2.0.68",
+ "syn 2.0.90",
+ "which",
]
[[package]]
@@ -963,7 +996,7 @@ dependencies = [
"async-channel",
"async-task",
"futures-io",
- "futures-lite 2.3.0",
+ "futures-lite",
"piper",
]
@@ -985,9 +1018,9 @@ checksum = "c3ef8005764f53cd4dca619f5bf64cafd4664dada50ece25e4d81de54c80cc0b"
dependencies = [
"once_cell",
"proc-macro-crate",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
"syn_derive",
]
@@ -1031,9 +1064,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]]
name = "bytes"
-version = "1.6.0"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
+checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
dependencies = [
"serde",
]
@@ -1144,7 +1177,7 @@ dependencies = [
"iana-time-zone",
"num-traits",
"serde",
- "windows-targets 0.52.5",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -1229,7 +1262,7 @@ checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008"
dependencies = [
"heck 0.4.1",
"proc-macro-error 1.0.4",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -1243,6 +1276,15 @@ dependencies = [
"os_str_bytes",
]
+[[package]]
+name = "cmake"
+version = "0.1.52"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c682c223677e0e5b6b7f63a64b9351844c3f1b1678a68b7ee617e30fb082620e"
+dependencies = [
+ "cc",
+]
+
[[package]]
name = "cnidarium"
version = "0.80.10"
@@ -1257,7 +1299,7 @@ dependencies = [
"ibc-types",
"ics23",
"jmt",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"parking_lot",
"pbjson",
@@ -1279,13 +1321,48 @@ dependencies = [
"tracing-subscriber 0.3.18",
]
+[[package]]
+name = "cnidarium"
+version = "0.81.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f77ae2f37b1ca16db2524f7d1f1a14416372dc2594635d18a6357b609c4164c8"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "base64 0.21.7",
+ "borsh",
+ "futures",
+ "hex",
+ "ibc-proto",
+ "ibc-types",
+ "ics23",
+ "jmt",
+ "metrics 0.22.3",
+ "once_cell",
+ "parking_lot",
+ "pbjson",
+ "pin-project",
+ "prost",
+ "regex",
+ "rocksdb",
+ "serde",
+ "sha2 0.10.8",
+ "smallvec",
+ "tempfile",
+ "tendermint",
+ "tokio",
+ "tokio-stream",
+ "tonic",
+ "tracing",
+]
+
[[package]]
name = "cnidarium-component"
version = "0.80.10"
dependencies = [
"anyhow",
"async-trait",
- "cnidarium",
+ "cnidarium 0.81.0",
"hex",
"tendermint",
]
@@ -1342,8 +1419,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b103d85ca6e209388771bfb7aa6b68a7aeec4afbf6f0a0264bfbf50360e5212e"
dependencies = [
"crossterm",
- "strum 0.23.0",
- "strum_macros 0.23.1",
+ "strum",
+ "strum_macros",
"unicode-width",
]
@@ -1409,6 +1486,19 @@ version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
+[[package]]
+name = "cosmos-sdk-proto"
+version = "0.26.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "462e1f6a8e005acc8835d32d60cbd7973ed65ea2a8d8473830e675f050956427"
+dependencies = [
+ "informalsystems-pbjson",
+ "prost",
+ "serde",
+ "tendermint-proto",
+ "tonic",
+]
+
[[package]]
name = "cpufeatures"
version = "0.2.12"
@@ -1527,7 +1617,7 @@ dependencies = [
"bitflags 1.3.2",
"crossterm_winapi",
"libc",
- "mio",
+ "mio 0.8.11",
"parking_lot",
"signal-hook",
"signal-hook-mio",
@@ -1623,10 +1713,10 @@ checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120"
dependencies = [
"fnv",
"ident_case",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"strsim 0.11.1",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -1637,7 +1727,7 @@ checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178"
dependencies = [
"darling_core",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -1690,7 +1780,7 @@ dependencies = [
"decaf377",
"proptest",
"rand_core",
- "thiserror",
+ "thiserror 1.0.61",
]
[[package]]
@@ -1717,7 +1807,7 @@ dependencies = [
"hex",
"proptest",
"rand_core",
- "thiserror",
+ "thiserror 1.0.61",
"zeroize",
"zeroize_derive",
]
@@ -1736,7 +1826,7 @@ dependencies = [
"hex",
"rand_core",
"serde",
- "thiserror",
+ "thiserror 1.0.61",
"zeroize",
]
@@ -1753,9 +1843,9 @@ dependencies = [
[[package]]
name = "der-parser"
-version = "7.0.0"
+version = "9.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe398ac75057914d7d07307bf67dc7f3f574a26783b4fc7805a20ffa9f506e82"
+checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553"
dependencies = [
"asn1-rs",
"displaydoc",
@@ -1781,7 +1871,7 @@ version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -1792,7 +1882,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a2c35ab6e03642397cdda1dd58abbc05d418aef8e36297f336d5aba060fe8df"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -1803,9 +1893,9 @@ version = "0.99.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -1873,9 +1963,9 @@ version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -1899,6 +1989,12 @@ version = "0.15.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b"
+[[package]]
+name = "dunce"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
+
[[package]]
name = "dyn-clone"
version = "1.0.17"
@@ -1939,7 +2035,7 @@ dependencies = [
"rand_core",
"serde",
"sha2 0.9.9",
- "thiserror",
+ "thiserror 1.0.61",
"zeroize",
]
@@ -2039,12 +2135,6 @@ version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c"
-[[package]]
-name = "event-listener"
-version = "2.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
-
[[package]]
name = "event-listener"
version = "5.3.1"
@@ -2062,7 +2152,7 @@ version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
dependencies = [
- "event-listener 5.3.1",
+ "event-listener",
"pin-project-lite",
]
@@ -2097,15 +2187,6 @@ version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
-[[package]]
-name = "fastrand"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
-
[[package]]
name = "fastrand"
version = "2.1.0"
@@ -2189,7 +2270,7 @@ checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
dependencies = [
"futures-core",
"futures-sink",
- "spin 0.9.8",
+ "spin",
]
[[package]]
@@ -2198,6 +2279,12 @@ version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+[[package]]
+name = "foldhash"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2"
+
[[package]]
name = "foreign-types"
version = "0.3.2"
@@ -2239,7 +2326,7 @@ dependencies = [
"rand_core",
"serde",
"serdect",
- "thiserror",
+ "thiserror 1.0.61",
"visibility",
"zeroize",
]
@@ -2327,28 +2414,16 @@ version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
-[[package]]
-name = "futures-lite"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
-dependencies = [
- "fastrand 1.9.0",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
-
[[package]]
name = "futures-lite"
version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
dependencies = [
+ "fastrand",
"futures-core",
+ "futures-io",
+ "parking",
"pin-project-lite",
]
@@ -2358,19 +2433,20 @@ version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
name = "futures-rustls"
-version = "0.24.0"
+version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35bd3cf68c183738046838e300353e4716c674dc5e56890de4826801a6622a28"
+checksum = "a8f2f12607f92c69b12ed746fabf9ca4f5c482cba46679c1a75b874ed7c26adb"
dependencies = [
"futures-io",
- "rustls 0.21.12",
+ "rustls 0.23.20",
+ "rustls-pki-types",
]
[[package]]
@@ -2428,7 +2504,7 @@ checksum = "784f84eebc366e15251c4a8c3acee82a6a6f427949776ecb88377362a9621738"
dependencies = [
"proc-macro-error 0.4.12",
"proc-macro-hack",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -2444,15 +2520,6 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "generic_static"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28ccff179d8070317671db09aee6d20affc26e88c5394714553b04f509b43a60"
-dependencies = [
- "once_cell",
-]
-
[[package]]
name = "getrandom"
version = "0.2.15"
@@ -2478,31 +2545,6 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
-[[package]]
-name = "gloo-net"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9902a044653b26b99f7e3693a42f171312d9be8b26b5697bd1e43ad1f8a35e10"
-dependencies = [
- "gloo-utils",
- "js-sys",
- "thiserror",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
-]
-
-[[package]]
-name = "gloo-utils"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "037fcb07216cb3a30f7292bd0176b050b7b9a052ba830ef7d5d65f6dc64ba58e"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
[[package]]
name = "group"
version = "0.13.0"
@@ -2525,8 +2567,27 @@ dependencies = [
"futures-core",
"futures-sink",
"futures-util",
- "http",
- "indexmap 2.2.6",
+ "http 0.2.12",
+ "indexmap 2.7.0",
+ "slab",
+ "tokio",
+ "tokio-util 0.7.11",
+ "tracing",
+]
+
+[[package]]
+name = "h2"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e"
+dependencies = [
+ "atomic-waker",
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "http 1.2.0",
+ "indexmap 2.7.0",
"slab",
"tokio",
"tokio-util 0.7.11",
@@ -2583,6 +2644,15 @@ dependencies = [
"allocator-api2",
]
+[[package]]
+name = "hashbrown"
+version = "0.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
+dependencies = [
+ "foldhash",
+]
+
[[package]]
name = "hashlink"
version = "0.9.1"
@@ -2604,14 +2674,14 @@ dependencies = [
[[package]]
name = "headers"
-version = "0.3.9"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
+checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9"
dependencies = [
"base64 0.21.7",
"bytes",
"headers-core",
- "http",
+ "http 1.2.0",
"httpdate",
"mime",
"sha1",
@@ -2619,11 +2689,11 @@ dependencies = [
[[package]]
name = "headers-core"
-version = "0.2.0"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
+checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4"
dependencies = [
- "http",
+ "http 1.2.0",
]
[[package]]
@@ -2636,7 +2706,7 @@ dependencies = [
"hash32",
"rustc_version",
"serde",
- "spin 0.9.8",
+ "spin",
"stable_deref_trait",
]
@@ -2672,9 +2742,9 @@ dependencies = [
[[package]]
name = "hermit-abi"
-version = "0.3.9"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
+checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
[[package]]
name = "hex"
@@ -2720,6 +2790,17 @@ dependencies = [
"itoa",
]
+[[package]]
+name = "http"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
[[package]]
name = "http-body"
version = "0.4.6"
@@ -2727,15 +2808,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
dependencies = [
"bytes",
- "http",
+ "http 0.2.12",
"pin-project-lite",
]
[[package]]
-name = "http-range-header"
-version = "0.3.1"
+name = "http-body"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184"
+dependencies = [
+ "bytes",
+ "http 1.2.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f"
+checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
+dependencies = [
+ "bytes",
+ "futures-util",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "pin-project-lite",
+]
[[package]]
name = "httparse"
@@ -2763,28 +2861,49 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]]
name = "hyper"
-version = "0.14.29"
+version = "0.14.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f361cde2f109281a220d4307746cdfd5ee3f410da58a70377762396775634b33"
+checksum = "8c08302e8fa335b151b788c775ff56e7a03ae64ff85c548ee820fecb70356e85"
dependencies = [
"bytes",
"futures-channel",
"futures-core",
"futures-util",
- "h2",
- "http",
- "http-body",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
"httparse",
"httpdate",
"itoa",
"pin-project-lite",
- "socket2 0.5.7",
+ "socket2",
"tokio",
"tower-service",
"tracing",
"want",
]
+[[package]]
+name = "hyper"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "97818827ef4f364230e16705d4706e2897df2bb60617d6ca15d598025a3c481f"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2 0.4.7",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+ "want",
+]
+
[[package]]
name = "hyper-rustls"
version = "0.24.2"
@@ -2792,36 +2911,77 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
dependencies = [
"futures-util",
- "http",
- "hyper",
+ "http 0.2.12",
+ "hyper 0.14.31",
"rustls 0.21.12",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.24.1",
+]
+
+[[package]]
+name = "hyper-rustls"
+version = "0.27.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333"
+dependencies = [
+ "futures-util",
+ "http 1.2.0",
+ "hyper 1.5.1",
+ "hyper-util",
+ "rustls 0.23.20",
+ "rustls-native-certs 0.8.0",
+ "rustls-pki-types",
+ "tokio",
+ "tokio-rustls 0.26.1",
+ "tower-service",
]
[[package]]
name = "hyper-timeout"
-version = "0.4.1"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1"
+checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0"
dependencies = [
- "hyper",
+ "hyper 1.5.1",
+ "hyper-util",
"pin-project-lite",
"tokio",
- "tokio-io-timeout",
+ "tower-service",
]
[[package]]
name = "hyper-tls"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
+checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
dependencies = [
"bytes",
- "hyper",
+ "http-body-util",
+ "hyper 1.5.1",
+ "hyper-util",
"native-tls",
"tokio",
"tokio-native-tls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "hyper 1.5.1",
+ "pin-project-lite",
+ "socket2",
+ "tokio",
+ "tower-service",
+ "tracing",
]
[[package]]
@@ -2849,12 +3009,13 @@ dependencies = [
[[package]]
name = "ibc-proto"
-version = "0.41.0"
+version = "0.51.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd4ee32b22d3b06f31529b956f4928e5c9a068d71e46cf6abfa19c31ca550553"
+checksum = "9b70f517162e74e2d35875b8b94bf4d1e45f2c69ef3de452dc855944455d33ca"
dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
"bytes",
+ "cosmos-sdk-proto",
"flex-error",
"ics23",
"informalsystems-pbjson",
@@ -2867,9 +3028,9 @@ dependencies = [
[[package]]
name = "ibc-types"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba606d86e2015991f86a129935dbaeacd94beab72fb90a733c1b1ea76be708a2"
+checksum = "fd68e32f5bd94849131670d34e21b0fb66057e91bee8e451e7f4e216e71616d2"
dependencies = [
"ibc-types-core-channel",
"ibc-types-core-client",
@@ -2885,9 +3046,9 @@ dependencies = [
[[package]]
name = "ibc-types-core-channel"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86fb64ef52086b727e5ae01da0e773f8ca9172ec1fd9d0aa1a79c0c2c610b17a"
+checksum = "c57da64f7e945e7443035275cc279e0176c988ea625968c2526706aafcff1766"
dependencies = [
"anyhow",
"bytes",
@@ -2918,9 +3079,9 @@ dependencies = [
[[package]]
name = "ibc-types-core-client"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4db9d4b136b9e84ccf581fec02bb9ebc4478ac0f145c526760ed4310b98741e7"
+checksum = "108a89f64ffa39e04a7e29de9d9824523c3164f8518927716be870ad8a7aedf9"
dependencies = [
"anyhow",
"bytes",
@@ -2945,9 +3106,9 @@ dependencies = [
[[package]]
name = "ibc-types-core-commitment"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e2c527e14707dd0b2c7e6e2f6f62b0655c83154ae3eb1504e441d9d8f454ac6"
+checksum = "8949e33fbb9c3f1ae49588f4829977e80439f3dfc1491b5a69492f5e4a036949"
dependencies = [
"anyhow",
"bytes",
@@ -2980,9 +3141,9 @@ dependencies = [
[[package]]
name = "ibc-types-core-connection"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a8a326c00e9ba48059407478c826237fe39cc90dd2b47182484192926904fe7"
+checksum = "f63035288d11e5830daf20fd99507a671ab1cc03fa04752d75ef1c75e2786543"
dependencies = [
"anyhow",
"bytes",
@@ -3010,9 +3171,9 @@ dependencies = [
[[package]]
name = "ibc-types-domain-type"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3abc9619b9dd7201804f45fc7f335dda72d2e4d6f82d96e8fe3abf4585e6101b"
+checksum = "c2c543a23a77a5d814e0aeffd5a918964468a8b213f664897bc3f8c50cc7d5c1"
dependencies = [
"anyhow",
"bytes",
@@ -3021,9 +3182,9 @@ dependencies = [
[[package]]
name = "ibc-types-identifier"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "405880cf06fef65f51c5c91b7efbdcbc8d7eba0ac16b43538b36ebd17f21edea"
+checksum = "b2ed2d7f06055bb2548564bf02c8c4b47561134f282adae61dc5c6ed722e1cde"
dependencies = [
"displaydoc",
"serde",
@@ -3032,9 +3193,9 @@ dependencies = [
[[package]]
name = "ibc-types-lightclients-tendermint"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ab22446058bd5afa50d64f8519a9107bbc5101ee65373df896314f52afa0fc6"
+checksum = "00fd846b7eedca1dfbb7babeb55e0d74fb0d09a7db63da93737d54a581a96371"
dependencies = [
"anyhow",
"bytes",
@@ -3069,9 +3230,9 @@ dependencies = [
[[package]]
name = "ibc-types-path"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a29e6fd8871fdced76402a3008219abf8773e527a46f120e0d76d6a3bb9706c1"
+checksum = "0f4da80e010427aff50f227920cdc8f7879469ce2db181cbcf92dc228172a334"
dependencies = [
"bytes",
"derive_more",
@@ -3092,9 +3253,9 @@ dependencies = [
[[package]]
name = "ibc-types-timestamp"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93d2e763838dbef62ca8a1344b4dd5b3919d685b4c61874183724644c912237a"
+checksum = "748b2fbebe30ca799d31f6fc220d705b5180a608db842e29a3722671411d81a6"
dependencies = [
"bytes",
"displaydoc",
@@ -3111,9 +3272,9 @@ dependencies = [
[[package]]
name = "ibc-types-transfer"
-version = "0.12.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad973ca1fbad8d0d1632ec0a329aecff8731bbb96395b7553d6b9fd749356d34"
+checksum = "8fcb46fe34a87db49bc9bb20918d7f882871a20d741d866d217c52a5dbe16a72"
dependencies = [
"displaydoc",
"serde",
@@ -3134,9 +3295,9 @@ dependencies = [
[[package]]
name = "ics23"
-version = "0.11.3"
+version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18798160736c1e368938ba6967dbcb3c7afb3256b442a5506ba5222eebb68a5a"
+checksum = "73b17f1a5bd7d12ad30a21445cfa5f52fd7651cb3243ba866f9916b1ec112f12"
dependencies = [
"anyhow",
"blake2",
@@ -3206,7 +3367,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -3230,7 +3391,7 @@ checksum = "3a7d6e1419fa3129eb0802b4c99603c0d425c79fb5d76191d5a20d0ab0d664e8"
dependencies = [
"libflate",
"proc-macro-hack",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -3264,12 +3425,12 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.2.6"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
dependencies = [
"equivalent",
- "hashbrown 0.14.5",
+ "hashbrown 0.15.2",
"serde",
]
@@ -3304,26 +3465,6 @@ dependencies = [
"generic-array",
]
-[[package]]
-name = "instant"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-dependencies = [
- "hermit-abi 0.3.9",
- "libc",
- "windows-sys 0.48.0",
-]
-
[[package]]
name = "ipnet"
version = "2.9.0"
@@ -3357,6 +3498,15 @@ dependencies = [
"either",
]
+[[package]]
+name = "itertools"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
+dependencies = [
+ "either",
+]
+
[[package]]
name = "itoa"
version = "1.0.11"
@@ -3365,9 +3515,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
[[package]]
name = "jmt"
-version = "0.10.0"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a3bf1a303934c6f75533bd3a563730a0730f9361023c49ed6aee9fcb5b98f8"
+checksum = "bf2a10370b45cd850e64993ccd81d25ea2d4b5b0d0312546e7489fed82064f2e"
dependencies = [
"anyhow",
"borsh",
@@ -3381,7 +3531,7 @@ dependencies = [
"num-traits",
"serde",
"sha2 0.10.8",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
]
@@ -3430,7 +3580,7 @@ version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
dependencies = [
- "spin 0.9.8",
+ "spin",
]
[[package]]
@@ -3441,9 +3591,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
-version = "0.2.155"
+version = "0.2.168"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
+checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d"
[[package]]
name = "libflate"
@@ -3472,7 +3622,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d"
dependencies = [
"cfg-if",
- "windows-targets 0.52.5",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -3551,12 +3701,6 @@ dependencies = [
"vcpkg",
]
-[[package]]
-name = "linux-raw-sys"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-
[[package]]
name = "linux-raw-sys"
version = "0.4.14"
@@ -3683,21 +3827,33 @@ dependencies = [
"portable-atomic",
]
+[[package]]
+name = "metrics"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3"
+dependencies = [
+ "ahash",
+ "portable-atomic",
+]
+
[[package]]
name = "metrics-exporter-prometheus"
-version = "0.13.1"
+version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9bf4e7146e30ad172c42c39b3246864bd2d3c6396780711a1baf749cfe423e21"
+checksum = "85b6f8152da6d7892ff1b7a1c0fa3f435e92b5918ad67035c3bb432111d9a29b"
dependencies = [
- "base64 0.21.7",
- "hyper",
- "hyper-tls",
- "indexmap 2.2.6",
+ "base64 0.22.1",
+ "http-body-util",
+ "hyper 1.5.1",
+ "hyper-rustls 0.27.3",
+ "hyper-util",
+ "indexmap 2.7.0",
"ipnet",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"metrics-util",
"quanta",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tracing",
]
@@ -3719,14 +3875,14 @@ dependencies = [
[[package]]
name = "metrics-tracing-context"
-version = "0.15.0"
+version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb791d015f8947acf5a7f62bd28d00f289bb7ea98cfbe3ffec1d061eee12df12"
+checksum = "f1ada651cd6bdffe01e5f35067df53491f1fe853d2b154008ca2bd30b3d3fcf6"
dependencies = [
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"itoa",
"lockfree-object-pool",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"metrics-util",
"once_cell",
"tracing",
@@ -3736,17 +3892,16 @@ dependencies = [
[[package]]
name = "metrics-util"
-version = "0.16.3"
+version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b07a5eb561b8cbc16be2d216faf7757f9baf3bfb94dbb0fae3df8387a5bb47f"
+checksum = "15b482df36c13dd1869d73d14d28cd4855fbd6cfc32294bee109908a9f4a4ed7"
dependencies = [
"aho-corasick",
"crossbeam-epoch",
"crossbeam-utils",
- "hashbrown 0.14.5",
- "indexmap 2.2.6",
- "metrics 0.22.3",
- "num_cpus",
+ "hashbrown 0.15.2",
+ "indexmap 2.7.0",
+ "metrics 0.24.1",
"ordered-float",
"quanta",
"radix_trie",
@@ -3796,12 +3951,40 @@ dependencies = [
"windows-sys 0.48.0",
]
+[[package]]
+name = "mio"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
+dependencies = [
+ "libc",
+ "wasi",
+ "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 = "multer"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83e87776546dc87511aa5ee218730c92b666d7264ab6ed41f9d215af9cd5224b"
+dependencies = [
+ "bytes",
+ "encoding_rs",
+ "futures-util",
+ "http 1.2.0",
+ "httparse",
+ "memchr",
+ "mime",
+ "spin",
+ "version_check",
+]
+
[[package]]
name = "multimap"
version = "0.10.0"
@@ -3921,7 +4104,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -3956,16 +4139,6 @@ dependencies = [
"libm",
]
-[[package]]
-name = "num_cpus"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
-dependencies = [
- "hermit-abi 0.3.9",
- "libc",
-]
-
[[package]]
name = "number_prefix"
version = "0.4.0"
@@ -3989,9 +4162,9 @@ dependencies = [
[[package]]
name = "oid-registry"
-version = "0.4.0"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38e20717fa0541f39bd146692035c37bedfa532b3e5071b35761082407546b2a"
+checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9"
dependencies = [
"asn1-rs",
]
@@ -4035,9 +4208,9 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -4100,7 +4273,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c"
dependencies = [
"proc-macro-crate",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -4131,7 +4304,7 @@ dependencies = [
"libc",
"redox_syscall 0.5.2",
"smallvec",
- "windows-targets 0.52.5",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -4164,9 +4337,9 @@ checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
[[package]]
name = "pbjson"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1030c719b0ec2a2d25a5df729d6cff1acf3cc230bf766f4f97833591f7577b90"
+checksum = "c7e6349fa080353f4a597daffd05cb81572a9c031a6d4fff7e504947496fcc68"
dependencies = [
"base64 0.21.7",
"serde",
@@ -4174,21 +4347,21 @@ dependencies = [
[[package]]
name = "pbjson-build"
-version = "0.6.2"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2580e33f2292d34be285c5bc3dba5259542b083cfad6037b6d70345f24dcb735"
+checksum = "6eea3058763d6e656105d1403cb04e0a41b7bbac6362d413e7c33be0c32279c9"
dependencies = [
- "heck 0.4.1",
- "itertools 0.11.0",
+ "heck 0.5.0",
+ "itertools 0.13.0",
"prost",
"prost-types",
]
[[package]]
name = "pbjson-types"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18f596653ba4ac51bdecbb4ef6773bc7f56042dc13927910de1684ad3d32aa12"
+checksum = "e54e5e7bfb1652f95bc361d76f3c780d8e526b134b85417e774166ee941f0887"
dependencies = [
"bytes",
"chrono",
@@ -4245,7 +4418,7 @@ dependencies = [
"ed25519-consensus",
"futures",
"hex",
- "http-body",
+ "http-body 1.0.1",
"humantime",
"ibc-proto",
"ibc-types",
@@ -4296,7 +4469,7 @@ dependencies = [
"tokio-util 0.7.11",
"toml 0.7.8",
"tonic",
- "tower",
+ "tower 0.4.13",
"tracing",
"tracing-subscriber 0.3.18",
"url",
@@ -4318,11 +4491,11 @@ dependencies = [
"ed25519-consensus",
"futures",
"hex",
- "http",
- "http-body",
+ "http 1.2.0",
+ "http-body 1.0.1",
"ibc-proto",
"ibc-types",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"parking_lot",
"penumbra-app",
"penumbra-asset",
@@ -4348,7 +4521,7 @@ dependencies = [
"tonic",
"tonic-reflection",
"tonic-web",
- "tower",
+ "tower 0.4.13",
"tracing",
"tracing-subscriber 0.3.18",
"url",
@@ -4371,7 +4544,7 @@ dependencies = [
"bytes",
"chrono",
"clap",
- "cnidarium",
+ "cnidarium 0.81.0",
"csv",
"decaf377",
"decaf377-rdsa",
@@ -4381,12 +4554,12 @@ dependencies = [
"fs_extra",
"futures",
"hex",
- "http",
+ "http 1.2.0",
"ibc-proto",
"ibc-types",
"ics23",
"jmt",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"metrics-exporter-prometheus",
"metrics-process",
"metrics-tracing-context",
@@ -4425,7 +4598,7 @@ dependencies = [
"rand_chacha",
"rand_core",
"regex",
- "reqwest",
+ "reqwest 0.12.9",
"rocksdb",
"serde",
"serde_json",
@@ -4445,10 +4618,10 @@ dependencies = [
"tonic",
"tonic-reflection",
"tonic-web",
- "tower",
+ "tower 0.4.13",
"tower-abci",
"tower-actor",
- "tower-http",
+ "tower-http 0.6.2",
"tower-service",
"tracing",
"tracing-subscriber 0.3.18",
@@ -4479,7 +4652,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f241d42067ed3ab6a4fece1db720838e1418f36d868585a27931f95d6bc03582"
dependencies = [
"peg-runtime",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
]
@@ -4491,11 +4664,12 @@ checksum = "e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a"
[[package]]
name = "pem"
-version = "1.1.1"
+version = "3.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8"
+checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae"
dependencies = [
- "base64 0.13.1",
+ "base64 0.22.1",
+ "serde",
]
[[package]]
@@ -4522,7 +4696,7 @@ dependencies = [
"blake2b_simd 1.0.2",
"camino",
"cfg-if",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-fmd",
@@ -4535,7 +4709,7 @@ dependencies = [
"ics23",
"im",
"jmt",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"parking_lot",
"penumbra-asset",
@@ -4586,10 +4760,10 @@ dependencies = [
"tonic",
"tonic-reflection",
"tonic-web",
- "tower",
+ "tower 0.4.13",
"tower-abci",
"tower-actor",
- "tower-http",
+ "tower-http 0.6.2",
"tower-service",
"tracing",
"tracing-subscriber 0.3.18",
@@ -4632,7 +4806,7 @@ dependencies = [
"serde_json",
"serde_with",
"sha2 0.10.8",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
]
@@ -4653,7 +4827,7 @@ dependencies = [
"bech32",
"bitvec",
"blake2b_simd 1.0.2",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-rdsa",
@@ -4661,7 +4835,7 @@ dependencies = [
"futures",
"hex",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"pbjson-types",
"penumbra-asset",
@@ -4698,7 +4872,7 @@ dependencies = [
"anyhow",
"axum-server",
"futures",
- "rustls 0.21.12",
+ "rustls 0.23.20",
"rustls-acme",
"tracing",
]
@@ -4740,7 +4914,7 @@ dependencies = [
"rand",
"rand_core",
"regex",
- "reqwest",
+ "reqwest 0.12.9",
"serde",
"serde_json",
"sha2 0.10.8",
@@ -4756,11 +4930,11 @@ dependencies = [
"async-trait",
"base64 0.21.7",
"blake2b_simd 1.0.2",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"futures",
"hex",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"pbjson-types",
"penumbra-asset",
@@ -4788,12 +4962,12 @@ dependencies = [
"async-trait",
"blake2b_simd 1.0.2",
"bytes",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377-rdsa",
"futures",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"penumbra-dex",
"penumbra-fee",
"penumbra-governance",
@@ -4866,7 +5040,7 @@ dependencies = [
"base64 0.21.7",
"bincode",
"blake2b_simd 1.0.2",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-fmd",
@@ -4876,7 +5050,7 @@ dependencies = [
"hex",
"im",
"itertools 0.11.0",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"metrics-exporter-prometheus",
"once_cell",
"parking_lot",
@@ -4904,7 +5078,7 @@ dependencies = [
"tap",
"tendermint",
"tendermint-light-client-verifier",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tokio-stream",
"tonic",
@@ -4918,7 +5092,7 @@ version = "0.80.10"
dependencies = [
"anyhow",
"async-trait",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"getrandom",
"penumbra-asset",
@@ -4944,7 +5118,7 @@ dependencies = [
"proptest",
"rand",
"rand_core",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
]
@@ -4957,13 +5131,13 @@ dependencies = [
"async-trait",
"blake2b_simd 1.0.2",
"bytes",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-rdsa",
"getrandom",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"penumbra-asset",
"penumbra-num",
"penumbra-proto",
@@ -4981,10 +5155,10 @@ version = "0.80.10"
dependencies = [
"anyhow",
"async-trait",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"futures",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"penumbra-asset",
"penumbra-community-pool",
"penumbra-distributions",
@@ -5014,14 +5188,14 @@ dependencies = [
"base64 0.21.7",
"blake2b_simd 1.0.2",
"bytes",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-rdsa",
"futures",
"ibc-types",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"pbjson-types",
"penumbra-asset",
@@ -5046,7 +5220,7 @@ dependencies = [
"serde_json",
"tap",
"tendermint",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tonic",
"tracing",
@@ -5061,13 +5235,13 @@ dependencies = [
"async-trait",
"base64 0.21.7",
"blake2b_simd 1.0.2",
- "cnidarium",
+ "cnidarium 0.81.0",
"futures",
"hex",
"ibc-proto",
"ibc-types",
"ics23",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"num-traits",
"once_cell",
"pbjson-types",
@@ -5085,7 +5259,7 @@ dependencies = [
"time",
"tokio",
"tonic",
- "tower",
+ "tower 0.4.13",
"tracing",
]
@@ -5132,7 +5306,7 @@ dependencies = [
"serde",
"serde_json",
"sha2 0.10.8",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
]
@@ -5159,7 +5333,7 @@ name = "penumbra-mock-client"
version = "0.80.10"
dependencies = [
"anyhow",
- "cnidarium",
+ "cnidarium 0.81.0",
"penumbra-asset",
"penumbra-compact-block",
"penumbra-dex",
@@ -5187,7 +5361,7 @@ dependencies = [
"tap",
"tendermint",
"tendermint-proto",
- "tower",
+ "tower 0.4.13",
"tracing",
]
@@ -5239,7 +5413,7 @@ dependencies = [
"serde",
"serde_json",
"sha2 0.10.8",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
]
@@ -5281,7 +5455,7 @@ dependencies = [
"rand",
"rand_core",
"regex",
- "reqwest",
+ "reqwest 0.12.9",
"serde",
"serde_json",
"sha2 0.10.8",
@@ -5324,12 +5498,13 @@ dependencies = [
"bech32",
"bytes",
"chrono",
- "cnidarium",
+ "cnidarium 0.81.0",
"decaf377-fmd",
"decaf377-rdsa",
"futures",
"hex",
- "http-body",
+ "http-body 1.0.1",
+ "http-body-util",
"ibc-proto",
"ibc-types",
"ics23",
@@ -5343,9 +5518,9 @@ dependencies = [
"tendermint",
"tendermint-proto",
"tendermint-rpc",
- "thiserror",
+ "thiserror 1.0.61",
"tonic",
- "tower",
+ "tower 0.4.13",
"tracing",
]
@@ -5363,14 +5538,14 @@ dependencies = [
"blake2b_simd 1.0.2",
"bytes",
"chrono",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-rdsa",
"getrandom",
"hex",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"pbjson-types",
"penumbra-keys",
@@ -5402,7 +5577,7 @@ dependencies = [
"blake2b_simd 1.0.2",
"bytes",
"chacha20poly1305",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-fmd",
@@ -5413,7 +5588,7 @@ dependencies = [
"ibc-proto",
"ibc-types",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"penumbra-asset",
"penumbra-ibc",
@@ -5434,7 +5609,7 @@ dependencies = [
"serde_json",
"tap",
"tendermint",
- "thiserror",
+ "thiserror 1.0.61",
"tonic",
"tracing",
]
@@ -5455,7 +5630,7 @@ dependencies = [
"base64 0.21.7",
"bech32",
"bitvec",
- "cnidarium",
+ "cnidarium 0.81.0",
"cnidarium-component",
"decaf377",
"decaf377-rdsa",
@@ -5464,7 +5639,7 @@ dependencies = [
"getrandom",
"hex",
"im",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"penumbra-asset",
"penumbra-distributions",
@@ -5520,7 +5695,7 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
]
@@ -5542,6 +5717,7 @@ version = "0.80.10"
dependencies = [
"anyhow",
"axum",
+ "axum-extra",
"axum-server",
"bytes",
"clap",
@@ -5562,7 +5738,7 @@ dependencies = [
"tokio-stream",
"tokio-util 0.7.11",
"tonic",
- "tower-http",
+ "tower-http 0.6.2",
"tracing-subscriber 0.3.18",
]
@@ -5574,8 +5750,8 @@ dependencies = [
"chrono",
"futures",
"hex",
- "http",
- "metrics 0.22.3",
+ "http 1.2.0",
+ "metrics 0.24.1",
"pbjson-types",
"penumbra-proto",
"penumbra-transaction",
@@ -5592,7 +5768,7 @@ dependencies = [
"tokio-stream",
"tokio-util 0.7.11",
"tonic",
- "tower",
+ "tower 0.4.13",
"tower-service",
"tracing",
"url",
@@ -5612,7 +5788,7 @@ version = "0.80.10"
dependencies = [
"futures",
"hex",
- "http",
+ "http 1.2.0",
"pin-project",
"pin-project-lite",
"sha2 0.10.8",
@@ -5622,7 +5798,7 @@ dependencies = [
"tokio-stream",
"tokio-util 0.7.11",
"tonic",
- "tower",
+ "tower 0.4.13",
"tower-service",
"tracing",
]
@@ -5677,7 +5853,7 @@ dependencies = [
"serde_json",
"sha2 0.10.8",
"tendermint",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tracing",
]
@@ -5712,7 +5888,7 @@ dependencies = [
"genawaiter",
"hex",
"ibc-types",
- "metrics 0.22.3",
+ "metrics 0.24.1",
"once_cell",
"parking_lot",
"pbjson-types",
@@ -5787,7 +5963,7 @@ dependencies = [
"serde_json",
"tokio",
"tonic",
- "tower",
+ "tower 0.4.13",
"tracing",
]
@@ -5804,7 +5980,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset",
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
]
[[package]]
@@ -5822,9 +5998,9 @@ version = "1.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -5875,7 +6051,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae1d5c74c9876f070d3e8fd503d748c7d974c3e48da8f41350fa5222ef9b4391"
dependencies = [
"atomic-waker",
- "fastrand 2.1.0",
+ "fastrand",
"futures-io",
]
@@ -5973,18 +6149,17 @@ dependencies = [
[[package]]
name = "polling"
-version = "2.8.0"
+version = "3.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
+checksum = "a604568c3202727d1507653cb121dbd627a58684eb09a820fd746bee38b4442f"
dependencies = [
- "autocfg",
- "bitflags 1.3.2",
"cfg-if",
"concurrent-queue",
- "libc",
- "log",
+ "hermit-abi 0.4.0",
"pin-project-lite",
- "windows-sys 0.48.0",
+ "rustix",
+ "tracing",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -6117,8 +6292,8 @@ version = "0.2.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e"
dependencies = [
- "proc-macro2 1.0.86",
- "syn 2.0.68",
+ "proc-macro2 1.0.92",
+ "syn 2.0.90",
]
[[package]]
@@ -6149,7 +6324,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "18f33027081eba0a6d8aba6d1b1c3a3be58cbb12106341c2d5759fcd9b5277e7"
dependencies = [
"proc-macro-error-attr 0.4.12",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
"version_check",
@@ -6162,7 +6337,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr 1.0.4",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
"version_check",
@@ -6174,7 +6349,7 @@ version = "0.4.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a5b4b77fdb63c1eca72173d68d24501c54ab1269409f6b672c85deb18af69de"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
"syn-mid",
@@ -6187,7 +6362,7 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"version_check",
]
@@ -6204,7 +6379,7 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "557facecbf90ff79faea80a08230d10c812016aa19198ed07d06de61f965b5cc"
dependencies = [
- "unicode-xid 0.1.0",
+ "unicode-xid",
]
[[package]]
@@ -6213,14 +6388,14 @@ version = "0.4.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
dependencies = [
- "unicode-xid 0.1.0",
+ "unicode-xid",
]
[[package]]
name = "proc-macro2"
-version = "1.0.86"
+version = "1.0.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
+checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
dependencies = [
"unicode-ident",
]
@@ -6235,7 +6410,7 @@ dependencies = [
"hex",
"lazy_static",
"procfs-core",
- "rustix 0.38.34",
+ "rustix",
]
[[package]]
@@ -6281,9 +6456,9 @@ dependencies = [
[[package]]
name = "prost"
-version = "0.12.6"
+version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29"
+checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec"
dependencies = [
"bytes",
"prost-derive",
@@ -6291,13 +6466,12 @@ dependencies = [
[[package]]
name = "prost-build"
-version = "0.12.6"
+version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4"
+checksum = "d0f3e5beed80eb580c68e2c600937ac2c4eedabdfd5ef1e5b7ea4f3fba84497b"
dependencies = [
- "bytes",
"heck 0.5.0",
- "itertools 0.12.1",
+ "itertools 0.13.0",
"log",
"multimap",
"once_cell",
@@ -6306,28 +6480,28 @@ dependencies = [
"prost",
"prost-types",
"regex",
- "syn 2.0.68",
+ "syn 2.0.90",
"tempfile",
]
[[package]]
name = "prost-derive"
-version = "0.12.6"
+version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
+checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3"
dependencies = [
"anyhow",
- "itertools 0.12.1",
- "proc-macro2 1.0.86",
+ "itertools 0.13.0",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
name = "prost-reflect"
-version = "0.13.1"
+version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f5eec97d5d34bdd17ad2db2219aabf46b054c6c41bd5529767c9ce55be5898f"
+checksum = "20ae544fca2892fd4b7e9ff26cba1090cedf1d4d95c2aded1af15d2f93f270b8"
dependencies = [
"once_cell",
"prost",
@@ -6336,9 +6510,9 @@ dependencies = [
[[package]]
name = "prost-types"
-version = "0.12.6"
+version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0"
+checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc"
dependencies = [
"prost",
]
@@ -6379,7 +6553,7 @@ version = "1.0.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
]
[[package]]
@@ -6515,12 +6689,13 @@ dependencies = [
[[package]]
name = "rcgen"
-version = "0.10.0"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b"
+checksum = "54077e1872c46788540de1ea3d7f4ccb1983d12f9aa909b234468676c1a36779"
dependencies = [
+ "aws-lc-rs",
"pem",
- "ring 0.16.20",
+ "rustls-pki-types",
"time",
"yasna",
]
@@ -6557,7 +6732,7 @@ checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
dependencies = [
"getrandom",
"libredox 0.1.3",
- "thiserror",
+ "thiserror 1.0.61",
]
[[package]]
@@ -6615,31 +6790,72 @@ dependencies = [
"encoding_rs",
"futures-core",
"futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-rustls",
- "hyper-tls",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "hyper 0.14.31",
+ "hyper-rustls 0.24.2",
"ipnet",
"js-sys",
"log",
"mime",
- "native-tls",
"once_cell",
"percent-encoding",
"pin-project-lite",
"rustls 0.21.12",
- "rustls-native-certs",
+ "rustls-native-certs 0.6.3",
"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-rustls 0.24.1",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "winreg",
+]
+
+[[package]]
+name = "reqwest"
+version = "0.12.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f"
+dependencies = [
+ "base64 0.22.1",
+ "bytes",
+ "encoding_rs",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "h2 0.4.7",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "hyper 1.5.1",
+ "hyper-rustls 0.27.3",
+ "hyper-tls",
+ "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.2",
+ "system-configuration 0.6.1",
"tokio",
"tokio-native-tls",
- "tokio-rustls",
"tokio-util 0.7.11",
"tower-service",
"url",
@@ -6647,7 +6863,7 @@ dependencies = [
"wasm-bindgen-futures",
"wasm-streams",
"web-sys",
- "winreg",
+ "windows-registry",
]
[[package]]
@@ -6657,22 +6873,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
dependencies = [
"hmac",
- "subtle",
-]
-
-[[package]]
-name = "ring"
-version = "0.16.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
-dependencies = [
- "cc",
- "libc",
- "once_cell",
- "spin 0.5.2",
- "untrusted 0.7.1",
- "web-sys",
- "winapi",
+ "subtle",
]
[[package]]
@@ -6685,7 +6886,7 @@ dependencies = [
"cfg-if",
"getrandom",
"libc",
- "spin 0.9.8",
+ "spin",
"untrusted 0.9.0",
"windows-sys 0.52.0",
]
@@ -6815,20 +7016,6 @@ dependencies = [
"nom",
]
-[[package]]
-name = "rustix"
-version = "0.37.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
-dependencies = [
- "bitflags 1.3.2",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys 0.48.0",
-]
-
[[package]]
name = "rustix"
version = "0.38.34"
@@ -6838,7 +7025,7 @@ dependencies = [
"bitflags 2.6.0",
"errno",
"libc",
- "linux-raw-sys 0.4.14",
+ "linux-raw-sys",
"windows-sys 0.52.0",
]
@@ -6849,19 +7036,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e"
dependencies = [
"log",
- "ring 0.17.8",
+ "ring",
"rustls-webpki 0.101.7",
"sct",
]
[[package]]
name = "rustls"
-version = "0.23.19"
+version = "0.23.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934b404430bb06b3fae2cba809eb45a1ab1aecd64491213d7c3301b88393f8d1"
+checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b"
dependencies = [
+ "aws-lc-rs",
+ "log",
"once_cell",
- "ring 0.17.8",
+ "ring",
"rustls-pki-types",
"rustls-webpki 0.102.8",
"subtle",
@@ -6870,31 +7059,30 @@ dependencies = [
[[package]]
name = "rustls-acme"
-version = "0.7.7"
+version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0e7754a9b89270815d1b119cdd35489380dc3598e24a952bf8a167c00b68b61"
+checksum = "54f05935c0b1d7c5981c40b768c5d5ed96a43f5cb5166f8f5be09779c5825697"
dependencies = [
"async-io",
"async-trait",
"async-web-client",
+ "aws-lc-rs",
"axum-server",
- "base64 0.13.1",
+ "base64 0.22.1",
"blocking",
"chrono",
"futures",
"futures-rustls",
- "http",
+ "http 1.2.0",
"log",
"pem",
"rcgen",
- "ring 0.16.20",
- "rustls 0.21.12",
"serde",
"serde_json",
- "thiserror",
+ "thiserror 2.0.6",
"tokio",
"tokio-util 0.7.11",
- "webpki-roots 0.25.4",
+ "webpki-roots",
"x509-parser",
]
@@ -6910,6 +7098,19 @@ dependencies = [
"security-framework",
]
+[[package]]
+name = "rustls-native-certs"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile 2.2.0",
+ "rustls-pki-types",
+ "schannel",
+ "security-framework",
+]
+
[[package]]
name = "rustls-pemfile"
version = "1.0.4"
@@ -6940,7 +7141,7 @@ version = "0.101.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
dependencies = [
- "ring 0.17.8",
+ "ring",
"untrusted 0.9.0",
]
@@ -6950,7 +7151,8 @@ version = "0.102.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9"
dependencies = [
- "ring 0.17.8",
+ "aws-lc-rs",
+ "ring",
"rustls-pki-types",
"untrusted 0.9.0",
]
@@ -7065,7 +7267,7 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
dependencies = [
- "ring 0.17.8",
+ "ring",
"untrusted 0.9.0",
]
@@ -7135,9 +7337,9 @@ version = "1.0.203"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7146,7 +7348,7 @@ version = "1.0.118"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d947f6b3163d8857ea16c4fa0dd4840d52f3041039a85decd46867eb1abef2e4"
dependencies = [
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"itoa",
"ryu",
"serde",
@@ -7168,9 +7370,9 @@ version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7198,7 +7400,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f1b15838534b38fb67ffe60033fe3ffad48f916c175e8baa0400e0cdb958dec"
dependencies = [
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7223,7 +7425,7 @@ dependencies = [
"chrono",
"hex",
"indexmap 1.9.3",
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"serde",
"serde_derive",
"serde_json",
@@ -7238,9 +7440,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
dependencies = [
"darling",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7336,7 +7538,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
dependencies = [
"libc",
- "mio",
+ "mio 0.8.11",
"signal-hook",
]
@@ -7377,9 +7579,9 @@ dependencies = [
[[package]]
name = "sketches-ddsketch"
-version = "0.2.2"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85636c14b73d81f541e525f585c0a2109e6744e1565b5c1668e31c70c10ed65c"
+checksum = "c1e9a774a6c28142ac54bb25d25562e6bcf957493a184f15ad4eebccb23e410a"
[[package]]
name = "slab"
@@ -7399,16 +7601,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "socket2"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
-dependencies = [
- "libc",
- "winapi",
-]
-
[[package]]
name = "socket2"
version = "0.5.7"
@@ -7419,12 +7611,6 @@ dependencies = [
"windows-sys 0.52.0",
]
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
[[package]]
name = "spin"
version = "0.9.8"
@@ -7481,7 +7667,7 @@ dependencies = [
"crc",
"crossbeam-queue",
"either",
- "event-listener 5.3.1",
+ "event-listener",
"futures-channel",
"futures-core",
"futures-intrusive",
@@ -7490,25 +7676,25 @@ dependencies = [
"hashbrown 0.14.5",
"hashlink",
"hex",
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"log",
"memchr",
"once_cell",
"paste",
"percent-encoding",
- "rustls 0.23.19",
+ "rustls 0.23.20",
"rustls-pemfile 2.2.0",
"serde",
"serde_json",
"sha2 0.10.8",
"smallvec",
"sqlformat",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tokio-stream",
"tracing",
"url",
- "webpki-roots 0.26.7",
+ "webpki-roots",
]
[[package]]
@@ -7517,11 +7703,11 @@ version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"sqlx-core",
"sqlx-macros-core",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7535,7 +7721,7 @@ dependencies = [
"heck 0.5.0",
"hex",
"once_cell",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"serde",
"serde_json",
@@ -7544,7 +7730,7 @@ dependencies = [
"sqlx-mysql",
"sqlx-postgres",
"sqlx-sqlite",
- "syn 2.0.68",
+ "syn 2.0.90",
"tempfile",
"tokio",
"url",
@@ -7589,7 +7775,7 @@ dependencies = [
"smallvec",
"sqlx-core",
"stringprep",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
"whoami",
]
@@ -7630,7 +7816,7 @@ dependencies = [
"smallvec",
"sqlx-core",
"stringprep",
- "thiserror",
+ "thiserror 1.0.61",
"tracing",
"whoami",
]
@@ -7700,10 +7886,10 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "78ad9e09554f0456d67a69c1584c9798ba733a5b50349a6c0d0948710523922d"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"structmeta-derive",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7712,9 +7898,9 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7723,15 +7909,6 @@ version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cae14b91c7d11c9a851d3fbc80a963198998c2a64eec840477fa92d8ce9b70bb"
-[[package]]
-name = "strum"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"
-dependencies = [
- "strum_macros 0.24.3",
-]
-
[[package]]
name = "strum_macros"
version = "0.23.1"
@@ -7739,20 +7916,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5bb0dc7ee9c15cea6199cde9a127fa16a4c5819af85395457ad72d68edc85a38"
dependencies = [
"heck 0.3.3",
- "proc-macro2 1.0.86",
- "quote 1.0.36",
- "rustversion",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "strum_macros"
-version = "0.24.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
-dependencies = [
- "heck 0.4.1",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"rustversion",
"syn 1.0.109",
@@ -7796,7 +7960,7 @@ dependencies = [
"decaf377",
"futures",
"hex",
- "http-body",
+ "http-body 1.0.1",
"metrics-tracing-context",
"penumbra-asset",
"penumbra-keys",
@@ -7812,7 +7976,7 @@ dependencies = [
"tokio",
"tokio-stream",
"tonic",
- "tower",
+ "tower 0.4.13",
"tracing",
"tracing-subscriber 0.3.18",
"url",
@@ -7826,7 +7990,7 @@ checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
dependencies = [
"proc-macro2 0.4.30",
"quote 0.6.13",
- "unicode-xid 0.1.0",
+ "unicode-xid",
]
[[package]]
@@ -7835,18 +7999,18 @@ version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"unicode-ident",
]
[[package]]
name = "syn"
-version = "2.0.68"
+version = "2.0.90"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9"
+checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"unicode-ident",
]
@@ -7857,7 +8021,7 @@ version = "0.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fea305d57546cc8cd04feb14b62ec84bf17f50e3f7b12560d7bfa9265f39d9ed"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"syn 1.0.109",
]
@@ -7869,9 +8033,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b"
dependencies = [
"proc-macro-error 1.0.4",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -7880,16 +8044,24 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+[[package]]
+name = "sync_wrapper"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263"
+dependencies = [
+ "futures-core",
+]
+
[[package]]
name = "synstructure"
-version = "0.12.6"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
+checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 1.0.109",
- "unicode-xid 0.2.4",
+ "syn 2.0.90",
]
[[package]]
@@ -7900,7 +8072,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]]
@@ -7913,6 +8096,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 = "tap"
version = "1.0.1"
@@ -7937,16 +8130,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
dependencies = [
"cfg-if",
- "fastrand 2.1.0",
- "rustix 0.38.34",
+ "fastrand",
+ "rustix",
"windows-sys 0.52.0",
]
[[package]]
name = "tendermint"
-version = "0.34.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15ab8f0a25d0d2ad49ac615da054d6a76aa6603ff95f7d18bafdd34450a1a04b"
+version = "0.40.0"
+source = "git+https://github.com/informalsystems/tendermint-rs/?rev=refs/pull/1480/head#adc8b44f1559df7445b6ec67ced7c554eab189b4"
dependencies = [
"bytes",
"digest 0.10.7",
@@ -7957,7 +8149,6 @@ dependencies = [
"num-traits",
"once_cell",
"prost",
- "prost-types",
"serde",
"serde_bytes",
"serde_json",
@@ -7973,23 +8164,21 @@ dependencies = [
[[package]]
name = "tendermint-config"
-version = "0.34.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1a02da769166e2052cd537b1a97c78017632c2d9e19266367b27e73910434fc"
+version = "0.40.0"
+source = "git+https://github.com/informalsystems/tendermint-rs/?rev=refs/pull/1480/head#adc8b44f1559df7445b6ec67ced7c554eab189b4"
dependencies = [
"flex-error",
"serde",
"serde_json",
"tendermint",
- "toml 0.5.11",
+ "toml 0.8.15",
"url",
]
[[package]]
name = "tendermint-light-client-verifier"
-version = "0.34.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b8090d0eef9ad57b1b913b5e358e26145c86017e87338136509b94383a4af25"
+version = "0.40.0"
+source = "git+https://github.com/informalsystems/tendermint-rs/?rev=refs/pull/1480/head#adc8b44f1559df7445b6ec67ced7c554eab189b4"
dependencies = [
"derive_more",
"flex-error",
@@ -8000,16 +8189,12 @@ dependencies = [
[[package]]
name = "tendermint-proto"
-version = "0.34.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b797dd3d2beaaee91d2f065e7bdf239dc8d80bba4a183a288bc1279dd5a69a1e"
+version = "0.40.0"
+source = "git+https://github.com/informalsystems/tendermint-rs/?rev=refs/pull/1480/head#adc8b44f1559df7445b6ec67ced7c554eab189b4"
dependencies = [
"bytes",
"flex-error",
- "num-derive",
- "num-traits",
"prost",
- "prost-types",
"serde",
"serde_bytes",
"subtle-encoding",
@@ -8018,9 +8203,8 @@ dependencies = [
[[package]]
name = "tendermint-rpc"
-version = "0.34.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71afae8bb5f6b14ed48d4e1316a643b6c2c3cbad114f510be77b4ed20b7b3e42"
+version = "0.40.0"
+source = "git+https://github.com/informalsystems/tendermint-rs/?rev=refs/pull/1480/head#adc8b44f1559df7445b6ec67ced7c554eab189b4"
dependencies = [
"async-trait",
"bytes",
@@ -8030,7 +8214,7 @@ dependencies = [
"peg",
"pin-project",
"rand",
- "reqwest",
+ "reqwest 0.11.27",
"semver",
"serde",
"serde_bytes",
@@ -8040,7 +8224,7 @@ dependencies = [
"tendermint",
"tendermint-config",
"tendermint-proto",
- "thiserror",
+ "thiserror 1.0.61",
"time",
"tokio",
"tracing",
@@ -8082,10 +8266,10 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8361c808554228ad09bfed70f5c823caf8a3450b6881cc3a38eb57e8c08c1d9"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
"structmeta",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8100,7 +8284,16 @@ version = "1.0.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709"
dependencies = [
- "thiserror-impl",
+ "thiserror-impl 1.0.61",
+]
+
+[[package]]
+name = "thiserror"
+version = "2.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8fec2a1820ebd077e2b90c4df007bebf344cd394098a13c563957d0afc83ea47"
+dependencies = [
+ "thiserror-impl 2.0.6",
]
[[package]]
@@ -8109,9 +8302,20 @@ version = "1.0.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
+ "quote 1.0.36",
+ "syn 2.0.90",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "2.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d65750cab40f4ff1929fb1ba509e9914eb756131cef4210da8d5d700d26f6312"
+dependencies = [
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8182,43 +8386,32 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokio"
-version = "1.38.0"
+version = "1.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a"
+checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551"
dependencies = [
"backtrace",
"bytes",
"libc",
- "mio",
- "num_cpus",
+ "mio 1.0.3",
"parking_lot",
"pin-project-lite",
"signal-hook-registry",
- "socket2 0.5.7",
+ "socket2",
"tokio-macros",
"tracing",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "tokio-io-timeout"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf"
-dependencies = [
- "pin-project-lite",
- "tokio",
+ "windows-sys 0.52.0",
]
[[package]]
name = "tokio-macros"
-version = "2.3.0"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a"
+checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8241,11 +8434,21 @@ dependencies = [
"tokio",
]
+[[package]]
+name = "tokio-rustls"
+version = "0.26.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37"
+dependencies = [
+ "rustls 0.23.20",
+ "tokio",
+]
+
[[package]]
name = "tokio-stream"
-version = "0.1.15"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
+checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047"
dependencies = [
"futures-core",
"pin-project-lite",
@@ -8299,13 +8502,25 @@ version = "0.7.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257"
dependencies = [
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"serde",
"serde_spanned",
"toml_datetime",
"toml_edit 0.19.15",
]
+[[package]]
+name = "toml"
+version = "0.8.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac2caab0bf757388c6c0ae23b3293fdb463fee59434529014f85e3263b995c28"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit 0.22.16",
+]
+
[[package]]
name = "toml_datetime"
version = "0.6.6"
@@ -8321,11 +8536,11 @@ version = "0.19.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
dependencies = [
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
"serde",
"serde_spanned",
"toml_datetime",
- "winnow",
+ "winnow 0.5.40",
]
[[package]]
@@ -8334,45 +8549,62 @@ version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
dependencies = [
- "indexmap 2.2.6",
+ "indexmap 2.7.0",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "278f3d518e152219c994ce877758516bca5e118eaed6996192a774fb9fbf0788"
+dependencies = [
+ "indexmap 2.7.0",
+ "serde",
+ "serde_spanned",
"toml_datetime",
- "winnow",
+ "winnow 0.6.20",
]
[[package]]
name = "tonic"
-version = "0.10.2"
-source = "git+https://github.com/penumbra-zone/tonic.git?tag=v0.10.3-penumbra#db355dd7029d1404ffa21639f596da58024364f0"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52"
dependencies = [
"async-stream",
"async-trait",
"axum",
- "base64 0.21.7",
+ "base64 0.22.1",
"bytes",
- "h2",
- "http",
- "http-body",
- "hyper",
+ "h2 0.4.7",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "hyper 1.5.1",
"hyper-timeout",
+ "hyper-util",
"percent-encoding",
"pin-project",
"prost",
- "rustls 0.21.12",
- "rustls-pemfile 1.0.4",
+ "rustls-pemfile 2.2.0",
+ "socket2",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.26.1",
"tokio-stream",
- "tower",
+ "tower 0.4.13",
"tower-layer",
"tower-service",
"tracing",
- "webpki-roots 0.25.4",
+ "webpki-roots",
]
[[package]]
name = "tonic-reflection"
-version = "0.10.2"
-source = "git+https://github.com/penumbra-zone/tonic.git?tag=v0.10.3-penumbra#db355dd7029d1404ffa21639f596da58024364f0"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "878d81f52e7fcfd80026b7fdb6a9b578b3c3653ba987f87f0dce4b64043cba27"
dependencies = [
"prost",
"prost-types",
@@ -8383,18 +8615,19 @@ dependencies = [
[[package]]
name = "tonic-web"
-version = "0.10.2"
-source = "git+https://github.com/penumbra-zone/tonic.git?tag=v0.10.3-penumbra#db355dd7029d1404ffa21639f596da58024364f0"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5299dd20801ad736dccb4a5ea0da7376e59cd98f213bf1c3d478cf53f4834b58"
dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
"bytes",
- "http",
- "http-body",
- "hyper",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
"pin-project",
"tokio-stream",
"tonic",
- "tower-http",
+ "tower-http 0.5.2",
"tower-layer",
"tower-service",
"tracing",
@@ -8421,11 +8654,27 @@ dependencies = [
"tracing",
]
+[[package]]
+name = "tower"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "pin-project-lite",
+ "sync_wrapper 1.0.2",
+ "tokio",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
[[package]]
name = "tower-abci"
-version = "0.11.1"
+version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d4826f3df3e9a37083d978cae73f020bcdf6143956b7dfc1bd6050b4e16367c"
+checksum = "4f3458c29aae68bfc21edc8482ee7ecce8e5dfbb0d07a8034f96fa304525391f"
dependencies = [
"bytes",
"futures",
@@ -8436,7 +8685,7 @@ dependencies = [
"tokio",
"tokio-stream",
"tokio-util 0.6.10",
- "tower",
+ "tower 0.4.13",
"tracing",
]
@@ -8448,26 +8697,39 @@ checksum = "b882e5e82ee7440a08335f4d5a2edd9f7678b2cba73eac4826b53c22fd76fdd3"
dependencies = [
"futures",
"pin-project",
- "thiserror",
+ "thiserror 1.0.61",
"tokio",
"tokio-util 0.7.11",
- "tower",
+ "tower 0.4.13",
"tracing",
]
[[package]]
name = "tower-http"
-version = "0.4.4"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140"
+checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
dependencies = [
"bitflags 2.6.0",
"bytes",
- "futures-core",
- "futures-util",
- "http",
- "http-body",
- "http-range-header",
+ "http 1.2.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "pin-project-lite",
+ "tower-layer",
+ "tower-service",
+]
+
+[[package]]
+name = "tower-http"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697"
+dependencies = [
+ "bitflags 2.6.0",
+ "bytes",
+ "http 1.2.0",
+ "http-body 1.0.1",
"pin-project-lite",
"tower-layer",
"tower-service",
@@ -8476,15 +8738,15 @@ dependencies = [
[[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"
@@ -8504,9 +8766,9 @@ version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8641,12 +8903,6 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-[[package]]
-name = "unicode-xid"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
-
[[package]]
name = "unicode_categories"
version = "0.1.1"
@@ -8687,12 +8943,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "utf-8"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
-
[[package]]
name = "uuid"
version = "1.9.1"
@@ -8728,9 +8978,9 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b3fd98999db9227cf28e59d83e1f120f42bc233d4b152e8fab9bc87d5bb1e0f8"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8742,12 +8992,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "waker-fn"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
-
[[package]]
name = "walkdir"
version = "2.5.0"
@@ -8798,9 +9042,9 @@ dependencies = [
"bumpalo",
"log",
"once_cell",
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
"wasm-bindgen-shared",
]
@@ -8832,9 +9076,9 @@ version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -8868,12 +9112,6 @@ dependencies = [
"wasm-bindgen",
]
-[[package]]
-name = "webpki-roots"
-version = "0.25.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
-
[[package]]
name = "webpki-roots"
version = "0.26.7"
@@ -8883,6 +9121,18 @@ dependencies = [
"rustls-pki-types",
]
+[[package]]
+name = "which"
+version = "4.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
+dependencies = [
+ "either",
+ "home",
+ "once_cell",
+ "rustix",
+]
+
[[package]]
name = "whoami"
version = "1.5.1"
@@ -8931,7 +9181,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143"
dependencies = [
"windows-core 0.57.0",
- "windows-targets 0.52.5",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -8940,7 +9190,7 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
dependencies = [
- "windows-targets 0.52.5",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -8951,8 +9201,8 @@ checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d"
dependencies = [
"windows-implement",
"windows-interface",
- "windows-result",
- "windows-targets 0.52.5",
+ "windows-result 0.1.2",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -8961,9 +9211,9 @@ version = "0.57.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -8972,9 +9222,20 @@ version = "0.57.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
+]
+
+[[package]]
+name = "windows-registry"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0"
+dependencies = [
+ "windows-result 0.2.0",
+ "windows-strings",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -8983,7 +9244,26 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8"
dependencies = [
- "windows-targets 0.52.5",
+ "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 0.2.0",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -9001,7 +9281,16 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [
- "windows-targets 0.52.5",
+ "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]]
@@ -9021,18 +9310,18 @@ dependencies = [
[[package]]
name = "windows-targets"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
dependencies = [
- "windows_aarch64_gnullvm 0.52.5",
- "windows_aarch64_msvc 0.52.5",
- "windows_i686_gnu 0.52.5",
+ "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.5",
- "windows_x86_64_gnu 0.52.5",
- "windows_x86_64_gnullvm 0.52.5",
- "windows_x86_64_msvc 0.52.5",
+ "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]]
@@ -9043,9 +9332,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
[[package]]
name = "windows_aarch64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
[[package]]
name = "windows_aarch64_msvc"
@@ -9055,9 +9344,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
[[package]]
name = "windows_aarch64_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
[[package]]
name = "windows_i686_gnu"
@@ -9067,15 +9356,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
[[package]]
name = "windows_i686_gnu"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
[[package]]
name = "windows_i686_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
[[package]]
name = "windows_i686_msvc"
@@ -9085,9 +9374,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
[[package]]
name = "windows_i686_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
[[package]]
name = "windows_x86_64_gnu"
@@ -9097,9 +9386,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
[[package]]
name = "windows_x86_64_gnu"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
[[package]]
name = "windows_x86_64_gnullvm"
@@ -9109,9 +9398,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
[[package]]
name = "windows_x86_64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
[[package]]
name = "windows_x86_64_msvc"
@@ -9121,9 +9410,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
[[package]]
name = "windows_x86_64_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "winnow"
@@ -9134,6 +9423,15 @@ dependencies = [
"memchr",
]
+[[package]]
+name = "winnow"
+version = "0.6.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b"
+dependencies = [
+ "memchr",
+]
+
[[package]]
name = "winreg"
version = "0.50.0"
@@ -9155,19 +9453,18 @@ dependencies = [
[[package]]
name = "x509-parser"
-version = "0.13.2"
+version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9fb9bace5b5589ffead1afb76e43e34cff39cd0f3ce7e170ae0c29e53b88eb1c"
+checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69"
dependencies = [
"asn1-rs",
- "base64 0.13.1",
"data-encoding",
"der-parser",
"lazy_static",
"nom",
"oid-registry",
"rusticata-macros",
- "thiserror",
+ "thiserror 1.0.61",
"time",
]
@@ -9178,8 +9475,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
dependencies = [
"libc",
- "linux-raw-sys 0.4.14",
- "rustix 0.38.34",
+ "linux-raw-sys",
+ "rustix",
]
[[package]]
@@ -9212,9 +9509,9 @@ version = "0.7.34"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
@@ -9232,9 +9529,9 @@ version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
- "proc-macro2 1.0.86",
+ "proc-macro2 1.0.92",
"quote 1.0.36",
- "syn 2.0.68",
+ "syn 2.0.90",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 5f31590aae..3a543177ff 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -123,8 +123,9 @@ ark-std = { default-features = false, version = "0.4" }
assert_cmd = { version = "2.0" }
async-stream = { version = "0.3.5" }
async-trait = { version = "0.1.52" }
-axum = { version = "0.6" }
-axum-server = { version = "0.5" }
+axum = { version = "0.7.9" }
+axum-extra = { version = "0.9.6" }
+axum-server = { version = "0.7.1" }
base64 = { version = "0.21.2" }
bech32 = { version = "0.8.1" }
bincode = { version = "1.3.3" }
@@ -135,7 +136,7 @@ camino = { version = "1" }
chacha20poly1305 = { version = "0.9.0" }
chrono = { default-features = false, version = "0.4" }
clap = { version = "3.2" }
-cnidarium = { default-features = false, path = "crates/cnidarium" }
+cnidarium = { default-features = false, version = "0.81.0" }
cnidarium-component = { default-features = false, path = "crates/cnidarium-component" }
cometindex = { path = "crates/util/cometindex" }
criterion = { version = "0.4" }
@@ -149,25 +150,26 @@ ed25519-consensus = { version = "2.1" }
ethnum = { version = "1.3" }
futures = { version = "0.3.28" }
hex = { version = "0.4.3" }
-http = { version = "0.2.9" }
-http-body = { version = "0.4.5" }
+http = { version = "1.2.0" }
+http-body = { version = "1.0.1" }
+http-body-util = { version = "0.1.2" }
humantime = { version = "2.1" }
-ibc-proto = { default-features = false, version = "0.41.0" }
-ibc-types = { default-features = false, version = "0.12.0" }
+ibc-proto = { default-features = false, version = "0.51.1" }
+ibc-types = { default-features = false, version = "0.15.0" }
ibig = { version = "0.3" }
-ics23 = { version = "0.11.3" }
+ics23 = { version = "0.12.0" }
im = { version = "^15.1.0" }
indicatif = { version = "0.16" }
-jmt = { version = "0.10", features = ["migration"] }
-metrics = { version = "0.22" }
-metrics-exporter-prometheus = { version = "0.13", features = ["http-listener"] }
-metrics-tracing-context = { version = "0.15" }
+jmt = { version = "0.11", features = ["migration"] }
+metrics = { version = "0.24.1" }
+metrics-exporter-prometheus = { version = "0.16", features = ["http-listener"] }
+metrics-tracing-context = { version = "0.17.0" }
num-bigint = { version = "0.4" }
num-traits = { default-features = false, version = "0.2.15" }
once_cell = { version = "1.8" }
parking_lot = { version = "0.12.1" }
-pbjson = { version = "0.6" }
-pbjson-types = { version = "0.6.0" }
+pbjson = { version = "0.7.0" }
+pbjson-types = { version = "0.7.0" }
penumbra-app = { default-features = false, path = "crates/core/app" }
penumbra-asset = { default-features = false, path = "crates/core/asset" }
penumbra-community-pool = { default-features = false, path = "crates/core/component/community-pool" }
@@ -197,14 +199,13 @@ penumbra-transaction = { default-features = false, path = "crates/co
penumbra-txhash = { default-features = false, path = "crates/core/txhash" }
penumbra-view = { path = "crates/view" }
penumbra-wallet = { path = "crates/wallet" }
-penumbra-extension = { path = "crates/penumbra-extension", default-features = false }
pin-project = { version = "1.0.12" }
pin-project-lite = { version = "0.2.9" }
poseidon377 = { version = "1.2.0" }
proptest = { version = "1" }
proptest-derive = { version = "0.3" }
-prost = { version = "0.12.3" }
-prost-types = { version = "0.12" }
+prost = { version = "0.13.4" }
+prost-types = { version = "0.13.4" }
r2d2 = { version = "0.8" }
r2d2_sqlite = { version = "0.25" }
rand = { version = "0.8.5" }
@@ -220,33 +221,46 @@ sha2 = { version = "0.10" }
sqlx = { version = "0.8", features = ["bigdecimal", "postgres", "runtime-tokio", "tls-rustls"] }
tap = "1.0.1"
tempfile = { version = "3.3.0" }
-tendermint = { default-features = false, version = "0.34.0" }
-tendermint-config = { version = "0.34.0" }
-tendermint-light-client-verifier = { version = "0.34.0" }
-tendermint-proto = { version = "0.34.0" }
-tendermint-rpc = { version = "0.34.0" }
+tendermint = { default-features = false, version = "0.40.0" }
+tendermint-config = { version = "0.40.0" }
+tendermint-light-client-verifier = { version = "0.40.0" }
+tendermint-proto = { version = "0.40.0" }
+tendermint-rpc = { version = "0.40.0" }
termion = { version = "3" }
thiserror = { version = "1.0" }
time = { version = "0.3" }
-tokio = { version = "1.3" }
+tokio = { version = "1.39.0" }
tokio-stream = { version = "0.1.8" }
tokio-util = { version = "0.7" }
toml = { version = "0.7" }
-tonic = { version = "0.10" }
-tonic-reflection = { version = "0.10.0" }
-tonic-web = { version = "0.10.0" }
+tonic = { version = "0.12.3" }
+tonic-reflection = { version = "0.12.3" }
+tonic-web = { version = "0.12.3" }
tower = { version = "0.4.0" }
-tower-http = { version = "0.4" }
+tower-http = { version = "0.6.2" }
tower-service = { version = "0.3.2" }
tracing = { version = "0.1" }
tracing-subscriber = { version = "0.3.17", features = ["env-filter"] }
url = { version = "2.2" }
getrandom = { version = "0.2", default-features = false }
-# TODO(kate):
-# temporarily point these dependencies to a tag in the penumbra-zone fork.
-# see #4392, #4400, and hyperium/tonic#1701 for more information.
+# TODO: Don't use main; very bad bad. Use a rev.
+# TODO: wait for informalsystems to release a patch; see https://github.com/informalsystems/tendermint-rs/pull/1479.
[patch.crates-io]
-tonic = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
-tonic-reflection = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
-tonic-web = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
+tendermint = { git = "https://github.com/informalsystems/tendermint-rs/", rev = "refs/pull/1480/head" }
+tendermint-config = { git = "https://github.com/informalsystems/tendermint-rs/", rev = "refs/pull/1480/head" }
+tendermint-light-client-verifier = { git = "https://github.com/informalsystems/tendermint-rs/", rev = "refs/pull/1480/head" }
+tendermint-proto = { git = "https://github.com/informalsystems/tendermint-rs/", rev = "refs/pull/1480/head" }
+tendermint-rpc = { git = "https://github.com/informalsystems/tendermint-rs/", rev = "refs/pull/1480/head" }
+# tendermint = { path = "../tendermint-rs/tendermint" }
+# tendermint-config = { path = "../tendermint-rs/config" }
+# tendermint-light-client-verifier = { path = "../tendermint-rs/light-client-verifier" }
+# tendermint-proto = { path = "../tendermint-rs/proto" }
+# tendermint-rpc = { path = "../tendermint-rs/rpc" }
+# # TODO(kate):
+# # temporarily point these dependencies to a tag in the penumbra-zone fork.
+# # see #4392, #4400, and hyperium/tonic#1701 for more information.
+# [patch.crates-io]
+# tonic = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
+# tonic-reflection = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
+# tonic-web = { git = "https://github.com/penumbra-zone/tonic.git", tag = "v0.10.3-penumbra" }
diff --git a/crates/bench/Cargo.toml b/crates/bench/Cargo.toml
index dc68edfe71..ec8da243db 100644
--- a/crates/bench/Cargo.toml
+++ b/crates/bench/Cargo.toml
@@ -5,7 +5,7 @@ edition = {workspace = true}
[build-dependencies]
regex = { version = "1", optional = true }
-reqwest = { version = "0.11.14", optional = true, features = [
+reqwest = { version = "0.12.9", optional = true, features = [
"blocking",
"json",
] }
diff --git a/crates/bin/pclientd/src/lib.rs b/crates/bin/pclientd/src/lib.rs
index 5b4be2f4b0..cf0bc5b979 100644
--- a/crates/bin/pclientd/src/lib.rs
+++ b/crates/bin/pclientd/src/lib.rs
@@ -344,7 +344,7 @@ impl Opt {
.register_encoded_file_descriptor_set(
penumbra_proto::FILE_DESCRIPTOR_SET,
)
- .build()
+ .build_v1()
.with_context(|| "could not configure grpc reflection service")?,
))
.serve(config.bind_addr);
diff --git a/crates/bin/pclientd/src/proxy.rs b/crates/bin/pclientd/src/proxy.rs
index 7ae9bc2d85..1a9077f1f4 100644
--- a/crates/bin/pclientd/src/proxy.rs
+++ b/crates/bin/pclientd/src/proxy.rs
@@ -1,28 +1,19 @@
use futures::FutureExt;
-use http_body::Body as _;
use std::convert::Infallible;
use std::pin::Pin;
use std::{
future::Future,
task::{Context, Poll},
};
-use tonic::transport::NamedService;
-use tonic::{
- body::BoxBody,
- transport::{Body, Channel},
-};
+use tonic::server::NamedService;
+use tonic::{body::BoxBody, transport::Channel};
use tower::ServiceExt;
fn proxy(
channel: Channel,
- req: http::Request
,
+ req: http::Request,
) -> Pin, Infallible>> + Send + 'static>> {
tracing::debug!(headers = ?req.headers(), "proxying request");
- // Convert request types
- let req = req.map(|b| {
- b.map_err(|e| tonic::Status::from_error(Box::new(e)))
- .boxed_unsync()
- });
let rsp = channel.oneshot(req);
@@ -30,11 +21,8 @@ fn proxy(
// Once we get the response, we need to convert any transport errors into
// an Ok(HTTP response reporting an internal error), so we can have Error = Infallible
let rsp = match rsp.await {
- Ok(rsp) => rsp.map(|b| {
- b.map_err(|e| tonic::Status::from_error(Box::new(e)))
- .boxed_unsync()
- }),
- Err(e) => tonic::Status::internal(format!("grpc proxy error: {e}")).to_http(),
+ Ok(rsp) => rsp,
+ Err(e) => tonic::Status::internal(format!("grpc proxy error: {e}")).into_http(),
};
Ok::<_, Infallible>(rsp)
}
@@ -48,7 +36,7 @@ impl NamedService for AppQueryProxy {
const NAME: &'static str = "penumbra.core.app.v1.QueryService";
}
-impl tower::Service> for AppQueryProxy {
+impl tower::Service> for AppQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -58,7 +46,7 @@ impl tower::Service> for AppQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -70,7 +58,7 @@ impl NamedService for GovernanceQueryProxy {
const NAME: &'static str = "penumbra.core.component.governance.v1.QueryService";
}
-impl tower::Service> for GovernanceQueryProxy {
+impl tower::Service> for GovernanceQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -80,7 +68,7 @@ impl tower::Service> for GovernanceQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -92,7 +80,7 @@ impl NamedService for DexQueryProxy {
const NAME: &'static str = "penumbra.core.component.dex.v1.QueryService";
}
-impl tower::Service> for DexQueryProxy {
+impl tower::Service> for DexQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -102,7 +90,7 @@ impl tower::Service> for DexQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -114,7 +102,7 @@ impl NamedService for DexSimulationProxy {
const NAME: &'static str = "penumbra.core.component.dex.v1.SimulationService";
}
-impl tower::Service> for DexSimulationProxy {
+impl tower::Service> for DexSimulationProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -124,7 +112,7 @@ impl tower::Service> for DexSimulationProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -136,7 +124,7 @@ impl NamedService for FeeQueryProxy {
const NAME: &'static str = "penumbra.core.component.fee.v1.QueryService";
}
-impl tower::Service> for FeeQueryProxy {
+impl tower::Service> for FeeQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -146,7 +134,7 @@ impl tower::Service> for FeeQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -158,7 +146,7 @@ impl NamedService for SctQueryProxy {
const NAME: &'static str = "penumbra.core.component.sct.v1.QueryService";
}
-impl tower::Service> for SctQueryProxy {
+impl tower::Service> for SctQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -168,7 +156,7 @@ impl tower::Service> for SctQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -180,7 +168,7 @@ impl NamedService for ShieldedPoolQueryProxy {
const NAME: &'static str = "penumbra.core.component.shielded_pool.v1.QueryService";
}
-impl tower::Service> for ShieldedPoolQueryProxy {
+impl tower::Service> for ShieldedPoolQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -190,7 +178,7 @@ impl tower::Service> for ShieldedPoolQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -202,7 +190,7 @@ impl NamedService for ChainQueryProxy {
const NAME: &'static str = "penumbra.core.component.chain.v1.QueryService";
}
-impl tower::Service> for ChainQueryProxy {
+impl tower::Service> for ChainQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -212,7 +200,7 @@ impl tower::Service> for ChainQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -224,7 +212,7 @@ impl NamedService for StakeQueryProxy {
const NAME: &'static str = "penumbra.core.component.stake.v1.QueryService";
}
-impl tower::Service> for StakeQueryProxy {
+impl tower::Service> for StakeQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -234,7 +222,7 @@ impl tower::Service> for StakeQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -246,7 +234,7 @@ impl NamedService for CompactBlockQueryProxy {
const NAME: &'static str = "penumbra.core.component.compact_block.v1.QueryService";
}
-impl tower::Service> for CompactBlockQueryProxy {
+impl tower::Service> for CompactBlockQueryProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -256,7 +244,7 @@ impl tower::Service> for CompactBlockQueryProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
@@ -268,7 +256,7 @@ impl NamedService for TendermintProxyProxy {
const NAME: &'static str = "penumbra.util.tendermint_proxy.v1.TendermintProxyService";
}
-impl tower::Service> for TendermintProxyProxy {
+impl tower::Service> for TendermintProxyProxy {
type Response = http::Response;
type Error = Infallible;
type Future =
@@ -278,7 +266,7 @@ impl tower::Service> for TendermintProxyProxy {
Poll::Ready(Ok(()))
}
- fn call(&mut self, req: http::Request) -> Self::Future {
+ fn call(&mut self, req: http::Request) -> Self::Future {
proxy(self.0.clone(), req)
}
}
diff --git a/crates/bin/pd/Cargo.toml b/crates/bin/pd/Cargo.toml
index 79f0b127db..8831af8da6 100644
--- a/crates/bin/pd/Cargo.toml
+++ b/crates/bin/pd/Cargo.toml
@@ -28,7 +28,7 @@ anyhow = { workspace = true }
ark-ff = { workspace = true, default-features = true }
async-stream = { workspace = true }
async-trait = { workspace = true }
-axum = "0.6"
+axum = { workspace = true, features = ["http2"] }
axum-server = { workspace = true, features = ["tls-rustls"] }
base64 = { workspace = true }
bincode = { workspace = true }
@@ -55,7 +55,7 @@ metrics = { workspace = true }
metrics-exporter-prometheus = { workspace = true }
metrics-process = "2.0.0"
metrics-tracing-context = { workspace = true }
-metrics-util = "0.16.2"
+metrics-util = "0.18.0"
mime_guess = "2"
once_cell = { workspace = true }
pbjson-types = { workspace = true }
@@ -87,7 +87,7 @@ rand = { workspace = true }
rand_chacha = { workspace = true }
rand_core = { workspace = true, features = ["getrandom"] }
regex = { workspace = true }
-reqwest = { version = "0.11", features = ["json", "stream"] }
+reqwest = { version = "0.12.9", features = ["json", "stream"] }
rocksdb = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
@@ -108,9 +108,9 @@ tonic = { workspace = true }
tonic-reflection = { workspace = true }
tonic-web = { workspace = true }
tower = { workspace = true, features = ["full"] }
-tower-abci = "0.11"
+tower-abci = "0.18"
tower-actor = "0.1.0"
-tower-http = { workspace = true }
+tower-http = { workspace = true, features = ["cors", "trace"] }
tower-service = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter", "ansi"] }
@@ -124,4 +124,4 @@ penumbra-proof-params = { workspace = true, features = [
], default-features = true }
assert_cmd = { workspace = true }
predicates = "2.1"
-prost-reflect = "0.13.1"
+prost-reflect = "0.14.3"
diff --git a/crates/bin/pd/src/main.rs b/crates/bin/pd/src/main.rs
index 35815c7d5a..ce1df974c8 100644
--- a/crates/bin/pd/src/main.rs
+++ b/crates/bin/pd/src/main.rs
@@ -21,10 +21,13 @@ use pd::{
};
use penumbra_app::app_version::check_and_update_app_version;
use penumbra_app::{APP_VERSION, SUBSTORE_PREFIXES};
+use penumbra_tower_trace::remote_addr;
use rand::Rng;
use rand_core::OsRng;
use tendermint_config::net::Address as TendermintAddress;
+use tower::ServiceBuilder;
use tower_http::cors::CorsLayer;
+use tower_http::trace::TraceLayer;
use tracing::Instrument as _;
use tracing_subscriber::{prelude::*, EnvFilter};
use url::Url;
@@ -129,15 +132,26 @@ async fn main() -> anyhow::Result<()> {
);
let tm_proxy = penumbra_tendermint_proxy::TendermintProxy::new(cometbft_addr);
- let grpc_server = penumbra_app::rpc::router(&storage, tm_proxy, enable_expensive_rpc)?;
+
+ let grpc_routes = penumbra_app::rpc::routes(&storage, tm_proxy, enable_expensive_rpc)?
+ .into_axum_router()
+ .layer(
+ ServiceBuilder::new().layer(TraceLayer::new_for_grpc().make_span_with(
+ |req: &http::Request<_>| match remote_addr(req) {
+ Some(remote_addr) => {
+ tracing::error_span!("grpc", ?remote_addr)
+ }
+ None => tracing::error_span!("grpc"),
+ },
+ )),
+ );
// Create Axum routes for the frontend app.
let frontend = pd::zipserve::router("/app/", pd::MINIFRONT_ARCHIVE_BYTES);
let node_status = pd::zipserve::router("/", pd::NODE_STATUS_ARCHIVE_BYTES);
// Now we drop down a layer of abstraction, from tonic to axum, and merge handlers.
- let router = grpc_server
- .into_router()
+ let router = grpc_routes
.merge(frontend)
.merge(node_status)
// Set rather permissive CORS headers for pd's gRPC: the service
@@ -150,6 +164,13 @@ async fn main() -> anyhow::Result<()> {
// Now start the GRPC server, initializing an ACME client to use as a certificate
// resolver if auto-https has been enabled. if auto-https is not enabled, we will
// instead spawn a future that will never return.
+
+ // TODO(janis): Is `axum_server::bind` sufficient to accept http1 (for grpc-web) and
+ // http2 (for grpc) requests?
+ //
+ // See also this (about axum::serve, suggesting that it just works out of the box; does that
+ // apply to axum_server::bind as well?)
+ // https://github.com/tokio-rs/axum/blob/c596deafe48ed608775e312eef7d12ddbb0fd424/examples/websockets-http2/src/main.rs#L57-L59
let grpc_server = axum_server::bind(grpc_bind);
let (grpc_server, acme_worker) = match grpc_auto_https {
Some(domain) => {
diff --git a/crates/cnidarium/src/gen/penumbra.cnidarium.v1.rs b/crates/cnidarium/src/gen/penumbra.cnidarium.v1.rs
index 7a04181967..858be10601 100644
--- a/crates/cnidarium/src/gen/penumbra.cnidarium.v1.rs
+++ b/crates/cnidarium/src/gen/penumbra.cnidarium.v1.rs
@@ -1,6 +1,6 @@
+// This file is @generated by prost-build.
/// Performs a key-value query against the nonverifiable storage,
/// using a byte-encoded key.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NonVerifiableKeyValueRequest {
#[prost(message, optional, tag = "1")]
@@ -8,7 +8,6 @@ pub struct NonVerifiableKeyValueRequest {
}
/// Nested message and enum types in `NonVerifiableKeyValueRequest`.
pub mod non_verifiable_key_value_request {
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Key {
#[prost(bytes = "vec", tag = "1")]
@@ -18,9 +17,10 @@ pub mod non_verifiable_key_value_request {
const NAME: &'static str = "Key";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "penumbra.cnidarium.v1.NonVerifiableKeyValueRequest.{}", Self::NAME
- )
+ "penumbra.cnidarium.v1.NonVerifiableKeyValueRequest.Key".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.NonVerifiableKeyValueRequest.Key".into()
}
}
}
@@ -28,10 +28,12 @@ impl ::prost::Name for NonVerifiableKeyValueRequest {
const NAME: &'static str = "NonVerifiableKeyValueRequest";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.NonVerifiableKeyValueRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.NonVerifiableKeyValueRequest".into()
}
}
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NonVerifiableKeyValueResponse {
/// The value corresponding to the specified key, if it was found.
@@ -40,7 +42,6 @@ pub struct NonVerifiableKeyValueResponse {
}
/// Nested message and enum types in `NonVerifiableKeyValueResponse`.
pub mod non_verifiable_key_value_response {
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Value {
#[prost(bytes = "vec", tag = "1")]
@@ -50,9 +51,10 @@ pub mod non_verifiable_key_value_response {
const NAME: &'static str = "Value";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "penumbra.cnidarium.v1.NonVerifiableKeyValueResponse.{}", Self::NAME
- )
+ "penumbra.cnidarium.v1.NonVerifiableKeyValueResponse.Value".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.NonVerifiableKeyValueResponse.Value".into()
}
}
}
@@ -60,13 +62,15 @@ impl ::prost::Name for NonVerifiableKeyValueResponse {
const NAME: &'static str = "NonVerifiableKeyValueResponse";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.NonVerifiableKeyValueResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.NonVerifiableKeyValueResponse".into()
}
}
/// Performs a key-value query against the JMT, either by key or by key hash.
///
/// Proofs are only supported by key.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct KeyValueRequest {
/// If set, the key to fetch from storage.
@@ -80,10 +84,12 @@ impl ::prost::Name for KeyValueRequest {
const NAME: &'static str = "KeyValueRequest";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.KeyValueRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.KeyValueRequest".into()
}
}
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct KeyValueResponse {
/// The value corresponding to the specified key, if it was found.
@@ -97,7 +103,6 @@ pub struct KeyValueResponse {
}
/// Nested message and enum types in `KeyValueResponse`.
pub mod key_value_response {
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Value {
#[prost(bytes = "vec", tag = "1")]
@@ -107,9 +112,10 @@ pub mod key_value_response {
const NAME: &'static str = "Value";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "penumbra.cnidarium.v1.KeyValueResponse.{}", Self::NAME
- )
+ "penumbra.cnidarium.v1.KeyValueResponse.Value".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.KeyValueResponse.Value".into()
}
}
}
@@ -117,11 +123,13 @@ impl ::prost::Name for KeyValueResponse {
const NAME: &'static str = "KeyValueResponse";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.KeyValueResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.KeyValueResponse".into()
}
}
/// Performs a prefixed key-value query, by string prefix.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PrefixValueRequest {
/// The prefix to fetch subkeys from storage.
@@ -132,10 +140,12 @@ impl ::prost::Name for PrefixValueRequest {
const NAME: &'static str = "PrefixValueRequest";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.PrefixValueRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.PrefixValueRequest".into()
}
}
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PrefixValueResponse {
#[prost(string, tag = "1")]
@@ -147,11 +157,13 @@ impl ::prost::Name for PrefixValueResponse {
const NAME: &'static str = "PrefixValueResponse";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.PrefixValueResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.PrefixValueResponse".into()
}
}
/// Requests a stream of new key-value pairs that have been committed to the state.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WatchRequest {
/// A regex for keys in the verifiable storage.
@@ -173,11 +185,13 @@ impl ::prost::Name for WatchRequest {
const NAME: &'static str = "WatchRequest";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.WatchRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.WatchRequest".into()
}
}
/// A key-value pair that has been committed to the state.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WatchResponse {
/// The state version the key-value pair was committed at.
@@ -190,7 +204,6 @@ pub struct WatchResponse {
/// Nested message and enum types in `WatchResponse`.
pub mod watch_response {
/// Elements of the verifiable storage have string keys.
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct KeyValue {
#[prost(string, tag = "1")]
@@ -206,11 +219,13 @@ pub mod watch_response {
const NAME: &'static str = "KeyValue";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.WatchResponse.{}", Self::NAME)
+ "penumbra.cnidarium.v1.WatchResponse.KeyValue".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.WatchResponse.KeyValue".into()
}
}
/// Elements of the nonverifiable storage have byte keys.
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NvKeyValue {
#[prost(bytes = "vec", tag = "1")]
@@ -226,11 +241,13 @@ pub mod watch_response {
const NAME: &'static str = "NvKeyValue";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.WatchResponse.{}", Self::NAME)
+ "penumbra.cnidarium.v1.WatchResponse.NvKeyValue".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.WatchResponse.NvKeyValue".into()
}
}
/// The entry that was committed.
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Entry {
#[prost(message, tag = "5")]
@@ -243,13 +260,22 @@ impl ::prost::Name for WatchResponse {
const NAME: &'static str = "WatchResponse";
const PACKAGE: &'static str = "penumbra.cnidarium.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("penumbra.cnidarium.v1.{}", Self::NAME)
+ "penumbra.cnidarium.v1.WatchResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/penumbra.cnidarium.v1.WatchResponse".into()
}
}
/// Generated client implementations.
#[cfg(feature = "rpc")]
pub mod query_service_client {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
#[derive(Debug, Clone)]
@@ -271,8 +297,8 @@ pub mod query_service_client {
where
T: tonic::client::GrpcService,
T::Error: Into,
- T::ResponseBody: Body + Send + 'static,
- ::Error: Into + Send,
+ T::ResponseBody: Body + std::marker::Send + 'static,
+ ::Error: Into + std::marker::Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
@@ -297,7 +323,7 @@ pub mod query_service_client {
>,
,
- >>::Error: Into + Send + Sync,
+ >>::Error: Into + std::marker::Send + std::marker::Sync,
{
QueryServiceClient::new(InterceptedService::new(inner, interceptor))
}
@@ -345,8 +371,7 @@ pub mod query_service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -374,8 +399,7 @@ pub mod query_service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -406,8 +430,7 @@ pub mod query_service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -434,8 +457,7 @@ pub mod query_service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -453,11 +475,17 @@ pub mod query_service_client {
/// Generated server implementations.
#[cfg(feature = "rpc")]
pub mod query_service_server {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
/// Generated trait containing gRPC methods that should be implemented for use with QueryServiceServer.
#[async_trait]
- pub trait QueryService: Send + Sync + 'static {
+ pub trait QueryService: std::marker::Send + std::marker::Sync + 'static {
/// General-purpose key-value state query API, that can be used to query
/// arbitrary keys in the JMT storage.
async fn key_value(
@@ -480,7 +508,7 @@ pub mod query_service_server {
type PrefixValueStream: tonic::codegen::tokio_stream::Stream<
Item = std::result::Result,
>
- + Send
+ + std::marker::Send
+ 'static;
/// General-purpose prefixed key-value state query API, that can be used to query
/// arbitrary prefixes in the JMT storage.
@@ -495,7 +523,7 @@ pub mod query_service_server {
type WatchStream: tonic::codegen::tokio_stream::Stream<
Item = std::result::Result,
>
- + Send
+ + std::marker::Send
+ 'static;
/// Subscribes to a stream of key-value updates, with regex filtering on keys.
async fn watch(
@@ -504,20 +532,18 @@ pub mod query_service_server {
) -> std::result::Result, tonic::Status>;
}
#[derive(Debug)]
- pub struct QueryServiceServer {
- inner: _Inner,
+ pub struct QueryServiceServer {
+ inner: Arc,
accept_compression_encodings: EnabledCompressionEncodings,
send_compression_encodings: EnabledCompressionEncodings,
max_decoding_message_size: Option,
max_encoding_message_size: Option,
}
- struct _Inner(Arc);
- impl QueryServiceServer {
+ impl QueryServiceServer {
pub fn new(inner: T) -> Self {
Self::from_arc(Arc::new(inner))
}
pub fn from_arc(inner: Arc) -> Self {
- let inner = _Inner(inner);
Self {
inner,
accept_compression_encodings: Default::default(),
@@ -567,8 +593,8 @@ pub mod query_service_server {
impl tonic::codegen::Service> for QueryServiceServer
where
T: QueryService,
- B: Body + Send + 'static,
- B::Error: Into + Send + 'static,
+ B: Body + std::marker::Send + 'static,
+ B::Error: Into + std::marker::Send + 'static,
{
type Response = http::Response;
type Error = std::convert::Infallible;
@@ -580,7 +606,6 @@ pub mod query_service_server {
Poll::Ready(Ok(()))
}
fn call(&mut self, req: http::Request) -> Self::Future {
- let inner = self.inner.clone();
match req.uri().path() {
"/penumbra.cnidarium.v1.QueryService/KeyValue" => {
#[allow(non_camel_case_types)]
@@ -611,7 +636,6 @@ pub mod query_service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = KeyValueSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -661,7 +685,6 @@ pub mod query_service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = NonVerifiableKeyValueSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -708,7 +731,6 @@ pub mod query_service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = PrefixValueSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -755,7 +777,6 @@ pub mod query_service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = WatchSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -774,20 +795,25 @@ pub mod query_service_server {
}
_ => {
Box::pin(async move {
- Ok(
- http::Response::builder()
- .status(200)
- .header("grpc-status", "12")
- .header("content-type", "application/grpc")
- .body(empty_body())
- .unwrap(),
- )
+ let mut response = http::Response::new(empty_body());
+ let headers = response.headers_mut();
+ headers
+ .insert(
+ tonic::Status::GRPC_STATUS,
+ (tonic::Code::Unimplemented as i32).into(),
+ );
+ headers
+ .insert(
+ http::header::CONTENT_TYPE,
+ tonic::metadata::GRPC_CONTENT_TYPE,
+ );
+ Ok(response)
})
}
}
}
}
- impl Clone for QueryServiceServer {
+ impl Clone for QueryServiceServer {
fn clone(&self) -> Self {
let inner = self.inner.clone();
Self {
@@ -799,17 +825,9 @@ pub mod query_service_server {
}
}
}
- impl Clone for _Inner {
- fn clone(&self) -> Self {
- Self(Arc::clone(&self.0))
- }
- }
- impl std::fmt::Debug for _Inner {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- write!(f, "{:?}", self.0)
- }
- }
- impl tonic::server::NamedService for QueryServiceServer {
- const NAME: &'static str = "penumbra.cnidarium.v1.QueryService";
+ /// Generated gRPC service name
+ pub const SERVICE_NAME: &str = "penumbra.cnidarium.v1.QueryService";
+ impl tonic::server::NamedService for QueryServiceServer {
+ const NAME: &'static str = SERVICE_NAME;
}
}
diff --git a/crates/cnidarium/src/gen/penumbra.cnidarium.v1.serde.rs b/crates/cnidarium/src/gen/penumbra.cnidarium.v1.serde.rs
index 8751e80e6e..6eea278b57 100644
--- a/crates/cnidarium/src/gen/penumbra.cnidarium.v1.serde.rs
+++ b/crates/cnidarium/src/gen/penumbra.cnidarium.v1.serde.rs
@@ -236,6 +236,7 @@ impl serde::Serialize for key_value_response::Value {
let mut struct_ser = serializer.serialize_struct("penumbra.cnidarium.v1.KeyValueResponse.Value", len)?;
if !self.value.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("value", pbjson::private::base64::encode(&self.value).as_str())?;
}
struct_ser.end()
@@ -429,6 +430,7 @@ impl serde::Serialize for non_verifiable_key_value_request::Key {
let mut struct_ser = serializer.serialize_struct("penumbra.cnidarium.v1.NonVerifiableKeyValueRequest.Key", len)?;
if !self.inner.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("inner", pbjson::private::base64::encode(&self.inner).as_str())?;
}
struct_ser.end()
@@ -622,6 +624,7 @@ impl serde::Serialize for non_verifiable_key_value_response::Value {
let mut struct_ser = serializer.serialize_struct("penumbra.cnidarium.v1.NonVerifiableKeyValueResponse.Value", len)?;
if !self.value.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("value", pbjson::private::base64::encode(&self.value).as_str())?;
}
struct_ser.end()
@@ -821,6 +824,7 @@ impl serde::Serialize for PrefixValueResponse {
}
if !self.value.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("value", pbjson::private::base64::encode(&self.value).as_str())?;
}
struct_ser.end()
@@ -1047,6 +1051,7 @@ impl serde::Serialize for WatchResponse {
let mut struct_ser = serializer.serialize_struct("penumbra.cnidarium.v1.WatchResponse", len)?;
if self.version != 0 {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("version", ToString::to_string(&self.version).as_str())?;
}
if let Some(v) = self.entry.as_ref() {
@@ -1187,6 +1192,7 @@ impl serde::Serialize for watch_response::KeyValue {
}
if !self.value.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("value", pbjson::private::base64::encode(&self.value).as_str())?;
}
if self.deleted {
@@ -1316,10 +1322,12 @@ impl serde::Serialize for watch_response::NvKeyValue {
let mut struct_ser = serializer.serialize_struct("penumbra.cnidarium.v1.WatchResponse.NvKeyValue", len)?;
if !self.key.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("key", pbjson::private::base64::encode(&self.key).as_str())?;
}
if !self.value.is_empty() {
#[allow(clippy::needless_borrow)]
+ #[allow(clippy::needless_borrows_for_generic_args)]
struct_ser.serialize_field("value", pbjson::private::base64::encode(&self.value).as_str())?;
}
if self.deleted {
diff --git a/crates/cnidarium/src/gen/proto_descriptor.bin.no_lfs b/crates/cnidarium/src/gen/proto_descriptor.bin.no_lfs
index 09181ca63e..f41da7426e 100644
Binary files a/crates/cnidarium/src/gen/proto_descriptor.bin.no_lfs and b/crates/cnidarium/src/gen/proto_descriptor.bin.no_lfs differ
diff --git a/crates/core/app/Cargo.toml b/crates/core/app/Cargo.toml
index 9013371d07..febe38ea0a 100644
--- a/crates/core/app/Cargo.toml
+++ b/crates/core/app/Cargo.toml
@@ -97,7 +97,7 @@ tonic = { workspace = true, optional = true }
tonic-reflection = { workspace = true, optional = true }
tonic-web = { workspace = true, optional = true }
tower = { workspace = true, features = ["full"] }
-tower-abci = "0.11"
+tower-abci = "0.18"
tower-actor = "0.1.0"
tower-service = { workspace = true }
tracing = { workspace = true }
diff --git a/crates/core/app/src/rpc.rs b/crates/core/app/src/rpc.rs
index 90c1b26f1f..ee90110f4c 100644
--- a/crates/core/app/src/rpc.rs
+++ b/crates/core/app/src/rpc.rs
@@ -14,12 +14,16 @@ use {
proto::v1::query_service_server::QueryServiceServer as StorageQueryServiceServer,
Server as StorageServer,
},
- ibc_proto::cosmos::bank::v1beta1::query_server::QueryServer as TransferQueryServer,
- ibc_proto::ibc::applications::transfer::v1::query_server::QueryServer as BankQueryServer,
- ibc_proto::ibc::core::{
- channel::v1::query_server::QueryServer as ChannelQueryServer,
- client::v1::query_server::QueryServer as ClientQueryServer,
- connection::v1::query_server::QueryServer as ConnectionQueryServer,
+ ibc_proto::{
+ cosmos::bank::v1beta1::query_server::QueryServer as TransferQueryServer,
+ ibc::{
+ applications::transfer::v1::query_server::QueryServer as BankQueryServer,
+ core::{
+ channel::v1::query_server::QueryServer as ChannelQueryServer,
+ client::v1::query_server::QueryServer as ClientQueryServer,
+ connection::v1::query_server::QueryServer as ConnectionQueryServer,
+ },
+ },
},
penumbra_auction::component::rpc::Server as AuctionServer,
penumbra_compact_block::component::rpc::Server as CompactBlockServer,
@@ -50,28 +54,19 @@ use {
penumbra_sct::component::rpc::Server as SctServer,
penumbra_shielded_pool::component::rpc::Server as ShieldedPoolServer,
penumbra_stake::component::rpc::Server as StakeServer,
- penumbra_tower_trace::remote_addr,
+ tonic::service::Routes,
tonic_web::enable as we,
};
-pub fn router(
+pub fn routes(
storage: &cnidarium::Storage,
tm_proxy: impl TendermintProxyService,
_enable_expensive_rpc: bool,
-) -> anyhow::Result {
+) -> anyhow::Result {
let ibc = penumbra_ibc::component::rpc::IbcQuery::::new(storage.clone());
- let grpc_server = tonic::transport::server::Server::builder()
- .trace_fn(|req| match remote_addr(req) {
- Some(remote_addr) => {
- tracing::error_span!("grpc", ?remote_addr)
- }
- None => tracing::error_span!("grpc"),
- })
- // Allow HTTP/1, which will be used by grpc-web connections.
- // This is particularly important when running locally, as gRPC
- // typically uses HTTP/2, which requires HTTPS. Accepting HTTP/2
- // allows local applications such as web browsers to talk to pd.
- .accept_http1(true)
+
+ let mut builder = Routes::builder();
+ builder
// As part of #2932, we are disabling all timeouts until we circle back to our
// performance story.
// Sets a timeout for all gRPC requests, but note that in the case of streaming
@@ -125,8 +120,7 @@ pub fn router(
))))
.add_service(we(tonic_reflection::server::Builder::configure()
.register_encoded_file_descriptor_set(penumbra_proto::FILE_DESCRIPTOR_SET)
- .build()
+ .build_v1()
.with_context(|| "could not configure grpc reflection service")?));
-
- Ok(grpc_server)
+ Ok(builder.routes().prepare())
}
diff --git a/crates/core/app/src/server/consensus.rs b/crates/core/app/src/server/consensus.rs
index cd357ab277..93c1e2c8dd 100644
--- a/crates/core/app/src/server/consensus.rs
+++ b/crates/core/app/src/server/consensus.rs
@@ -25,7 +25,10 @@ fn trace_events(events: &[Event]) {
let span = tracing::debug_span!("event", kind = ?event.kind);
span.in_scope(|| {
for attr in &event.attributes {
- tracing::debug!(k = ?attr.key, v=?attr.value);
+ tracing::debug!(
+ k = %String::from_utf8_lossy(attr.key_bytes()),
+ v = %String::from_utf8_lossy(attr.value_bytes()),
+ );
}
})
}
diff --git a/crates/core/app/src/server/events.rs b/crates/core/app/src/server/events.rs
index 906f3d855c..7c8732ce9e 100644
--- a/crates/core/app/src/server/events.rs
+++ b/crates/core/app/src/server/events.rs
@@ -38,14 +38,27 @@ impl EventIndexLayer {
// Perform matching on a nested key in the same format used by
// the cosmos SDK: https://docs.cosmos.network/main/core/config
// e.g., "message.sender", "message.recipient"
- let nested_key = format!("{}.{}", e.kind, attr.key);
- if self.no_index.is_match(&nested_key) {
- attr.index = false;
- }
- // This comes second so that explicit index requests take priority over no-index requests.
- if self.index.is_match(&nested_key) {
- attr.index = true;
+ // XXX: tendermint-rs now supports v034 events types, which are
+ // plain bytes and need not be utf8. This messes with the
+ // regex and is likely not desirable to have in downstream
+ // consumers of the indexed events.
+ match attr.key_str() {
+ Ok(key) => {
+ let nested_key = format!("{}.{}", e.kind, key);
+
+ if self.no_index.is_match(&nested_key) {
+ attr.set_index(false)
+ }
+ // This comes second so that explicit index requests take priority over no-index requests.
+ if self.index.is_match(&nested_key) {
+ attr.set_index(false)
+ }
+ }
+ // TODO: what should be done with this error? Emit a warning?
+ Err(_err) => {
+ attr.set_index(false);
+ }
}
}
}
diff --git a/crates/core/app/src/server/info.rs b/crates/core/app/src/server/info.rs
index 90e090a7c8..63c3c7ae88 100644
--- a/crates/core/app/src/server/info.rs
+++ b/crates/core/app/src/server/info.rs
@@ -259,6 +259,7 @@ impl Info {
channel_id: chan_id,
port_id: PortId::transfer(),
channel_end: channel,
+ upgrade_sequence: 0,
};
channels.push(id_chan.into());
}
@@ -308,6 +309,7 @@ impl Info {
channel_id: chan_id,
port_id: PortId::transfer(),
channel_end: channel,
+ upgrade_sequence: 0,
};
channels.push(id_chan.into());
}
diff --git a/crates/core/app/tests/app_can_sweep_a_collection_of_small_notes.rs b/crates/core/app/tests/app_can_sweep_a_collection_of_small_notes.rs
index dfe096bdde..1a2ae423cb 100644
--- a/crates/core/app/tests/app_can_sweep_a_collection_of_small_notes.rs
+++ b/crates/core/app/tests/app_can_sweep_a_collection_of_small_notes.rs
@@ -95,12 +95,12 @@ async fn app_can_sweep_a_collection_of_small_notes() -> anyhow::Result<()> {
// Spawn the server-side view server.
{
- let make_svc = penumbra_app::rpc::router(
+ let make_svc = penumbra_app::rpc::routes(
storage.as_ref(),
proxy,
false, /*enable_expensive_rpc*/
)?
- .into_router()
+ .into_axum_router()
.layer(tower_http::cors::CorsLayer::permissive())
.into_make_service()
.tap(|_| tracing::debug!("initialized rpc service"));
diff --git a/crates/core/app/tests/common/ibc_tests/node.rs b/crates/core/app/tests/common/ibc_tests/node.rs
index 5178c7dd3f..971b798bed 100644
--- a/crates/core/app/tests/common/ibc_tests/node.rs
+++ b/crates/core/app/tests/common/ibc_tests/node.rs
@@ -112,12 +112,12 @@ impl TestNodeWithIBC {
tracing::info!("spawning gRPC...");
// Spawn the node's RPC server.
let _rpc_server = {
- let make_svc = penumbra_app::rpc::router(
+ let make_svc = penumbra_app::rpc::routes(
storage.as_ref(),
proxy,
false, /*enable_expensive_rpc*/
)?
- .into_router()
+ .into_axum_router()
.layer(tower_http::cors::CorsLayer::permissive())
.into_make_service()
.tap(|_| tracing::info!("initialized rpc service"));
@@ -125,6 +125,7 @@ impl TestNodeWithIBC {
.socket_addrs(|| None)?
.try_into()
.expect("grpc url can be turned into a socket address");
+
let server = axum_server::bind(addr).serve(make_svc);
tokio::spawn(async { server.await.expect("grpc server returned an error") })
.tap(|_| tracing::info!("grpc server is running"))
diff --git a/crates/core/app/tests/common/ibc_tests/relayer.rs b/crates/core/app/tests/common/ibc_tests/relayer.rs
index 488e68dcca..f0ed6bce75 100644
--- a/crates/core/app/tests/common/ibc_tests/relayer.rs
+++ b/crates/core/app/tests/common/ibc_tests/relayer.rs
@@ -1560,16 +1560,18 @@ impl MockRelayer {
let mut timeout_height_on_b = None;
let mut timeout_timestamp_on_b = None;
for attr in &event.attributes {
- match attr.key.as_str() {
- "packet_data_hex" => packet_data_hex = Some(attr.value.clone()),
- "packet_sequence" => sequence = Some(attr.value.clone()),
- "packet_src_port" => port_on_a = Some(attr.value.clone()),
- "packet_src_channel" => chan_on_a = Some(attr.value.clone()),
- "packet_dst_port" => port_on_b = Some(attr.value.clone()),
- "packet_dst_channel" => chan_on_b = Some(attr.value.clone()),
- "packet_timeout_height" => timeout_height_on_b = Some(attr.value.clone()),
+ match attr.key_str()? {
+ "packet_data_hex" => packet_data_hex = Some(attr.value_str()?.to_string()),
+ "packet_sequence" => sequence = Some(attr.value_str()?.to_string()),
+ "packet_src_port" => port_on_a = Some(attr.value_str()?.to_string()),
+ "packet_src_channel" => chan_on_a = Some(attr.value_str()?.to_string()),
+ "packet_dst_port" => port_on_b = Some(attr.value_str()?.to_string()),
+ "packet_dst_channel" => chan_on_b = Some(attr.value_str()?.to_string()),
+ "packet_timeout_height" => {
+ timeout_height_on_b = Some(attr.value_str()?.to_string())
+ }
"packet_timeout_timestamp" => {
- timeout_timestamp_on_b = Some(attr.value.clone())
+ timeout_timestamp_on_b = Some(attr.value_str()?.to_string())
}
_ => (),
}
@@ -1671,18 +1673,20 @@ impl MockRelayer {
let mut timeout_timestamp_on_b = None;
let mut packet_ack_hex = None;
for attr in &event.attributes {
- match attr.key.as_str() {
- "packet_data_hex" => packet_data_hex = Some(attr.value.clone()),
- "packet_sequence" => sequence = Some(attr.value.clone()),
- "packet_src_port" => port_on_a = Some(attr.value.clone()),
- "packet_src_channel" => chan_on_a = Some(attr.value.clone()),
- "packet_dst_port" => port_on_b = Some(attr.value.clone()),
- "packet_dst_channel" => chan_on_b = Some(attr.value.clone()),
- "packet_timeout_height" => timeout_height_on_b = Some(attr.value.clone()),
+ match attr.key_str()? {
+ "packet_data_hex" => packet_data_hex = Some(attr.value_str()?.to_string()),
+ "packet_sequence" => sequence = Some(attr.value_str()?.to_string()),
+ "packet_src_port" => port_on_a = Some(attr.value_str()?.to_string()),
+ "packet_src_channel" => chan_on_a = Some(attr.value_str()?.to_string()),
+ "packet_dst_port" => port_on_b = Some(attr.value_str()?.to_string()),
+ "packet_dst_channel" => chan_on_b = Some(attr.value_str()?.to_string()),
+ "packet_timeout_height" => {
+ timeout_height_on_b = Some(attr.value_str()?.to_string())
+ }
"packet_timeout_timestamp" => {
- timeout_timestamp_on_b = Some(attr.value.clone())
+ timeout_timestamp_on_b = Some(attr.value_str()?.to_string())
}
- "packet_ack_hex" => packet_ack_hex = Some(attr.value.clone()),
+ "packet_ack_hex" => packet_ack_hex = Some(attr.value_str()?.to_string()),
_ => (),
}
}
diff --git a/crates/core/app/tests/mock_consensus_block_proving.rs b/crates/core/app/tests/mock_consensus_block_proving.rs
index f522020769..59ae3a74b8 100644
--- a/crates/core/app/tests/mock_consensus_block_proving.rs
+++ b/crates/core/app/tests/mock_consensus_block_proving.rs
@@ -191,8 +191,8 @@ async fn verify_storage_proof_simple() -> anyhow::Result<()> {
// Spawn the node's RPC server.
let _rpc_server = {
let make_svc =
- penumbra_app::rpc::router(&storage, proxy, false /*enable_expensive_rpc*/)?
- .into_router()
+ penumbra_app::rpc::routes(&storage, proxy, false /*enable_expensive_rpc*/)?
+ .into_axum_router()
.layer(tower_http::cors::CorsLayer::permissive())
.into_make_service()
.tap(|_| println!("initialized rpc service"));
diff --git a/crates/core/app/tests/view_server_can_be_served_on_localhost.rs b/crates/core/app/tests/view_server_can_be_served_on_localhost.rs
index 6ef2571ac3..4603aadf1c 100644
--- a/crates/core/app/tests/view_server_can_be_served_on_localhost.rs
+++ b/crates/core/app/tests/view_server_can_be_served_on_localhost.rs
@@ -71,12 +71,12 @@ async fn view_server_can_be_served_on_localhost() -> anyhow::Result<()> {
// Spawn the server-side view server.
{
- let make_svc = penumbra_app::rpc::router(
+ let make_svc = penumbra_app::rpc::routes(
storage.as_ref(),
proxy,
false, /*enable_expensive_rpc*/
)?
- .into_router()
+ .into_axum_router()
.layer(tower_http::cors::CorsLayer::permissive())
.into_make_service()
.tap(|_| tracing::debug!("initialized rpc service"));
diff --git a/crates/core/component/auction/Cargo.toml b/crates/core/component/auction/Cargo.toml
index df57c248d2..65cc933d2f 100644
--- a/crates/core/component/auction/Cargo.toml
+++ b/crates/core/component/auction/Cargo.toml
@@ -55,6 +55,7 @@ hex = {workspace = true}
im = {workspace = true, optional = true}
metrics = {workspace = true}
once_cell = {workspace = true}
+pbjson-types = { workspace = true }
penumbra-asset = {workspace = true, default-features = false}
penumbra-keys = {workspace = true, default-features = false}
penumbra-num = {workspace = true, default-features = false}
@@ -76,7 +77,6 @@ tendermint = {workspace = true, default-features = true}
tokio = {workspace = true, features = ["full", "tracing"], optional = true}
tonic = {workspace = true, optional = true}
tracing = {workspace = true}
-pbjson-types = "0.6.0"
[dev-dependencies]
ed25519-consensus = {workspace = true}
diff --git a/crates/core/component/ibc/src/component/msg_handler/channel_close_confirm.rs b/crates/core/component/ibc/src/component/msg_handler/channel_close_confirm.rs
index 8d8e53fd0e..1cd8eff2d9 100644
--- a/crates/core/component/ibc/src/component/msg_handler/channel_close_confirm.rs
+++ b/crates/core/component/ibc/src/component/msg_handler/channel_close_confirm.rs
@@ -70,6 +70,7 @@ impl MsgHandler for MsgChannelCloseConfirm {
remote: expected_counterparty,
connection_hops: expected_connection_hops,
version: channel.version.clone(),
+ ..ChannelEnd::default()
};
state
diff --git a/crates/core/component/ibc/src/component/msg_handler/channel_open_ack.rs b/crates/core/component/ibc/src/component/msg_handler/channel_open_ack.rs
index 3e7accd673..4f9c96b8f4 100644
--- a/crates/core/component/ibc/src/component/msg_handler/channel_open_ack.rs
+++ b/crates/core/component/ibc/src/component/msg_handler/channel_open_ack.rs
@@ -58,6 +58,7 @@ impl MsgHandler for MsgChannelOpenAck {
remote: expected_counterparty,
connection_hops: expected_connection_hops,
version: self.version_on_b.clone(),
+ ..ChannelEnd::default()
};
state
diff --git a/crates/core/component/ibc/src/component/msg_handler/channel_open_confirm.rs b/crates/core/component/ibc/src/component/msg_handler/channel_open_confirm.rs
index 3d5f47bc6e..b941ebd9ac 100644
--- a/crates/core/component/ibc/src/component/msg_handler/channel_open_confirm.rs
+++ b/crates/core/component/ibc/src/component/msg_handler/channel_open_confirm.rs
@@ -65,6 +65,7 @@ impl MsgHandler for MsgChannelOpenConfirm {
remote: expected_counterparty,
connection_hops: expected_connection_hops,
version: channel.version.clone(),
+ ..ChannelEnd::default()
};
state
diff --git a/crates/core/component/ibc/src/component/msg_handler/channel_open_init.rs b/crates/core/component/ibc/src/component/msg_handler/channel_open_init.rs
index 6956aabf7a..e97c1697b9 100644
--- a/crates/core/component/ibc/src/component/msg_handler/channel_open_init.rs
+++ b/crates/core/component/ibc/src/component/msg_handler/channel_open_init.rs
@@ -57,6 +57,7 @@ impl MsgHandler for MsgChannelOpenInit {
remote: Counterparty::new(self.port_id_on_b.clone(), None),
connection_hops: self.connection_hops_on_a.clone(),
version: self.version_proposal.clone(),
+ ..ChannelEnd::default()
};
state.put_channel(&channel_id, &self.port_id_on_a, new_channel.clone());
diff --git a/crates/core/component/ibc/src/component/msg_handler/channel_open_try.rs b/crates/core/component/ibc/src/component/msg_handler/channel_open_try.rs
index 3432c98760..8bffd067fd 100644
--- a/crates/core/component/ibc/src/component/msg_handler/channel_open_try.rs
+++ b/crates/core/component/ibc/src/component/msg_handler/channel_open_try.rs
@@ -49,6 +49,7 @@ impl MsgHandler for MsgChannelOpenTry {
.clone()
.ok_or_else(|| anyhow::anyhow!("no counterparty connection id provided"))?],
version: self.version_supported_on_a.clone(),
+ ..ChannelEnd::default()
};
tracing::debug!(?self, ?expected_channel_on_a);
@@ -81,6 +82,7 @@ impl MsgHandler for MsgChannelOpenTry {
remote: Counterparty::new(self.port_id_on_a.clone(), Some(self.chan_id_on_a.clone())),
connection_hops: self.connection_hops_on_b.clone(),
version: self.version_supported_on_a.clone(),
+ ..ChannelEnd::default()
};
state.put_channel(&channel_id, &self.port_id_on_b, new_channel.clone());
diff --git a/crates/core/component/ibc/src/component/rpc.rs b/crates/core/component/ibc/src/component/rpc.rs
index 4b54f52105..acb38b1bdb 100644
--- a/crates/core/component/ibc/src/component/rpc.rs
+++ b/crates/core/component/ibc/src/component/rpc.rs
@@ -1,5 +1,5 @@
use cnidarium::Storage;
-use tonic::transport::server::Routes;
+use tonic::service::Routes;
use super::HostInterface;
diff --git a/crates/core/component/ibc/src/component/rpc/consensus_query.rs b/crates/core/component/ibc/src/component/rpc/consensus_query.rs
index 4b176acfb4..5336d14204 100644
--- a/crates/core/component/ibc/src/component/rpc/consensus_query.rs
+++ b/crates/core/component/ibc/src/component/rpc/consensus_query.rs
@@ -4,7 +4,8 @@ use async_trait::async_trait;
use ibc_proto::ibc::core::channel::v1::query_server::Query as ConsensusQuery;
use ibc_proto::ibc::core::channel::v1::{
Channel, PacketState, QueryChannelClientStateRequest, QueryChannelClientStateResponse,
- QueryChannelConsensusStateRequest, QueryChannelConsensusStateResponse, QueryChannelRequest,
+ QueryChannelConsensusStateRequest, QueryChannelConsensusStateResponse,
+ QueryChannelParamsRequest, QueryChannelParamsResponse, QueryChannelRequest,
QueryChannelResponse, QueryChannelsRequest, QueryChannelsResponse,
QueryConnectionChannelsRequest, QueryConnectionChannelsResponse,
QueryNextSequenceReceiveRequest, QueryNextSequenceReceiveResponse,
@@ -14,6 +15,7 @@ use ibc_proto::ibc::core::channel::v1::{
QueryPacketCommitmentResponse, QueryPacketCommitmentsRequest, QueryPacketCommitmentsResponse,
QueryPacketReceiptRequest, QueryPacketReceiptResponse, QueryUnreceivedAcksRequest,
QueryUnreceivedAcksResponse, QueryUnreceivedPacketsRequest, QueryUnreceivedPacketsResponse,
+ QueryUpgradeErrorRequest, QueryUpgradeErrorResponse, QueryUpgradeRequest, QueryUpgradeResponse,
};
use ibc_proto::ibc::core::client::v1::{Height, IdentifiedClientState};
use ibc_types::path::{
@@ -130,6 +132,7 @@ impl ConsensusQuery for IbcQuery
channel_id: chan_id,
port_id: PortId::transfer(),
channel_end: channel,
+ upgrade_sequence: 0,
};
channels.push(id_chan.into());
}
@@ -187,6 +190,7 @@ impl ConsensusQuery for IbcQuery
channel_id: chan_id,
port_id: PortId::transfer(),
channel_end: channel,
+ upgrade_sequence: 0,
};
channels.push(id_chan.into());
}
@@ -856,4 +860,28 @@ impl ConsensusQuery for IbcQuery
}),
}))
}
+
+ #[tracing::instrument(skip(self), err, level = "debug")]
+ async fn channel_params(
+ &self,
+ _request: tonic::Request,
+ ) -> std::result::Result, tonic::Status> {
+ Err(tonic::Status::unimplemented("not implemented"))
+ }
+
+ #[tracing::instrument(skip(self), err, level = "debug")]
+ async fn upgrade(
+ &self,
+ _request: tonic::Request,
+ ) -> std::result::Result, tonic::Status> {
+ Err(tonic::Status::unimplemented("not implemented"))
+ }
+
+ #[tracing::instrument(skip(self), err, level = "debug")]
+ async fn upgrade_error(
+ &self,
+ _request: tonic::Request,
+ ) -> std::result::Result, tonic::Status> {
+ Err(tonic::Status::unimplemented("not implemented"))
+ }
}
diff --git a/crates/core/component/shielded-pool/Cargo.toml b/crates/core/component/shielded-pool/Cargo.toml
index d1a9b72f81..bb9d4591b4 100644
--- a/crates/core/component/shielded-pool/Cargo.toml
+++ b/crates/core/component/shielded-pool/Cargo.toml
@@ -50,7 +50,7 @@ decaf377-ka = {workspace = true}
decaf377-rdsa = {workspace = true}
futures = {workspace = true}
hex = {workspace = true}
-ibc-proto = {workspace = true, default-features = false}
+ibc-proto = {workspace = true, features = ["transport"], default-features = false}
ibc-types = {workspace = true, features = ["with_serde"], default-features = false}
im = {workspace = true}
metrics = {workspace = true}
diff --git a/crates/core/component/shielded-pool/src/component/rpc/bank_query.rs b/crates/core/component/shielded-pool/src/component/rpc/bank_query.rs
index 2af2edae7c..a675402ecd 100644
--- a/crates/core/component/shielded-pool/src/component/rpc/bank_query.rs
+++ b/crates/core/component/shielded-pool/src/component/rpc/bank_query.rs
@@ -9,9 +9,11 @@ use ibc_proto::cosmos::bank::v1beta1::{
QueryTotalSupplyRequest, QueryTotalSupplyResponse,
};
use ibc_proto::cosmos::bank::v1beta1::{
- QueryDenomMetadataRequest, QueryDenomMetadataResponse, QueryDenomOwnersRequest,
- QueryDenomOwnersResponse, QueryDenomsMetadataRequest, QueryDenomsMetadataResponse,
- QuerySendEnabledRequest, QuerySendEnabledResponse, QuerySpendableBalanceByDenomRequest,
+ QueryDenomMetadataByQueryStringRequest, QueryDenomMetadataByQueryStringResponse,
+ QueryDenomMetadataRequest, QueryDenomMetadataResponse, QueryDenomOwnersByQueryRequest,
+ QueryDenomOwnersByQueryResponse, QueryDenomOwnersRequest, QueryDenomOwnersResponse,
+ QueryDenomsMetadataRequest, QueryDenomsMetadataResponse, QuerySendEnabledRequest,
+ QuerySendEnabledResponse, QuerySpendableBalanceByDenomRequest,
QuerySpendableBalanceByDenomResponse, QuerySpendableBalancesRequest,
QuerySpendableBalancesResponse, QuerySupplyOfRequest, QuerySupplyOfResponse,
};
@@ -207,4 +209,18 @@ impl BankQuery for Server {
) -> std::result::Result, tonic::Status> {
Err(tonic::Status::unimplemented("not implemented"))
}
+
+ async fn denom_metadata_by_query_string(
+ &self,
+ _: tonic::Request,
+ ) -> Result, tonic::Status> {
+ Err(tonic::Status::unimplemented("not implemented"))
+ }
+
+ async fn denom_owners_by_query(
+ &self,
+ _: tonic::Request,
+ ) -> Result, tonic::Status> {
+ Err(tonic::Status::unimplemented("not implemented"))
+ }
}
diff --git a/crates/core/keys/src/symmetric.rs b/crates/core/keys/src/symmetric.rs
index 4e383d15c3..c888005403 100644
--- a/crates/core/keys/src/symmetric.rs
+++ b/crates/core/keys/src/symmetric.rs
@@ -135,7 +135,6 @@ impl TryFrom<&[u8]> for PayloadKey {
fn try_from(slice: &[u8]) -> Result {
let bytes: [u8; PAYLOAD_KEY_LEN_BYTES] = slice
- .as_ref()
.try_into()
.map_err(|_| anyhow::anyhow!("PayloadKey incorrect len"))?;
Ok(Self(*Key::from_slice(&bytes)))
diff --git a/crates/crypto/proof-params/Cargo.toml b/crates/crypto/proof-params/Cargo.toml
index af3bdaf815..8199e5caef 100644
--- a/crates/crypto/proof-params/Cargo.toml
+++ b/crates/crypto/proof-params/Cargo.toml
@@ -5,7 +5,7 @@ edition = {workspace = true}
[build-dependencies]
regex = { version = "1", optional = true }
-reqwest = { version = "0.11.14", optional = true, features = [
+reqwest = { version = "0.12.9", optional = true, features = [
"blocking",
"json",
] }
diff --git a/crates/misc/tct-visualize/Cargo.toml b/crates/misc/tct-visualize/Cargo.toml
index cbd2f4ffac..adb96c663f 100644
--- a/crates/misc/tct-visualize/Cargo.toml
+++ b/crates/misc/tct-visualize/Cargo.toml
@@ -21,7 +21,9 @@ tokio-util = {workspace = true, features = ["full"]}
tonic = {workspace = true}
prost = {workspace = true}
tokio-stream = {workspace = true}
-axum = {workspace = true, features = ["headers", "query"]}
+axum = {workspace = true }
+# TODO: consider using the Query extractor provided by axum-extra
+axum-extra = {workspace = true, features = ["typed-header"] }
axum-server = {workspace = true, features = ["tls-rustls"]}
serde_json = {workspace = true, features = ["preserve_order"]}
include-flate = { version = "0.1", features = ["stable"] }
diff --git a/crates/misc/tct-visualize/src/bin/tct-live-edit.rs b/crates/misc/tct-visualize/src/bin/tct-live-edit.rs
index e09b75cb9a..d529c91e3c 100644
--- a/crates/misc/tct-visualize/src/bin/tct-live-edit.rs
+++ b/crates/misc/tct-visualize/src/bin/tct-live-edit.rs
@@ -1,6 +1,7 @@
use std::{path::PathBuf, sync::Arc};
-use axum::{headers::ContentType, routing::get, Router, TypedHeader};
+use axum::{routing::get, Router};
+use axum_extra::{headers::ContentType, TypedHeader};
use axum_server::tls_rustls::RustlsConfig;
use clap::Parser;
use include_flate::flate;
@@ -79,8 +80,8 @@ async fn main() -> anyhow::Result<()> {
.unwrap()
}
(None, None) => {
- axum::Server::bind(&address)
- .serve(app.into_make_service())
+ let listener = tokio::net::TcpListener::bind(&address).await.unwrap();
+ axum::serve(listener, app.into_make_service())
.await
.unwrap();
}
diff --git a/crates/misc/tct-visualize/src/live/view.rs b/crates/misc/tct-visualize/src/live/view.rs
index dc657b8b76..40606a0b7f 100644
--- a/crates/misc/tct-visualize/src/live/view.rs
+++ b/crates/misc/tct-visualize/src/live/view.rs
@@ -1,20 +1,20 @@
use std::{convert::Infallible, sync::Arc, time::Duration};
use axum::{
- body::StreamBody,
+ body::Body,
extract::{OriginalUri, Path, Query},
- headers::ContentType,
http::StatusCode,
response::{
sse::{self, KeepAlive},
Sse,
},
routing::{get, MethodRouter},
- Router, TypedHeader,
+ Router,
};
+use axum_extra::{headers::ContentType, TypedHeader};
use bytes::Bytes;
-use futures::stream;
+use futures::{future, stream};
use serde_json::json;
use tokio::sync::{mpsc, watch};
use tokio_stream::{wrappers::ReceiverStream, StreamExt};
@@ -262,15 +262,14 @@ fn render_dot(mut tree: watch::Receiver) -> MethodRouter {
if !query.graph {
return Ok::<_, (StatusCode, String)>((
TypedHeader(ContentType::json()),
- StreamBody::new(
- stream::iter(vec![json!({
+ Body::from_stream(stream::once(future::ok::<_, Infallible>(
+ json!({
"position": tree.borrow().position(),
"forgotten": tree.borrow().forgotten(),
})
.to_string()
- .into()])
- .map(Ok),
- ),
+ .into_bytes(),
+ ))),
));
}
@@ -334,7 +333,7 @@ fn render_dot(mut tree: watch::Receiver) -> MethodRouter {
// Manually construct a streaming response to avoid allocating a copy of the large
// rendered bytes: the graph is already rendered as a JSON-escaped string, so we include
// it literally in this output
- StreamBody::new(
+ Body::from_stream(
stream::iter(vec![
"{".into(),
"\"position\":".into(),
diff --git a/crates/proto/Cargo.toml b/crates/proto/Cargo.toml
index 64956328d2..ca137d5709 100644
--- a/crates/proto/Cargo.toml
+++ b/crates/proto/Cargo.toml
@@ -8,7 +8,7 @@ anyhow = "1"
[features]
rpc = ["dep:tonic", "ibc-proto/client"]
-box-grpc = ["dep:http-body", "dep:tonic", "dep:tower"]
+box-grpc = ["dep:http-body", "dep:http-body-util", "dep:tonic", "dep:tower"]
cnidarium = ["dep:cnidarium"]
tendermint = [
"dep:chrono",
@@ -30,6 +30,7 @@ decaf377-rdsa = {workspace = true}
futures = {workspace = true}
hex = {workspace = true}
http-body = {workspace = true, optional = true}
+http-body-util = {workspace = true, optional = true}
ibc-types = {workspace = true, features = ["std"], default-features = true}
ics23 = {workspace = true}
pbjson = {workspace = true}
diff --git a/crates/proto/src/box_grpc_svc.rs b/crates/proto/src/box_grpc_svc.rs
index 1ce117449f..7c02a015dc 100644
--- a/crates/proto/src/box_grpc_svc.rs
+++ b/crates/proto/src/box_grpc_svc.rs
@@ -1,10 +1,7 @@
use bytes::Bytes;
-use http_body::{combinators::UnsyncBoxBody, Body};
-use tonic::{
- body::BoxBody as ReqBody,
- codegen::http as grpc,
- transport::{self, Endpoint},
-};
+use http_body::Body;
+use http_body_util::{combinators::UnsyncBoxBody, BodyExt as _};
+use tonic::{body::BoxBody as ReqBody, codegen::http as grpc, transport::Endpoint};
use tower::{util::BoxCloneService, Service, ServiceBuilder};
/// A type-erased gRPC service.
@@ -20,7 +17,7 @@ pub type RspBody = UnsyncBoxBody;
pub async fn connect(ep: Endpoint) -> anyhow::Result {
let conn = ep.connect().await?;
let svc = ServiceBuilder::new()
- .map_response(|rsp: grpc::Response| rsp.map(box_rsp_body))
+ .map_response(|rsp: grpc::Response| rsp.map(box_rsp_body))
.map_err(BoxError::from)
.service(conn);
Ok(BoxCloneService::new(svc))
diff --git a/crates/proto/src/event.rs b/crates/proto/src/event.rs
index e7e69fefa4..ce74895ce4 100644
--- a/crates/proto/src/event.rs
+++ b/crates/proto/src/event.rs
@@ -16,16 +16,19 @@ pub trait ProtoEvent: Message + Name + Serialize + DeserializeOwned + Sized {
.as_object()
.expect("serde_json Serialized ProtoEvent should not be empty.")
.into_iter()
- .map(|(key, v)| abci::EventAttribute {
- value: serde_json::to_string(v).expect("must be able to serialize value as JSON"),
- key: key.to_string(),
- index: true,
+ .map(|(key, v)| {
+ abci::EventAttribute::V037(abci::v0_37::EventAttribute {
+ value: serde_json::to_string(v)
+ .expect("must be able to serialize value as JSON"),
+ key: key.to_string(),
+ index: true,
+ })
})
.collect();
// NOTE: cosmo-sdk sorts the attribute list so that it's deterministic every time.[0] I don't know if that is actually conformant but continuing that pattern here for now.
// [0]: https://github.com/cosmos/cosmos-sdk/blob/8fb62054c59e580c0ae0c898751f8dc46044499a/types/events.go#L102-L104
- attributes.sort_by(|a, b| (&a.key).cmp(&b.key));
+ attributes.sort_by(|a, b| (&a.key_bytes()).cmp(&b.key_bytes()));
return abci::Event::new(kind, attributes);
}
@@ -43,9 +46,9 @@ pub trait ProtoEvent: Message + Name + Serialize + DeserializeOwned + Sized {
// NOTE: Is there any condition where there would be duplicate EventAttributes and problems that fall out of that?
let mut attributes = HashMap::::new();
for attr in &event.attributes {
- let value = serde_json::from_str(&attr.value)
+ let value = serde_json::from_slice(attr.value_bytes())
.with_context(|| format!("could not parse JSON for attribute {:?}", attr))?;
- attributes.insert(attr.key.clone(), value);
+ attributes.insert(String::from_utf8_lossy(attr.key_bytes()).into(), value);
}
let json = serde_json::to_value(attributes)
@@ -81,11 +84,11 @@ mod tests {
let expected_abci_spend = abci::Event::new(
"penumbra.core.component.shielded_pool.v1.EventSpend",
- vec![abci::EventAttribute {
+ [abci::EventAttribute::V037(abci::v0_37::EventAttribute {
key: "nullifier".to_string(),
value: "{\"inner\":\"lL6VF1ZxmJFo8o6i6e+JjYyktGKaN6j/o+SzsBoZ29M=\"}".to_string(),
index: true,
- }],
+ })],
);
assert_eq!(abci_spend, expected_abci_spend);
@@ -107,13 +110,13 @@ mod tests {
let expected_abci_output = abci::Event::new(
"penumbra.core.component.shielded_pool.v1.EventOutput",
- vec![abci::EventAttribute {
+ [abci::EventAttribute::V037(abci::v0_37::EventAttribute {
// note: attribute keys become camelCase because ProtoJSON...
key: "noteCommitment".to_string(),
// note: attribute values are JSON objects, potentially nested as here
value: "{\"inner\":\"lL6VF1ZxmJFo8o6i6e+JjYyktGKaN6j/o+SzsBoZ29M=\"}".to_string(),
index: true,
- }],
+ })],
);
assert_eq!(abci_output, expected_abci_output);
diff --git a/crates/proto/src/gen/cosmos.app.v1alpha1.rs b/crates/proto/src/gen/cosmos.app.v1alpha1.rs
index de74556a7a..a2b1826bb6 100644
--- a/crates/proto/src/gen/cosmos.app.v1alpha1.rs
+++ b/crates/proto/src/gen/cosmos.app.v1alpha1.rs
@@ -1,5 +1,5 @@
+// This file is @generated by prost-build.
/// ModuleDescriptor describes an app module.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModuleDescriptor {
/// go_import names the package that should be imported by an app to load the
@@ -27,11 +27,13 @@ impl ::prost::Name for ModuleDescriptor {
const NAME: &'static str = "ModuleDescriptor";
const PACKAGE: &'static str = "cosmos.app.v1alpha1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.app.v1alpha1.{}", Self::NAME)
+ "cosmos.app.v1alpha1.ModuleDescriptor".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.app.v1alpha1.ModuleDescriptor".into()
}
}
/// PackageReference is a reference to a protobuf package used by a module.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PackageReference {
/// name is the fully-qualified name of the package.
@@ -80,12 +82,14 @@ impl ::prost::Name for PackageReference {
const NAME: &'static str = "PackageReference";
const PACKAGE: &'static str = "cosmos.app.v1alpha1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.app.v1alpha1.{}", Self::NAME)
+ "cosmos.app.v1alpha1.PackageReference".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.app.v1alpha1.PackageReference".into()
}
}
/// MigrateFromInfo is information on a module version that a newer module
/// can migrate from.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigrateFromInfo {
/// module is the fully-qualified protobuf name of the module config object
@@ -97,6 +101,9 @@ impl ::prost::Name for MigrateFromInfo {
const NAME: &'static str = "MigrateFromInfo";
const PACKAGE: &'static str = "cosmos.app.v1alpha1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.app.v1alpha1.{}", Self::NAME)
+ "cosmos.app.v1alpha1.MigrateFromInfo".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.app.v1alpha1.MigrateFromInfo".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.auth.v1beta1.rs b/crates/proto/src/gen/cosmos.auth.v1beta1.rs
index 494ee21f5f..eb18f17fee 100644
--- a/crates/proto/src/gen/cosmos.auth.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.auth.v1beta1.rs
@@ -1,7 +1,7 @@
+// This file is @generated by prost-build.
/// BaseAccount defines a base account type. It contains all the necessary fields
/// for basic account functionality. Any custom account type should extend this
/// type for additional functionality (e.g. vesting).
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BaseAccount {
#[prost(string, tag = "1")]
@@ -17,11 +17,13 @@ impl ::prost::Name for BaseAccount {
const NAME: &'static str = "BaseAccount";
const PACKAGE: &'static str = "cosmos.auth.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.auth.v1beta1.{}", Self::NAME)
+ "cosmos.auth.v1beta1.BaseAccount".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.auth.v1beta1.BaseAccount".into()
}
}
/// ModuleAccount defines an account for modules that holds coins on a pool.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModuleAccount {
#[prost(message, optional, tag = "1")]
@@ -35,13 +37,15 @@ impl ::prost::Name for ModuleAccount {
const NAME: &'static str = "ModuleAccount";
const PACKAGE: &'static str = "cosmos.auth.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.auth.v1beta1.{}", Self::NAME)
+ "cosmos.auth.v1beta1.ModuleAccount".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.auth.v1beta1.ModuleAccount".into()
}
}
/// ModuleCredential represents a unclaimable pubkey for base accounts controlled by modules.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModuleCredential {
/// module_name is the name of the module used for address derivation (passed into address.Module).
@@ -56,12 +60,14 @@ impl ::prost::Name for ModuleCredential {
const NAME: &'static str = "ModuleCredential";
const PACKAGE: &'static str = "cosmos.auth.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.auth.v1beta1.{}", Self::NAME)
+ "cosmos.auth.v1beta1.ModuleCredential".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.auth.v1beta1.ModuleCredential".into()
}
}
/// Params defines the parameters for the auth module.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
+#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Params {
#[prost(uint64, tag = "1")]
pub max_memo_characters: u64,
@@ -78,6 +84,9 @@ impl ::prost::Name for Params {
const NAME: &'static str = "Params";
const PACKAGE: &'static str = "cosmos.auth.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.auth.v1beta1.{}", Self::NAME)
+ "cosmos.auth.v1beta1.Params".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.auth.v1beta1.Params".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.bank.v1beta1.rs b/crates/proto/src/gen/cosmos.bank.v1beta1.rs
index 1fdd67aa3c..113e4a0aa6 100644
--- a/crates/proto/src/gen/cosmos.bank.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.bank.v1beta1.rs
@@ -1,5 +1,5 @@
+// This file is @generated by prost-build.
/// Params defines the parameters for the bank module.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Params {
/// Deprecated: Use of SendEnabled in params is deprecated.
@@ -17,12 +17,14 @@ impl ::prost::Name for Params {
const NAME: &'static str = "Params";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.Params".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.Params".into()
}
}
/// SendEnabled maps coin denom to a send_enabled status (whether a denom is
/// sendable).
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SendEnabled {
#[prost(string, tag = "1")]
@@ -34,11 +36,13 @@ impl ::prost::Name for SendEnabled {
const NAME: &'static str = "SendEnabled";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.SendEnabled".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.SendEnabled".into()
}
}
/// Input models transaction input.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Input {
#[prost(string, tag = "1")]
@@ -50,11 +54,13 @@ impl ::prost::Name for Input {
const NAME: &'static str = "Input";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.Input".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.Input".into()
}
}
/// Output models transaction outputs.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Output {
#[prost(string, tag = "1")]
@@ -66,13 +72,15 @@ impl ::prost::Name for Output {
const NAME: &'static str = "Output";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.Output".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.Output".into()
}
}
/// Supply represents a struct that passively keeps track of the total supply
/// amounts in the network.
/// This message is deprecated now that supply is indexed by denom.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Supply {
#[prost(message, repeated, tag = "1")]
@@ -82,12 +90,14 @@ impl ::prost::Name for Supply {
const NAME: &'static str = "Supply";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.Supply".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.Supply".into()
}
}
/// DenomUnit represents a struct that describes a given
/// denomination unit of the basic token.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DenomUnit {
/// denom represents the string name of the given denom unit (e.g uatom).
@@ -108,12 +118,14 @@ impl ::prost::Name for DenomUnit {
const NAME: &'static str = "DenomUnit";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.DenomUnit".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.DenomUnit".into()
}
}
/// Metadata represents a struct that describes
/// a basic token.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Metadata {
#[prost(string, tag = "1")]
@@ -155,11 +167,13 @@ impl ::prost::Name for Metadata {
const NAME: &'static str = "Metadata";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.Metadata".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.Metadata".into()
}
}
/// QueryBalanceRequest is the request type for the Query/Balance RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryBalanceRequest {
/// address is the address to query balances for.
@@ -173,11 +187,13 @@ impl ::prost::Name for QueryBalanceRequest {
const NAME: &'static str = "QueryBalanceRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryBalanceRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryBalanceRequest".into()
}
}
/// QueryBalanceResponse is the response type for the Query/Balance RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryBalanceResponse {
/// balance is the balance of the coin.
@@ -188,11 +204,13 @@ impl ::prost::Name for QueryBalanceResponse {
const NAME: &'static str = "QueryBalanceResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryBalanceResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryBalanceResponse".into()
}
}
/// QueryBalanceRequest is the request type for the Query/AllBalances RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryAllBalancesRequest {
/// address is the address to query balances for.
@@ -213,12 +231,14 @@ impl ::prost::Name for QueryAllBalancesRequest {
const NAME: &'static str = "QueryAllBalancesRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryAllBalancesRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryAllBalancesRequest".into()
}
}
/// QueryAllBalancesResponse is the response type for the Query/AllBalances RPC
/// method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryAllBalancesResponse {
/// balances is the balances of all the coins.
@@ -234,14 +254,16 @@ impl ::prost::Name for QueryAllBalancesResponse {
const NAME: &'static str = "QueryAllBalancesResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryAllBalancesResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryAllBalancesResponse".into()
}
}
/// QuerySpendableBalancesRequest defines the gRPC request structure for querying
/// an account's spendable balances.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySpendableBalancesRequest {
/// address is the address to query spendable balances for.
@@ -257,14 +279,16 @@ impl ::prost::Name for QuerySpendableBalancesRequest {
const NAME: &'static str = "QuerySpendableBalancesRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySpendableBalancesRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySpendableBalancesRequest".into()
}
}
/// QuerySpendableBalancesResponse defines the gRPC response structure for querying
/// an account's spendable balances.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySpendableBalancesResponse {
/// balances is the spendable balances of all the coins.
@@ -280,14 +304,16 @@ impl ::prost::Name for QuerySpendableBalancesResponse {
const NAME: &'static str = "QuerySpendableBalancesResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySpendableBalancesResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySpendableBalancesResponse".into()
}
}
/// QuerySpendableBalanceByDenomRequest defines the gRPC request structure for
/// querying an account's spendable balance for a specific denom.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySpendableBalanceByDenomRequest {
/// address is the address to query balances for.
@@ -301,14 +327,16 @@ impl ::prost::Name for QuerySpendableBalanceByDenomRequest {
const NAME: &'static str = "QuerySpendableBalanceByDenomRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySpendableBalanceByDenomRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySpendableBalanceByDenomRequest".into()
}
}
/// QuerySpendableBalanceByDenomResponse defines the gRPC response structure for
/// querying an account's spendable balance for a specific denom.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySpendableBalanceByDenomResponse {
/// balance is the balance of the coin.
@@ -319,12 +347,14 @@ impl ::prost::Name for QuerySpendableBalanceByDenomResponse {
const NAME: &'static str = "QuerySpendableBalanceByDenomResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySpendableBalanceByDenomResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySpendableBalanceByDenomResponse".into()
}
}
/// QueryTotalSupplyRequest is the request type for the Query/TotalSupply RPC
/// method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryTotalSupplyRequest {
/// pagination defines an optional pagination for the request.
@@ -339,12 +369,14 @@ impl ::prost::Name for QueryTotalSupplyRequest {
const NAME: &'static str = "QueryTotalSupplyRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryTotalSupplyRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryTotalSupplyRequest".into()
}
}
/// QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC
/// method
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryTotalSupplyResponse {
/// supply is the supply of the coins
@@ -362,11 +394,13 @@ impl ::prost::Name for QueryTotalSupplyResponse {
const NAME: &'static str = "QueryTotalSupplyResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryTotalSupplyResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryTotalSupplyResponse".into()
}
}
/// QuerySupplyOfRequest is the request type for the Query/SupplyOf RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySupplyOfRequest {
/// denom is the coin denom to query balances for.
@@ -377,11 +411,13 @@ impl ::prost::Name for QuerySupplyOfRequest {
const NAME: &'static str = "QuerySupplyOfRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySupplyOfRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySupplyOfRequest".into()
}
}
/// QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySupplyOfResponse {
/// amount is the supply of the coin.
@@ -392,22 +428,26 @@ impl ::prost::Name for QuerySupplyOfResponse {
const NAME: &'static str = "QuerySupplyOfResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySupplyOfResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySupplyOfResponse".into()
}
}
/// QueryParamsRequest defines the request type for querying x/bank parameters.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
+#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryParamsRequest {}
impl ::prost::Name for QueryParamsRequest {
const NAME: &'static str = "QueryParamsRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryParamsRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryParamsRequest".into()
}
}
/// QueryParamsResponse defines the response type for querying x/bank parameters.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryParamsResponse {
#[prost(message, optional, tag = "1")]
@@ -417,11 +457,13 @@ impl ::prost::Name for QueryParamsResponse {
const NAME: &'static str = "QueryParamsResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryParamsResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryParamsResponse".into()
}
}
/// QueryDenomsMetadataRequest is the request type for the Query/DenomsMetadata RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomsMetadataRequest {
/// pagination defines an optional pagination for the request.
@@ -434,12 +476,14 @@ impl ::prost::Name for QueryDenomsMetadataRequest {
const NAME: &'static str = "QueryDenomsMetadataRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomsMetadataRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomsMetadataRequest".into()
}
}
/// QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC
/// method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomsMetadataResponse {
/// metadata provides the client information for all the registered tokens.
@@ -455,11 +499,13 @@ impl ::prost::Name for QueryDenomsMetadataResponse {
const NAME: &'static str = "QueryDenomsMetadataResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomsMetadataResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomsMetadataResponse".into()
}
}
/// QueryDenomMetadataRequest is the request type for the Query/DenomMetadata RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomMetadataRequest {
/// denom is the coin denom to query the metadata for.
@@ -470,12 +516,14 @@ impl ::prost::Name for QueryDenomMetadataRequest {
const NAME: &'static str = "QueryDenomMetadataRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomMetadataRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomMetadataRequest".into()
}
}
/// QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC
/// method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomMetadataResponse {
/// metadata describes and provides all the client information for the requested token.
@@ -486,13 +534,15 @@ impl ::prost::Name for QueryDenomMetadataResponse {
const NAME: &'static str = "QueryDenomMetadataResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomMetadataResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomMetadataResponse".into()
}
}
/// QueryDenomOwnersRequest defines the request type for the DenomOwners RPC query,
/// which queries for a paginated set of all account holders of a particular
/// denomination.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomOwnersRequest {
/// denom defines the coin denomination to query all account holders for.
@@ -508,7 +558,10 @@ impl ::prost::Name for QueryDenomOwnersRequest {
const NAME: &'static str = "QueryDenomOwnersRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomOwnersRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomOwnersRequest".into()
}
}
/// DenomOwner defines structure representing an account that owns or holds a
@@ -516,7 +569,6 @@ impl ::prost::Name for QueryDenomOwnersRequest {
/// balance of the denominated token.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DenomOwner {
/// address defines the address that owns a particular denomination.
@@ -530,13 +582,15 @@ impl ::prost::Name for DenomOwner {
const NAME: &'static str = "DenomOwner";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.DenomOwner".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.DenomOwner".into()
}
}
/// QueryDenomOwnersResponse defines the RPC response of a DenomOwners RPC query.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryDenomOwnersResponse {
#[prost(message, repeated, tag = "1")]
@@ -551,13 +605,15 @@ impl ::prost::Name for QueryDenomOwnersResponse {
const NAME: &'static str = "QueryDenomOwnersResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QueryDenomOwnersResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QueryDenomOwnersResponse".into()
}
}
/// QuerySendEnabledRequest defines the RPC request for looking up SendEnabled entries.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySendEnabledRequest {
/// denoms is the specific denoms you want look up. Leave empty to get all entries.
@@ -574,13 +630,15 @@ impl ::prost::Name for QuerySendEnabledRequest {
const NAME: &'static str = "QuerySendEnabledRequest";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySendEnabledRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySendEnabledRequest".into()
}
}
/// QuerySendEnabledResponse defines the RPC response of a SendEnable query.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuerySendEnabledResponse {
#[prost(message, repeated, tag = "1")]
@@ -596,13 +654,22 @@ impl ::prost::Name for QuerySendEnabledResponse {
const NAME: &'static str = "QuerySendEnabledResponse";
const PACKAGE: &'static str = "cosmos.bank.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.bank.v1beta1.{}", Self::NAME)
+ "cosmos.bank.v1beta1.QuerySendEnabledResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.bank.v1beta1.QuerySendEnabledResponse".into()
}
}
/// Generated client implementations.
#[cfg(feature = "rpc")]
pub mod query_client {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
/// Query defines the gRPC querier service.
@@ -625,8 +692,8 @@ pub mod query_client {
where
T: tonic::client::GrpcService,
T::Error: Into,
- T::ResponseBody: Body + Send + 'static,
- ::Error: Into + Send,
+ T::ResponseBody: Body + std::marker::Send + 'static,
+ ::Error: Into + std::marker::Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
@@ -651,7 +718,7 @@ pub mod query_client {
>,
,
- >>::Error: Into + Send + Sync,
+ >>::Error: Into + std::marker::Send + std::marker::Sync,
{
QueryClient::new(InterceptedService::new(inner, interceptor))
}
@@ -698,8 +765,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -727,8 +793,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -759,8 +824,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -793,8 +857,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -827,8 +890,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -856,8 +918,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -882,8 +943,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -908,8 +968,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -935,8 +994,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -967,8 +1025,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -999,8 +1056,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1018,11 +1074,17 @@ pub mod query_client {
/// Generated server implementations.
#[cfg(feature = "rpc")]
pub mod query_server {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
/// Generated trait containing gRPC methods that should be implemented for use with QueryServer.
#[async_trait]
- pub trait Query: Send + Sync + 'static {
+ pub trait Query: std::marker::Send + std::marker::Sync + 'static {
/// Balance queries the balance of a single coin for a single account.
async fn balance(
&self,
@@ -1148,20 +1210,18 @@ pub mod query_server {
}
/// Query defines the gRPC querier service.
#[derive(Debug)]
- pub struct QueryServer {
- inner: _Inner,
+ pub struct QueryServer {
+ inner: Arc,
accept_compression_encodings: EnabledCompressionEncodings,
send_compression_encodings: EnabledCompressionEncodings,
max_decoding_message_size: Option,
max_encoding_message_size: Option,
}
- struct _Inner(Arc);
- impl QueryServer {
+ impl QueryServer {
pub fn new(inner: T) -> Self {
Self::from_arc(Arc::new(inner))
}
pub fn from_arc(inner: Arc) -> Self {
- let inner = _Inner(inner);
Self {
inner,
accept_compression_encodings: Default::default(),
@@ -1211,8 +1271,8 @@ pub mod query_server {
impl tonic::codegen::Service> for QueryServer
where
T: Query,
- B: Body + Send + 'static,
- B::Error: Into + Send + 'static,
+ B: Body + std::marker::Send + 'static,
+ B::Error: Into + std::marker::Send + 'static,
{
type Response = http::Response;
type Error = std::convert::Infallible;
@@ -1224,7 +1284,6 @@ pub mod query_server {
Poll::Ready(Ok(()))
}
fn call(&mut self, req: http::Request) -> Self::Future {
- let inner = self.inner.clone();
match req.uri().path() {
"/cosmos.bank.v1beta1.Query/Balance" => {
#[allow(non_camel_case_types)]
@@ -1255,7 +1314,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = BalanceSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1301,7 +1359,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = AllBalancesSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1347,7 +1404,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = SpendableBalancesSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1397,7 +1453,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = SpendableBalanceByDenomSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1443,7 +1498,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TotalSupplySvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1489,7 +1543,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = SupplyOfSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1533,7 +1586,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = ParamsSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1579,7 +1631,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomMetadataSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1625,7 +1676,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomsMetadataSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1671,7 +1721,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomOwnersSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1717,7 +1766,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = SendEnabledSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1736,20 +1784,25 @@ pub mod query_server {
}
_ => {
Box::pin(async move {
- Ok(
- http::Response::builder()
- .status(200)
- .header("grpc-status", "12")
- .header("content-type", "application/grpc")
- .body(empty_body())
- .unwrap(),
- )
+ let mut response = http::Response::new(empty_body());
+ let headers = response.headers_mut();
+ headers
+ .insert(
+ tonic::Status::GRPC_STATUS,
+ (tonic::Code::Unimplemented as i32).into(),
+ );
+ headers
+ .insert(
+ http::header::CONTENT_TYPE,
+ tonic::metadata::GRPC_CONTENT_TYPE,
+ );
+ Ok(response)
})
}
}
}
}
- impl Clone for QueryServer {
+ impl Clone for QueryServer {
fn clone(&self) -> Self {
let inner = self.inner.clone();
Self {
@@ -1761,17 +1814,9 @@ pub mod query_server {
}
}
}
- impl Clone for _Inner {
- fn clone(&self) -> Self {
- Self(Arc::clone(&self.0))
- }
- }
- impl std::fmt::Debug for _Inner {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- write!(f, "{:?}", self.0)
- }
- }
- impl tonic::server::NamedService for QueryServer {
- const NAME: &'static str = "cosmos.bank.v1beta1.Query";
+ /// Generated gRPC service name
+ pub const SERVICE_NAME: &str = "cosmos.bank.v1beta1.Query";
+ impl tonic::server::NamedService for QueryServer {
+ const NAME: &'static str = SERVICE_NAME;
}
}
diff --git a/crates/proto/src/gen/cosmos.base.abci.v1beta1.rs b/crates/proto/src/gen/cosmos.base.abci.v1beta1.rs
index 574a2519a4..e1c9e389dc 100644
--- a/crates/proto/src/gen/cosmos.base.abci.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.base.abci.v1beta1.rs
@@ -1,6 +1,6 @@
+// This file is @generated by prost-build.
/// TxResponse defines a structure containing relevant tx data and metadata. The
/// tags are stringified and the log is JSON decoded.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxResponse {
/// The block height
@@ -57,11 +57,13 @@ impl ::prost::Name for TxResponse {
const NAME: &'static str = "TxResponse";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.TxResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.TxResponse".into()
}
}
/// ABCIMessageLog defines a structure containing an indexed tx ABCI message log.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AbciMessageLog {
#[prost(uint32, tag = "1")]
@@ -77,12 +79,14 @@ impl ::prost::Name for AbciMessageLog {
const NAME: &'static str = "ABCIMessageLog";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.ABCIMessageLog".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.ABCIMessageLog".into()
}
}
/// StringEvent defines en Event object wrapper where all the attributes
/// contain key/value pairs that are strings instead of raw bytes.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StringEvent {
#[prost(string, tag = "1")]
@@ -94,12 +98,14 @@ impl ::prost::Name for StringEvent {
const NAME: &'static str = "StringEvent";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.StringEvent".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.StringEvent".into()
}
}
/// Attribute defines an attribute wrapper where the key and value are
/// strings instead of raw bytes.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Attribute {
#[prost(string, tag = "1")]
@@ -111,12 +117,14 @@ impl ::prost::Name for Attribute {
const NAME: &'static str = "Attribute";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.Attribute".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.Attribute".into()
}
}
/// GasInfo defines tx execution gas context.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
+#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GasInfo {
/// GasWanted is the maximum units of work we allow this tx to perform.
#[prost(uint64, tag = "1")]
@@ -129,11 +137,13 @@ impl ::prost::Name for GasInfo {
const NAME: &'static str = "GasInfo";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.GasInfo".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.GasInfo".into()
}
}
/// Result is the union of ResponseFormat and ResponseCheckTx.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Result {
/// Data is any data returned from message or handler execution. It MUST be
@@ -162,12 +172,14 @@ impl ::prost::Name for Result {
const NAME: &'static str = "Result";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.Result".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.Result".into()
}
}
/// SimulationResponse defines the response generated when a transaction is
/// successfully simulated.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SimulationResponse {
#[prost(message, optional, tag = "1")]
@@ -179,12 +191,14 @@ impl ::prost::Name for SimulationResponse {
const NAME: &'static str = "SimulationResponse";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.SimulationResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.SimulationResponse".into()
}
}
/// MsgData defines the data returned in a Result object during message
/// execution.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgData {
#[prost(string, tag = "1")]
@@ -196,12 +210,14 @@ impl ::prost::Name for MsgData {
const NAME: &'static str = "MsgData";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.MsgData".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.MsgData".into()
}
}
/// TxMsgData defines a list of MsgData. A transaction will have a MsgData object
/// for each message.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxMsgData {
/// data field is deprecated and not populated.
@@ -218,11 +234,13 @@ impl ::prost::Name for TxMsgData {
const NAME: &'static str = "TxMsgData";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.TxMsgData".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.TxMsgData".into()
}
}
/// SearchTxsResult defines a structure for querying txs pageable
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SearchTxsResult {
/// Count of all txs
@@ -248,11 +266,13 @@ impl ::prost::Name for SearchTxsResult {
const NAME: &'static str = "SearchTxsResult";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.SearchTxsResult".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.SearchTxsResult".into()
}
}
/// SearchBlocksResult defines a structure for querying blocks pageable
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SearchBlocksResult {
/// Count of all blocks
@@ -280,6 +300,9 @@ impl ::prost::Name for SearchBlocksResult {
const NAME: &'static str = "SearchBlocksResult";
const PACKAGE: &'static str = "cosmos.base.abci.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.abci.v1beta1.{}", Self::NAME)
+ "cosmos.base.abci.v1beta1.SearchBlocksResult".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.abci.v1beta1.SearchBlocksResult".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.base.query.v1beta1.rs b/crates/proto/src/gen/cosmos.base.query.v1beta1.rs
index f25dadc86c..c973de722f 100644
--- a/crates/proto/src/gen/cosmos.base.query.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.base.query.v1beta1.rs
@@ -1,3 +1,4 @@
+// This file is @generated by prost-build.
/// PageRequest is to be embedded in gRPC request messages for efficient
/// pagination. Ex:
///
@@ -5,7 +6,6 @@
/// Foo some_parameter = 1;
/// PageRequest pagination = 2;
/// }
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PageRequest {
/// key is a value returned in PageResponse.next_key to begin
@@ -38,7 +38,10 @@ impl ::prost::Name for PageRequest {
const NAME: &'static str = "PageRequest";
const PACKAGE: &'static str = "cosmos.base.query.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.query.v1beta1.{}", Self::NAME)
+ "cosmos.base.query.v1beta1.PageRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.query.v1beta1.PageRequest".into()
}
}
/// PageResponse is to be embedded in gRPC response messages where the
@@ -48,7 +51,6 @@ impl ::prost::Name for PageRequest {
/// repeated Bar results = 1;
/// PageResponse page = 2;
/// }
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PageResponse {
/// next_key is the key to be passed to PageRequest.key to
@@ -65,6 +67,9 @@ impl ::prost::Name for PageResponse {
const NAME: &'static str = "PageResponse";
const PACKAGE: &'static str = "cosmos.base.query.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.query.v1beta1.{}", Self::NAME)
+ "cosmos.base.query.v1beta1.PageResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.query.v1beta1.PageResponse".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.base.v1beta1.rs b/crates/proto/src/gen/cosmos.base.v1beta1.rs
index a24098b3ee..67b93478c9 100644
--- a/crates/proto/src/gen/cosmos.base.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.base.v1beta1.rs
@@ -1,8 +1,8 @@
+// This file is @generated by prost-build.
/// Coin defines a token with a denomination and an amount.
///
/// NOTE: The amount field is an Int which implements the custom method
/// signatures required by gogoproto.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Coin {
#[prost(string, tag = "1")]
@@ -14,14 +14,16 @@ impl ::prost::Name for Coin {
const NAME: &'static str = "Coin";
const PACKAGE: &'static str = "cosmos.base.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.v1beta1.{}", Self::NAME)
+ "cosmos.base.v1beta1.Coin".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.v1beta1.Coin".into()
}
}
/// DecCoin defines a token with a denomination and a decimal amount.
///
/// NOTE: The amount field is an Dec which implements the custom method
/// signatures required by gogoproto.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DecCoin {
#[prost(string, tag = "1")]
@@ -33,6 +35,9 @@ impl ::prost::Name for DecCoin {
const NAME: &'static str = "DecCoin";
const PACKAGE: &'static str = "cosmos.base.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.base.v1beta1.{}", Self::NAME)
+ "cosmos.base.v1beta1.DecCoin".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.base.v1beta1.DecCoin".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.crypto.multisig.v1beta1.rs b/crates/proto/src/gen/cosmos.crypto.multisig.v1beta1.rs
index 1d784f6978..26d4ac43e8 100644
--- a/crates/proto/src/gen/cosmos.crypto.multisig.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.crypto.multisig.v1beta1.rs
@@ -1,7 +1,7 @@
+// This file is @generated by prost-build.
/// MultiSignature wraps the signatures from a multisig.LegacyAminoPubKey.
/// See cosmos.tx.v1betata1.ModeInfo.Multi for how to specify which signers
/// signed and with which modes.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MultiSignature {
#[prost(bytes = "vec", repeated, tag = "1")]
@@ -11,14 +11,16 @@ impl ::prost::Name for MultiSignature {
const NAME: &'static str = "MultiSignature";
const PACKAGE: &'static str = "cosmos.crypto.multisig.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.crypto.multisig.v1beta1.{}", Self::NAME)
+ "cosmos.crypto.multisig.v1beta1.MultiSignature".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.crypto.multisig.v1beta1.MultiSignature".into()
}
}
/// CompactBitArray is an implementation of a space efficient bit array.
/// This is used to ensure that the encoded data takes up a minimal amount of
/// space after proto encoding.
/// This is not thread safe, and is not intended for concurrent usage.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CompactBitArray {
#[prost(uint32, tag = "1")]
@@ -30,6 +32,9 @@ impl ::prost::Name for CompactBitArray {
const NAME: &'static str = "CompactBitArray";
const PACKAGE: &'static str = "cosmos.crypto.multisig.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.crypto.multisig.v1beta1.{}", Self::NAME)
+ "cosmos.crypto.multisig.v1beta1.CompactBitArray".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.crypto.multisig.v1beta1.CompactBitArray".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.tx.config.v1.rs b/crates/proto/src/gen/cosmos.tx.config.v1.rs
index b79ab2e0fd..31586d462d 100644
--- a/crates/proto/src/gen/cosmos.tx.config.v1.rs
+++ b/crates/proto/src/gen/cosmos.tx.config.v1.rs
@@ -1,6 +1,6 @@
+// This file is @generated by prost-build.
/// Config is the config object of the x/auth/tx package.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
+#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Config {
/// skip_ante_handler defines whether the ante handler registration should be skipped in case an app wants to override
/// this functionality.
@@ -15,6 +15,9 @@ impl ::prost::Name for Config {
const NAME: &'static str = "Config";
const PACKAGE: &'static str = "cosmos.tx.config.v1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.config.v1.{}", Self::NAME)
+ "cosmos.tx.config.v1.Config".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.config.v1.Config".into()
}
}
diff --git a/crates/proto/src/gen/cosmos.tx.signing.v1beta1.rs b/crates/proto/src/gen/cosmos.tx.signing.v1beta1.rs
index c5b8f2f52f..25c93fb9de 100644
--- a/crates/proto/src/gen/cosmos.tx.signing.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.tx.signing.v1beta1.rs
@@ -1,5 +1,5 @@
+// This file is @generated by prost-build.
/// SignatureDescriptors wraps multiple SignatureDescriptor's.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignatureDescriptors {
/// signatures are the signature descriptors
@@ -10,14 +10,16 @@ impl ::prost::Name for SignatureDescriptors {
const NAME: &'static str = "SignatureDescriptors";
const PACKAGE: &'static str = "cosmos.tx.signing.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.signing.v1beta1.{}", Self::NAME)
+ "cosmos.tx.signing.v1beta1.SignatureDescriptors".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.signing.v1beta1.SignatureDescriptors".into()
}
}
/// SignatureDescriptor is a convenience type which represents the full data for
/// a signature including the public key of the signer, signing modes and the
/// signature itself. It is primarily used for coordinating signatures between
/// clients.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignatureDescriptor {
/// public_key is the public key of the signer
@@ -34,7 +36,6 @@ pub struct SignatureDescriptor {
/// Nested message and enum types in `SignatureDescriptor`.
pub mod signature_descriptor {
/// Data represents signature data
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Data {
/// sum is the oneof that specifies whether this represents single or multi-signature data
@@ -44,7 +45,6 @@ pub mod signature_descriptor {
/// Nested message and enum types in `Data`.
pub mod data {
/// Single is the signature data for a single signer
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Single {
/// mode is the signing mode of the single signer
@@ -58,13 +58,13 @@ pub mod signature_descriptor {
const NAME: &'static str = "Single";
const PACKAGE: &'static str = "cosmos.tx.signing.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.{}", Self::NAME
- )
+ "cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Single".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Single".into()
}
}
/// Multi is the signature data for a multisig public key
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Multi {
/// bitarray specifies which keys within the multisig are signing
@@ -80,13 +80,13 @@ pub mod signature_descriptor {
const NAME: &'static str = "Multi";
const PACKAGE: &'static str = "cosmos.tx.signing.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.{}", Self::NAME
- )
+ "cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Multi".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.signing.v1beta1.SignatureDescriptor.Data.Multi".into()
}
}
/// sum is the oneof that specifies whether this represents single or multi-signature data
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Sum {
/// single represents a single signer
@@ -101,9 +101,10 @@ pub mod signature_descriptor {
const NAME: &'static str = "Data";
const PACKAGE: &'static str = "cosmos.tx.signing.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!(
- "cosmos.tx.signing.v1beta1.SignatureDescriptor.{}", Self::NAME
- )
+ "cosmos.tx.signing.v1beta1.SignatureDescriptor.Data".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.signing.v1beta1.SignatureDescriptor.Data".into()
}
}
}
@@ -111,7 +112,10 @@ impl ::prost::Name for SignatureDescriptor {
const NAME: &'static str = "SignatureDescriptor";
const PACKAGE: &'static str = "cosmos.tx.signing.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.signing.v1beta1.{}", Self::NAME)
+ "cosmos.tx.signing.v1beta1.SignatureDescriptor".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.signing.v1beta1.SignatureDescriptor".into()
}
}
/// SignMode represents a signing mode with its own security guarantees.
@@ -166,12 +170,12 @@ impl SignMode {
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
- SignMode::Unspecified => "SIGN_MODE_UNSPECIFIED",
- SignMode::Direct => "SIGN_MODE_DIRECT",
- SignMode::Textual => "SIGN_MODE_TEXTUAL",
- SignMode::DirectAux => "SIGN_MODE_DIRECT_AUX",
- SignMode::LegacyAminoJson => "SIGN_MODE_LEGACY_AMINO_JSON",
- SignMode::Eip191 => "SIGN_MODE_EIP_191",
+ Self::Unspecified => "SIGN_MODE_UNSPECIFIED",
+ Self::Direct => "SIGN_MODE_DIRECT",
+ Self::Textual => "SIGN_MODE_TEXTUAL",
+ Self::DirectAux => "SIGN_MODE_DIRECT_AUX",
+ Self::LegacyAminoJson => "SIGN_MODE_LEGACY_AMINO_JSON",
+ Self::Eip191 => "SIGN_MODE_EIP_191",
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
diff --git a/crates/proto/src/gen/cosmos.tx.v1beta1.rs b/crates/proto/src/gen/cosmos.tx.v1beta1.rs
index 8aeb187cda..0db9732ef4 100644
--- a/crates/proto/src/gen/cosmos.tx.v1beta1.rs
+++ b/crates/proto/src/gen/cosmos.tx.v1beta1.rs
@@ -1,5 +1,5 @@
+// This file is @generated by prost-build.
/// Tx is the standard type used for broadcasting transactions.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tx {
/// body is the processable content of the transaction
@@ -19,7 +19,10 @@ impl ::prost::Name for Tx {
const NAME: &'static str = "Tx";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.Tx".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.Tx".into()
}
}
/// TxRaw is a variant of Tx that pins the signer's exact binary representation
@@ -27,7 +30,6 @@ impl ::prost::Name for Tx {
/// verification. The binary `serialize(tx: TxRaw)` is stored in Tendermint and
/// the hash `sha256(serialize(tx: TxRaw))` becomes the "txhash", commonly used
/// as the transaction ID.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxRaw {
/// body_bytes is a protobuf serialization of a TxBody that matches the
@@ -48,11 +50,13 @@ impl ::prost::Name for TxRaw {
const NAME: &'static str = "TxRaw";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxRaw".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxRaw".into()
}
}
/// SignDoc is the type used for generating sign bytes for SIGN_MODE_DIRECT.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignDoc {
/// body_bytes is protobuf serialization of a TxBody that matches the
@@ -76,14 +80,16 @@ impl ::prost::Name for SignDoc {
const NAME: &'static str = "SignDoc";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.SignDoc".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.SignDoc".into()
}
}
/// SignDocDirectAux is the type used for generating sign bytes for
/// SIGN_MODE_DIRECT_AUX.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignDocDirectAux {
/// body_bytes is protobuf serialization of a TxBody that matches the
@@ -117,11 +123,13 @@ impl ::prost::Name for SignDocDirectAux {
const NAME: &'static str = "SignDocDirectAux";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.SignDocDirectAux".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.SignDocDirectAux".into()
}
}
/// TxBody is the body of a transaction that all signers sign over.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxBody {
/// messages is a list of messages to be executed. The required signers of
@@ -157,12 +165,14 @@ impl ::prost::Name for TxBody {
const NAME: &'static str = "TxBody";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxBody".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxBody".into()
}
}
/// AuthInfo describes the fee and signer modes that are used to sign a
/// transaction.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthInfo {
/// signer_infos defines the signing modes for the required signers. The number
@@ -190,12 +200,14 @@ impl ::prost::Name for AuthInfo {
const NAME: &'static str = "AuthInfo";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.AuthInfo".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.AuthInfo".into()
}
}
/// SignerInfo describes the public key and signing mode of a single top-level
/// signer.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignerInfo {
/// public_key is the public key of the signer. It is optional for accounts
@@ -217,11 +229,13 @@ impl ::prost::Name for SignerInfo {
const NAME: &'static str = "SignerInfo";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.SignerInfo".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.SignerInfo".into()
}
}
/// ModeInfo describes the signing mode of a single or nested multisig signer.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModeInfo {
/// sum is the oneof that specifies whether this represents a single or nested
@@ -234,8 +248,7 @@ pub mod mode_info {
/// Single is the mode info for a single signer. It is structured as a message
/// to allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the
/// future
- #[allow(clippy::derive_partial_eq_without_eq)]
- #[derive(Clone, PartialEq, ::prost::Message)]
+ #[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Single {
/// mode is the signing mode of the single signer
#[prost(enumeration = "super::super::signing::v1beta1::SignMode", tag = "1")]
@@ -245,11 +258,13 @@ pub mod mode_info {
const NAME: &'static str = "Single";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.ModeInfo.{}", Self::NAME)
+ "cosmos.tx.v1beta1.ModeInfo.Single".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.ModeInfo.Single".into()
}
}
/// Multi is the mode info for a multisig public key
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Multi {
/// bitarray specifies which keys within the multisig are signing
@@ -266,12 +281,14 @@ pub mod mode_info {
const NAME: &'static str = "Multi";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.ModeInfo.{}", Self::NAME)
+ "cosmos.tx.v1beta1.ModeInfo.Multi".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.ModeInfo.Multi".into()
}
}
/// sum is the oneof that specifies whether this represents a single or nested
/// multisig signer
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Sum {
/// single represents a single signer
@@ -286,13 +303,15 @@ impl ::prost::Name for ModeInfo {
const NAME: &'static str = "ModeInfo";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.ModeInfo".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.ModeInfo".into()
}
}
/// Fee includes the amount of coins paid in fees and the maximum
/// gas to be used by the transaction. The ratio yields an effective "gasprice",
/// which must be above some miminum to be accepted into the mempool.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fee {
/// amount is the amount of coins to be paid as a fee
@@ -317,13 +336,15 @@ impl ::prost::Name for Fee {
const NAME: &'static str = "Fee";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.Fee".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.Fee".into()
}
}
/// Tip is the tip used for meta-transactions.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tip {
/// amount is the amount of the tip
@@ -337,7 +358,10 @@ impl ::prost::Name for Tip {
const NAME: &'static str = "Tip";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.Tip".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.Tip".into()
}
}
/// AuxSignerData is the intermediary format that an auxiliary signer (e.g. a
@@ -346,7 +370,6 @@ impl ::prost::Name for Tip {
/// by the node if sent directly as-is.
///
/// Since: cosmos-sdk 0.46
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuxSignerData {
/// address is the bech32-encoded address of the auxiliary signer. If using
@@ -370,12 +393,14 @@ impl ::prost::Name for AuxSignerData {
const NAME: &'static str = "AuxSignerData";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.AuxSignerData".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.AuxSignerData".into()
}
}
/// GetTxsEventRequest is the request type for the Service.TxsByEvents
/// RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTxsEventRequest {
/// events is the list of transaction event type.
@@ -412,12 +437,14 @@ impl ::prost::Name for GetTxsEventRequest {
const NAME: &'static str = "GetTxsEventRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetTxsEventRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetTxsEventRequest".into()
}
}
/// GetTxsEventResponse is the response type for the Service.TxsByEvents
/// RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTxsEventResponse {
/// txs is the list of queried transactions.
@@ -443,12 +470,14 @@ impl ::prost::Name for GetTxsEventResponse {
const NAME: &'static str = "GetTxsEventResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetTxsEventResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetTxsEventResponse".into()
}
}
/// BroadcastTxRequest is the request type for the Service.BroadcastTxRequest
/// RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BroadcastTxRequest {
/// tx_bytes is the raw transaction.
@@ -461,12 +490,14 @@ impl ::prost::Name for BroadcastTxRequest {
const NAME: &'static str = "BroadcastTxRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.BroadcastTxRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.BroadcastTxRequest".into()
}
}
/// BroadcastTxResponse is the response type for the
/// Service.BroadcastTx method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BroadcastTxResponse {
/// tx_response is the queried TxResponses.
@@ -479,12 +510,14 @@ impl ::prost::Name for BroadcastTxResponse {
const NAME: &'static str = "BroadcastTxResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.BroadcastTxResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.BroadcastTxResponse".into()
}
}
/// SimulateRequest is the request type for the Service.Simulate
/// RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SimulateRequest {
/// tx is the transaction to simulate.
@@ -502,12 +535,14 @@ impl ::prost::Name for SimulateRequest {
const NAME: &'static str = "SimulateRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.SimulateRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.SimulateRequest".into()
}
}
/// SimulateResponse is the response type for the
/// Service.SimulateRPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SimulateResponse {
/// gas_info is the information about gas used in the simulation.
@@ -521,12 +556,14 @@ impl ::prost::Name for SimulateResponse {
const NAME: &'static str = "SimulateResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.SimulateResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.SimulateResponse".into()
}
}
/// GetTxRequest is the request type for the Service.GetTx
/// RPC method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTxRequest {
/// hash is the tx hash to query, encoded as a hex string.
@@ -537,11 +574,13 @@ impl ::prost::Name for GetTxRequest {
const NAME: &'static str = "GetTxRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetTxRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetTxRequest".into()
}
}
/// GetTxResponse is the response type for the Service.GetTx method.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTxResponse {
/// tx is the queried transaction.
@@ -557,14 +596,16 @@ impl ::prost::Name for GetTxResponse {
const NAME: &'static str = "GetTxResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetTxResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetTxResponse".into()
}
}
/// GetBlockWithTxsRequest is the request type for the Service.GetBlockWithTxs
/// RPC method.
///
/// Since: cosmos-sdk 0.45.2
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBlockWithTxsRequest {
/// height is the height of the block to query.
@@ -580,14 +621,16 @@ impl ::prost::Name for GetBlockWithTxsRequest {
const NAME: &'static str = "GetBlockWithTxsRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetBlockWithTxsRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetBlockWithTxsRequest".into()
}
}
/// GetBlockWithTxsResponse is the response type for the Service.GetBlockWithTxs
/// method.
///
/// Since: cosmos-sdk 0.45.2
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBlockWithTxsResponse {
/// txs are the transactions in the block.
@@ -609,14 +652,16 @@ impl ::prost::Name for GetBlockWithTxsResponse {
const NAME: &'static str = "GetBlockWithTxsResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.GetBlockWithTxsResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.GetBlockWithTxsResponse".into()
}
}
/// TxDecodeRequest is the request type for the Service.TxDecode
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxDecodeRequest {
/// tx_bytes is the raw transaction.
@@ -627,14 +672,16 @@ impl ::prost::Name for TxDecodeRequest {
const NAME: &'static str = "TxDecodeRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxDecodeRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxDecodeRequest".into()
}
}
/// TxDecodeResponse is the response type for the
/// Service.TxDecode method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxDecodeResponse {
/// tx is the decoded transaction.
@@ -645,14 +692,16 @@ impl ::prost::Name for TxDecodeResponse {
const NAME: &'static str = "TxDecodeResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxDecodeResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxDecodeResponse".into()
}
}
/// TxEncodeRequest is the request type for the Service.TxEncode
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxEncodeRequest {
/// tx is the transaction to encode.
@@ -663,14 +712,16 @@ impl ::prost::Name for TxEncodeRequest {
const NAME: &'static str = "TxEncodeRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxEncodeRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxEncodeRequest".into()
}
}
/// TxEncodeResponse is the response type for the
/// Service.TxEncode method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxEncodeResponse {
/// tx_bytes is the encoded transaction bytes.
@@ -681,14 +732,16 @@ impl ::prost::Name for TxEncodeResponse {
const NAME: &'static str = "TxEncodeResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxEncodeResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxEncodeResponse".into()
}
}
/// TxEncodeAminoRequest is the request type for the Service.TxEncodeAmino
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxEncodeAminoRequest {
#[prost(string, tag = "1")]
@@ -698,14 +751,16 @@ impl ::prost::Name for TxEncodeAminoRequest {
const NAME: &'static str = "TxEncodeAminoRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxEncodeAminoRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxEncodeAminoRequest".into()
}
}
/// TxEncodeAminoResponse is the response type for the Service.TxEncodeAmino
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxEncodeAminoResponse {
#[prost(bytes = "vec", tag = "1")]
@@ -715,14 +770,16 @@ impl ::prost::Name for TxEncodeAminoResponse {
const NAME: &'static str = "TxEncodeAminoResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxEncodeAminoResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxEncodeAminoResponse".into()
}
}
/// TxDecodeAminoRequest is the request type for the Service.TxDecodeAmino
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxDecodeAminoRequest {
#[prost(bytes = "vec", tag = "1")]
@@ -732,14 +789,16 @@ impl ::prost::Name for TxDecodeAminoRequest {
const NAME: &'static str = "TxDecodeAminoRequest";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxDecodeAminoRequest".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxDecodeAminoRequest".into()
}
}
/// TxDecodeAminoResponse is the response type for the Service.TxDecodeAmino
/// RPC method.
///
/// Since: cosmos-sdk 0.47
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxDecodeAminoResponse {
#[prost(string, tag = "1")]
@@ -749,7 +808,10 @@ impl ::prost::Name for TxDecodeAminoResponse {
const NAME: &'static str = "TxDecodeAminoResponse";
const PACKAGE: &'static str = "cosmos.tx.v1beta1";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos.tx.v1beta1.{}", Self::NAME)
+ "cosmos.tx.v1beta1.TxDecodeAminoResponse".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos.tx.v1beta1.TxDecodeAminoResponse".into()
}
}
/// OrderBy defines the sorting order
@@ -771,9 +833,9 @@ impl OrderBy {
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
- OrderBy::Unspecified => "ORDER_BY_UNSPECIFIED",
- OrderBy::Asc => "ORDER_BY_ASC",
- OrderBy::Desc => "ORDER_BY_DESC",
+ Self::Unspecified => "ORDER_BY_UNSPECIFIED",
+ Self::Asc => "ORDER_BY_ASC",
+ Self::Desc => "ORDER_BY_DESC",
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
@@ -810,10 +872,10 @@ impl BroadcastMode {
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
- BroadcastMode::Unspecified => "BROADCAST_MODE_UNSPECIFIED",
- BroadcastMode::Block => "BROADCAST_MODE_BLOCK",
- BroadcastMode::Sync => "BROADCAST_MODE_SYNC",
- BroadcastMode::Async => "BROADCAST_MODE_ASYNC",
+ Self::Unspecified => "BROADCAST_MODE_UNSPECIFIED",
+ Self::Block => "BROADCAST_MODE_BLOCK",
+ Self::Sync => "BROADCAST_MODE_SYNC",
+ Self::Async => "BROADCAST_MODE_ASYNC",
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
@@ -830,7 +892,13 @@ impl BroadcastMode {
/// Generated client implementations.
#[cfg(feature = "rpc")]
pub mod service_client {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
/// Service defines a gRPC service for interacting with transactions.
@@ -853,8 +921,8 @@ pub mod service_client {
where
T: tonic::client::GrpcService,
T::Error: Into,
- T::ResponseBody: Body + Send + 'static,
- ::Error: Into + Send,
+ T::ResponseBody: Body + std::marker::Send + 'static,
+ ::Error: Into + std::marker::Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
@@ -879,7 +947,7 @@ pub mod service_client {
>,
,
- >>::Error: Into + Send + Sync,
+ >>::Error: Into + std::marker::Send + std::marker::Sync,
{
ServiceClient::new(InterceptedService::new(inner, interceptor))
}
@@ -926,8 +994,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -949,8 +1016,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -975,8 +1041,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1001,8 +1066,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1029,8 +1093,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1057,8 +1120,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1085,8 +1147,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1113,8 +1174,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1141,8 +1201,7 @@ pub mod service_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -1160,11 +1219,17 @@ pub mod service_client {
/// Generated server implementations.
#[cfg(feature = "rpc")]
pub mod service_server {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
/// Generated trait containing gRPC methods that should be implemented for use with ServiceServer.
#[async_trait]
- pub trait Service: Send + Sync + 'static {
+ pub trait Service: std::marker::Send + std::marker::Sync + 'static {
/// Simulate simulates executing a transaction for estimating gas usage.
async fn simulate(
&self,
@@ -1247,20 +1312,18 @@ pub mod service_server {
}
/// Service defines a gRPC service for interacting with transactions.
#[derive(Debug)]
- pub struct ServiceServer {
- inner: _Inner,
+ pub struct ServiceServer {
+ inner: Arc,
accept_compression_encodings: EnabledCompressionEncodings,
send_compression_encodings: EnabledCompressionEncodings,
max_decoding_message_size: Option,
max_encoding_message_size: Option,
}
- struct _Inner(Arc);
- impl ServiceServer {
+ impl ServiceServer {
pub fn new(inner: T) -> Self {
Self::from_arc(Arc::new(inner))
}
pub fn from_arc(inner: Arc) -> Self {
- let inner = _Inner(inner);
Self {
inner,
accept_compression_encodings: Default::default(),
@@ -1310,8 +1373,8 @@ pub mod service_server {
impl tonic::codegen::Service> for ServiceServer
where
T: Service,
- B: Body + Send + 'static,
- B::Error: Into + Send + 'static,
+ B: Body + std::marker::Send + 'static,
+ B::Error: Into + std::marker::Send + 'static,
{
type Response = http::Response;
type Error = std::convert::Infallible;
@@ -1323,7 +1386,6 @@ pub mod service_server {
Poll::Ready(Ok(()))
}
fn call(&mut self, req: http::Request) -> Self::Future {
- let inner = self.inner.clone();
match req.uri().path() {
"/cosmos.tx.v1beta1.Service/Simulate" => {
#[allow(non_camel_case_types)]
@@ -1352,7 +1414,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = SimulateSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1396,7 +1457,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = GetTxSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1442,7 +1502,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = BroadcastTxSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1488,7 +1547,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = GetTxsEventSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1534,7 +1592,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = GetBlockWithTxsSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1578,7 +1635,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TxDecodeSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1622,7 +1678,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TxEncodeSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1668,7 +1723,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TxEncodeAminoSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1714,7 +1768,6 @@ pub mod service_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TxDecodeAminoSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -1733,20 +1786,25 @@ pub mod service_server {
}
_ => {
Box::pin(async move {
- Ok(
- http::Response::builder()
- .status(200)
- .header("grpc-status", "12")
- .header("content-type", "application/grpc")
- .body(empty_body())
- .unwrap(),
- )
+ let mut response = http::Response::new(empty_body());
+ let headers = response.headers_mut();
+ headers
+ .insert(
+ tonic::Status::GRPC_STATUS,
+ (tonic::Code::Unimplemented as i32).into(),
+ );
+ headers
+ .insert(
+ http::header::CONTENT_TYPE,
+ tonic::metadata::GRPC_CONTENT_TYPE,
+ );
+ Ok(response)
})
}
}
}
}
- impl Clone for ServiceServer {
+ impl Clone for ServiceServer {
fn clone(&self) -> Self {
let inner = self.inner.clone();
Self {
@@ -1758,17 +1816,9 @@ pub mod service_server {
}
}
}
- impl Clone for _Inner {
- fn clone(&self) -> Self {
- Self(Arc::clone(&self.0))
- }
- }
- impl std::fmt::Debug for _Inner {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- write!(f, "{:?}", self.0)
- }
- }
- impl tonic::server::NamedService for ServiceServer {
- const NAME: &'static str = "cosmos.tx.v1beta1.Service";
+ /// Generated gRPC service name
+ pub const SERVICE_NAME: &str = "cosmos.tx.v1beta1.Service";
+ impl tonic::server::NamedService for ServiceServer {
+ const NAME: &'static str = SERVICE_NAME;
}
}
diff --git a/crates/proto/src/gen/cosmos_proto.rs b/crates/proto/src/gen/cosmos_proto.rs
index 053c6d5266..9057ec92dd 100644
--- a/crates/proto/src/gen/cosmos_proto.rs
+++ b/crates/proto/src/gen/cosmos_proto.rs
@@ -1,6 +1,6 @@
+// This file is @generated by prost-build.
/// InterfaceDescriptor describes an interface type to be used with
/// accepts_interface and implements_interface and declared by declare_interface.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InterfaceDescriptor {
/// name is the name of the interface. It should be a short-name (without
@@ -18,7 +18,10 @@ impl ::prost::Name for InterfaceDescriptor {
const NAME: &'static str = "InterfaceDescriptor";
const PACKAGE: &'static str = "cosmos_proto";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos_proto.{}", Self::NAME)
+ "cosmos_proto.InterfaceDescriptor".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos_proto.InterfaceDescriptor".into()
}
}
/// ScalarDescriptor describes an scalar type to be used with
@@ -28,7 +31,6 @@ impl ::prost::Name for InterfaceDescriptor {
/// Scalars should ideally define an encoding such that there is only one
/// valid syntactical representation for a given semantic meaning,
/// i.e. the encoding should be deterministic.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ScalarDescriptor {
/// name is the name of the scalar. It should be a short-name (without
@@ -53,7 +55,10 @@ impl ::prost::Name for ScalarDescriptor {
const NAME: &'static str = "ScalarDescriptor";
const PACKAGE: &'static str = "cosmos_proto";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("cosmos_proto.{}", Self::NAME)
+ "cosmos_proto.ScalarDescriptor".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/cosmos_proto.ScalarDescriptor".into()
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
@@ -70,9 +75,9 @@ impl ScalarType {
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
- ScalarType::Unspecified => "SCALAR_TYPE_UNSPECIFIED",
- ScalarType::String => "SCALAR_TYPE_STRING",
- ScalarType::Bytes => "SCALAR_TYPE_BYTES",
+ Self::Unspecified => "SCALAR_TYPE_UNSPECIFIED",
+ Self::String => "SCALAR_TYPE_STRING",
+ Self::Bytes => "SCALAR_TYPE_BYTES",
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
diff --git a/crates/proto/src/gen/google.api.rs b/crates/proto/src/gen/google.api.rs
index 6655a2b5d5..04c0f1fcf1 100644
--- a/crates/proto/src/gen/google.api.rs
+++ b/crates/proto/src/gen/google.api.rs
@@ -1,7 +1,7 @@
+// This file is @generated by prost-build.
/// Defines the HTTP configuration for an API service. It contains a list of
/// \[HttpRule\]\[google.api.HttpRule\], each specifying the mapping of an RPC method
/// to one or more HTTP REST API methods.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Http {
/// A list of HTTP configuration rules that apply to individual API methods.
@@ -22,7 +22,10 @@ impl ::prost::Name for Http {
const NAME: &'static str = "Http";
const PACKAGE: &'static str = "google.api";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("google.api.{}", Self::NAME)
+ "google.api.Http".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/google.api.Http".into()
}
}
/// # gRPC Transcoding
@@ -307,7 +310,6 @@ impl ::prost::Name for Http {
/// If an API needs to use a JSON array for request or response body, it can map
/// the request or response body to a repeated field. However, some gRPC
/// Transcoding implementations may not support this feature.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HttpRule {
/// Selects a method to which this rule applies.
@@ -347,7 +349,6 @@ pub mod http_rule {
/// Determines the URL pattern is matched by this rules. This pattern can be
/// used with any of the {get|put|post|delete|patch} methods. A custom method
/// can be defined using the 'custom' field.
- #[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Pattern {
/// Maps to HTTP GET. Used for listing and getting information about
@@ -378,11 +379,13 @@ impl ::prost::Name for HttpRule {
const NAME: &'static str = "HttpRule";
const PACKAGE: &'static str = "google.api";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("google.api.{}", Self::NAME)
+ "google.api.HttpRule".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/google.api.HttpRule".into()
}
}
/// A custom pattern is used for defining custom HTTP verb.
-#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CustomHttpPattern {
/// The name of this custom HTTP verb.
@@ -396,6 +399,9 @@ impl ::prost::Name for CustomHttpPattern {
const NAME: &'static str = "CustomHttpPattern";
const PACKAGE: &'static str = "google.api";
fn full_name() -> ::prost::alloc::string::String {
- ::prost::alloc::format!("google.api.{}", Self::NAME)
+ "google.api.CustomHttpPattern".into()
+ }
+ fn type_url() -> ::prost::alloc::string::String {
+ "/google.api.CustomHttpPattern".into()
}
}
diff --git a/crates/proto/src/gen/ibc.applications.transfer.v1.rs b/crates/proto/src/gen/ibc.applications.transfer.v1.rs
index eb7e290e45..efd11eb84c 100644
--- a/crates/proto/src/gen/ibc.applications.transfer.v1.rs
+++ b/crates/proto/src/gen/ibc.applications.transfer.v1.rs
@@ -1,7 +1,14 @@
+// This file is @generated by prost-build.
/// Generated client implementations.
#[cfg(feature = "rpc")]
pub mod query_client {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
/// Query provides defines the gRPC querier service.
@@ -24,8 +31,8 @@ pub mod query_client {
where
T: tonic::client::GrpcService,
T::Error: Into,
- T::ResponseBody: Body + Send + 'static,
- ::Error: Into + Send,
+ T::ResponseBody: Body + std::marker::Send + 'static,
+ ::Error: Into + std::marker::Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
@@ -50,7 +57,7 @@ pub mod query_client {
>,
,
- >>::Error: Into + Send + Sync,
+ >>::Error: Into + std::marker::Send + std::marker::Sync,
{
QueryClient::new(InterceptedService::new(inner, interceptor))
}
@@ -101,8 +108,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -133,8 +139,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -165,8 +170,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -195,8 +199,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -227,8 +230,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -262,8 +264,7 @@ pub mod query_client {
.ready()
.await
.map_err(|e| {
- tonic::Status::new(
- tonic::Code::Unknown,
+ tonic::Status::unknown(
format!("Service was not ready: {}", e.into()),
)
})?;
@@ -286,11 +287,17 @@ pub mod query_client {
/// Generated server implementations.
#[cfg(feature = "rpc")]
pub mod query_server {
- #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
+ #![allow(
+ unused_variables,
+ dead_code,
+ missing_docs,
+ clippy::wildcard_imports,
+ clippy::let_unit_value,
+ )]
use tonic::codegen::*;
/// Generated trait containing gRPC methods that should be implemented for use with QueryServer.
#[async_trait]
- pub trait Query: Send + Sync + 'static {
+ pub trait Query: std::marker::Send + std::marker::Sync + 'static {
/// DenomTrace queries a denomination trace information.
async fn denom_trace(
&self,
@@ -366,20 +373,18 @@ pub mod query_server {
}
/// Query provides defines the gRPC querier service.
#[derive(Debug)]
- pub struct QueryServer {
- inner: _Inner,
+ pub struct QueryServer {
+ inner: Arc,
accept_compression_encodings: EnabledCompressionEncodings,
send_compression_encodings: EnabledCompressionEncodings,
max_decoding_message_size: Option,
max_encoding_message_size: Option,
}
- struct _Inner(Arc);
- impl QueryServer {
+ impl QueryServer {
pub fn new(inner: T) -> Self {
Self::from_arc(Arc::new(inner))
}
pub fn from_arc(inner: Arc) -> Self {
- let inner = _Inner(inner);
Self {
inner,
accept_compression_encodings: Default::default(),
@@ -429,8 +434,8 @@ pub mod query_server {
impl tonic::codegen::Service> for QueryServer
where
T: Query,
- B: Body + Send + 'static,
- B::Error: Into + Send + 'static,
+ B: Body + std::marker::Send + 'static,
+ B::Error: Into + std::marker::Send + 'static,
{
type Response = http::Response;
type Error = std::convert::Infallible;
@@ -442,7 +447,6 @@ pub mod query_server {
Poll::Ready(Ok(()))
}
fn call(&mut self, req: http::Request) -> Self::Future {
- let inner = self.inner.clone();
match req.uri().path() {
"/ibc.applications.transfer.v1.Query/DenomTrace" => {
#[allow(non_camel_case_types)]
@@ -476,7 +480,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomTraceSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -525,7 +528,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomTracesSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -574,7 +576,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = ParamsSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -623,7 +624,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = DenomHashSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -672,7 +672,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = EscrowAddressSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -721,7 +720,6 @@ pub mod query_server {
let max_encoding_message_size = self.max_encoding_message_size;
let inner = self.inner.clone();
let fut = async move {
- let inner = inner.0;
let method = TotalEscrowForDenomSvc(inner);
let codec = tonic::codec::ProstCodec::default();
let mut grpc = tonic::server::Grpc::new(codec)
@@ -740,20 +738,25 @@ pub mod query_server {
}
_ => {
Box::pin(async move {
- Ok(
- http::Response::builder()
- .status(200)
- .header("grpc-status", "12")
- .header("content-type", "application/grpc")
- .body(empty_body())
- .unwrap(),
- )
+ let mut response = http::Response::new(empty_body());
+ let headers = response.headers_mut();
+ headers
+ .insert(
+ tonic::Status::GRPC_STATUS,
+ (tonic::Code::Unimplemented as i32).into(),
+ );
+ headers
+ .insert(
+ http::header::CONTENT_TYPE,
+ tonic::metadata::GRPC_CONTENT_TYPE,
+ );
+ Ok(response)
})
}
}
}
}
- impl Clone for QueryServer {
+ impl Clone for QueryServer {
fn clone(&self) -> Self {
let inner = self.inner.clone();
Self {
@@ -765,17 +768,9 @@ pub mod query_server {
}
}
}
- impl Clone for _Inner