From 4eee0e6ac9077b00eaaf4463beeea186c65879d5 Mon Sep 17 00:00:00 2001 From: yito88 Date: Sun, 14 Jan 2024 21:28:35 +0100 Subject: [PATCH 1/6] Namada 0.30.0 --- Cargo.lock | 21 +++++++++++---------- crates/relayer/Cargo.toml | 2 +- crates/relayer/src/chain/namada/tx.rs | 13 +++++++++++++ 3 files changed, 25 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e25b6c1c7..60cedb643f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3987,8 +3987,8 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "namada_core" -version = "0.29.0" -source = "git+https://github.com/anoma/namada?tag=v0.29.0#76840b5dbe1a335f45fd468ff3636825dce9df89" +version = "0.30.0" +source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" dependencies = [ "ark-bls12-381", "ark-serialize", @@ -4038,8 +4038,8 @@ dependencies = [ [[package]] name = "namada_ethereum_bridge" -version = "0.29.0" -source = "git+https://github.com/anoma/namada?tag=v0.29.0#76840b5dbe1a335f45fd468ff3636825dce9df89" +version = "0.30.0" +source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" dependencies = [ "borsh", "borsh-ext", @@ -4055,13 +4055,14 @@ dependencies = [ "tendermint", "tendermint-proto", "tendermint-rpc", + "thiserror", "tracing", ] [[package]] name = "namada_macros" -version = "0.29.0" -source = "git+https://github.com/anoma/namada?tag=v0.29.0#76840b5dbe1a335f45fd468ff3636825dce9df89" +version = "0.30.0" +source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" dependencies = [ "proc-macro2", "quote", @@ -4070,8 +4071,8 @@ dependencies = [ [[package]] name = "namada_proof_of_stake" -version = "0.29.0" -source = "git+https://github.com/anoma/namada?tag=v0.29.0#76840b5dbe1a335f45fd468ff3636825dce9df89" +version = "0.30.0" +source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" dependencies = [ "borsh", "data-encoding", @@ -4085,8 +4086,8 @@ dependencies = [ [[package]] name = "namada_sdk" -version = "0.29.0" -source = "git+https://github.com/anoma/namada?tag=v0.29.0#76840b5dbe1a335f45fd468ff3636825dce9df89" +version = "0.30.0" +source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" dependencies = [ "async-trait", "bimap", diff --git a/crates/relayer/Cargo.toml b/crates/relayer/Cargo.toml index c50dddd7aa..014b03fa78 100644 --- a/crates/relayer/Cargo.toml +++ b/crates/relayer/Cargo.toml @@ -112,7 +112,7 @@ default-features = false [dependencies.namada_sdk] git = "https://github.com/anoma/namada" -tag = "v0.29.0" +tag = "v0.30.0" features = ["std"] [dev-dependencies] diff --git a/crates/relayer/src/chain/namada/tx.rs b/crates/relayer/src/chain/namada/tx.rs index 59546d4d9a..88a9b799e9 100644 --- a/crates/relayer/src/chain/namada/tx.rs +++ b/crates/relayer/src/chain/namada/tx.rs @@ -46,6 +46,18 @@ impl NamadaChain { let relayer_public_key = namada_key.secret_key.to_public(); let relayer_addr = namada_key.address; + let memo = if !self.config().memo_prefix.as_str().is_empty() { + Some( + self.config() + .memo_prefix + .as_str() + .to_string() + .as_bytes() + .to_vec(), + ) + } else { + None + }; let tx_args = TxArgs { dry_run: false, dry_run_wrapper: false, @@ -68,6 +80,7 @@ impl NamadaChain { signatures: vec![], tx_reveal_code_path: PathBuf::from(tx::TX_REVEAL_PK), password: None, + memo, use_device: false, }; let rt = self.rt.clone(); From bca710b08b2a4e1ba39aa8050ac4820a467c673e Mon Sep 17 00:00:00 2001 From: yito88 Date: Fri, 26 Jan 2024 17:22:20 +0100 Subject: [PATCH 2/6] Namada 0.30.2 --- Cargo.lock | 2107 ++++++++++------------ crates/relayer/Cargo.toml | 14 +- crates/relayer/src/chain/namada.rs | 44 +- crates/relayer/src/chain/namada/key.rs | 4 +- crates/relayer/src/chain/namada/query.rs | 6 +- crates/relayer/src/chain/namada/tx.rs | 8 +- 6 files changed, 974 insertions(+), 1209 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 60cedb643f..e0781a16c9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -28,12 +28,12 @@ dependencies = [ "once_cell", "regex", "secrecy", - "semver 1.0.21", + "semver 1.0.22", "serde", "termcolor", "toml 0.5.11", "tracing", - "tracing-log 0.1.4", + "tracing-log", "tracing-subscriber", "wait-timeout", ] @@ -78,9 +78,9 @@ dependencies = [ [[package]] name = "aes" -version = "0.8.4" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" dependencies = [ "cfg-if 1.0.0", "cipher", @@ -113,9 +113,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.11" +version = "0.6.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5" +checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb" dependencies = [ "anstyle", "anstyle-parse", @@ -127,9 +127,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" +checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" [[package]] name = "anstyle-parse" @@ -161,9 +161,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "arc-swap" @@ -268,15 +268,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -[[package]] -name = "ascii-canvas" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" -dependencies = [ - "term", -] - [[package]] name = "async-stream" version = "0.3.5" @@ -296,18 +287,18 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "async-trait" -version = "0.1.77" +version = "0.1.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -350,13 +341,14 @@ dependencies = [ [[package]] name = "auto_impl" -version = "1.1.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "823b8bb275161044e2ac7a25879cb3e2480cb403e3943022c7c769c599b756aa" +checksum = "fee3da8ef1276b0bee5dd1c7258010d8fffd31801447323115a25560e1327b89" dependencies = [ + "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.48", + "syn 1.0.109", ] [[package]] @@ -449,9 +441,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.7" +version = "0.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" [[package]] name = "base64ct" @@ -516,30 +508,15 @@ dependencies = [ "zeroize", ] -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - [[package]] name = "bitcoin" -version = "0.31.1" +version = "0.31.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd00f3c09b5f21fb357abe32d29946eb8bb7a0862bae62c0b5e4a692acbbe73c" +checksum = "6c85783c2fe40083ea54a33aa2f0ba58831d90fcd190f5bdc47e74e84d2a96ae" dependencies = [ "bech32 0.10.0-beta", "bitcoin-internals", - "bitcoin_hashes", + "bitcoin_hashes 0.13.0", "hex-conservative", "hex_lit", "secp256k1", @@ -555,6 +532,21 @@ dependencies = [ "serde", ] +[[package]] +name = "bitcoin-private" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73290177011694f38ec25e165d0387ab7ea749a4b81cd4c80dae5988229f7a57" + +[[package]] +name = "bitcoin_hashes" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d7066118b13d4b20b23645932dfb3a81ce7e29f95726c2036fa33cd7b092501" +dependencies = [ + "bitcoin-private", +] + [[package]] name = "bitcoin_hashes" version = "0.13.0" @@ -574,9 +566,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.2" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "bitvec" @@ -607,7 +599,7 @@ checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq 0.3.0", + "constant_time_eq", ] [[package]] @@ -618,20 +610,20 @@ checksum = "94230421e395b9920d23df13ea5d77a20e1725331f90fbbf6df6040b33f756ae" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq 0.3.0", + "constant_time_eq", ] [[package]] name = "blake3" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87" +checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if 1.0.0", - "constant_time_eq 0.3.0", + "constant_time_eq", ] [[package]] @@ -688,9 +680,9 @@ dependencies = [ [[package]] name = "borsh" -version = "1.3.1" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b559fd6448c6e2fd0adb5720cd98a2506594cafa4737ff98c396f3e82f667" +checksum = "9897ef0f1bd2362169de6d7e436ea2237dc1085d7d1e4db75f4be34d86f309d1" dependencies = [ "borsh-derive", "cfg_aliases", @@ -698,15 +690,15 @@ dependencies = [ [[package]] name = "borsh-derive" -version = "1.3.1" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aadb5b6ccbd078890f6d7003694e33816e6b784358f18e15e7e6d9f065a57cd" +checksum = "478b41ff04256c5c8330f3dfdaaae2a5cc976a8e75088bafa4625b0d0208de8c" dependencies = [ "once_cell", - "proc-macro-crate 3.1.0", + "proc-macro-crate 2.0.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", "syn_derive", ] @@ -756,12 +748,6 @@ dependencies = [ "utf8-width", ] -[[package]] -name = "bytecount" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205" - [[package]] name = "byteorder" version = "1.5.0" @@ -777,27 +763,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.11+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - [[package]] name = "camino" version = "1.1.6" @@ -815,35 +780,22 @@ checksum = "e6e9e01327e6c86e92ec72b1c798d4a94810f147209bbe3ffab6a86954937a6f" [[package]] name = "cargo-platform" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.14.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" +checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36" dependencies = [ - "camino", - "cargo-platform", - "semver 1.0.21", "serde", - "serde_json", ] [[package]] name = "cargo_metadata" -version = "0.18.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" +checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" dependencies = [ "camino", "cargo-platform", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", "thiserror", @@ -864,7 +816,6 @@ version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" dependencies = [ - "jobserver", "libc", ] @@ -912,14 +863,14 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.34" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" dependencies = [ "android-tzdata", "iana-time-zone", "num-traits", - "windows-targets 0.52.0", + "windows-targets 0.48.5", ] [[package]] @@ -1028,7 +979,7 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "bech32 0.9.1", "bs58", "digest 0.10.7", @@ -1059,9 +1010,9 @@ dependencies = [ [[package]] name = "color-spantrace" -version = "0.2.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd6be1b2a7e382e2b98b43b2adcca6bb0e465af0bdd38123873ae61eb17a72c2" +checksum = "1ba75b3d9449ecdccb27ecbc479fdc0b87fa2dd43d2f8298f9bf0e59aacc8dce" dependencies = [ "once_cell", "owo-colors", @@ -1077,22 +1028,22 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" [[package]] name = "console" -version = "0.15.8" +version = "0.15.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" +checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" dependencies = [ "encode_unicode", "lazy_static", "libc", "unicode-width", - "windows-sys 0.52.0", + "windows-sys 0.45.0", ] [[package]] name = "const-hex" -version = "1.11.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d59688ad0945eaf6b84cb44fedbe93484c81b48970e98f09db8a22832d7961" +checksum = "a5104de16b218eddf8e34ffe2f86f74bfa4e61e95a1b89732fccf6325efd0557" dependencies = [ "cfg-if 1.0.0", "cpufeatures", @@ -1103,15 +1054,9 @@ dependencies = [ [[package]] name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "constant_time_eq" -version = "0.1.5" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f" [[package]] name = "constant_time_eq" @@ -1132,9 +1077,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" dependencies = [ "core-foundation-sys", "libc", @@ -1142,28 +1087,19 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] -[[package]] -name = "crc32fast" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" -dependencies = [ - "cfg-if 1.0.0", -] - [[package]] name = "crossbeam-channel" version = "0.4.4" @@ -1176,30 +1112,24 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" -dependencies = [ - "crossbeam-utils 0.8.19", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.5" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" dependencies = [ - "crossbeam-epoch", "crossbeam-utils 0.8.19", ] [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ + "autocfg", + "cfg-if 1.0.0", "crossbeam-utils 0.8.19", + "memoffset", + "scopeguard", ] [[package]] @@ -1227,9 +1157,9 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-bigint" -version = "0.5.5" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +checksum = "740fe28e594155f10cfc383984cbefd529d7396050557148f79cb0f621204124" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", @@ -1284,9 +1214,9 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "4.1.2" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348" +checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c" dependencies = [ "cfg-if 1.0.0", "cpufeatures", @@ -1301,13 +1231,13 @@ dependencies = [ [[package]] name = "curve25519-dalek-derive" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -1325,9 +1255,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.6" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c376d08ea6aa96aafe61237c7200d1241cb177b7d3a542d791f2d118e9cbb955" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ "darling_core", "darling_macro", @@ -1335,27 +1265,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.6" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33043dcd19068b8192064c704b3f83eb464f91f1ff527b44a4e2b08d9cdb8855" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "darling_macro" -version = "0.20.6" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5a91391accf613803c2a9bf9abccdbaa07c54b4244a5b64883f9c3c137c86be" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -1365,7 +1295,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ "cfg-if 1.0.0", - "hashbrown 0.14.3", + "hashbrown 0.14.1", "lock_api", "once_cell", "parking_lot_core", @@ -1373,9 +1303,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.5.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" [[package]] name = "der" @@ -1389,9 +1319,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.3.11" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" dependencies = [ "powerfmt", ] @@ -1437,12 +1367,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - [[package]] name = "digest" version = "0.8.1" @@ -1479,16 +1403,7 @@ version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f51c5d4ddabd36886dd3e1438cb358cdcb0d7c499cb99cb4ac2e38e18b5cb210" dependencies = [ - "dirs-sys 0.3.7", -] - -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys 0.4.1", + "dirs-sys", ] [[package]] @@ -1512,18 +1427,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -1543,7 +1446,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -1554,9 +1457,9 @@ checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" [[package]] name = "ecdsa" -version = "0.16.9" +version = "0.16.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4" dependencies = [ "der", "digest 0.10.7", @@ -1608,16 +1511,15 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "2.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" +checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" dependencies = [ "curve25519-dalek", "ed25519", "rand_core 0.6.4", "serde", "sha2 0.10.8", - "subtle 2.4.1", "zeroize", ] @@ -1641,9 +1543,9 @@ checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "elliptic-curve" -version = "0.13.8" +version = "0.13.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +checksum = "d97ca172ae9dc9f9b779a6e3a65d308f2af74e5b8c921299075bdb4a0370e914" dependencies = [ "base16ct", "crypto-bigint", @@ -1659,15 +1561,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "ena" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c533630cf40e9caa44bd91aadc88a75d75a4c3a12b4cfde353cbed41daa1e1f1" -dependencies = [ - "log", -] - [[package]] name = "encode_unicode" version = "0.3.6" @@ -1689,7 +1582,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe81b5c06ecfdbc71dd845216f225f53b62a10cb8a16c946836a3467f701d05b" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "bytes", "hex", "k256", @@ -1713,18 +1606,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" -dependencies = [ - "log", -] - -[[package]] -name = "env_logger" -version = "0.11.1" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05e7cf40684ae96ade6232ed84582f40ce0a66efcd43a5117aef610534f8e0b8" +checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9" dependencies = [ "anstream", "anstyle", @@ -1741,21 +1625,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.8" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" dependencies = [ "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "error-chain" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc" -dependencies = [ - "version_check", + "windows-sys 0.48.0", ] [[package]] @@ -1862,9 +1737,9 @@ dependencies = [ [[package]] name = "ethers" -version = "2.0.13" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c7cd562832e2ff584fa844cd2f6e5d4f35bbe11b28c7c9b8df957b2e1d0c701" +checksum = "839a392641e746a1ff365ef7c901238410b5c6285d240cf2409ffaaa7df9a78a" dependencies = [ "ethers-addressbook", "ethers-contract", @@ -1873,14 +1748,13 @@ dependencies = [ "ethers-middleware", "ethers-providers", "ethers-signers", - "ethers-solc", ] [[package]] name = "ethers-addressbook" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35dc9a249c066d17e8947ff52a4116406163cf92c7f0763cb8c001760b26403f" +checksum = "c6e9e8acd0ed348403cc73a670c24daba3226c40b98dc1a41903766b3ab6240a" dependencies = [ "ethers-core", "once_cell", @@ -1890,9 +1764,9 @@ dependencies = [ [[package]] name = "ethers-contract" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43304317c7f776876e47f2f637859f6d0701c1ec7930a150f169d5fbe7d76f5a" +checksum = "d79269278125006bb0552349c03593ffa9702112ca88bc7046cc669f148fb47c" dependencies = [ "const-hex", "ethers-contract-abigen", @@ -1909,33 +1783,31 @@ dependencies = [ [[package]] name = "ethers-contract-abigen" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f96502317bf34f6d71a3e3d270defaa9485d754d789e15a8e04a84161c95eb" +checksum = "ce95a43c939b2e4e2f3191c5ad4a1f279780b8a39139c9905b43a7433531e2ab" dependencies = [ "Inflector", "const-hex", "dunce", "ethers-core", - "ethers-etherscan", "eyre", - "prettyplease 0.2.16", + "prettyplease 0.2.15", "proc-macro2", "quote", "regex", - "reqwest", "serde", "serde_json", - "syn 2.0.48", - "toml 0.8.8", + "syn 2.0.58", + "toml 0.7.8", "walkdir", ] [[package]] name = "ethers-contract-derive" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "452ff6b0a64507ce8d67ffd48b1da3b42f03680dcf5382244e9c93822cbbf5de" +checksum = "8e9ce44906fc871b3ee8c69a695ca7ec7f70e50cb379c9b9cb5e532269e492f6" dependencies = [ "Inflector", "const-hex", @@ -1944,18 +1816,18 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "ethers-core" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aab3cef6cc1c9fd7f787043c81ad3052eff2b96a3878ef1526aa446311bdbfc9" +checksum = "c0a17f0708692024db9956b31d7a20163607d2745953f5ae8125ab368ba280ad" dependencies = [ "arrayvec", "bytes", - "cargo_metadata 0.18.1", + "cargo_metadata", "chrono", "const-hex", "elliptic-curve", @@ -1970,7 +1842,7 @@ dependencies = [ "serde", "serde_json", "strum", - "syn 2.0.48", + "syn 2.0.58", "tempfile", "thiserror", "tiny-keccak", @@ -1979,14 +1851,13 @@ dependencies = [ [[package]] name = "ethers-etherscan" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d45b981f5fa769e1d0343ebc2a44cfa88c9bc312eb681b676318b40cef6fb1" +checksum = "0e53451ea4a8128fbce33966da71132cf9e1040dcfd2a2084fd7733ada7b2045" dependencies = [ - "chrono", "ethers-core", "reqwest", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", "thiserror", @@ -1995,9 +1866,9 @@ dependencies = [ [[package]] name = "ethers-middleware" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145211f34342487ef83a597c1e69f0d3e01512217a7c72cc8a25931854c7dca0" +checksum = "473f1ccd0c793871bbc248729fa8df7e6d2981d6226e4343e3bbaa9281074d5d" dependencies = [ "async-trait", "auto_impl", @@ -2022,13 +1893,13 @@ dependencies = [ [[package]] name = "ethers-providers" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb6b15393996e3b8a78ef1332d6483c11d839042c17be58decc92fa8b1c3508a" +checksum = "6838fa110e57d572336178b7c79e94ff88ef976306852d8cb87d9e5b1fc7c0b5" dependencies = [ "async-trait", "auto_impl", - "base64 0.21.7", + "base64 0.21.4", "bytes", "const-hex", "enr", @@ -2047,7 +1918,6 @@ dependencies = [ "serde_json", "thiserror", "tokio", - "tokio-tungstenite", "tracing", "tracing-futures", "url", @@ -2059,9 +1929,9 @@ dependencies = [ [[package]] name = "ethers-signers" -version = "2.0.13" +version = "2.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3b125a103b56aef008af5d5fb48191984aa326b50bfd2557d231dc499833de3" +checksum = "5ea44bec930f12292866166f9ddbea6aa76304850e4d8dcd66dc492b43d00ff1" dependencies = [ "async-trait", "coins-bip32", @@ -2076,38 +1946,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "ethers-solc" -version = "2.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d21df08582e0a43005018a858cc9b465c5fff9cf4056651be64f844e57d1f55f" -dependencies = [ - "cfg-if 1.0.0", - "const-hex", - "dirs", - "dunce", - "ethers-core", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver 1.0.21", - "serde", - "serde_json", - "solang-parser", - "svm-rs", - "thiserror", - "tiny-keccak", - "tokio", - "tracing", - "walkdir", - "yansi", -] - [[package]] name = "eyre" version = "0.6.12" @@ -2154,9 +1992,9 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.2.5" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7" +checksum = "d0870c84016d4b481be5c9f323c24f65e31e901ae618f0e80f4308fb00de1d2d" [[package]] name = "fixed-hash" @@ -2176,16 +2014,6 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" -[[package]] -name = "flate2" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - [[package]] name = "flex-error" version = "0.4.4" @@ -2205,9 +2033,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ "percent-encoding", ] @@ -2228,22 +2056,9 @@ dependencies = [ [[package]] name = "fs-err" -version = "2.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" -dependencies = [ - "autocfg", -] - -[[package]] -name = "fs2" -version = "0.4.3" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] +checksum = "0845fa252299212f0389d64ba26f34fa32cfe41588355f21ed507c59a0f64541" [[package]] name = "funty" @@ -2253,9 +2068,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" dependencies = [ "futures-channel", "futures-core", @@ -2268,9 +2083,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" dependencies = [ "futures-core", "futures-sink", @@ -2278,15 +2093,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" [[package]] name = "futures-executor" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" dependencies = [ "futures-core", "futures-task", @@ -2295,9 +2110,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" [[package]] name = "futures-locks" @@ -2311,26 +2126,26 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" [[package]] name = "futures-timer" @@ -2344,9 +2159,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" dependencies = [ "futures-channel", "futures-core", @@ -2404,9 +2219,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.12" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -2417,15 +2232,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" - -[[package]] -name = "glob" -version = "0.3.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "gloo-timers" @@ -2473,9 +2282,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.24" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" dependencies = [ "bytes", "fnv", @@ -2483,7 +2292,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap 2.2.1", + "indexmap 1.9.3", "slab", "tokio", "tokio-util", @@ -2504,9 +2313,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.14.3" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" +checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" [[package]] name = "hashers" @@ -2543,9 +2352,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.4" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" [[package]] name = "hex" @@ -2613,18 +2422,18 @@ checksum = "77e806677ce663d0a199541030c816847b36e8dc095f70dae4a4f4ad63da5383" [[package]] name = "home" -version = "0.5.9" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] name = "http" -version = "0.2.11" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" dependencies = [ "bytes", "fnv", @@ -2633,9 +2442,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.6" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http", @@ -2672,9 +2481,9 @@ dependencies = [ [[package]] name = "hyper" -version = "0.14.28" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -2687,7 +2496,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.4.9", "tokio", "tower-service", "tracing", @@ -2696,9 +2505,9 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.24.2" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97" dependencies = [ "futures-util", "http", @@ -2722,9 +2531,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -2745,9 +2554,9 @@ dependencies = [ [[package]] name = "ibc" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d46a7df929d362b12b55295d93d82b6020aec3d33aac82ef29f610f041b41bf9" +checksum = "429b6aca6624a9364878e28c90311438c2621a8270942d80732b2651ac38ac74" dependencies = [ "ibc-apps", "ibc-clients", @@ -2759,9 +2568,9 @@ dependencies = [ [[package]] name = "ibc-app-transfer" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ecf163fac8d3974c475b1b584da5bf15b90d145b3a18c586f93728f0f882f2b" +checksum = "b177b343385d9654d99be4709b5ed1574d41f91dfa4044b2d26d688be4179d7c" dependencies = [ "ibc-app-transfer-types", "ibc-core", @@ -2770,9 +2579,9 @@ dependencies = [ [[package]] name = "ibc-app-transfer-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcb51de33dab86406d22f03785fb95da4911cc1ae4e5d2230d4e783e75546332" +checksum = "95f92a3eda225e5c86e7bb6501c95986583ac541c4369d3c528349d81390f947" dependencies = [ "derive_more", "displaydoc", @@ -2785,9 +2594,9 @@ dependencies = [ [[package]] name = "ibc-apps" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "136fb36803010d0cac4ee30308a0077e2eafb5ab5e1dd3a45e544e3a914618eb" +checksum = "f4be40d55ed2dea9f2d05b902a3586f20850c723e4bdbfc4fb0ebe7a66ca5e40" dependencies = [ "ibc-app-transfer", ] @@ -2800,7 +2609,7 @@ dependencies = [ "flex-error", "futures", "http", - "ibc-proto 0.42.0", + "ibc-proto 0.42.2", "ibc-relayer-types", "itertools 0.10.5", "reqwest", @@ -2813,9 +2622,9 @@ dependencies = [ [[package]] name = "ibc-client-tendermint" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10adf0ced226f7022000227adf3533857cd816858519c268d8999ad6f30ca724" +checksum = "119aa5873214228bf69bded3f20022b9ae1bc35b6841d295afcd73e53db05ccf" dependencies = [ "ibc-client-tendermint-types", "ibc-core-client", @@ -2823,7 +2632,7 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", "serde", "tendermint", "tendermint-light-client-verifier", @@ -2831,9 +2640,9 @@ dependencies = [ [[package]] name = "ibc-client-tendermint-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4ee8fcd2e2590ff74e04766f479adfffdab81afdca9b3c0a6d867769ac1b79" +checksum = "6f21679016931b332b295a761e65cc122dc6fbfb98444148b681ad3aaa474665" dependencies = [ "bytes", "displaydoc", @@ -2842,7 +2651,7 @@ dependencies = [ "ibc-core-host-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "tendermint", "tendermint-light-client-verifier", @@ -2851,18 +2660,18 @@ dependencies = [ [[package]] name = "ibc-clients" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce4d31e2b2d71c8dd15f8e13833343ca35548a4d2959844381fd7cd0f94a19e" +checksum = "685c660323e93107a136aa3dbc412b7fa2eafd315c2fe71184096a43800f8ca5" dependencies = [ "ibc-client-tendermint", ] [[package]] name = "ibc-core" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e10ca0f8b8b024ba8fad230612d1eae14abd4753a3db5f63b28e9e8668e8ced" +checksum = "100d9d0aa67432c5078a8a1c818e3fc990a193be6d35ed0abeda5b340d16c1da" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -2876,9 +2685,9 @@ dependencies = [ [[package]] name = "ibc-core-channel" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceeb7051be02e2ba8a65be889bc6e6fa9e8f93cca4409ddd76053d4d2dfe9d14" +checksum = "7ebaa37629ac029f914dfe552ab5dad01ddb240ec885ed0ae68221cbea4e9bfc" dependencies = [ "ibc-core-channel-types", "ibc-core-client", @@ -2888,14 +2697,14 @@ dependencies = [ "ibc-core-host", "ibc-core-router", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", ] [[package]] name = "ibc-core-channel-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcd6389c8d9d09aba4cf13d522292bf2d123f9e0bc10e088235d1d250131ffa6" +checksum = "aa2ba72c56c411b1e0ce6dc3f5e1fa1de9e6c84891f425b7be8a9e1705964378" dependencies = [ "derive_more", "displaydoc", @@ -2905,7 +2714,7 @@ dependencies = [ "ibc-core-host-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "sha2 0.10.8", "subtle-encoding", @@ -2914,9 +2723,9 @@ dependencies = [ [[package]] name = "ibc-core-client" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0131dbc2196aece10f6f5082a663a2c7593f5cef3ba08f0bb51a57124ee70bc" +checksum = "06c4fac8e05201795073dee8c93d5afe9dfeac9aec2412b4a2b0c5f0d1e1d725" dependencies = [ "ibc-core-client-context", "ibc-core-client-types", @@ -2924,14 +2733,14 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", ] [[package]] name = "ibc-core-client-context" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4489b4cda24cdcd7434acb518482a44b44a8f85807ed555282eb15445ccf872" +checksum = "6b82abd9489021730d59ab2d00e9438d3711e8e78ecba4d083b64f833301682b" dependencies = [ "derive_more", "displaydoc", @@ -2941,16 +2750,16 @@ dependencies = [ "ibc-core-host-types", "ibc-derive", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", "subtle-encoding", "tendermint", ] [[package]] name = "ibc-core-client-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "401ae816127d08df53633ac0fb5ae918e78b82264335f574e33816229828c75b" +checksum = "bafdbf6db5dab4c8ad610b6940e23b4f8abd0a6ac5e8e2801415a95defd4a583" dependencies = [ "derive_more", "displaydoc", @@ -2958,7 +2767,7 @@ dependencies = [ "ibc-core-host-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint", @@ -2966,39 +2775,39 @@ dependencies = [ [[package]] name = "ibc-core-commitment-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a32b64ba189cf01092ae2075507c206455f8fd8f12c734d2a1c74990c97ee254" +checksum = "ed4256b0216fc49024bac7e01c61b9bb055e31914ffe9ce6f468d7ce496a9357" dependencies = [ "derive_more", "displaydoc", "ibc-primitives", "ibc-proto 0.38.0", "ics23", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", ] [[package]] name = "ibc-core-connection" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2856017b454fd9439ab45f35ccf04f30d27cff88b3fca229b576aeca96d50593" +checksum = "48e237b70b9ba0177a4e59ac9048fffac2ac44c334703cc0ae403ad221450850" dependencies = [ "ibc-core-client", "ibc-core-connection-types", "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", ] [[package]] name = "ibc-core-connection-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68095216adb4feb9951f8a10ee67108b7446e7559981167d85f4f784a8e27b8c" +checksum = "ca841416fa29626423917099092f3698ae2735074cb3fe42936ddf6b2ccbf2f7" dependencies = [ "derive_more", "displaydoc", @@ -3007,7 +2816,7 @@ dependencies = [ "ibc-core-host-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint", @@ -3015,9 +2824,9 @@ dependencies = [ [[package]] name = "ibc-core-handler" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a26b4dc18a712d150aa07d59520d62f251635ce87de4f15b5365b03d66cea03" +checksum = "a47e5e5a006aa0fc87ec3f5fb1e0ef6dd5aeea5079fa927d799d526c44329987" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -3031,9 +2840,9 @@ dependencies = [ [[package]] name = "ibc-core-handler-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caef56331075eebc4d0ae65e3ef0a0ed05e31a3e1943e30a3499253e0aef0742" +checksum = "9e3d59a8a5eb2069530c42783b4fef63472a89e0e9242334351df1bb58aaf542" dependencies = [ "derive_more", "displaydoc", @@ -3045,7 +2854,7 @@ dependencies = [ "ibc-core-router-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint", @@ -3053,9 +2862,9 @@ dependencies = [ [[package]] name = "ibc-core-host" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f1a2bad0576abc716e3ab5c132dea5bd3b579dbeb761a0d3da82e9573a01eb0" +checksum = "7aa63c895c0e5a75e42fe859b8fd4250c12bfa8b9c6b114f94c927ecfad38a03" dependencies = [ "derive_more", "displaydoc", @@ -3067,15 +2876,15 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host-types", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", "subtle-encoding", ] [[package]] name = "ibc-core-host-cosmos" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0baa17eb955fbb494861d12959b924ee3d3dae75c8bb8fc7ec2ac3d56689eb9" +checksum = "1a325862af6c20b0df3d27c072a2d802a7232dc1666214d738cdfbd9a9c99720" dependencies = [ "derive_more", "displaydoc", @@ -3089,7 +2898,7 @@ dependencies = [ "ibc-core-host-types", "ibc-primitives", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "sha2 0.10.8", "subtle-encoding", @@ -3098,9 +2907,9 @@ dependencies = [ [[package]] name = "ibc-core-host-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f5d39a83330c6c781b33ec64d5086ab3d6868605a4dea00042668dcb4e71aa" +checksum = "616955da310febbe93c0569a2feebd9f57cafed3eee5a56b0c3bb953a75f6089" dependencies = [ "derive_more", "displaydoc", @@ -3110,9 +2919,9 @@ dependencies = [ [[package]] name = "ibc-core-router" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce3c271e2b1efb17e84d54b782020359defc837c104b6ca98a0883c2d05e5d45" +checksum = "31fe115da73e0616bdb44400fa6b11ca251648d070c4ff419d58e27804d30243" dependencies = [ "derive_more", "displaydoc", @@ -3120,15 +2929,15 @@ dependencies = [ "ibc-core-host-types", "ibc-core-router-types", "ibc-primitives", - "prost 0.12.3", + "prost 0.12.4", "subtle-encoding", ] [[package]] name = "ibc-core-router-types" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fb9e88af6cf5c673045f18b5a3e5a3b0fde1fb88d9cbcbd63320a3e4878df2c" +checksum = "4d1fbb0bbbdeafa7ac989ba1693ed46d22e0e3eb0bdae478544e31157a4fdba6" dependencies = [ "derive_more", "displaydoc", @@ -3136,7 +2945,7 @@ dependencies = [ "ibc-primitives", "ibc-proto 0.38.0", "ics23", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint", @@ -3151,7 +2960,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -3163,27 +2972,27 @@ dependencies = [ "ibc-relayer", "ibc-relayer-types", "ibc-test-framework", - "prost 0.12.3", + "prost 0.12.4", "serde", "serde_json", "tempfile", "tendermint", "tendermint-rpc", "time", - "toml 0.8.8", + "toml 0.8.12", "tonic", ] [[package]] name = "ibc-primitives" -version = "0.48.2" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3049b6f6665ca9b3cdd4e3dcbcee5843f928846b4b13927de1d530c623b11ed8" +checksum = "d5edea4685267fd68514c87e7aa3a62712340c4cff6903f088a9ab571428a08a" dependencies = [ "derive_more", "displaydoc", "ibc-proto 0.38.0", - "prost 0.12.3", + "prost 0.12.4", "serde", "tendermint", "time", @@ -3195,11 +3004,11 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93cbf4cbe9e5113cc7c70f3208a7029b2205c629502cbb2ae7ea0a09a97d3005" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "bytes", "flex-error", "ics23", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint-proto", @@ -3207,16 +3016,16 @@ dependencies = [ [[package]] name = "ibc-proto" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80701a1b0e0ade6f28071d7d2d6412e01869f22bb7039f52722161ecdeb083e0" +checksum = "c1a6f2bbf7e1d12f98d8d54d9114231b865418d0f8b619c0873180eafdee07fd" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "bytes", "flex-error", "ics23", "informalsystems-pbjson", - "prost 0.12.3", + "prost 0.12.4", "serde", "subtle-encoding", "tendermint-proto", @@ -3234,13 +3043,13 @@ dependencies = [ "bs58", "byte-unit", "bytes", - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "digest 0.10.7", "dirs-next", "ed25519", "ed25519-dalek", "ed25519-dalek-bip32", - "env_logger 0.11.1", + "env_logger", "flex-error", "futures", "generic-array 0.14.7", @@ -3249,23 +3058,26 @@ dependencies = [ "http", "humantime", "humantime-serde", - "ibc-proto 0.42.0", + "ibc-proto 0.42.2", "ibc-relayer-types", "ibc-telemetry", "itertools 0.10.5", "moka", + "namada_ibc", + "namada_parameters", "namada_sdk", + "namada_trans_token", "num-bigint 0.4.4", "num-rational 0.4.1", "once_cell", - "prost 0.12.3", + "prost 0.12.4", "regex", "reqwest", "retry", "ripemd", "rpassword", "secp256k1", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_derive", "serde_json", @@ -3287,11 +3099,11 @@ dependencies = [ "tiny-keccak", "tokio", "tokio-stream", - "toml 0.8.8", + "toml 0.8.12", "tonic", "tracing", "tracing-subscriber", - "uuid 1.7.0", + "uuid 1.8.0", ] [[package]] @@ -3303,7 +3115,7 @@ dependencies = [ "clap_complete", "color-eyre", "console", - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "dialoguer", "dirs-next", "eyre", @@ -3340,14 +3152,14 @@ name = "ibc-relayer-rest" version = "0.27.0" dependencies = [ "axum", - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "ibc-relayer", "ibc-relayer-types", "reqwest", "serde", "serde_json", "tokio", - "toml 0.8.8", + "toml 0.8.12", "tracing", ] @@ -3357,14 +3169,14 @@ version = "0.27.0" dependencies = [ "bytes", "derive_more", - "env_logger 0.11.1", + "env_logger", "flex-error", - "ibc-proto 0.42.0", + "ibc-proto 0.42.2", "ics23", "itertools 0.10.5", "num-rational 0.4.1", "primitive-types", - "prost 0.12.3", + "prost 0.12.4", "regex", "serde", "serde_derive", @@ -3406,21 +3218,21 @@ name = "ibc-test-framework" version = "0.27.0" dependencies = [ "color-eyre", - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "eyre", "flex-error", "hdpath", "hex", "http", - "ibc-proto 0.42.0", + "ibc-proto 0.42.2", "ibc-relayer", "ibc-relayer-cli", "ibc-relayer-types", "itertools 0.10.5", "once_cell", - "prost 0.12.3", + "prost 0.12.4", "rand 0.8.5", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", "serde_yaml", @@ -3428,7 +3240,7 @@ dependencies = [ "subtle-encoding", "tendermint-rpc", "tokio", - "toml 0.8.8", + "toml 0.8.12", "tonic", "tracing", "tracing-subscriber", @@ -3446,7 +3258,7 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost 0.12.3", + "prost 0.12.4", "ripemd", "serde", "sha2 0.10.8", @@ -3461,9 +3273,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.5.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -3554,12 +3366,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.1" +version = "2.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433de089bd45971eecf4668ee0ee8f4cec17db4f8bd8f7bc3197a6ce37aa7d9b" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" dependencies = [ "equivalent", - "hashbrown 0.14.3", + "hashbrown 0.14.1", ] [[package]] @@ -3568,7 +3380,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9aa4a0980c8379295100d70854354e78df2ee1c6ca0f96ffe89afeb3140e3a3d" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "serde", ] @@ -3601,20 +3413,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "is-terminal" -version = "0.4.12" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b" -dependencies = [ - "hermit-abi 0.3.4", - "libc", - "windows-sys 0.52.0", -] +checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" [[package]] name = "itertools" @@ -3636,24 +3437,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "jobserver" -version = "0.1.28" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" -dependencies = [ - "libc", -] +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" -version = "0.3.67" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -3664,9 +3456,9 @@ version = "8.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "pem", - "ring 0.16.20", + "ring", "serde", "serde_json", "simple_asn1", @@ -3688,9 +3480,9 @@ dependencies = [ [[package]] name = "k256" -version = "0.13.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc" dependencies = [ "cfg-if 1.0.0", "ecdsa", @@ -3703,52 +3495,24 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" dependencies = [ "cpufeatures", ] [[package]] -name = "lalrpop" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4081d44f4611b66c6dd725e6de3169f9f63905421e8626fcb86b6a898998b8" -dependencies = [ - "ascii-canvas", - "bit-set", - "diff", - "ena", - "is-terminal", - "itertools 0.10.5", - "lalrpop-util", - "petgraph", - "regex", - "regex-syntax 0.7.5", - "string_cache", - "term", - "tiny-keccak", - "unicode-xid", -] - -[[package]] -name = "lalrpop-util" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f35c735096c0293d313e8f2a641627472b83d01b937177fe76e5e2708d31e0d" - -[[package]] -name = "lazy_static" -version = "1.4.0" +name = "lazy_static" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.152" +version = "0.2.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" +checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" [[package]] name = "libm" @@ -3756,17 +3520,6 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" -[[package]] -name = "libredox" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" -dependencies = [ - "bitflags 2.4.2", - "libc", - "redox_syscall", -] - [[package]] name = "libsecp256k1" version = "0.3.5" @@ -3785,9 +3538,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" [[package]] name = "lock_api" @@ -3801,9 +3554,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.20" +version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" [[package]] name = "masp_note_encryption" @@ -3858,7 +3611,7 @@ dependencies = [ "blake2b_simd", "bls12_381", "directories", - "getrandom 0.2.12", + "getrandom 0.2.10", "group", "itertools 0.11.0", "jubjub", @@ -3892,20 +3645,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] -name = "md-5" -version = "0.10.6" +name = "memchr" +version = "2.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if 1.0.0", - "digest 0.10.7", -] +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" [[package]] -name = "memchr" -version = "2.7.1" +name = "memoffset" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" +dependencies = [ + "autocfg", +] [[package]] name = "memuse" @@ -3949,9 +3701,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.10" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", "wasi 0.11.0+wasi-snapshot-preview1", @@ -3960,23 +3712,22 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.5" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1911e88d5831f748a4097a43862d129e3c6fca831eecac9b8db6d01d93c9de2" +checksum = "87bfd249f570638bfb0b4f9d258e6b8cddd2a5a7d0ed47e8bb8b176bfc0e7a17" dependencies = [ - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "crossbeam-epoch", "crossbeam-utils 0.8.19", "once_cell", "parking_lot", "quanta", "rustc_version 0.4.0", - "skeptic", "smallvec", "tagptr", "thiserror", "triomphe", - "uuid 1.7.0", + "uuid 1.8.0", ] [[package]] @@ -3985,29 +3736,36 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" +[[package]] +name = "namada_account" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "namada_core", + "namada_macros", + "namada_storage", + "serde", +] + [[package]] name = "namada_core" -version = "0.30.0" -source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" dependencies = [ - "ark-bls12-381", - "ark-serialize", "bech32 0.8.1", "borsh", "borsh-ext", "chrono", "data-encoding", - "derivative", "ed25519-consensus 1.2.1", "ethabi", "ethbridge-structs", "eyre", "ibc", - "ibc-derive", "ics23", "impl-num-traits", "index-set", - "itertools 0.10.5", "k256", "masp_primitives", "namada_macros", @@ -4018,8 +3776,8 @@ dependencies = [ "num256", "num_enum", "primitive-types", - "prost 0.12.3", - "prost-types 0.12.3", + "prost 0.12.4", + "prost-types 0.12.1", "rand 0.8.5", "rand_core 0.6.4", "serde", @@ -4030,7 +3788,6 @@ dependencies = [ "tendermint-proto", "thiserror", "tiny-keccak", - "tonic-build", "tracing", "uint", "zeroize", @@ -4038,17 +3795,23 @@ dependencies = [ [[package]] name = "namada_ethereum_bridge" -version = "0.30.0" -source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" dependencies = [ "borsh", - "borsh-ext", + "ethabi", "ethers", "eyre", "itertools 0.10.5", "namada_core", "namada_macros", + "namada_parameters", "namada_proof_of_stake", + "namada_state", + "namada_storage", + "namada_trans_token", + "namada_tx", + "namada_vote_ext", "rand 0.8.5", "serde", "serde_json", @@ -4059,25 +3822,108 @@ dependencies = [ "tracing", ] +[[package]] +name = "namada_gas" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "namada_core", + "serde", + "thiserror", +] + +[[package]] +name = "namada_governance" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "namada_core", + "namada_macros", + "namada_parameters", + "namada_state", + "namada_trans_token", + "serde", + "serde_json", + "thiserror", + "tracing", +] + +[[package]] +name = "namada_ibc" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "ibc", + "ibc-derive", + "ics23", + "masp_primitives", + "namada_core", + "namada_governance", + "namada_parameters", + "namada_state", + "namada_storage", + "namada_trans_token", + "primitive-types", + "prost 0.12.4", + "sha2 0.9.9", + "thiserror", + "tracing", +] + [[package]] name = "namada_macros" -version = "0.30.0" -source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" dependencies = [ "proc-macro2", "quote", "syn 1.0.109", ] +[[package]] +name = "namada_merkle_tree" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "eyre", + "ics23", + "namada_core", + "prost 0.12.4", + "sparse-merkle-tree", + "thiserror", +] + +[[package]] +name = "namada_parameters" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "namada_core", + "namada_macros", + "namada_storage", + "thiserror", +] + [[package]] name = "namada_proof_of_stake" -version = "0.30.0" -source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" dependencies = [ "borsh", "data-encoding", "derivative", + "namada_account", "namada_core", + "namada_governance", + "namada_parameters", + "namada_storage", + "namada_trans_token", + "num-traits", "once_cell", "serde", "thiserror", @@ -4086,8 +3932,8 @@ dependencies = [ [[package]] name = "namada_sdk" -version = "0.30.0" -source = "git+https://github.com/anoma/namada?tag=v0.30.0#ec58c897e265ecdb56c5d5506c8ac8e4beaaf9d7" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" dependencies = [ "async-trait", "bimap", @@ -4104,15 +3950,25 @@ dependencies = [ "lazy_static", "masp_primitives", "masp_proofs", + "namada_account", "namada_core", "namada_ethereum_bridge", + "namada_governance", + "namada_ibc", + "namada_parameters", "namada_proof_of_stake", + "namada_state", + "namada_storage", + "namada_token", + "namada_tx", + "namada_vote_ext", + "num-traits", "num256", "orion", "owo-colors", "parse_duration", "paste", - "prost 0.12.3", + "prost 0.12.4", "rand 0.8.5", "rand_core 0.6.4", "ripemd", @@ -4132,10 +3988,108 @@ dependencies = [ ] [[package]] -name = "new_debug_unreachable" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" +name = "namada_shielded_token" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "masp_primitives", + "namada_core", + "namada_parameters", + "namada_state", + "namada_storage", + "namada_trans_token", + "tracing", +] + +[[package]] +name = "namada_state" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "ics23", + "itertools 0.10.5", + "namada_core", + "namada_gas", + "namada_merkle_tree", + "namada_parameters", + "namada_storage", + "namada_trans_token", + "namada_tx", + "sha2 0.9.9", + "sparse-merkle-tree", + "thiserror", + "tiny-keccak", + "tracing", +] + +[[package]] +name = "namada_storage" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "itertools 0.10.5", + "namada_core", + "namada_gas", + "namada_merkle_tree", + "namada_tx", + "thiserror", + "tracing", +] + +[[package]] +name = "namada_token" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "namada_core", + "namada_shielded_token", + "namada_storage", + "namada_trans_token", +] + +[[package]] +name = "namada_trans_token" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "namada_core", + "namada_storage", +] + +[[package]] +name = "namada_tx" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "ark-bls12-381", + "borsh", + "data-encoding", + "masp_primitives", + "namada_core", + "namada_gas", + "num-derive", + "num-traits", + "prost 0.12.4", + "prost-types 0.12.1", + "serde", + "serde_json", + "sha2 0.9.9", + "thiserror", + "tonic-build", +] + +[[package]] +name = "namada_vote_ext" +version = "0.30.2" +source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +dependencies = [ + "borsh", + "namada_core", + "namada_tx", + "serde", +] [[package]] name = "nonempty" @@ -4174,7 +4128,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" dependencies = [ "num-bigint 0.4.4", - "num-complex 0.4.5", + "num-complex 0.4.4", "num-integer", "num-iter", "num-rational 0.4.1", @@ -4216,9 +4170,9 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.5" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" +checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" dependencies = [ "num-traits", ] @@ -4246,9 +4200,9 @@ dependencies = [ [[package]] name = "num-iter" -version = "0.1.44" +version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9" +checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" dependencies = [ "autocfg", "num-integer", @@ -4310,36 +4264,36 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.4", + "hermit-abi 0.3.3", "libc", ] [[package]] name = "num_enum" -version = "0.7.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +checksum = "683751d591e6d81200c39fb0d1032608b77724f34114db54f571ff1317b337c0" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.7.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +checksum = "6c11e44798ad209ccdd91fc192f0526a369a01234f7373e1b141c96d7cee4f0e" dependencies = [ - "proc-macro-crate 3.1.0", + "proc-macro-crate 2.0.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "object" -version = "0.32.2" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -4446,7 +4400,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b3a2a91fdbfdd4d212c0dcc2ab540de2c2bcbbd90be17de7a7daf8822d010c1" dependencies = [ "async-trait", - "crossbeam-channel 0.5.11", + "crossbeam-channel 0.5.12", "dashmap", "fnv", "futures-channel", @@ -4459,12 +4413,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - [[package]] name = "orion" version = "0.16.1" @@ -4472,7 +4420,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6624905ddd92e460ff0685567539ed1ac985b2dee4c92c7edcd64fce905b00c" dependencies = [ "ct-codecs", - "getrandom 0.2.12", + "getrandom 0.2.10", "subtle 2.4.1", "zeroize", ] @@ -4506,9 +4454,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.9" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe" +checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" dependencies = [ "arrayvec", "bitvec", @@ -4520,11 +4468,11 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.9" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" +checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260" dependencies = [ - "proc-macro-crate 2.0.0", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 1.0.109", @@ -4548,7 +4496,7 @@ checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall", + "redox_syscall 0.4.1", "smallvec", "windows-targets 0.48.5", ] @@ -4575,17 +4523,6 @@ dependencies = [ "subtle 2.4.1", ] -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle 2.4.1", -] - [[package]] name = "pasta_curves" version = "0.5.1" @@ -4605,12 +4542,6 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - [[package]] name = "pbkdf2" version = "0.4.0" @@ -4627,7 +4558,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271779f35b581956db91a3e55737327a03aa051e90b1c47aeb189508533adfd7" dependencies = [ "digest 0.10.7", - "password-hash 0.3.2", + "password-hash", ] [[package]] @@ -4637,9 +4568,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" dependencies = [ "digest 0.10.7", - "hmac 0.12.1", - "password-hash 0.4.2", - "sha2 0.10.8", ] [[package]] @@ -4690,15 +4618,15 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pest" -version = "2.7.7" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546" +checksum = "ae9cee2a55a544be8b89dc6848072af97a20f2422603c10865be2a42b580fff5" dependencies = [ "memchr", "thiserror", @@ -4712,7 +4640,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ "fixedbitset", - "indexmap 2.2.1", + "indexmap 2.2.6", ] [[package]] @@ -4725,57 +4653,6 @@ dependencies = [ "rustc_version 0.4.0", ] -[[package]] -name = "phf" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" -dependencies = [ - "phf_macros", - "phf_shared 0.11.2", -] - -[[package]] -name = "phf_generator" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" -dependencies = [ - "phf_shared 0.11.2", - "rand 0.8.5", -] - -[[package]] -name = "phf_macros" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" -dependencies = [ - "phf_generator", - "phf_shared 0.11.2", - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "phf_shared" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" -dependencies = [ - "siphasher", -] - -[[package]] -name = "phf_shared" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" -dependencies = [ - "siphasher", -] - [[package]] name = "pin-project" version = "1.1.3" @@ -4793,7 +4670,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -4818,17 +4695,11 @@ dependencies = [ "spki", ] -[[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" - [[package]] name = "platforms" -version = "3.3.0" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c" +checksum = "4503fa043bf02cee09a9582e9554b4c6403b2ef55e4612e96561d294419429f8" [[package]] name = "poly1305" @@ -4853,12 +4724,6 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - [[package]] name = "prettyplease" version = "0.1.25" @@ -4871,12 +4736,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.16" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" +checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -4909,16 +4774,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" dependencies = [ - "toml_edit 0.20.7", -] - -[[package]] -name = "proc-macro-crate" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" -dependencies = [ - "toml_edit 0.21.0", + "toml_edit 0.20.2", ] [[package]] @@ -4947,9 +4803,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" dependencies = [ "unicode-ident", ] @@ -4971,17 +4827,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "7c003ac8c77cb07bb74f5f198bce836a689bcd5a42574612bf14d17bfd08c20e" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.4.1", "lazy_static", "num-traits", "rand 0.8.5", "rand_chacha 0.3.1", "rand_xorshift", - "regex-syntax 0.8.2", + "regex-syntax 0.7.5", "unarray", ] @@ -4997,12 +4853,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a" +checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922" dependencies = [ "bytes", - "prost-derive 0.12.3", + "prost-derive 0.12.4", ] [[package]] @@ -5042,15 +4898,15 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e" +checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48" dependencies = [ "anyhow", "itertools 0.11.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -5064,11 +4920,11 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.12.3" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e" +checksum = "e081b29f63d83a4bc75cfc9f3fe424f9156cf92d8a4f0c9407cce9a1b67327cf" dependencies = [ - "prost 0.12.3", + "prost 0.12.4", ] [[package]] @@ -5077,22 +4933,11 @@ version = "2.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" -[[package]] -name = "pulldown-cmark" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a1a2f1f0a7ecff9c31abbe177637be0e97a0aef46cf8738ece09327985d998" -dependencies = [ - "bitflags 1.3.2", - "memchr", - "unicase", -] - [[package]] name = "quanta" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca0b7bac0b97248c40bb77288fc52029cf1459c0461ea1b05ee32ccf011de2c" +checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" dependencies = [ "crossbeam-utils 0.8.19", "libc", @@ -5105,9 +4950,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.35" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] @@ -5177,7 +5022,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.12", + "getrandom 0.2.10", ] [[package]] @@ -5204,27 +5049,7 @@ version = "11.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1" dependencies = [ - "bitflags 2.4.2", -] - -[[package]] -name = "rayon" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils 0.8.19", + "bitflags 2.4.1", ] [[package]] @@ -5258,6 +5083,24 @@ dependencies = [ "zeroize", ] +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "redox_syscall" version = "0.4.1" @@ -5269,24 +5112,24 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.4" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.12", - "libredox", + "getrandom 0.2.10", + "redox_syscall 0.2.16", "thiserror", ] [[package]] name = "regex" -version = "1.10.3" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.4", + "regex-automata 0.4.3", "regex-syntax 0.8.2", ] @@ -5301,9 +5144,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.4" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b7fa1134405e2ec9353fd416b17f8dacd46c473d7d3fd1cf202706a14eb792a" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" dependencies = [ "aho-corasick", "memchr", @@ -5330,11 +5173,11 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "reqwest" -version = "0.11.23" +version = "0.11.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", "bytes", "encoding_rs", "futures-core", @@ -5365,7 +5208,6 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", "winreg", ] @@ -5394,26 +5236,12 @@ dependencies = [ "cc", "libc", "once_cell", - "spin 0.5.2", - "untrusted 0.7.1", + "spin", + "untrusted", "web-sys", "winapi", ] -[[package]] -name = "ring" -version = "0.17.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" -dependencies = [ - "cc", - "getrandom 0.2.12", - "libc", - "spin 0.9.8", - "untrusted 0.9.0", - "windows-sys 0.48.0", -] - [[package]] name = "ripemd" version = "0.1.3" @@ -5488,30 +5316,30 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.21", + "semver 1.0.22", ] [[package]] name = "rustix" -version = "0.38.30" +version = "0.38.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" +checksum = "745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.4.1", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] name = "rustls" -version = "0.21.10" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ "log", - "ring 0.17.7", + "ring", "rustls-webpki", "sct", ] @@ -5530,21 +5358,21 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.4" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ - "base64 0.21.7", + "base64 0.21.4", ] [[package]] name = "rustls-webpki" -version = "0.101.7" +version = "0.101.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" dependencies = [ - "ring 0.17.7", - "untrusted 0.9.0", + "ring", + "untrusted", ] [[package]] @@ -5555,9 +5383,9 @@ checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "salsa20" @@ -5603,11 +5431,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.23" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -5630,12 +5458,12 @@ dependencies = [ [[package]] name = "sct" -version = "0.7.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" dependencies = [ - "ring 0.17.7", - "untrusted 0.9.0", + "ring", + "untrusted", ] [[package]] @@ -5655,11 +5483,11 @@ dependencies = [ [[package]] name = "secp256k1" -version = "0.28.1" +version = "0.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f622567e3b4b38154fb8190bcf6b160d7a4301d70595a49195b48c116007a27" +checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" dependencies = [ - "bitcoin_hashes", + "bitcoin_hashes 0.12.0", "rand 0.8.5", "secp256k1-sys", "serde", @@ -5718,9 +5546,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" dependencies = [ "serde", ] @@ -5748,27 +5576,27 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.195" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] [[package]] name = "serde-json-wasm" -version = "1.0.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05da0d153dd4595bdffd5099dc0e9ce425b205ee648eb93437ff7302af8c9a5" +checksum = "83c37d03f3b0f6b5f77c11af1e7c772de1c9af83e50bef7bb6069601900ba67b" dependencies = [ "serde", ] [[package]] name = "serde_bytes" -version = "0.11.14" +version = "0.11.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff" dependencies = [ "serde", ] @@ -5785,20 +5613,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.195" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] name = "serde_json" -version = "1.0.111" +version = "1.0.115" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" +checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd" dependencies = [ "itoa", "ryu", @@ -5807,9 +5635,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.15" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c" +checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" dependencies = [ "itoa", "serde", @@ -5817,13 +5645,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.18" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" +checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -5849,11 +5677,11 @@ dependencies = [ [[package]] name = "serde_yaml" -version = "0.9.31" +version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adf8a49373e98a4c5f0ceb5d05aa7c648d75f63774981ed95b7c7443bbd50c6e" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.2.1", + "indexmap 2.2.6", "itoa", "ryu", "serde", @@ -5892,7 +5720,7 @@ checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -5988,9 +5816,9 @@ dependencies = [ [[package]] name = "signature" -version = "2.2.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" dependencies = [ "digest 0.10.7", "rand_core 0.6.4", @@ -6014,27 +5842,6 @@ dependencies = [ "time", ] -[[package]] -name = "siphasher" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" - -[[package]] -name = "skeptic" -version = "0.13.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d23b015676c90a0f01c197bfdc786c20342c73a0afdda9025adb0bc42940a8" -dependencies = [ - "bytecount", - "cargo_metadata 0.14.2", - "error-chain", - "glob", - "pulldown-cmark", - "tempfile", - "walkdir", -] - [[package]] name = "slab" version = "0.4.9" @@ -6055,32 +5862,28 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.1" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" [[package]] name = "socket2" -version = "0.5.5" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" dependencies = [ "libc", - "windows-sys 0.48.0", + "winapi", ] [[package]] -name = "solang-parser" -version = "0.3.3" +name = "socket2" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" +checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror", - "unicode-xid", + "libc", + "windows-sys 0.48.0", ] [[package]] @@ -6100,17 +5903,11 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" - [[package]] name = "spki" -version = "0.7.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" dependencies = [ "base64ct", "der", @@ -6122,19 +5919,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "string_cache" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" -dependencies = [ - "new_debug_unreachable", - "once_cell", - "parking_lot", - "phf_shared 0.10.0", - "precomputed-hash", -] - [[package]] name = "strsim" version = "0.10.0" @@ -6160,7 +5944,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6190,26 +5974,6 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" -[[package]] -name = "svm-rs" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs", - "fs2", - "hex", - "once_cell", - "reqwest", - "semver 1.0.21", - "serde", - "serde_json", - "sha2 0.10.8", - "thiserror", - "url", - "zip", -] - [[package]] name = "syn" version = "1.0.109" @@ -6223,9 +5987,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687" dependencies = [ "proc-macro2", "quote", @@ -6241,7 +6005,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6297,15 +6061,15 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.9.0" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" +checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" dependencies = [ "cfg-if 1.0.0", "fastrand", - "redox_syscall", + "redox_syscall 0.3.5", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -6323,8 +6087,8 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.12.3", - "prost-types 0.12.3", + "prost 0.12.4", + "prost-types 0.12.1", "ripemd", "serde", "serde_bytes", @@ -6425,8 +6189,8 @@ dependencies = [ "flex-error", "num-derive", "num-traits", - "prost 0.12.3", - "prost-types 0.12.3", + "prost 0.12.4", + "prost-types 0.12.1", "serde", "serde_bytes", "subtle-encoding", @@ -6444,11 +6208,11 @@ dependencies = [ "bytes", "flex-error", "futures", - "getrandom 0.2.12", + "getrandom 0.2.10", "peg", "pin-project", "reqwest", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_bytes", "serde_json", @@ -6482,46 +6246,35 @@ dependencies = [ "time", ] -[[package]] -name = "term" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" -dependencies = [ - "dirs-next", - "rustversion", - "winapi", -] - [[package]] name = "termcolor" -version = "1.4.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" dependencies = [ "winapi-util", ] [[package]] name = "test-log" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6159ab4116165c99fc88cce31f99fa2c9dbe08d3691cb38da02fc3b45f357d2b" +checksum = "7b319995299c65d522680decf80f2c108d85b861d81dfe340a10d16cee29d9e6" dependencies = [ - "env_logger 0.10.2", + "env_logger", "test-log-macros", "tracing-subscriber", ] [[package]] name = "test-log-macros" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ba277e77219e9eea169e8508942db1bf5d8a41ff2db9b20aab5a5aadc9fa25d" +checksum = "c8f546451eaa38373f549093fe9fd05e7d2bade739e2ddf834b9968621d60107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6532,22 +6285,22 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.56" +version = "1.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" +checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.56" +version = "1.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" +checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6665,9 +6418,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.35.1" +version = "1.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" +checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" dependencies = [ "backtrace", "bytes", @@ -6677,7 +6430,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.5.4", "tokio-macros", "windows-sys 0.48.0", ] @@ -6694,13 +6447,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6724,26 +6477,11 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" -dependencies = [ - "futures-util", - "log", - "rustls", - "tokio", - "tokio-rustls", - "tungstenite", - "webpki-roots", -] - [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" dependencies = [ "bytes", "futures-core", @@ -6764,14 +6502,26 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.8" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + +[[package]] +name = "toml" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" +checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.21.0", + "toml_edit 0.22.9", ] [[package]] @@ -6789,33 +6539,35 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.2.1", + "indexmap 2.2.6", + "serde", + "serde_spanned", "toml_datetime", - "winnow", + "winnow 0.5.17", ] [[package]] name = "toml_edit" -version = "0.20.7" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" dependencies = [ - "indexmap 2.2.1", + "indexmap 2.2.6", "toml_datetime", - "winnow", + "winnow 0.5.17", ] [[package]] name = "toml_edit" -version = "0.21.0" +version = "0.22.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" +checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4" dependencies = [ - "indexmap 2.2.1", + "indexmap 2.2.6", "serde", "serde_spanned", "toml_datetime", - "winnow", + "winnow 0.6.6", ] [[package]] @@ -6827,7 +6579,7 @@ dependencies = [ "async-stream", "async-trait", "axum", - "base64 0.21.7", + "base64 0.21.4", "bytes", "h2", "http", @@ -6836,7 +6588,7 @@ dependencies = [ "hyper-timeout", "percent-encoding", "pin-project", - "prost 0.12.3", + "prost 0.12.4", "rustls", "rustls-native-certs", "rustls-pemfile", @@ -6914,7 +6666,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -6949,23 +6701,12 @@ dependencies = [ [[package]] name = "tracing-log" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - -[[package]] -name = "tracing-log" -version = "0.2.0" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" dependencies = [ + "lazy_static", "log", - "once_cell", "tracing-core", ] @@ -6981,9 +6722,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" dependencies = [ "matchers", "nu-ansi-term", @@ -6996,21 +6737,21 @@ dependencies = [ "thread_local", "tracing", "tracing-core", - "tracing-log 0.2.0", + "tracing-log", "tracing-serde", ] [[package]] name = "triomphe" -version = "0.1.11" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3" +checksum = "0eee8098afad3fb0c54a9007aab6804558410503ad676d4633f9c2559a00ac0f" [[package]] name = "try-lock" -version = "0.2.5" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "tungstenite" @@ -7062,20 +6803,11 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "unicase" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" -dependencies = [ - "version_check", -] - [[package]] name = "unicode-bidi" -version = "0.3.15" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" @@ -7116,9 +6848,9 @@ dependencies = [ [[package]] name = "unsafe-libyaml" -version = "0.2.10" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" [[package]] name = "untrusted" @@ -7126,17 +6858,11 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - [[package]] name = "url" -version = "2.5.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna", @@ -7157,9 +6883,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" [[package]] name = "utf8-width" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" +checksum = "5190c9442dcdaf0ddd50f37420417d219ae5261bbf5db120d0f9bab996c9cba1" [[package]] name = "utf8parse" @@ -7173,17 +6899,17 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.12", + "getrandom 0.2.10", "serde", ] [[package]] name = "uuid" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" dependencies = [ - "getrandom 0.2.12", + "getrandom 0.2.10", ] [[package]] @@ -7240,9 +6966,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -7250,24 +6976,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.40" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -7277,9 +7003,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7287,22 +7013,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasmtimer" @@ -7320,9 +7046,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.67" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -7330,9 +7056,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.25.4" +version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" [[package]] name = "which" @@ -7379,11 +7105,20 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-core" -version = "0.52.0" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.42.2", ] [[package]] @@ -7401,7 +7136,22 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.52.5", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] @@ -7421,19 +7171,26 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.0" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "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", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -7442,9 +7199,15 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" @@ -7454,9 +7217,15 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" @@ -7466,9 +7235,21 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" @@ -7478,9 +7259,15 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" @@ -7490,9 +7277,15 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" @@ -7502,9 +7295,15 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.0" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" @@ -7514,15 +7313,24 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.0" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" + +[[package]] +name = "winnow" +version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" +checksum = "a3b801d0e0a6726477cc207f60162da452f3a95adb368399bef20a946e06f65c" +dependencies = [ + "memchr", +] [[package]] name = "winnow" -version = "0.5.34" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16" +checksum = "f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352" dependencies = [ "memchr", ] @@ -7565,12 +7373,6 @@ dependencies = [ "tap", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "zcash_encoding" version = "0.2.0" @@ -7582,9 +7384,9 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.7.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" dependencies = [ "zeroize_derive", ] @@ -7597,54 +7399,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", -] - -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "aes", - "byteorder", - "bzip2", - "constant_time_eq 0.1.5", - "crc32fast", - "crossbeam-utils 0.8.19", - "flate2", - "hmac 0.12.1", - "pbkdf2 0.11.0", - "sha1", - "time", - "zstd", -] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.9+zstd.1.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" -dependencies = [ - "cc", - "pkg-config", + "syn 2.0.58", ] diff --git a/crates/relayer/Cargo.toml b/crates/relayer/Cargo.toml index 014b03fa78..ef15ace9dd 100644 --- a/crates/relayer/Cargo.toml +++ b/crates/relayer/Cargo.toml @@ -110,11 +110,23 @@ default-features = false version = "0.34.0" default-features = false +[dependencies.namada_ibc] +git = "https://github.com/anoma/namada" +tag = "v0.30.2" + +[dependencies.namada_parameters] +git = "https://github.com/anoma/namada" +tag = "v0.30.2" + [dependencies.namada_sdk] git = "https://github.com/anoma/namada" -tag = "v0.30.0" +tag = "v0.30.2" features = ["std"] +[dependencies.namada_trans_token] +git = "https://github.com/anoma/namada" +tag = "v0.30.2" + [dev-dependencies] ibc-relayer-types = { version = "0.27.0", path = "../relayer-types", features = ["mocks"] } serial_test = "3.0.0" diff --git a/crates/relayer/src/chain/namada.rs b/crates/relayer/src/chain/namada.rs index 32ae8ad384..a847b5cdf1 100644 --- a/crates/relayer/src/chain/namada.rs +++ b/crates/relayer/src/chain/namada.rs @@ -32,23 +32,24 @@ use ibc_relayer_types::core::ics24_host::path::{ use ibc_relayer_types::events::IbcEvent; use ibc_relayer_types::signer::Signer; use ibc_relayer_types::Height as ICSHeight; +use namada_ibc::storage; +use namada_parameters::{storage as param_storage, EpochDuration}; use namada_sdk::borsh::BorshDeserialize; -use namada_sdk::core::ledger::ibc::storage; -use namada_sdk::core::ledger::parameters::{storage as param_storage, EpochDuration}; -use namada_sdk::core::ledger::storage::ics23_specs::ibc_proof_specs; -use namada_sdk::core::ledger::storage::Sha256Hasher; -use namada_sdk::core::types::address::{Address, InternalAddress}; -use namada_sdk::core::types::storage::{Key, KeySeg, PrefixValue}; -use namada_sdk::core::types::token; use namada_sdk::io::NullIo; use namada_sdk::masp::fs::FsShieldedUtils; use namada_sdk::masp::ShieldedContext; use namada_sdk::proof_of_stake::storage_key as pos_storage_key; use namada_sdk::proof_of_stake::OwnedPosParams; use namada_sdk::queries::Client as SdkClient; +use namada_sdk::state::ics23_specs::ibc_proof_specs; +use namada_sdk::state::Sha256Hasher; +use namada_sdk::types::address::{Address, InternalAddress}; +use namada_sdk::types::storage::{Key, KeySeg, PrefixValue}; use namada_sdk::wallet::Store; use namada_sdk::wallet::Wallet; use namada_sdk::{rpc, Namada, NamadaImpl}; +use namada_trans_token::storage_key::{balance_key, denom_key, is_any_token_balance_key}; +use namada_trans_token::{Amount, DenominatedAmount, Denomination}; use tendermint::block::Height as TmHeight; use tendermint::{node, Time}; use tendermint_light_client::types::LightBlock as TMLightBlock; @@ -409,7 +410,7 @@ impl ChainEndpoint for NamadaChain { let token = Address::decode(denom).map_err(|_| NamadaError::address_decode(denom.to_string()))?; - let balance_key = token::balance_key(&token, &owner); + let balance_key = balance_key(&token, &owner); let (value, _) = self.query(balance_key, QueryHeight::Latest, IncludeProof::No)?; if value.is_empty() { return Ok(Balance { @@ -417,16 +418,15 @@ impl ChainEndpoint for NamadaChain { denom: denom.to_string(), }); } - let amount = - token::Amount::try_from_slice(&value[..]).map_err(NamadaError::borsh_decode)?; - let denom_key = token::denom_key(&token); + let amount = Amount::try_from_slice(&value[..]).map_err(NamadaError::borsh_decode)?; + let denom_key = denom_key(&token); let (value, _) = self.query(denom_key, QueryHeight::Latest, IncludeProof::No)?; let denominated_amount = if value.is_empty() { - token::DenominatedAmount::new(amount, 0.into()) + DenominatedAmount::new(amount, 0.into()) } else { - let token_denom = token::Denomination::try_from_slice(&value[..]) - .map_err(NamadaError::borsh_decode)?; - token::DenominatedAmount::new(amount, token_denom) + let token_denom = + Denomination::try_from_slice(&value[..]).map_err(NamadaError::borsh_decode)?; + DenominatedAmount::new(amount, token_denom) }; Ok(Balance { @@ -444,19 +444,19 @@ impl ChainEndpoint for NamadaChain { let mut balances = vec![]; let prefix = Key::from(Address::Internal(InternalAddress::Multitoken).to_db_key()); for PrefixValue { key, value } in self.query_prefix(prefix)? { - if let Some([token, bal_owner]) = token::is_any_token_balance_key(&key) { + if let Some([token, bal_owner]) = is_any_token_balance_key(&key) { if owner == *bal_owner { - let amount = token::Amount::try_from_slice(&value[..]) - .map_err(NamadaError::borsh_decode)?; - let denom_key = token::denom_key(token); + let amount = + Amount::try_from_slice(&value[..]).map_err(NamadaError::borsh_decode)?; + let denom_key = denom_key(token); let (value, _) = self.query(denom_key, QueryHeight::Latest, IncludeProof::No)?; let denominated_amount = if value.is_empty() { - token::DenominatedAmount::new(amount, 0.into()) + DenominatedAmount::new(amount, 0.into()) } else { - let namada_denom = token::Denomination::try_from_slice(&value[..]) + let namada_denom = Denomination::try_from_slice(&value[..]) .map_err(NamadaError::borsh_decode)?; - token::DenominatedAmount::new(amount, namada_denom) + DenominatedAmount::new(amount, namada_denom) }; let balance = Balance { amount: denominated_amount.to_string(), diff --git a/crates/relayer/src/chain/namada/key.rs b/crates/relayer/src/chain/namada/key.rs index 6322cb6439..83fe4efea0 100644 --- a/crates/relayer/src/chain/namada/key.rs +++ b/crates/relayer/src/chain/namada/key.rs @@ -1,7 +1,7 @@ use core::any::Any; -use namada_sdk::core::types::address::Address; -use namada_sdk::core::types::key::common::SecretKey; +use namada_sdk::types::address::Address; +use namada_sdk::types::key::common::SecretKey; use crate::config::AddressType; use crate::keyring::errors::Error; diff --git a/crates/relayer/src/chain/namada/query.rs b/crates/relayer/src/chain/namada/query.rs index fed38a75c3..a0fbc490d4 100644 --- a/crates/relayer/src/chain/namada/query.rs +++ b/crates/relayer/src/chain/namada/query.rs @@ -3,12 +3,12 @@ use ibc_relayer_types::core::ics23_commitment::merkle::convert_tm_to_ics_merkle_ use ibc_relayer_types::core::ics23_commitment::merkle::MerkleProof; use ibc_relayer_types::events::IbcEvent; use ibc_relayer_types::Height as ICSHeight; +use namada_ibc::storage::{ibc_denom_key_prefix, is_ibc_denom_key}; use namada_sdk::borsh::BorshDeserialize; -use namada_sdk::core::ledger::ibc::storage::{ibc_denom_key_prefix, is_ibc_denom_key}; -use namada_sdk::core::types::address::{Address, InternalAddress}; -use namada_sdk::core::types::storage::{BlockHeight, Epoch, Key, PrefixValue}; use namada_sdk::queries::{Client as SdkClient, RPC}; use namada_sdk::rpc; +use namada_sdk::types::address::{Address, InternalAddress}; +use namada_sdk::types::storage::{BlockHeight, Epoch, Key, PrefixValue}; use namada_sdk::Namada; use tendermint::block::Height as TmHeight; diff --git a/crates/relayer/src/chain/namada/tx.rs b/crates/relayer/src/chain/namada/tx.rs index 88a9b799e9..e946e4dfce 100644 --- a/crates/relayer/src/chain/namada/tx.rs +++ b/crates/relayer/src/chain/namada/tx.rs @@ -5,12 +5,12 @@ use std::thread; use std::time::Instant; use ibc_proto::google::protobuf::Any; +use namada_parameters::storage as parameter_storage; use namada_sdk::args::{Tx as TxArgs, TxCustom}; use namada_sdk::borsh::BorshDeserialize; -use namada_sdk::core::ledger::parameters::storage as parameter_storage; -use namada_sdk::core::types::address::{Address, ImplicitAddress}; -use namada_sdk::core::types::chain::ChainId; -use namada_sdk::core::types::transaction::GasLimit; +use namada_sdk::tx::data::GasLimit; +use namada_sdk::types::address::{Address, ImplicitAddress}; +use namada_sdk::types::chain::ChainId; use namada_sdk::{signing, tx, Namada}; use tendermint_rpc::endpoint::broadcast::tx_sync::Response; From 3d9de304bdb29f49027b139f6ef921ff2c999243 Mon Sep 17 00:00:00 2001 From: yito88 Date: Sat, 3 Feb 2024 22:26:58 +0100 Subject: [PATCH 3/6] Namada 0.31.0 --- Cargo.lock | 80 ++++++++++++++------------- crates/relayer/Cargo.toml | 11 ++-- crates/relayer/src/chain/namada/tx.rs | 7 ++- 3 files changed, 54 insertions(+), 44 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e0781a16c9..b0b0f9b270 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3087,6 +3087,7 @@ dependencies = [ "strum", "subtle-encoding", "tendermint", + "tendermint-config", "tendermint-light-client", "tendermint-light-client-detector", "tendermint-light-client-verifier", @@ -3561,7 +3562,7 @@ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" [[package]] name = "masp_note_encryption" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.0.0#c3c6047a9c9da54058afc71219b913ac9f79e48b" +source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" dependencies = [ "borsh", "chacha20", @@ -3574,7 +3575,7 @@ dependencies = [ [[package]] name = "masp_primitives" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.0.0#c3c6047a9c9da54058afc71219b913ac9f79e48b" +source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" dependencies = [ "aes", "bip0039", @@ -3605,7 +3606,7 @@ dependencies = [ [[package]] name = "masp_proofs" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.0.0#c3c6047a9c9da54058afc71219b913ac9f79e48b" +source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" dependencies = [ "bellman", "blake2b_simd", @@ -3738,8 +3739,8 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "namada_account" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "namada_core", @@ -3750,8 +3751,8 @@ dependencies = [ [[package]] name = "namada_core" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "bech32 0.8.1", "borsh", @@ -3795,8 +3796,8 @@ dependencies = [ [[package]] name = "namada_ethereum_bridge" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "ethabi", @@ -3824,8 +3825,8 @@ dependencies = [ [[package]] name = "namada_gas" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "namada_core", @@ -3835,8 +3836,8 @@ dependencies = [ [[package]] name = "namada_governance" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "namada_core", @@ -3852,8 +3853,8 @@ dependencies = [ [[package]] name = "namada_ibc" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "ibc", @@ -3875,8 +3876,8 @@ dependencies = [ [[package]] name = "namada_macros" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "proc-macro2", "quote", @@ -3885,8 +3886,8 @@ dependencies = [ [[package]] name = "namada_merkle_tree" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "eyre", @@ -3899,8 +3900,8 @@ dependencies = [ [[package]] name = "namada_parameters" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "namada_core", @@ -3911,8 +3912,8 @@ dependencies = [ [[package]] name = "namada_proof_of_stake" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "data-encoding", @@ -3932,8 +3933,8 @@ dependencies = [ [[package]] name = "namada_sdk" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "async-trait", "bimap", @@ -3976,6 +3977,7 @@ dependencies = [ "serde_json", "sha2 0.9.9", "slip10_ed25519", + "tendermint-config", "tendermint-rpc", "thiserror", "tiny-bip39 0.8.2", @@ -3989,8 +3991,8 @@ dependencies = [ [[package]] name = "namada_shielded_token" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "masp_primitives", "namada_core", @@ -4003,8 +4005,8 @@ dependencies = [ [[package]] name = "namada_state" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "ics23", @@ -4025,8 +4027,8 @@ dependencies = [ [[package]] name = "namada_storage" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "itertools 0.10.5", @@ -4040,8 +4042,8 @@ dependencies = [ [[package]] name = "namada_token" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "namada_core", "namada_shielded_token", @@ -4051,8 +4053,8 @@ dependencies = [ [[package]] name = "namada_trans_token" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "namada_core", "namada_storage", @@ -4060,8 +4062,8 @@ dependencies = [ [[package]] name = "namada_tx" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "ark-bls12-381", "borsh", @@ -4082,8 +4084,8 @@ dependencies = [ [[package]] name = "namada_vote_ext" -version = "0.30.2" -source = "git+https://github.com/anoma/namada?tag=v0.30.2#aa1f5e5516867e56d268826aa39e789110fdebe9" +version = "0.31.0" +source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" dependencies = [ "borsh", "namada_core", diff --git a/crates/relayer/Cargo.toml b/crates/relayer/Cargo.toml index ef15ace9dd..96fdf8c7b2 100644 --- a/crates/relayer/Cargo.toml +++ b/crates/relayer/Cargo.toml @@ -90,6 +90,9 @@ features = ["num-bigint", "serde"] version = "0.34.0" features = ["secp256k1"] +[dependencies.tendermint-config] +version = "0.34.0" + [dependencies.tendermint-proto] version = "0.34.0" @@ -112,20 +115,20 @@ default-features = false [dependencies.namada_ibc] git = "https://github.com/anoma/namada" -tag = "v0.30.2" +tag = "v0.31.0" [dependencies.namada_parameters] git = "https://github.com/anoma/namada" -tag = "v0.30.2" +tag = "v0.31.0" [dependencies.namada_sdk] git = "https://github.com/anoma/namada" -tag = "v0.30.2" +tag = "v0.31.0" features = ["std"] [dependencies.namada_trans_token] git = "https://github.com/anoma/namada" -tag = "v0.30.2" +tag = "v0.31.0" [dev-dependencies] ibc-relayer-types = { version = "0.27.0", path = "../relayer-types", features = ["mocks"] } diff --git a/crates/relayer/src/chain/namada/tx.rs b/crates/relayer/src/chain/namada/tx.rs index e946e4dfce..0d7ca48171 100644 --- a/crates/relayer/src/chain/namada/tx.rs +++ b/crates/relayer/src/chain/namada/tx.rs @@ -33,6 +33,11 @@ impl NamadaChain { let chain_id = ChainId::from_str(self.config.id.as_str()).expect("invalid chain ID"); + let url = &self.config().rpc_addr; + let rpc_addr = format!("{}:{}{}", url.host(), url.port(), url.path()); + let ledger_address = + tendermint_config::net::Address::from_str(&rpc_addr).expect("invalid rpc address"); + let fee_token = &self.config.gas_price.denom; let fee_token = Address::decode(fee_token) .map_err(|_| NamadaError::address_decode(fee_token.to_string()))?; @@ -65,7 +70,7 @@ impl NamadaChain { force: false, output_folder: None, broadcast_only: true, - ledger_address: (), + ledger_address, initialized_account_alias: None, wallet_alias_force: false, wrapper_fee_payer: Some(relayer_public_key.clone()), From 3e6b7a10c73fb995e24c998de02cd2f951a6d07c Mon Sep 17 00:00:00 2001 From: Yuji Ito Date: Thu, 15 Feb 2024 22:57:16 +0100 Subject: [PATCH 4/6] shielded transfer test (#24) * add a test script * add shielded transfer tests * fix comment --- e2e/namada-gaia-simple-transfers | 94 +++++++++++++++ e2e/namada-shielded-transfers | 195 +++++++++++++++++++++++++++++++ 2 files changed, 289 insertions(+) create mode 100755 e2e/namada-shielded-transfers diff --git a/e2e/namada-gaia-simple-transfers b/e2e/namada-gaia-simple-transfers index 405d210922..64b06cd8f4 100755 --- a/e2e/namada-gaia-simple-transfers +++ b/e2e/namada-gaia-simple-transfers @@ -22,6 +22,10 @@ NAMADAW="${NAMADA_DIR}/target/debug/namadaw" DATA_DIR="${HERMES_DIR}/data" IBC_TOKEN="transfer/channel-0/samoleans" +SHIELDED_ALIAS_A="shielded_a" +SHIELDED_ALIAS_B="shielded_b" +PAYMENT_ALIAS_A="payment_a" +PAYMENT_ALIAS_B="payment_b" NAMADA_LEDGER_ADDR="127.0.0.1:27657" GAIA_CHAIN_CONFIG=" @@ -60,6 +64,15 @@ echo "${GAIA_CHAIN_CONFIG}" >> config_for_namada.toml cargo run -q --bin hermes -- --config config_for_namada.toml \ keys add --chain gaia-0 --key-file ${DATA_DIR}/gaia-0/user_seed.json --overwrite +# setup Namada shielded keys +${NAMADAW} --base-dir ${base_dir} gen --shielded --alias ${SHIELDED_ALIAS_A} --unsafe-dont-encrypt +${NAMADAW} --base-dir ${base_dir} gen-payment-addr --alias ${PAYMENT_ALIAS_A} --key ${SHIELDED_ALIAS_A} +payment_addr_a=$(${NAMADAW} --base-dir ${base_dir} find --alias ${PAYMENT_ALIAS_A} | awk -v paymentAlias="${PAYMENT_ALIAS_A}" '{if($1 ~ paymentAlias) {print $2}}') + +${NAMADAW} --base-dir ${base_dir} gen --shielded --alias ${SHIELDED_ALIAS_B} --unsafe-dont-encrypt +${NAMADAW} --base-dir ${base_dir} gen-payment-addr --alias ${PAYMENT_ALIAS_B} --key ${SHIELDED_ALIAS_B} +payment_addr_b=$(${NAMADAW} --base-dir ${base_dir} find --alias ${PAYMENT_ALIAS_B} | awk -v paymentAlias="${PAYMENT_ALIAS_B}" '{if($1 ~ paymentAlias) {print $2}}') + # Initialize Relayer's balance on Namada ${NAMADAC} --base-dir ${base_dir} \ transfer \ @@ -185,6 +198,87 @@ ${NAMADAC} --base-dir ${base_dir} balance \ echo "==== Balances on Gaia ====" gaiad query bank balances ${gaia_user} + +echo "~~ Generate the proof from Namada for the following transfer ~~" +resp=$(${NAMADAC} --base-dir ${base_dir} ibc-gen-shielded \ + --output-folder-path ${base_dir} \ + --target ${payment_addr_a} \ + --token "samoleans" \ + --amount 10 \ + --port-id transfer \ + --channel-id channel-0 \ + --node ${NAMADA_LEDGER_ADDR}) +memo_path=$(echo $resp | awk '{print $8}') + +echo "~~ Shielding transfer 10 samoleans from Gaia to Namada ~~" +cargo run --bin hermes -- --config config_for_namada.toml \ + tx ft-transfer \ + --dst-chain ${chain_id} \ + --src-chain gaia-0 \ + --src-port transfer \ + --src-channel channel-0 \ + --amount 10 \ + --receiver ${payment_addr_a} \ + --denom samoleans \ + --timeout-height-offset 1000 \ + --memo $(cat ${memo_path}) + +# wait for relaying +sleep 15 + +echo "==== Balance of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} balance \ + --owner ${SHIELDED_ALIAS_A} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Balances on Gaia ====" +gaiad query bank balances ${gaia_user} + +echo "~~ Shielded transfer 5 apfel from shielded_a to shielded_b ~~" +${NAMADAC} --base-dir ${base_dir} transfer \ + --source ${SHIELDED_ALIAS_A} \ + --target ${payment_addr_b} \ + --token ${IBC_TOKEN} \ + --amount 5 \ + --signing-keys relayer \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Balance of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} balance \ + --owner ${SHIELDED_ALIAS_A} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Balance of shielded_b on Namada ====" +${NAMADAC} --base-dir ${base_dir} balance \ + --owner ${SHIELDED_ALIAS_B} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "~~ Transfer back 5 samoleans from Namada to Gaia ~~" +${NAMADAC} --base-dir ${base_dir} ibc-transfer \ + --source ${SHIELDED_ALIAS_B} \ + --receiver ${gaia_user} \ + --token ${IBC_TOKEN} \ + --amount 5 \ + --signing-keys relayer \ + --channel-id channel-0 \ + --node ${NAMADA_LEDGER_ADDR} + +# wait for relaying +sleep 15 + +echo "==== Balances of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} balance \ + --owner ${SHIELDED_ALIAS_A} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Balances of shielded_b on Namada ====" +${NAMADAC} --base-dir ${base_dir} balance \ + --owner ${SHIELDED_ALIAS_B} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Balances on Gaia ====" +gaiad query bank balances ${gaia_user} + killall hermes killall gaiad killall namadan diff --git a/e2e/namada-shielded-transfers b/e2e/namada-shielded-transfers new file mode 100755 index 0000000000..80a047f80a --- /dev/null +++ b/e2e/namada-shielded-transfers @@ -0,0 +1,195 @@ +#!/bin/bash + +# This script executes shielded transfers between Namada instances locally +# `make build` and `make build-wasm-scripts` on Namada directory in advance +# Run with `namada-shielded-transfers ${namada_dir}` + +set -e + +NAMADA_DIR=$1 +if [ -z "${NAMADA_DIR}" ] +then + echo "ERROR: Namada directory should be given" + exit 1 +fi +cd $(dirname $0) +HERMES_DIR=${PWD%/e2e*} + +NAMADAC="${NAMADA_DIR}/target/debug/namadac" +NAMADAW="${NAMADA_DIR}/target/debug/namadaw" +DATA_DIR="${HERMES_DIR}/data" + +SHIELDED_ALIAS_A="shielded_a" +SHIELDED_ALIAS_B="shielded_b" +SHIELDED_ALIAS_B_2="shielded_b_2" +PAYMENT_ALIAS_A="payment_a" +PAYMENT_ALIAS_B="payment_b" +PAYMENT_ALIAS_B_2="payment_b_2" +LEDGER_ADDR_A="127.0.0.1:27657" +LEDGER_ADDR_B="127.0.0.1:28657" +INITIAL_BALANCE=5000 + +function init_relayer_balance() { + local suffix=$1 + local ledger_addr=$2 + + local base_dir=${DATA_DIR}/namada-${suffix} + + ${NAMADAC} --base-dir ${base_dir} \ + transfer \ + --source albert \ + --target relayer \ + --token nam \ + --amount ${INITIAL_BALANCE} \ + --node ${ledger_addr} +} + +# ==== main ==== + +# Run 2 Namada chains +${HERMES_DIR}/scripts/setup-namada ${NAMADA_DIR} + +cd ${HERMES_DIR} +ids=$(grep "id" config_for_namada.toml | awk -F"'" '/^id/ {print $2}') +chain_a=$(echo ${ids} | awk '{print $1}') +chain_b=$(echo ${ids} | awk '{print $2}') + +# Initialize the balances +init_relayer_balance "a" ${LEDGER_ADDR_A} +init_relayer_balance "b" ${LEDGER_ADDR_B} + +# Create a channel +cargo run --bin hermes -- --config config_for_namada.toml \ + create channel \ + --a-chain ${chain_a} \ + --b-chain ${chain_b} \ + --a-port transfer \ + --b-port transfer \ + --new-client-connection --yes + +base_dir_a=${DATA_DIR}/namada-a +base_dir_b=${DATA_DIR}/namada-b + +# setup shielded keys +${NAMADAW} --base-dir ${base_dir_a} gen --shielded --alias ${SHIELDED_ALIAS_A} --unsafe-dont-encrypt +${NAMADAW} --base-dir ${base_dir_a} gen-payment-addr --alias ${PAYMENT_ALIAS_A} --key ${SHIELDED_ALIAS_A} +payment_addr_a=$(${NAMADAW} --base-dir ${base_dir_a} find --alias ${PAYMENT_ALIAS_A} | awk -v paymentAlias="${PAYMENT_ALIAS_A}" '{if($1 ~ paymentAlias) {print $2}}') + +${NAMADAW} --base-dir ${base_dir_b} gen --shielded --alias ${SHIELDED_ALIAS_B} --unsafe-dont-encrypt +${NAMADAW} --base-dir ${base_dir_b} gen-payment-addr --alias ${PAYMENT_ALIAS_B} --key ${SHIELDED_ALIAS_B} +payment_addr_b=$(${NAMADAW} --base-dir ${base_dir_b} find --alias ${PAYMENT_ALIAS_B} | awk -v paymentAlias="${PAYMENT_ALIAS_B}" '{if($1 ~ paymentAlias) {print $2}}') + +${NAMADAW} --base-dir ${base_dir_b} gen --shielded --alias ${SHIELDED_ALIAS_B_2} --unsafe-dont-encrypt +${NAMADAW} --base-dir ${base_dir_b} gen-payment-addr --alias ${PAYMENT_ALIAS_B_2} --key ${SHIELDED_ALIAS_B_2} +payment_addr_b_2=$(${NAMADAW} --base-dir ${base_dir_b} find --alias ${PAYMENT_ALIAS_B_2} | awk -v paymentAlias="${PAYMENT_ALIAS_B_2}" '{if($1 ~ paymentAlias) {print $2}}') + +# faucet apfel on chain_a and chain_b +${NAMADAC} --base-dir ${base_dir_a} transfer \ + --source albert \ + --target ${payment_addr_a} \ + --token apfel \ + --amount 1000 \ + --signing-keys albert-key \ + --node ${LEDGER_ADDR_A} + +echo "==== Start Hermes ====" +cargo run --bin hermes -- --config config_for_namada.toml \ + start > ${HERMES_DIR}/e2e/hermes.log 2>&1 & + +echo "~~ Generate the proof from chain_b for the following transfer ~~" +resp=$(${NAMADAC} --base-dir ${base_dir_b} ibc-gen-shielded \ + --output-folder-path ${base_dir_b} \ + --target ${payment_addr_b} \ + --token "tnam1qyvfwdkz8zgs9n3qn9xhp8scyf8crrxwuq26r6gy" \ + --amount 100 \ + --port-id transfer \ + --channel-id channel-0 \ + --node ${LEDGER_ADDR_B}) +memo_path=$(echo $resp | awk '{print $8}') + +echo "~~ Transfer 100 apfel from chain_a to chain_b ~~" +${NAMADAC} --base-dir ${base_dir_a} ibc-transfer \ + --source ${SHIELDED_ALIAS_A} \ + --receiver ${payment_addr_b} \ + --token apfel \ + --amount 100 \ + --channel-id channel-0 \ + --gas-payer relayer \ + --memo-path ${memo_path} \ + --node ${LEDGER_ADDR_A} + +# wait for relaying +sleep 15 + +echo "==== Balances on chain A ====" +${NAMADAC} --base-dir ${base_dir_a} balance \ + --token apfel \ + --owner ${SHIELDED_ALIAS_A} \ + --node ${LEDGER_ADDR_A} + +echo "==== Balances on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} balance \ + --owner ${SHIELDED_ALIAS_B} \ + --node ${LEDGER_ADDR_B} + +echo "~~ Shielded transfer 50 apfel from shielded_b to shielded_b_2 ~~" +${NAMADAC} --base-dir ${base_dir_b} transfer \ + --source ${SHIELDED_ALIAS_B} \ + --target ${payment_addr_b_2} \ + --token "transfer/channel-0/apfel" \ + --amount 50 \ + --signing-keys relayer \ + --node ${LEDGER_ADDR_B} + +echo "==== Balance of shielded_b on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} balance \ + --owner ${SHIELDED_ALIAS_B} \ + --node ${LEDGER_ADDR_B} + +echo "==== Balance of shielded_b_2 on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} balance \ + --owner ${SHIELDED_ALIAS_B_2} \ + --node ${LEDGER_ADDR_B} + +echo "~~ Generate the proof from chain A for the following transfer ~~" +resp=$(${NAMADAC} --base-dir ${base_dir_a} ibc-gen-shielded \ + --output-folder-path ${base_dir_a} \ + --target ${payment_addr_a} \ + --token "transfer/channel-0/tnam1qyvfwdkz8zgs9n3qn9xhp8scyf8crrxwuq26r6gy" \ + --amount 50 \ + --port-id transfer \ + --channel-id channel-0 \ + --node ${LEDGER_ADDR_A}) +memo_path=$(echo $resp | awk '{print $8}') + +echo "~~ Transfer back 50 apfel from shielded_b_2 on chain B to chain A ~~" +${NAMADAC} --base-dir ${base_dir_b} ibc-transfer \ + --source ${SHIELDED_ALIAS_B_2} \ + --receiver ${payment_addr_a} \ + --token "transfer/channel-0/apfel" \ + --amount 50 \ + --signing-keys relayer \ + --channel-id channel-0 \ + --memo-path ${memo_path} \ + --node ${LEDGER_ADDR_B} + +# wait for relaying +sleep 15 + +echo "==== Balances of shielded_a on chain A ====" +${NAMADAC} --base-dir ${base_dir_a} balance \ + --owner ${SHIELDED_ALIAS_A} \ + --node ${LEDGER_ADDR_A} + +echo "==== Balances of shielded_b on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} balance \ + --owner ${SHIELDED_ALIAS_B} \ + --node ${LEDGER_ADDR_B} + +echo "==== Balance of shielded_b_2 on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} balance \ + --owner ${SHIELDED_ALIAS_B_2} \ + --node ${LEDGER_ADDR_B} + +killall hermes +killall namadan From 31e4612b00b287d6358d7d2bd76b3cea2279cdef Mon Sep 17 00:00:00 2001 From: Yuji Ito Date: Fri, 12 Apr 2024 22:36:17 +0200 Subject: [PATCH 5/6] Support shielding transfers (#28) * gen-ibc-shielded * MsgTimeout and MsgAcknowledgement * add refund flag * add shielded_sync * scripts for IBC rate limit * not to use memo for shielded transfers * add namada-stargaze-transfer test script * remove duplicated masp tx * for Namada query change * update Namada rev * Namada 0.33.0 --- Cargo.lock | 787 +++++++++++++++-------- crates/relayer/Cargo.toml | 9 +- crates/relayer/src/chain/namada.rs | 33 +- crates/relayer/src/chain/namada/key.rs | 4 +- crates/relayer/src/chain/namada/query.rs | 10 +- crates/relayer/src/chain/namada/tx.rs | 262 ++++++-- e2e/namada-gaia-simple-transfers | 34 +- e2e/namada-shielded-transfers | 58 +- e2e/namada-simple-transfers | 11 +- e2e/namada-stargaze-transfer | 253 ++++++++ scripts/setup-namada | 6 +- scripts/setup-namada-single-node | 4 +- 12 files changed, 1100 insertions(+), 371 deletions(-) create mode 100755 e2e/namada-stargaze-transfer diff --git a/Cargo.lock b/Cargo.lock index b0b0f9b270..9a4c89a20e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -87,6 +87,17 @@ dependencies = [ "cpufeatures", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom 0.2.10", + "once_cell", + "version_check", +] + [[package]] name = "aho-corasick" version = "1.1.2" @@ -287,7 +298,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -298,7 +309,7 @@ checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -368,7 +379,7 @@ dependencies = [ "bitflags 1.3.2", "bytes", "futures-util", - "http", + "http 0.2.9", "http-body", "hyper", "itoa", @@ -398,7 +409,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http", + "http 0.2.9", "http-body", "mime", "rustversion", @@ -441,9 +452,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.4" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" [[package]] name = "base64ct" @@ -566,9 +577,12 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" +checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +dependencies = [ + "serde", +] [[package]] name = "bitvec" @@ -678,16 +692,39 @@ dependencies = [ "subtle 2.4.1", ] +[[package]] +name = "borsh" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4114279215a005bc675e386011e594e1d9b800918cea18fcadadcce864a2046b" +dependencies = [ + "borsh-derive 0.10.3", + "hashbrown 0.12.3", +] + [[package]] name = "borsh" version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9897ef0f1bd2362169de6d7e436ea2237dc1085d7d1e4db75f4be34d86f309d1" dependencies = [ - "borsh-derive", + "borsh-derive 1.2.1", "cfg_aliases", ] +[[package]] +name = "borsh-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0754613691538d51f329cce9af41d7b7ca150bc973056f1156611489475f54f7" +dependencies = [ + "borsh-derive-internal", + "borsh-schema-derive-internal", + "proc-macro-crate 0.1.5", + "proc-macro2", + "syn 1.0.109", +] + [[package]] name = "borsh-derive" version = "1.2.1" @@ -698,16 +735,38 @@ dependencies = [ "proc-macro-crate 2.0.0", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", "syn_derive", ] +[[package]] +name = "borsh-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afb438156919598d2c7bad7e1c0adf3d26ed3840dbc010db1a882a65583ca2fb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "borsh-ext" version = "1.2.0" source = "git+https://github.com/heliaxdev/borsh-ext?tag=v1.2.0#a62fee3e847e512cad9ac0f1fd5a900e5db9ba37" dependencies = [ - "borsh", + "borsh 1.2.1", +] + +[[package]] +name = "borsh-schema-derive-internal" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634205cc43f74a1b9046ef87c4540ebda95696ec0f315024860cad7c5b0f5ccd" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -979,7 +1038,7 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "bech32 0.9.1", "bs58", "digest 0.10.7", @@ -1237,7 +1296,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -1253,41 +1312,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "darling" -version = "0.20.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.20.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.58", -] - -[[package]] -name = "darling_macro" -version = "0.20.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" -dependencies = [ - "darling_core", - "quote", - "syn 2.0.58", -] - [[package]] name = "dashmap" version = "5.5.3" @@ -1446,7 +1470,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -1455,6 +1479,12 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + [[package]] name = "ecdsa" version = "0.16.8" @@ -1582,7 +1612,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe81b5c06ecfdbc71dd845216f225f53b62a10cb8a16c946836a3467f701d05b" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "bytes", "hex", "k256", @@ -1798,7 +1828,7 @@ dependencies = [ "regex", "serde", "serde_json", - "syn 2.0.58", + "syn 2.0.53", "toml 0.7.8", "walkdir", ] @@ -1816,7 +1846,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -1842,7 +1872,7 @@ dependencies = [ "serde", "serde_json", "strum", - "syn 2.0.58", + "syn 2.0.53", "tempfile", "thiserror", "tiny-keccak", @@ -1899,7 +1929,7 @@ checksum = "6838fa110e57d572336178b7c79e94ff88ef976306852d8cb87d9e5b1fc7c0b5" dependencies = [ "async-trait", "auto_impl", - "base64 0.21.4", + "base64 0.21.7", "bytes", "const-hex", "enr", @@ -1908,7 +1938,7 @@ dependencies = [ "futures-timer", "futures-util", "hashers", - "http", + "http 0.2.9", "instant", "jsonwebtoken", "once_cell", @@ -2132,7 +2162,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -2291,7 +2321,7 @@ dependencies = [ "futures-core", "futures-sink", "futures-util", - "http", + "http 0.2.9", "indexmap 1.9.3", "slab", "tokio", @@ -2310,6 +2340,9 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash", +] [[package]] name = "hashbrown" @@ -2440,6 +2473,17 @@ dependencies = [ "itoa", ] +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + [[package]] name = "http-body" version = "0.4.5" @@ -2447,7 +2491,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", - "http", + "http 0.2.9", "pin-project-lite", ] @@ -2490,7 +2534,7 @@ dependencies = [ "futures-core", "futures-util", "h2", - "http", + "http 0.2.9", "http-body", "httparse", "httpdate", @@ -2510,7 +2554,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97" dependencies = [ "futures-util", - "http", + "http 0.2.9", "hyper", "rustls", "tokio", @@ -2554,9 +2598,9 @@ dependencies = [ [[package]] name = "ibc" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "429b6aca6624a9364878e28c90311438c2621a8270942d80732b2651ac38ac74" +checksum = "8057203ab04368297a31ecd5d059bec7108c069d636bcfc9ab20e82d89b480b8" dependencies = [ "ibc-apps", "ibc-clients", @@ -2566,11 +2610,43 @@ dependencies = [ "ibc-primitives", ] +[[package]] +name = "ibc-app-nft-transfer" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e931737b69129ae417598fe29eace3e41a9ce32b8649abe3937495973e5843f" +dependencies = [ + "ibc-app-nft-transfer-types", + "ibc-core", + "serde-json-wasm", +] + +[[package]] +name = "ibc-app-nft-transfer-types" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2019d3a6adf6b333c55630f52ca71ad8f61702ca1cf291aaf5ee40b7c6c27ba2" +dependencies = [ + "base64 0.21.7", + "borsh 0.10.3", + "derive_more", + "displaydoc", + "http 1.1.0", + "ibc-core", + "ibc-proto 0.41.0", + "mime", + "parity-scale-codec", + "scale-info", + "schemars", + "serde", + "serde-json-wasm", +] + [[package]] name = "ibc-app-transfer" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b177b343385d9654d99be4709b5ed1574d41f91dfa4044b2d26d688be4179d7c" +checksum = "2595e4cc14828a4141a28b86777040d8bfbabea43838a425137202cff0ee6329" dependencies = [ "ibc-app-transfer-types", "ibc-core", @@ -2579,14 +2655,14 @@ dependencies = [ [[package]] name = "ibc-app-transfer-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95f92a3eda225e5c86e7bb6501c95986583ac541c4369d3c528349d81390f947" +checksum = "0106c87ddcc619a6a5eac05da2b77287e3958f89dddf951daf9a2dfc470cb5f4" dependencies = [ "derive_more", "displaydoc", "ibc-core", - "ibc-proto 0.38.0", + "ibc-proto 0.41.0", "primitive-types", "serde", "uint", @@ -2594,10 +2670,11 @@ dependencies = [ [[package]] name = "ibc-apps" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4be40d55ed2dea9f2d05b902a3586f20850c723e4bdbfc4fb0ebe7a66ca5e40" +checksum = "b5738d8c842abce233f41d3be825d01e6ee075251b509c6947d05c75477eaeec" dependencies = [ + "ibc-app-nft-transfer", "ibc-app-transfer", ] @@ -2608,7 +2685,7 @@ dependencies = [ "async-trait", "flex-error", "futures", - "http", + "http 0.2.9", "ibc-proto 0.42.2", "ibc-relayer-types", "itertools 0.10.5", @@ -2622,9 +2699,9 @@ dependencies = [ [[package]] name = "ibc-client-tendermint" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "119aa5873214228bf69bded3f20022b9ae1bc35b6841d295afcd73e53db05ccf" +checksum = "81ef4eefb4fd88167335fee4d212b1ff2fa4dd4e4ce87a58bda1798be1d128ac" dependencies = [ "ibc-client-tendermint-types", "ibc-core-client", @@ -2632,7 +2709,6 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.4", "serde", "tendermint", "tendermint-light-client-verifier", @@ -2640,38 +2716,52 @@ dependencies = [ [[package]] name = "ibc-client-tendermint-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f21679016931b332b295a761e65cc122dc6fbfb98444148b681ad3aaa474665" +checksum = "91a224a98b193810e1ef86316e9a08e677eeff6f98b22b9eb9806bd993d3753a" dependencies = [ - "bytes", "displaydoc", "ibc-core-client-types", "ibc-core-commitment-types", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", "serde", "tendermint", "tendermint-light-client-verifier", "tendermint-proto", ] +[[package]] +name = "ibc-client-wasm-types" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e1ea3be7ae201c99b6589c112a253f2fb3c9ae7322d8937a7303d1fbfe76d27" +dependencies = [ + "base64 0.21.7", + "displaydoc", + "ibc-core-client", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto 0.41.0", + "serde", +] + [[package]] name = "ibc-clients" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685c660323e93107a136aa3dbc412b7fa2eafd315c2fe71184096a43800f8ca5" +checksum = "84fef481dd1ebe5ef69ee8e095c225cb3e51cd3895096ba2884b3f5b827a6ed6" dependencies = [ "ibc-client-tendermint", + "ibc-client-wasm-types", ] [[package]] name = "ibc-core" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "100d9d0aa67432c5078a8a1c818e3fc990a193be6d35ed0abeda5b340d16c1da" +checksum = "5aedd421bae80115f44b198bec9af45f234e1c8ff81ee9d5e7f60444d526d2b6" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -2680,14 +2770,15 @@ dependencies = [ "ibc-core-handler", "ibc-core-host", "ibc-core-router", + "ibc-derive", "ibc-primitives", ] [[package]] name = "ibc-core-channel" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ebaa37629ac029f914dfe552ab5dad01ddb240ec885ed0ae68221cbea4e9bfc" +checksum = "535048a8fe64101263e35a6a4503474811e379a115db72ee449df882b0f11b45" dependencies = [ "ibc-core-channel-types", "ibc-core-client", @@ -2697,15 +2788,15 @@ dependencies = [ "ibc-core-host", "ibc-core-router", "ibc-primitives", - "prost 0.12.4", ] [[package]] name = "ibc-core-channel-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2ba72c56c411b1e0ce6dc3f5e1fa1de9e6c84891f425b7be8a9e1705964378" +checksum = "8d97396ccb1840f4ea6021bbf049a4a7e30a8f5b126f00023ec44b2a48d4dabc" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-client-types", @@ -2713,8 +2804,10 @@ dependencies = [ "ibc-core-connection-types", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "sha2 0.10.8", "subtle-encoding", @@ -2723,9 +2816,9 @@ dependencies = [ [[package]] name = "ibc-core-client" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06c4fac8e05201795073dee8c93d5afe9dfeac9aec2412b4a2b0c5f0d1e1d725" +checksum = "15bcf0c59eaa935fa410497a56862f28c4df68317ea556724f0d0764b6c0307e" dependencies = [ "ibc-core-client-context", "ibc-core-client-types", @@ -2733,14 +2826,13 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.4", ] [[package]] name = "ibc-core-client-context" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b82abd9489021730d59ab2d00e9438d3711e8e78ecba4d083b64f833301682b" +checksum = "2d37d88be3dc7fd82d45418c257d826244a6b29b7902c76cf9e68fd61f1e9173" dependencies = [ "derive_more", "displaydoc", @@ -2748,26 +2840,27 @@ dependencies = [ "ibc-core-commitment-types", "ibc-core-handler-types", "ibc-core-host-types", - "ibc-derive", "ibc-primitives", - "prost 0.12.4", "subtle-encoding", "tendermint", ] [[package]] name = "ibc-core-client-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bafdbf6db5dab4c8ad610b6940e23b4f8abd0a6ac5e8e2801415a95defd4a583" +checksum = "cb717b1296e6cda0990346ba5203fadd043d5159d7d7173b3765f72f263c29db" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-commitment-types", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "subtle-encoding", "tendermint", @@ -2775,48 +2868,53 @@ dependencies = [ [[package]] name = "ibc-core-commitment-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed4256b0216fc49024bac7e01c61b9bb055e31914ffe9ce6f468d7ce496a9357" +checksum = "a10ff34bf57bf4bc668b55208dbfdf312d7907adc6a0e39da2377883f12efada" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-primitives", - "ibc-proto 0.38.0", + "ibc-proto 0.41.0", "ics23", - "prost 0.12.4", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "subtle-encoding", ] [[package]] name = "ibc-core-connection" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e237b70b9ba0177a4e59ac9048fffac2ac44c334703cc0ae403ad221450850" +checksum = "de7f4f1e78e9ed5a63b09b1405f42713f3d076ba5e7889ec31a520cad4970344" dependencies = [ "ibc-core-client", "ibc-core-connection-types", "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost 0.12.4", ] [[package]] name = "ibc-core-connection-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca841416fa29626423917099092f3698ae2735074cb3fe42936ddf6b2ccbf2f7" +checksum = "230d7f547e121147d136c563ae71707a9e3477a9bc1bc6c1dc29051e1408a381" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-client-types", "ibc-core-commitment-types", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "subtle-encoding", "tendermint", @@ -2824,9 +2922,9 @@ dependencies = [ [[package]] name = "ibc-core-handler" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47e5e5a006aa0fc87ec3f5fb1e0ef6dd5aeea5079fa927d799d526c44329987" +checksum = "c60a2d072d8f7d8d64503bbf3fb69ffcd973b92667af053617a36682fadddea5" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -2840,10 +2938,11 @@ dependencies = [ [[package]] name = "ibc-core-handler-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3d59a8a5eb2069530c42783b4fef63472a89e0e9242334351df1bb58aaf542" +checksum = "7fae38340bffa42a74563a12703c994515cca4bab755a0c83089c18c3c1e481a" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-channel-types", @@ -2853,8 +2952,10 @@ dependencies = [ "ibc-core-host-types", "ibc-core-router-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "subtle-encoding", "tendermint", @@ -2862,9 +2963,9 @@ dependencies = [ [[package]] name = "ibc-core-host" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aa63c895c0e5a75e42fe859b8fd4250c12bfa8b9c6b114f94c927ecfad38a03" +checksum = "abaa0e2143855d12c19e814dab72a5e28daf5e31780afb1302e983614b248668" dependencies = [ "derive_more", "displaydoc", @@ -2876,15 +2977,14 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host-types", "ibc-primitives", - "prost 0.12.4", "subtle-encoding", ] [[package]] name = "ibc-core-host-cosmos" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a325862af6c20b0df3d27c072a2d802a7232dc1666214d738cdfbd9a9c99720" +checksum = "7e3c792be21a340e42344e5bede1695c2d21d62abcc21bbfc7662b5950ffe8d4" dependencies = [ "derive_more", "displaydoc", @@ -2897,8 +2997,7 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", "serde", "sha2 0.10.8", "subtle-encoding", @@ -2907,21 +3006,25 @@ dependencies = [ [[package]] name = "ibc-core-host-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "616955da310febbe93c0569a2feebd9f57cafed3eee5a56b0c3bb953a75f6089" +checksum = "1c25ce3082e036836d60aea3cc24f46dfb248d7718516a9a48e1feb466ce10c1" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-primitives", + "parity-scale-codec", + "scale-info", + "schemars", "serde", ] [[package]] name = "ibc-core-router" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31fe115da73e0616bdb44400fa6b11ca251648d070c4ff419d58e27804d30243" +checksum = "6c261fb7e9a7de7daafb6a38cb9abdce6e912230e30246eb2ef1bb5db32ba10f" dependencies = [ "derive_more", "displaydoc", @@ -2929,23 +3032,24 @@ dependencies = [ "ibc-core-host-types", "ibc-core-router-types", "ibc-primitives", - "prost 0.12.4", "subtle-encoding", ] [[package]] name = "ibc-core-router-types" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d1fbb0bbbdeafa7ac989ba1693ed46d22e0e3eb0bdae478544e31157a4fdba6" +checksum = "6f3b37bc4c11fdc60a328488f4be205106666edda20a4080484d599a8b0978d2" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-host-types", "ibc-primitives", - "ibc-proto 0.38.0", - "ics23", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "scale-info", + "schemars", "serde", "subtle-encoding", "tendermint", @@ -2953,14 +3057,13 @@ dependencies = [ [[package]] name = "ibc-derive" -version = "0.4.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df07bf5bc1e65e291506b7497633e07967e49b36a8db10cda77a8fd686eb4548" +checksum = "3de1e69ff9d7d6094b720a36bb26fc8078b5e1b0e216e2d0a92f602e6dc8016e" dependencies = [ - "darling", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -2968,11 +3071,11 @@ name = "ibc-integration-test" version = "0.27.0" dependencies = [ "byte-unit", - "http", + "http 0.2.9", "ibc-relayer", "ibc-relayer-types", "ibc-test-framework", - "prost 0.12.4", + "prost 0.12.3", "serde", "serde_json", "tempfile", @@ -2985,14 +3088,18 @@ dependencies = [ [[package]] name = "ibc-primitives" -version = "0.48.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5edea4685267fd68514c87e7aa3a62712340c4cff6903f088a9ab571428a08a" +checksum = "af5524046e645bdfbd96ef932c8ceab6bb2391dc31dee626e274d13e7ac25ec2" dependencies = [ + "borsh 0.10.3", "derive_more", "displaydoc", - "ibc-proto 0.38.0", - "prost 0.12.4", + "ibc-proto 0.41.0", + "parity-scale-codec", + "prost 0.12.3", + "scale-info", + "schemars", "serde", "tendermint", "time", @@ -3000,15 +3107,20 @@ dependencies = [ [[package]] name = "ibc-proto" -version = "0.38.0" +version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93cbf4cbe9e5113cc7c70f3208a7029b2205c629502cbb2ae7ea0a09a97d3005" +checksum = "dd4ee32b22d3b06f31529b956f4928e5c9a068d71e46cf6abfa19c31ca550553" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", + "borsh 0.10.3", "bytes", "flex-error", "ics23", - "prost 0.12.4", + "informalsystems-pbjson", + "parity-scale-codec", + "prost 0.12.3", + "scale-info", + "schemars", "serde", "subtle-encoding", "tendermint-proto", @@ -3020,12 +3132,12 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1a6f2bbf7e1d12f98d8d54d9114231b865418d0f8b619c0873180eafdee07fd" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "bytes", "flex-error", "ics23", "informalsystems-pbjson", - "prost 0.12.4", + "prost 0.12.3", "serde", "subtle-encoding", "tendermint-proto", @@ -3055,7 +3167,7 @@ dependencies = [ "generic-array 0.14.7", "hdpath", "hex", - "http", + "http 0.2.9", "humantime", "humantime-serde", "ibc-proto 0.42.2", @@ -3070,7 +3182,7 @@ dependencies = [ "num-bigint 0.4.4", "num-rational 0.4.1", "once_cell", - "prost 0.12.4", + "prost 0.12.3", "regex", "reqwest", "retry", @@ -3123,7 +3235,7 @@ dependencies = [ "flex-error", "futures", "hdpath", - "http", + "http 0.2.9", "humantime", "ibc-chain-registry", "ibc-relayer", @@ -3177,7 +3289,7 @@ dependencies = [ "itertools 0.10.5", "num-rational 0.4.1", "primitive-types", - "prost 0.12.4", + "prost 0.12.3", "regex", "serde", "serde_derive", @@ -3224,14 +3336,14 @@ dependencies = [ "flex-error", "hdpath", "hex", - "http", + "http 0.2.9", "ibc-proto 0.42.2", "ibc-relayer", "ibc-relayer-cli", "ibc-relayer-types", "itertools 0.10.5", "once_cell", - "prost 0.12.4", + "prost 0.12.3", "rand 0.8.5", "semver 1.0.22", "serde", @@ -3259,7 +3371,7 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost 0.12.4", + "prost 0.12.3", "ripemd", "serde", "sha2 0.10.8", @@ -3351,7 +3463,7 @@ name = "index-set" version = "0.8.0" source = "git+https://github.com/heliaxdev/index-set?tag=v0.8.1#b0d928f83cf0d465ccda299d131e8df2859b5184" dependencies = [ - "borsh", + "borsh 1.2.1", "serde", ] @@ -3365,6 +3477,17 @@ dependencies = [ "hashbrown 0.12.3", ] +[[package]] +name = "indexmap" +version = "2.2.4" +source = "git+https://github.com/heliaxdev/indexmap?tag=2.2.4-heliax-1#b5b5b547bd6ab04bbb16e060326a50ddaeb6c909" +dependencies = [ + "borsh 1.2.1", + "equivalent", + "hashbrown 0.14.1", + "serde", +] + [[package]] name = "indexmap" version = "2.2.6" @@ -3381,7 +3504,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9aa4a0980c8379295100d70854354e78df2ee1c6ca0f96ffe89afeb3140e3a3d" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "serde", ] @@ -3457,7 +3580,7 @@ version = "8.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "pem", "ring", "serde", @@ -3537,6 +3660,26 @@ dependencies = [ "typenum", ] +[[package]] +name = "linkme" +version = "0.3.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb2cfee0de9bd869589fb9a015e155946d1be5ff415cb844c2caccc6cc4b5db9" +dependencies = [ + "linkme-impl", +] + +[[package]] +name = "linkme-impl" +version = "0.3.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adf157a4dc5a29b7b464aa8fe7edeff30076e07e13646a1c3874f58477dc99f8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.53", +] + [[package]] name = "linux-raw-sys" version = "0.4.10" @@ -3562,9 +3705,9 @@ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" [[package]] name = "masp_note_encryption" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" +source = "git+https://github.com/anoma/masp?rev=6cbc8bd90a71cc280492c44bc3415162093daa76#6cbc8bd90a71cc280492c44bc3415162093daa76" dependencies = [ - "borsh", + "borsh 1.2.1", "chacha20", "chacha20poly1305", "cipher", @@ -3575,7 +3718,7 @@ dependencies = [ [[package]] name = "masp_primitives" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" +source = "git+https://github.com/anoma/masp?rev=6cbc8bd90a71cc280492c44bc3415162093daa76#6cbc8bd90a71cc280492c44bc3415162093daa76" dependencies = [ "aes", "bip0039", @@ -3583,7 +3726,7 @@ dependencies = [ "blake2b_simd", "blake2s_simd", "bls12_381", - "borsh", + "borsh 1.2.1", "byteorder", "ff", "fpe", @@ -3606,7 +3749,7 @@ dependencies = [ [[package]] name = "masp_proofs" version = "1.0.0" -source = "git+https://github.com/anoma/masp?tag=v1.1.0#f24691c0eb76909e3c15ae03aef294dccebd2df3" +source = "git+https://github.com/anoma/masp?rev=6cbc8bd90a71cc280492c44bc3415162093daa76#6cbc8bd90a71cc280492c44bc3415162093daa76" dependencies = [ "bellman", "blake2b_simd", @@ -3739,23 +3882,33 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "namada_account" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", + "linkme", "namada_core", "namada_macros", + "namada_migrations", "namada_storage", "serde", ] +[[package]] +name = "namada_controller" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" +dependencies = [ + "namada_core", +] + [[package]] name = "namada_core" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ "bech32 0.8.1", - "borsh", + "borsh 1.2.1", "borsh-ext", "chrono", "data-encoding", @@ -3767,17 +3920,18 @@ dependencies = [ "ics23", "impl-num-traits", "index-set", + "indexmap 2.2.4", "k256", + "linkme", "masp_primitives", "namada_macros", - "num-derive", + "namada_migrations", "num-integer", "num-rational 0.4.1", "num-traits", "num256", "num_enum", "primitive-types", - "prost 0.12.4", "prost-types 0.12.1", "rand 0.8.5", "rand_core 0.6.4", @@ -3796,16 +3950,18 @@ dependencies = [ [[package]] name = "namada_ethereum_bridge" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "ethabi", "ethers", "eyre", "itertools 0.10.5", + "linkme", "namada_core", "namada_macros", + "namada_migrations", "namada_parameters", "namada_proof_of_stake", "namada_state", @@ -3825,25 +3981,29 @@ dependencies = [ [[package]] name = "namada_gas" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "namada_core", + "namada_macros", "serde", "thiserror", ] [[package]] name = "namada_governance" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", + "itertools 0.10.5", + "linkme", "namada_core", "namada_macros", + "namada_migrations", "namada_parameters", - "namada_state", + "namada_storage", "namada_trans_token", "serde", "serde_json", @@ -3853,22 +4013,24 @@ dependencies = [ [[package]] name = "namada_ibc" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "ibc", "ibc-derive", "ics23", "masp_primitives", "namada_core", + "namada_gas", "namada_governance", "namada_parameters", "namada_state", "namada_storage", - "namada_trans_token", + "namada_token", "primitive-types", - "prost 0.12.4", + "prost 0.12.3", + "serde_json", "sha2 0.9.9", "thiserror", "tracing", @@ -3876,34 +4038,52 @@ dependencies = [ [[package]] name = "namada_macros" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ + "data-encoding", + "lazy_static", + "paste", "proc-macro2", "quote", + "sha2 0.9.9", "syn 1.0.109", ] [[package]] name = "namada_merkle_tree" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "eyre", "ics23", "namada_core", - "prost 0.12.4", + "namada_macros", + "prost 0.12.3", "sparse-merkle-tree", "thiserror", ] +[[package]] +name = "namada_migrations" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" +dependencies = [ + "borsh 1.2.1", + "data-encoding", + "lazy_static", + "linkme", + "namada_macros", + "serde", +] + [[package]] name = "namada_parameters" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "namada_core", "namada_macros", "namada_storage", @@ -3912,15 +4092,19 @@ dependencies = [ [[package]] name = "namada_proof_of_stake" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "data-encoding", "derivative", + "linkme", "namada_account", + "namada_controller", "namada_core", "namada_governance", + "namada_macros", + "namada_migrations", "namada_parameters", "namada_storage", "namada_trans_token", @@ -3931,31 +4115,44 @@ dependencies = [ "tracing", ] +[[package]] +name = "namada_replay_protection" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" +dependencies = [ + "namada_core", +] + [[package]] name = "namada_sdk" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ "async-trait", "bimap", - "borsh", + "borsh 1.2.1", "borsh-ext", "circular-queue", "data-encoding", "derivation-path", "ethbridge-bridge-contract", "ethers", + "eyre", "fd-lock", "futures", "itertools 0.10.5", "lazy_static", + "linkme", "masp_primitives", "masp_proofs", "namada_account", "namada_core", "namada_ethereum_bridge", + "namada_gas", "namada_governance", "namada_ibc", + "namada_macros", + "namada_migrations", "namada_parameters", "namada_proof_of_stake", "namada_state", @@ -3969,9 +4166,10 @@ dependencies = [ "owo-colors", "parse_duration", "paste", - "prost 0.12.4", + "prost 0.12.3", "rand 0.8.5", "rand_core 0.6.4", + "regex", "ripemd", "serde", "serde_json", @@ -3991,30 +4189,36 @@ dependencies = [ [[package]] name = "namada_shielded_token" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ + "borsh 1.2.1", "masp_primitives", + "namada_controller", "namada_core", "namada_parameters", - "namada_state", "namada_storage", "namada_trans_token", + "serde", "tracing", ] [[package]] name = "namada_state" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "ics23", "itertools 0.10.5", + "linkme", "namada_core", "namada_gas", + "namada_macros", "namada_merkle_tree", + "namada_migrations", "namada_parameters", + "namada_replay_protection", "namada_storage", "namada_trans_token", "namada_tx", @@ -4027,23 +4231,29 @@ dependencies = [ [[package]] name = "namada_storage" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", "itertools 0.10.5", + "linkme", "namada_core", "namada_gas", + "namada_macros", "namada_merkle_tree", + "namada_migrations", + "namada_replay_protection", "namada_tx", + "regex", + "serde", "thiserror", "tracing", ] [[package]] name = "namada_token" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ "namada_core", "namada_shielded_token", @@ -4053,8 +4263,8 @@ dependencies = [ [[package]] name = "namada_trans_token" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ "namada_core", "namada_storage", @@ -4062,18 +4272,22 @@ dependencies = [ [[package]] name = "namada_tx" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ "ark-bls12-381", - "borsh", + "bitflags 2.5.0", + "borsh 1.2.1", "data-encoding", + "linkme", "masp_primitives", "namada_core", "namada_gas", + "namada_macros", + "namada_migrations", "num-derive", "num-traits", - "prost 0.12.4", + "prost 0.12.3", "prost-types 0.12.1", "serde", "serde_json", @@ -4084,11 +4298,14 @@ dependencies = [ [[package]] name = "namada_vote_ext" -version = "0.31.0" -source = "git+https://github.com/anoma/namada?tag=v0.31.0#720304bc49aec3390f9bf127b69cd1e875612fc4" +version = "0.33.0" +source = "git+https://github.com/anoma/namada#621cce94399e3ce5088e07dfff842f438b216103" dependencies = [ - "borsh", + "borsh 1.2.1", + "linkme", "namada_core", + "namada_macros", + "namada_migrations", "namada_tx", "serde", ] @@ -4288,7 +4505,7 @@ dependencies = [ "proc-macro-crate 2.0.0", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -4672,7 +4889,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -4743,7 +4960,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -4760,6 +4977,15 @@ dependencies = [ "uint", ] +[[package]] +name = "proc-macro-crate" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +dependencies = [ + "toml 0.5.11", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -4833,7 +5059,7 @@ version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c003ac8c77cb07bb74f5f198bce836a689bcd5a42574612bf14d17bfd08c20e" dependencies = [ - "bitflags 2.4.1", + "bitflags 2.5.0", "lazy_static", "num-traits", "rand 0.8.5", @@ -4855,12 +5081,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.12.4" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922" +checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a" dependencies = [ "bytes", - "prost-derive 0.12.4", + "prost-derive 0.12.3", ] [[package]] @@ -4900,15 +5126,15 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.12.4" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48" +checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e" dependencies = [ "anyhow", "itertools 0.11.0", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -4926,7 +5152,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e081b29f63d83a4bc75cfc9f3fe424f9156cf92d8a4f0c9407cce9a1b67327cf" dependencies = [ - "prost 0.12.4", + "prost 0.12.3", ] [[package]] @@ -4952,9 +5178,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.36" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" dependencies = [ "proc-macro2", ] @@ -5051,7 +5277,7 @@ version = "11.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1" dependencies = [ - "bitflags 2.4.1", + "bitflags 2.5.0", ] [[package]] @@ -5179,13 +5405,13 @@ version = "0.11.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", "bytes", "encoding_rs", "futures-core", "futures-util", "h2", - "http", + "http 0.2.9", "http-body", "hyper", "hyper-rustls", @@ -5327,7 +5553,7 @@ version = "0.38.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed" dependencies = [ - "bitflags 2.4.1", + "bitflags 2.5.0", "errno", "libc", "linux-raw-sys", @@ -5364,7 +5590,7 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ - "base64 0.21.4", + "base64 0.21.7", ] [[package]] @@ -5440,6 +5666,30 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "schemars" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29" +dependencies = [ + "dyn-clone", + "schemars_derive", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 1.0.109", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -5621,7 +5871,18 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", +] + +[[package]] +name = "serde_derive_internals" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -5653,7 +5914,7 @@ checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -5722,7 +5983,7 @@ checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -5893,7 +6154,7 @@ name = "sparse-merkle-tree" version = "0.3.1-pre" source = "git+https://github.com/heliaxdev/sparse-merkle-tree?rev=515687fe7884cb365067ac86c66ac3613de176bb#515687fe7884cb365067ac86c66ac3613de176bb" dependencies = [ - "borsh", + "borsh 1.2.1", "cfg-if 1.0.0", "ics23", "sha2 0.9.9", @@ -5946,7 +6207,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -5989,9 +6250,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.58" +version = "2.0.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687" +checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032" dependencies = [ "proc-macro2", "quote", @@ -6007,7 +6268,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -6089,7 +6350,7 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.12.4", + "prost 0.12.3", "prost-types 0.12.1", "ripemd", "serde", @@ -6191,7 +6452,7 @@ dependencies = [ "flex-error", "num-derive", "num-traits", - "prost 0.12.4", + "prost 0.12.3", "prost-types 0.12.1", "serde", "serde_bytes", @@ -6276,7 +6537,7 @@ checksum = "c8f546451eaa38373f549093fe9fd05e7d2bade739e2ddf834b9968621d60107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -6302,7 +6563,7 @@ checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -6455,7 +6716,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -6581,16 +6842,16 @@ dependencies = [ "async-stream", "async-trait", "axum", - "base64 0.21.4", + "base64 0.21.7", "bytes", "h2", - "http", + "http 0.2.9", "http-body", "hyper", "hyper-timeout", "percent-encoding", "pin-project", - "prost 0.12.4", + "prost 0.12.3", "rustls", "rustls-native-certs", "rustls-pemfile", @@ -6668,7 +6929,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] [[package]] @@ -6764,7 +7025,7 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http", + "http 0.2.9", "httparse", "log", "rand 0.8.5", @@ -6987,7 +7248,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", "wasm-bindgen-shared", ] @@ -7021,7 +7282,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -7401,5 +7662,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.58", + "syn 2.0.53", ] diff --git a/crates/relayer/Cargo.toml b/crates/relayer/Cargo.toml index 96fdf8c7b2..816eab8fd7 100644 --- a/crates/relayer/Cargo.toml +++ b/crates/relayer/Cargo.toml @@ -115,20 +115,19 @@ default-features = false [dependencies.namada_ibc] git = "https://github.com/anoma/namada" -tag = "v0.31.0" +version = "0.33.0" [dependencies.namada_parameters] git = "https://github.com/anoma/namada" -tag = "v0.31.0" +version = "0.33.0" [dependencies.namada_sdk] git = "https://github.com/anoma/namada" -tag = "v0.31.0" -features = ["std"] +version = "0.33.0" [dependencies.namada_trans_token] git = "https://github.com/anoma/namada" -tag = "v0.31.0" +version = "0.33.0" [dev-dependencies] ibc-relayer-types = { version = "0.27.0", path = "../relayer-types", features = ["mocks"] } diff --git a/crates/relayer/src/chain/namada.rs b/crates/relayer/src/chain/namada.rs index a847b5cdf1..d8d5b35871 100644 --- a/crates/relayer/src/chain/namada.rs +++ b/crates/relayer/src/chain/namada.rs @@ -34,17 +34,17 @@ use ibc_relayer_types::signer::Signer; use ibc_relayer_types::Height as ICSHeight; use namada_ibc::storage; use namada_parameters::{storage as param_storage, EpochDuration}; +use namada_sdk::address::{Address, InternalAddress}; use namada_sdk::borsh::BorshDeserialize; use namada_sdk::io::NullIo; use namada_sdk::masp::fs::FsShieldedUtils; -use namada_sdk::masp::ShieldedContext; +use namada_sdk::masp::DefaultLogger; use namada_sdk::proof_of_stake::storage_key as pos_storage_key; use namada_sdk::proof_of_stake::OwnedPosParams; use namada_sdk::queries::Client as SdkClient; use namada_sdk::state::ics23_specs::ibc_proof_specs; use namada_sdk::state::Sha256Hasher; -use namada_sdk::types::address::{Address, InternalAddress}; -use namada_sdk::types::storage::{Key, KeySeg, PrefixValue}; +use namada_sdk::storage::{Key, KeySeg, PrefixValue}; use namada_sdk::wallet::Store; use namada_sdk::wallet::Wallet; use namada_sdk::{rpc, Namada, NamadaImpl}; @@ -166,6 +166,24 @@ impl NamadaChain { .parse() .unwrap()) } + + async fn shielded_sync(&self) -> Result<(), Error> { + let mut shielded = self.ctx.shielded_mut().await; + let _ = shielded.load().await; + shielded + .fetch( + self.ctx.client(), + &DefaultLogger::new(self.ctx.io()), + None, + None, + 1, + &[], + &[], + ) + .await + .map_err(NamadaError::namada)?; + shielded.save().await.map_err(Error::io) + } } impl ChainEndpoint for NamadaChain { @@ -181,7 +199,7 @@ impl ChainEndpoint for NamadaChain { } fn config(&self) -> ChainConfig { - ChainConfig::CosmosSdk(self.config.clone()) + ChainConfig::Namada(self.config.clone()) } fn bootstrap(config: ChainConfig, rt: Arc) -> Result { @@ -202,7 +220,12 @@ impl ChainEndpoint for NamadaChain { KeyRing::new_namada(config.key_store_type, &config.id, &config.key_store_folder) .map_err(Error::key_base)?; - let shielded_ctx = ShieldedContext::::default(); + let shielded_dir = dirs_next::home_dir() + .expect("No home directory") + .join(".hermes/shielded") + .join(config.id.to_string()); + std::fs::create_dir_all(&shielded_dir).map_err(Error::io)?; + let shielded_ctx = FsShieldedUtils::new(shielded_dir); let mut store = Store::default(); let key = keybase diff --git a/crates/relayer/src/chain/namada/key.rs b/crates/relayer/src/chain/namada/key.rs index 83fe4efea0..9f8486dc52 100644 --- a/crates/relayer/src/chain/namada/key.rs +++ b/crates/relayer/src/chain/namada/key.rs @@ -1,7 +1,7 @@ use core::any::Any; -use namada_sdk::types::address::Address; -use namada_sdk::types::key::common::SecretKey; +use namada_sdk::address::Address; +use namada_sdk::key::common::SecretKey; use crate::config::AddressType; use crate::keyring::errors::Error; diff --git a/crates/relayer/src/chain/namada/query.rs b/crates/relayer/src/chain/namada/query.rs index a0fbc490d4..2d2021ee3f 100644 --- a/crates/relayer/src/chain/namada/query.rs +++ b/crates/relayer/src/chain/namada/query.rs @@ -3,12 +3,12 @@ use ibc_relayer_types::core::ics23_commitment::merkle::convert_tm_to_ics_merkle_ use ibc_relayer_types::core::ics23_commitment::merkle::MerkleProof; use ibc_relayer_types::events::IbcEvent; use ibc_relayer_types::Height as ICSHeight; -use namada_ibc::storage::{ibc_denom_key_prefix, is_ibc_denom_key}; +use namada_ibc::storage::{ibc_trace_key_prefix, is_ibc_trace_key}; +use namada_sdk::address::{Address, InternalAddress}; use namada_sdk::borsh::BorshDeserialize; use namada_sdk::queries::{Client as SdkClient, RPC}; use namada_sdk::rpc; -use namada_sdk::types::address::{Address, InternalAddress}; -use namada_sdk::types::storage::{BlockHeight, Epoch, Key, PrefixValue}; +use namada_sdk::storage::{BlockHeight, Epoch, Key, PrefixValue}; use namada_sdk::Namada; use tendermint::block::Height as TmHeight; @@ -275,12 +275,12 @@ impl NamadaChain { _ => return Err(NamadaError::denom_not_found(raw_addr).into()), }; - let prefix = ibc_denom_key_prefix(None); + let prefix = ibc_trace_key_prefix(None); let pairs = self.query_prefix(prefix)?; let pair = pairs .iter() .find(|PrefixValue { key, value: _ }| { - if let Some((_, token_hash)) = is_ibc_denom_key(key) { + if let Some((_, token_hash)) = is_ibc_trace_key(key) { token_hash == *hash } else { false diff --git a/crates/relayer/src/chain/namada/tx.rs b/crates/relayer/src/chain/namada/tx.rs index 0d7ca48171..97fab61edd 100644 --- a/crates/relayer/src/chain/namada/tx.rs +++ b/crates/relayer/src/chain/namada/tx.rs @@ -6,12 +6,27 @@ use std::time::Instant; use ibc_proto::google::protobuf::Any; use namada_parameters::storage as parameter_storage; -use namada_sdk::args::{Tx as TxArgs, TxCustom}; +use namada_sdk::address::{Address, ImplicitAddress}; +use namada_sdk::args; +use namada_sdk::args::{InputAmount, Tx as TxArgs, TxCustom}; use namada_sdk::borsh::BorshDeserialize; +use namada_sdk::borsh::BorshSerializeExt; +use namada_sdk::chain::ChainId; +use namada_sdk::ibc::apps::nft_transfer::types::packet::PacketData as NftPacketData; +use namada_sdk::ibc::apps::transfer::types::packet::PacketData; +use namada_sdk::ibc::core::channel::types::acknowledgement::AcknowledgementStatus; +use namada_sdk::ibc::core::channel::types::msgs::{ + MsgAcknowledgement as IbcMsgAcknowledgement, MsgRecvPacket as IbcMsgRecvPacket, + MsgTimeout as IbcMsgTimeout, ACKNOWLEDGEMENT_TYPE_URL, RECV_PACKET_TYPE_URL, TIMEOUT_TYPE_URL, +}; +use namada_sdk::ibc::core::host::types::identifiers::{ChannelId, PortId}; +use namada_sdk::ibc::{MsgAcknowledgement, MsgRecvPacket, MsgTimeout}; +use namada_sdk::masp::{PaymentAddress, TransferTarget}; +use namada_sdk::masp_primitives::transaction::Transaction as MaspTransaction; use namada_sdk::tx::data::GasLimit; -use namada_sdk::types::address::{Address, ImplicitAddress}; -use namada_sdk::types::chain::ChainId; use namada_sdk::{signing, tx, Namada}; +use namada_trans_token::Transfer; +use tendermint_proto::Protobuf; use tendermint_rpc::endpoint::broadcast::tx_sync::Response; use crate::chain::cosmos; @@ -27,16 +42,45 @@ const WAIT_BACKOFF: Duration = Duration::from_millis(300); impl NamadaChain { pub fn send_tx(&mut self, proto_msg: &Any) -> Result { - let mut tx_data = vec![]; - prost::Message::encode(proto_msg, &mut tx_data) - .map_err(|e| Error::protobuf_encode(String::from("Message"), e))?; + let tx_args = self.make_tx_args()?; - let chain_id = ChainId::from_str(self.config.id.as_str()).expect("invalid chain ID"); + let relayer_addr = self.get_key()?.address; + let rt = self.rt.clone(); + rt.block_on(self.submit_reveal_aux(&tx_args, &relayer_addr))?; + + let args = TxCustom { + tx: tx_args.clone(), + code_path: Some(PathBuf::from(tx::TX_IBC_WASM)), + data_path: None, + serialized_tx: None, + owner: relayer_addr.clone(), + }; + let (mut tx, signing_data) = rt + .block_on(args.build(&self.ctx)) + .map_err(NamadaError::namada)?; + self.set_tx_data(&mut tx, proto_msg)?; + rt.block_on( + self.ctx + .sign(&mut tx, &args.tx, signing_data, signing::default_sign, ()), + ) + .map_err(NamadaError::namada)?; + let tx_header_hash = tx.header_hash().to_string(); + let response = rt + .block_on(self.ctx.submit(tx, &args.tx)) + .map_err(NamadaError::namada)?; + + match response { + tx::ProcessTxResponse::Broadcast(mut response) => { + // overwrite the tx decrypted hash for the tx query + response.hash = tx_header_hash.parse().expect("invalid hash"); + Ok(response) + } + _ => unreachable!("The response type was unexpected"), + } + } - let url = &self.config().rpc_addr; - let rpc_addr = format!("{}:{}{}", url.host(), url.port(), url.path()); - let ledger_address = - tendermint_config::net::Address::from_str(&rpc_addr).expect("invalid rpc address"); + fn make_tx_args(&mut self) -> Result { + let chain_id = ChainId::from_str(self.config.id.as_str()).expect("invalid chain ID"); let fee_token = &self.config.gas_price.denom; let fee_token = Address::decode(fee_token) @@ -49,7 +93,6 @@ impl NamadaChain { let namada_key = self.get_key()?; let relayer_public_key = namada_key.secret_key.to_public(); - let relayer_addr = namada_key.address; let memo = if !self.config().memo_prefix.as_str().is_empty() { Some( @@ -63,14 +106,15 @@ impl NamadaChain { } else { None }; - let tx_args = TxArgs { + + Ok(TxArgs { dry_run: false, dry_run_wrapper: false, dump_tx: false, force: false, output_folder: None, broadcast_only: true, - ledger_address, + ledger_address: self.config().rpc_addr.clone(), initialized_account_alias: None, wallet_alias_force: false, wrapper_fee_payer: Some(relayer_public_key.clone()), @@ -87,37 +131,171 @@ impl NamadaChain { password: None, memo, use_device: false, - }; - let rt = self.rt.clone(); - rt.block_on(self.submit_reveal_aux(&tx_args, &relayer_addr))?; + }) + } - let args = TxCustom { - tx: tx_args.clone(), - code_path: Some(PathBuf::from(tx::TX_IBC_WASM)), - data_path: Some(tx_data), - serialized_tx: None, - owner: relayer_addr.clone(), + fn set_tx_data(&self, tx: &mut tx::Tx, proto_msg: &Any) -> Result<(), Error> { + // Make a new message with Namada shielded transfer + // if receiving or refunding to a shielded address + let data = match proto_msg.type_url.as_ref() { + RECV_PACKET_TYPE_URL => { + let message: IbcMsgRecvPacket = + Protobuf::decode_vec(&proto_msg.value).map_err(Error::decode)?; + self.get_shielded_transfer( + &message.packet.port_id_on_b, + &message.packet.chan_id_on_b, + &message.packet.data, + false, + )? + .map(|(transfer, masp_tx)| { + ( + MsgRecvPacket { + message, + transfer: Some(transfer), + } + .serialize_to_vec(), + masp_tx, + ) + }) + } + ACKNOWLEDGEMENT_TYPE_URL => { + let message: IbcMsgAcknowledgement = + Protobuf::decode_vec(&proto_msg.value).map_err(Error::decode)?; + let acknowledgement: AcknowledgementStatus = + serde_json::from_slice(message.acknowledgement.as_ref()).map_err(|e| { + Error::send_tx(format!("Decoding acknowledment failed: {e}")) + })?; + if acknowledgement.is_successful() { + None + } else { + // Need to refund + self.get_shielded_transfer( + &message.packet.port_id_on_b, + &message.packet.chan_id_on_a, + &message.packet.data, + true, + )? + .map(|(transfer, masp_tx)| { + ( + MsgAcknowledgement { + message, + transfer: Some(transfer), + } + .serialize_to_vec(), + masp_tx, + ) + }) + } + } + TIMEOUT_TYPE_URL => { + let message: IbcMsgTimeout = + Protobuf::decode_vec(&proto_msg.value).map_err(Error::decode)?; + self.get_shielded_transfer( + &message.packet.port_id_on_b, + &message.packet.chan_id_on_a, + &message.packet.data, + true, + )? + .map(|(transfer, masp_tx)| { + ( + MsgTimeout { + message, + transfer: Some(transfer), + } + .serialize_to_vec(), + masp_tx, + ) + }) + } + _ => None, }; - let (mut tx, signing_data) = rt - .block_on(args.build(&self.ctx)) - .map_err(NamadaError::namada)?; - rt.block_on( - self.ctx - .sign(&mut tx, &args.tx, signing_data, signing::default_sign, ()), - ) - .map_err(NamadaError::namada)?; - let decrypted_hash = tx.raw_header_hash().to_string(); - let response = rt - .block_on(self.ctx.submit(tx, &args.tx)) - .map_err(NamadaError::namada)?; - match response { - tx::ProcessTxResponse::Broadcast(mut response) => { - // overwrite the tx decrypted hash for the tx query - response.hash = decrypted_hash.parse().expect("invalid hash"); - Ok(response) - } - _ => unreachable!("The response type was unexpected"), + if let Some((tx_data, masp_tx)) = data { + tx.add_serialized_data(tx_data); + tx.add_masp_tx_section(masp_tx); + } else { + let mut tx_data = vec![]; + prost::Message::encode(proto_msg, &mut tx_data).map_err(|e| { + Error::protobuf_encode(String::from("Encoding the message failed"), e) + })?; + tx.add_serialized_data(tx_data); + } + Ok(()) + } + + fn get_shielded_transfer( + &self, + port_id: &PortId, + channel_id: &ChannelId, + packet_data: &[u8], + is_refund: bool, + ) -> Result, Error> { + let transfer = serde_json::from_slice::(packet_data) + .ok() + .and_then(|data| { + let target = if is_refund { + data.sender.as_ref() + } else { + data.receiver.as_ref() + }; + PaymentAddress::from_str(target) + .map(|payment_addr| { + ( + payment_addr, + data.token.denom.to_string(), + data.token.amount.to_string(), + ) + }) + .ok() + }) + .or(serde_json::from_slice::(packet_data) + .ok() + .and_then(|data| { + let target = if is_refund { + data.sender.as_ref() + } else { + data.receiver.as_ref() + }; + PaymentAddress::from_str(target) + .map(|payment_addr| { + let ibc_token = format!( + "{}/{}", + data.class_id, + data.token_ids + .0 + .first() + .expect("at least 1 token ID should exist") + ); + (payment_addr, ibc_token, "1".to_string()) + }) + .ok() + })); + + if let Some((receiver, token, amount)) = transfer { + self.rt.block_on(self.shielded_sync())?; + let amount = InputAmount::Unvalidated( + amount + .parse() + .map_err(|e| Error::send_tx(format!("invalid amount: {e}")))?, + ); + let args = args::GenIbcShieldedTransfer { + query: args::Query { + ledger_address: self.config().rpc_addr.clone(), + }, + output_folder: None, + target: TransferTarget::PaymentAddress(receiver), + token: token.clone(), + amount, + port_id: port_id.clone(), + channel_id: channel_id.clone(), + refund: is_refund, + }; + Ok(self + .rt + .block_on(tx::gen_ibc_shielded_transfer(&self.ctx, args)) + .map_err(NamadaError::namada)?) + } else { + Ok(None) } } diff --git a/e2e/namada-gaia-simple-transfers b/e2e/namada-gaia-simple-transfers index 64b06cd8f4..4db3655223 100755 --- a/e2e/namada-gaia-simple-transfers +++ b/e2e/namada-gaia-simple-transfers @@ -26,7 +26,7 @@ SHIELDED_ALIAS_A="shielded_a" SHIELDED_ALIAS_B="shielded_b" PAYMENT_ALIAS_A="payment_a" PAYMENT_ALIAS_B="payment_b" -NAMADA_LEDGER_ADDR="127.0.0.1:27657" +NAMADA_LEDGER_ADDR="http://127.0.0.1:27657" GAIA_CHAIN_CONFIG=" [[chains]] @@ -193,23 +193,12 @@ sleep 15 echo "==== Balances on Namada ====" ${NAMADAC} --base-dir ${base_dir} balance \ --owner relayer \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balances on Gaia ====" gaiad query bank balances ${gaia_user} - -echo "~~ Generate the proof from Namada for the following transfer ~~" -resp=$(${NAMADAC} --base-dir ${base_dir} ibc-gen-shielded \ - --output-folder-path ${base_dir} \ - --target ${payment_addr_a} \ - --token "samoleans" \ - --amount 10 \ - --port-id transfer \ - --channel-id channel-0 \ - --node ${NAMADA_LEDGER_ADDR}) -memo_path=$(echo $resp | awk '{print $8}') - echo "~~ Shielding transfer 10 samoleans from Gaia to Namada ~~" cargo run --bin hermes -- --config config_for_namada.toml \ tx ft-transfer \ @@ -221,14 +210,17 @@ cargo run --bin hermes -- --config config_for_namada.toml \ --receiver ${payment_addr_a} \ --denom samoleans \ --timeout-height-offset 1000 \ - --memo $(cat ${memo_path}) # wait for relaying -sleep 15 +sleep 40 echo "==== Balance of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} \ + --node ${NAMADA_LEDGER_ADDR} ${NAMADAC} --base-dir ${base_dir} balance \ --owner ${SHIELDED_ALIAS_A} \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balances on Gaia ====" @@ -244,13 +236,18 @@ ${NAMADAC} --base-dir ${base_dir} transfer \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balance of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} ${SHIELDED_ALIAS_B} \ + --node ${NAMADA_LEDGER_ADDR} ${NAMADAC} --base-dir ${base_dir} balance \ --owner ${SHIELDED_ALIAS_A} \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balance of shielded_b on Namada ====" ${NAMADAC} --base-dir ${base_dir} balance \ --owner ${SHIELDED_ALIAS_B} \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "~~ Transfer back 5 samoleans from Namada to Gaia ~~" @@ -264,16 +261,21 @@ ${NAMADAC} --base-dir ${base_dir} ibc-transfer \ --node ${NAMADA_LEDGER_ADDR} # wait for relaying -sleep 15 +sleep 40 echo "==== Balances of shielded_a on Namada ====" +${NAMADAC} --base-dir ${base_dir} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} ${SHIELDED_ALIAS_B} \ + --node ${NAMADA_LEDGER_ADDR} ${NAMADAC} --base-dir ${base_dir} balance \ --owner ${SHIELDED_ALIAS_A} \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balances of shielded_b on Namada ====" ${NAMADAC} --base-dir ${base_dir} balance \ --owner ${SHIELDED_ALIAS_B} \ + --show-ibc-tokens \ --node ${NAMADA_LEDGER_ADDR} echo "==== Balances on Gaia ====" diff --git a/e2e/namada-shielded-transfers b/e2e/namada-shielded-transfers index 80a047f80a..c33cddbdb1 100755 --- a/e2e/namada-shielded-transfers +++ b/e2e/namada-shielded-transfers @@ -25,8 +25,8 @@ SHIELDED_ALIAS_B_2="shielded_b_2" PAYMENT_ALIAS_A="payment_a" PAYMENT_ALIAS_B="payment_b" PAYMENT_ALIAS_B_2="payment_b_2" -LEDGER_ADDR_A="127.0.0.1:27657" -LEDGER_ADDR_B="127.0.0.1:28657" +LEDGER_ADDR_A="http://127.0.0.1:27657" +LEDGER_ADDR_B="http://127.0.0.1:28657" INITIAL_BALANCE=5000 function init_relayer_balance() { @@ -92,21 +92,14 @@ ${NAMADAC} --base-dir ${base_dir_a} transfer \ --signing-keys albert-key \ --node ${LEDGER_ADDR_A} +${NAMADAC} --base-dir ${base_dir_a} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} \ + --node ${LEDGER_ADDR_A} + echo "==== Start Hermes ====" cargo run --bin hermes -- --config config_for_namada.toml \ start > ${HERMES_DIR}/e2e/hermes.log 2>&1 & -echo "~~ Generate the proof from chain_b for the following transfer ~~" -resp=$(${NAMADAC} --base-dir ${base_dir_b} ibc-gen-shielded \ - --output-folder-path ${base_dir_b} \ - --target ${payment_addr_b} \ - --token "tnam1qyvfwdkz8zgs9n3qn9xhp8scyf8crrxwuq26r6gy" \ - --amount 100 \ - --port-id transfer \ - --channel-id channel-0 \ - --node ${LEDGER_ADDR_B}) -memo_path=$(echo $resp | awk '{print $8}') - echo "~~ Transfer 100 apfel from chain_a to chain_b ~~" ${NAMADAC} --base-dir ${base_dir_a} ibc-transfer \ --source ${SHIELDED_ALIAS_A} \ @@ -115,21 +108,28 @@ ${NAMADAC} --base-dir ${base_dir_a} ibc-transfer \ --amount 100 \ --channel-id channel-0 \ --gas-payer relayer \ - --memo-path ${memo_path} \ --node ${LEDGER_ADDR_A} # wait for relaying -sleep 15 +sleep 40 echo "==== Balances on chain A ====" +${NAMADAC} --base-dir ${base_dir_a} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} \ + --node ${LEDGER_ADDR_A} ${NAMADAC} --base-dir ${base_dir_a} balance \ --token apfel \ --owner ${SHIELDED_ALIAS_A} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_A} echo "==== Balances on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_B} \ + --node ${LEDGER_ADDR_B} ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner ${SHIELDED_ALIAS_B} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} echo "~~ Shielded transfer 50 apfel from shielded_b to shielded_b_2 ~~" @@ -142,26 +142,23 @@ ${NAMADAC} --base-dir ${base_dir_b} transfer \ --node ${LEDGER_ADDR_B} echo "==== Balance of shielded_b on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_B} \ + --node ${LEDGER_ADDR_B} ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner ${SHIELDED_ALIAS_B} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} echo "==== Balance of shielded_b_2 on chain B ====" +${NAMADAC} --base-dir ${base_dir_b} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_B_2} \ + --node ${LEDGER_ADDR_B} ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner ${SHIELDED_ALIAS_B_2} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} -echo "~~ Generate the proof from chain A for the following transfer ~~" -resp=$(${NAMADAC} --base-dir ${base_dir_a} ibc-gen-shielded \ - --output-folder-path ${base_dir_a} \ - --target ${payment_addr_a} \ - --token "transfer/channel-0/tnam1qyvfwdkz8zgs9n3qn9xhp8scyf8crrxwuq26r6gy" \ - --amount 50 \ - --port-id transfer \ - --channel-id channel-0 \ - --node ${LEDGER_ADDR_A}) -memo_path=$(echo $resp | awk '{print $8}') - echo "~~ Transfer back 50 apfel from shielded_b_2 on chain B to chain A ~~" ${NAMADAC} --base-dir ${base_dir_b} ibc-transfer \ --source ${SHIELDED_ALIAS_B_2} \ @@ -170,25 +167,30 @@ ${NAMADAC} --base-dir ${base_dir_b} ibc-transfer \ --amount 50 \ --signing-keys relayer \ --channel-id channel-0 \ - --memo-path ${memo_path} \ --node ${LEDGER_ADDR_B} # wait for relaying -sleep 15 +sleep 40 echo "==== Balances of shielded_a on chain A ====" +${NAMADAC} --base-dir ${base_dir_a} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS_A} \ + --node ${LEDGER_ADDR_A} ${NAMADAC} --base-dir ${base_dir_a} balance \ --owner ${SHIELDED_ALIAS_A} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_A} echo "==== Balances of shielded_b on chain B ====" ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner ${SHIELDED_ALIAS_B} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} echo "==== Balance of shielded_b_2 on chain B ====" ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner ${SHIELDED_ALIAS_B_2} \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} killall hermes diff --git a/e2e/namada-simple-transfers b/e2e/namada-simple-transfers index c8098d6702..93777093e0 100755 --- a/e2e/namada-simple-transfers +++ b/e2e/namada-simple-transfers @@ -19,8 +19,8 @@ NAMADAC="${NAMADA_DIR}/target/debug/namadac" NAMADAW="${NAMADA_DIR}/target/debug/namadaw" DATA_DIR="${HERMES_DIR}/data" -LEDGER_ADDR_A="127.0.0.1:27657" -LEDGER_ADDR_B="127.0.0.1:28657" +LEDGER_ADDR_A="http://127.0.0.1:27657" +LEDGER_ADDR_B="http://127.0.0.1:28657" INITIAL_BALANCE=5000 function init_relayer_balance() { @@ -114,15 +114,18 @@ echo "==== Balances on chain A ====" ${NAMADAC} --base-dir ${base_dir_a} balance \ --token apfel \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_A} echo "==== Balances on chain B ====" ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} # get token address received_token=$(${NAMADAC} --base-dir ${base_dir_b} balance \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} \ | sed -e s/://g \ | awk '$1 ~ /transfer\/channel-0/ {print $1}') @@ -157,12 +160,14 @@ echo "==== Balances on chain A ====" ${NAMADAC} --base-dir ${base_dir_a} balance \ --token apfel \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_A} echo "==== Balances on chain B ====" ${NAMADAC} --base-dir ${base_dir_b} balance \ --token ${received_token} \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} echo "==== Start Hermes ====" @@ -195,11 +200,13 @@ sleep 15 echo "==== Balances on chain A ====" ${NAMADAC} --base-dir ${base_dir_a} balance \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_A} echo "==== Balances on chain B ====" ${NAMADAC} --base-dir ${base_dir_b} balance \ --owner relayer \ + --show-ibc-tokens \ --node ${LEDGER_ADDR_B} killall hermes diff --git a/e2e/namada-stargaze-transfer b/e2e/namada-stargaze-transfer new file mode 100755 index 0000000000..ce96af7b3d --- /dev/null +++ b/e2e/namada-stargaze-transfer @@ -0,0 +1,253 @@ +#!/bin/bash + +# This script tests NFT transfers between a local Namada and Stargaze testnet +# Need to create an account and an NFT on Stargaze testnet. +# `make build` and `make build-wasm-scripts` on Namada directory, +# set up a local Namada with `scripts/setup-namada-single-node`, +# edit `config_namada_stargaze.toml` +# Then Run with `namada-stargaze-transfers ${namada_dir}` +# +# Set a key as "relayer" +# starsd keys add relayer --recover +# +# Add Stargaze key as a relayer +#cargo run -q --bin hermes -- --config config_namada_stargaze.toml \ +# keys add --chain ${STARGAZE_CHAIN_ID} --mnemonic-file /dev/stdin + +set -ex + + +NAMADA_DIR=$1 +if [ -z "${NAMADA_DIR}" ] +then + echo "ERROR: Namada directory should be given" + exit 1 +fi + +cd $(dirname $0) +HERMES_DIR=${PWD%/e2e*} + +# edit for your environment +NAMADA_CHAIN_ID="namada-test.eb0199f3257a844df8" +NAMADAC="${NAMADA_DIR}/target/debug/namadac" +NAMADAN="${NAMADA_DIR}/target/debug/namadan" +NAMADAW="${NAMADA_DIR}/target/debug/namadaw" +DATA_DIR="${HERMES_DIR}/data" +NAMADA_LEDGER_ADDR="http://127.0.0.1:27657" + +TOKEN_ID="5" + +CONFIG_FILE="${HERMES_DIR}/config_namada_stargaze.toml" + +STARGAZE_CHAIN_ID="elgafar-1" +ICS721_CONTRACT="stars1ve46fjrhcrum94c7d8yc2wsdz8cpuw73503e8qn9r44spr6dw0lsvmvtqh" +SG721_CONTRACT="stars1exh83tyv29g374yhs6cktwsd2sen50gjpuq2jhfn6p7e6nqsejfq2p0v7z" +STARGAZE_NODE="https://rpc.elgafar-1.stargaze-apis.com:443" +STARGAZE_PORT="wasm.${ICS721_CONTRACT}" + +TX_ARGS="--from relayer --node ${STARGAZE_NODE} --chain-id ${STARGAZE_CHAIN_ID} --gas auto --gas-prices 0.01ustars --gas-adjustment 1.1 -y" + +NAMADA_BASE="${DATA_DIR}/namada" +SHIELDED_ALIAS="shielded-1" +PAYMENT_ALIAS="payment-1" + +SHIELDED_ALIAS_2="shielded-2" +PAYMENT_ALIAS_2="payment-2" + +#### main #### +echo "==== Check the minted NFT on Stargaze ====" +starsd query wasm contract-state smart ${SG721_CONTRACT} \ + "{\"owner_of\": {\"token_id\": \"${TOKEN_ID}\"}}" \ + --node ${STARGAZE_NODE} + +# Create a channel +resp=$(cargo run --bin hermes -- --config ${CONFIG_FILE} \ + create channel \ + --a-chain ${NAMADA_CHAIN_ID} \ + --b-chain ${STARGAZE_CHAIN_ID} \ + --a-port nft-transfer \ + --b-port ${STARGAZE_PORT} \ + --channel-version ics721-1 \ + --new-client-connection --yes) + +namada_channel=$(echo "$resp" | grep "a_side" -A 19 | grep "channel-" | sed 's/"//g' | awk -F',' '{print $1}' | sed 's/ //g') +stargaze_channel=$(echo "$resp" | grep "b_side" -A 19 | grep "channel-" | sed 's/"//g' | awk -F',' '{print $1}' | sed 's/ //g') + +echo "==== Send the NFT from Stargaze to Namada ====" +current_height=$(starsd status --node ${STARGAZE_NODE} | jq .SyncInfo.latest_block_height | sed 's/"//g') +timeout_height=$((${current_height} + 100)) +namada_receiver=$(${NAMADAW} --base-dir ${NAMADA_BASE} find --alias relayer | awk '/"relayer":/{print $3}') +msg="{\"receiver\": \"${namada_receiver}\", \"channel_id\": \"${stargaze_channel}\", \"timeout\": {\"block\": { \"revision\": 0, \"height\": ${timeout_height}}}}" +encoded_msg=$(echo ${msg} | base64) +starsd tx wasm execute ${SG721_CONTRACT} \ + "{\"send_nft\": {\"contract\":\"${ICS721_CONTRACT}\", \"token_id\": \"${TOKEN_ID}\", \"msg\": \"${encoded_msg}\"}}" \ + ${TX_ARGS} + +sleep 5 + +echo "==== Packet relaying ====" +cargo run --bin hermes -- --config ${CONFIG_FILE} clear packets \ + --chain ${STARGAZE_CHAIN_ID} \ + --port wasm.${ICS721_CONTRACT} \ + --channel ${stargaze_channel} + +echo "==== Check the escrowed NFT on Stargaze ====" +starsd query wasm contract-state smart ${SG721_CONTRACT} \ + "{\"owner_of\": {\"token_id\": \"${TOKEN_ID}\"}}" \ + --node ${STARGAZE_NODE} + +echo "==== Check the NFT on Namada ====" +token="nft-transfer/${namada_channel}/${SG721_CONTRACT}/${TOKEN_ID}" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner relayer \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Send back the NFT from Namada to Stargaze ====" +stargaze_receiver=$(starsd keys show relayer -a) +${NAMADAC} --base-dir ${NAMADA_BASE} ibc-transfer \ + --source relayer \ + --receiver ${stargaze_receiver} \ + --token ${token}\ + --amount 1 \ + --signing-keys relayer \ + --channel-id ${namada_channel} \ + --port-id nft-transfer \ + --node ${NAMADA_LEDGER_ADDR} + +sleep 5 + +echo "==== Packet relaying ====" +cargo run --bin hermes -- --config ${CONFIG_FILE} clear packets \ + --chain ${STARGAZE_CHAIN_ID} \ + --port wasm.${ICS721_CONTRACT} \ + --channel ${stargaze_channel} + +echo "==== Check the NFT on Stargaze ====" +starsd query wasm contract-state smart ${SG721_CONTRACT} \ + "{\"owner_of\": {\"token_id\": \"${TOKEN_ID}\"}}" \ + --node ${STARGAZE_NODE} + +echo "==== Check the NFT on Namada ====" +token="nft-transfer/${namada_channel}/${SG721_CONTRACT}/${TOKEN_ID}" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner relayer \ + --node ${NAMADA_LEDGER_ADDR} + + +echo "======== Try shielded transfer ========" + +# setup shielded keys for Namada +${NAMADAW} --base-dir ${NAMADA_BASE} gen --shielded --alias ${SHIELDED_ALIAS} \ + --unsafe-dont-encrypt --alias-force +${NAMADAW} --base-dir ${NAMADA_BASE} gen-payment-addr --alias ${PAYMENT_ALIAS} \ + --key ${SHIELDED_ALIAS} +payment_addr=$(${NAMADAW} --base-dir ${NAMADA_BASE} find --alias ${PAYMENT_ALIAS} \ + | awk -v paymentAlias="${PAYMENT_ALIAS}" '{if($1 ~ paymentAlias) {print $2}}') + +# another one +${NAMADAW} --base-dir ${NAMADA_BASE} gen --shielded --alias ${SHIELDED_ALIAS_2} \ + --unsafe-dont-encrypt --alias-force +${NAMADAW} --base-dir ${NAMADA_BASE} gen-payment-addr --alias ${PAYMENT_ALIAS_2} \ + --key ${SHIELDED_ALIAS_2} +payment_addr_2=$(${NAMADAW} --base-dir ${NAMADA_BASE} find --alias ${PAYMENT_ALIAS_2} \ + | awk -v paymentAlias="${PAYMENT_ALIAS_2}" '{if($1 ~ paymentAlias) {print $2}}') + +echo "==== Shielding transfer from Stargaze to Namada ====" +current_height=$(starsd status --node ${STARGAZE_NODE} | jq .SyncInfo.latest_block_height | sed 's/"//g') +timeout_height=$((${current_height} + 100)) +msg="{\"receiver\": \"${payment_addr}\", \"channel_id\": \"${stargaze_channel}\", \"timeout\": {\"block\": { \"revision\": 0, \"height\": ${timeout_height}}}}" +encoded_msg=$(echo ${msg} | base64) +starsd tx wasm execute ${SG721_CONTRACT} \ + "{\"send_nft\": {\"contract\":\"${ICS721_CONTRACT}\", \"token_id\": \"${TOKEN_ID}\", \"msg\": \"${encoded_msg}\"}}" \ + ${TX_ARGS} + +sleep 5 + +echo "==== Packet relaying ====" +cargo run --bin hermes -- --config ${CONFIG_FILE} clear packets \ + --chain ${STARGAZE_CHAIN_ID} \ + --port wasm.${ICS721_CONTRACT} \ + --channel ${stargaze_channel} + +echo "==== Check the escrowed NFT on Stargaze ====" +starsd query wasm contract-state smart ${SG721_CONTRACT} \ + "{\"owner_of\": {\"token_id\": \"${TOKEN_ID}\"}}" \ + --node ${STARGAZE_NODE} + +echo "==== Check the NFT on Namada ====" +${NAMADAC} --base-dir ${NAMADA_BASE} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS} \ + --node ${NAMADA_LEDGER_ADDR} +token="nft-transfer/${namada_channel}/${SG721_CONTRACT}/${TOKEN_ID}" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner ${SHIELDED_ALIAS} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Shielded transfer in Namada ====" +${NAMADAC} --base-dir ${NAMADA_BASE} transfer \ + --source ${SHIELDED_ALIAS} \ + --target ${PAYMENT_ALIAS_2} \ + --token ${token}\ + --amount 1 \ + --signing-keys relayer \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Check the shielded NFT on Namada ====" +echo "== shielded-1 balance ==" +${NAMADAC} --base-dir ${NAMADA_BASE} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS} ${SHIELDED_ALIAS_2}\ + --node ${NAMADA_LEDGER_ADDR} +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner ${SHIELDED_ALIAS} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "== shielded-2 balance ==" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner ${SHIELDED_ALIAS_2} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "==== Unshielding transfer from Namada to Stargaze ====" +${NAMADAC} --base-dir ${NAMADA_BASE} ibc-transfer \ + --source ${SHIELDED_ALIAS_2} \ + --receiver ${stargaze_receiver} \ + --token ${token}\ + --amount 1 \ + --signing-keys relayer \ + --channel-id ${namada_channel} \ + --port-id nft-transfer \ + --node ${NAMADA_LEDGER_ADDR} + +sleep 5 + +echo "==== Packet relaying ====" +cargo run --bin hermes -- --config ${CONFIG_FILE} clear packets \ + --chain ${STARGAZE_CHAIN_ID} \ + --port wasm.${ICS721_CONTRACT} \ + --channel ${stargaze_channel} + +echo "==== Check the shielded NFT on Stargaze ====" +starsd query wasm contract-state smart ${SG721_CONTRACT} \ + "{\"owner_of\": {\"token_id\": \"${TOKEN_ID}\"}}" \ + --node ${STARGAZE_NODE} + +echo "==== Check the NFT on Namada ====" +${NAMADAC} --base-dir ${NAMADA_BASE} shielded-sync \ + --viewing-keys ${SHIELDED_ALIAS} \ + --node ${NAMADA_LEDGER_ADDR} +token="nft-transfer/${namada_channel}/${SG721_CONTRACT}/${TOKEN_ID}" +echo "== shielded-1 balance ==" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner ${SHIELDED_ALIAS} \ + --node ${NAMADA_LEDGER_ADDR} + +echo "== shielded-2 balance ==" +${NAMADAC} --base-dir ${NAMADA_BASE} balance \ + --token ${token} \ + --owner ${SHIELDED_ALIAS_2} \ + --node ${NAMADA_LEDGER_ADDR} diff --git a/scripts/setup-namada b/scripts/setup-namada index bed96d11ad..313a568c72 100755 --- a/scripts/setup-namada +++ b/scripts/setup-namada @@ -27,8 +27,8 @@ BASE_GENESIS_DIR="${NAMADA_DIR}/genesis/localnet" CHECKSUM_PATH="${NAMADA_DIR}/wasm/checksums.json" DATA_DIR="${HERMES_DIR}/data" -LEDGER_ADDR_A="127.0.0.1:27657" -LEDGER_ADDR_B="127.0.0.1:28657" +LEDGER_ADDR_A="http://127.0.0.1:27657" +LEDGER_ADDR_B="http://127.0.0.1:28657" HERMES_CONFIG_TEMPLATE=" [global] @@ -88,6 +88,8 @@ function make_genesis() { mkdir -p ${base_dir}/templates cp ${BASE_GENESIS_DIR}/*.toml ${base_dir}/templates sed -i .bak "s/epochs_per_year = .*/epochs_per_year = 31536/g" ${base_dir}/templates/parameters.toml + sed -i .bak "s/default_mint_limit = .*/default_mint_limit = \"1000000000\"/g" ${base_dir}/templates/parameters.toml + sed -i .bak "s/default_per_epoch_throughput_limit = .*/default_per_epoch_throughput_limit = \"1000000000\"/g" ${base_dir}/templates/parameters.toml mkdir ${base_dir}/pre-genesis cp -r ${BASE_GENESIS_DIR}/src/pre-genesis/* ${base_dir}/pre-genesis diff --git a/scripts/setup-namada-single-node b/scripts/setup-namada-single-node index 2a1e3e2ab3..50584771f2 100755 --- a/scripts/setup-namada-single-node +++ b/scripts/setup-namada-single-node @@ -23,7 +23,7 @@ BASE_GENESIS_DIR="${NAMADA_DIR}/genesis/localnet" CHECKSUM_PATH="${NAMADA_DIR}/wasm/checksums.json" DATA_DIR="${HERMES_DIR}/data" -LEDGER_ADDR="127.0.0.1:27657" +LEDGER_ADDR="http://127.0.0.1:27657" HERMES_CONFIG_TEMPLATE=" [global] @@ -71,6 +71,8 @@ function make_genesis() { mkdir -p ${base_dir}/templates cp ${BASE_GENESIS_DIR}/*.toml ${base_dir}/templates sed -i .bak "s/epochs_per_year = .*/epochs_per_year = 31536/g" ${base_dir}/templates/parameters.toml + sed -i .bak "s/default_mint_limit = .*/default_mint_limit = \"1000000000\"/g" ${base_dir}/templates/parameters.toml + sed -i .bak "s/default_per_epoch_throughput_limit = .*/default_per_epoch_throughput_limit = \"1000000000\"/g" ${base_dir}/templates/parameters.toml mkdir ${base_dir}/pre-genesis cp -r ${BASE_GENESIS_DIR}/src/pre-genesis/* ${base_dir}/pre-genesis From 280a438e1c830d7e65d26bba8da58ecb819539da Mon Sep 17 00:00:00 2001 From: yito88 Date: Sat, 13 Apr 2024 01:02:28 +0200 Subject: [PATCH 6/6] fix config deserialization --- config.toml | 2 +- crates/relayer/src/config.rs | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/config.toml b/config.toml index f45e2289cf..71a276b073 100644 --- a/config.toml +++ b/config.toml @@ -154,7 +154,7 @@ port = 5555 # Specify the chain ID. Required id = 'ibc-0' -# Specify the chain type, currently only `CosmosSdk` is supported. +# Specify the chain type, currently `CosmosSdk` and `Namada` are supported. # Default: CosmosSdk type = "CosmosSdk" diff --git a/crates/relayer/src/config.rs b/crates/relayer/src/config.rs index 37099e73a7..8603b4a25d 100644 --- a/crates/relayer/src/config.rs +++ b/crates/relayer/src/config.rs @@ -743,6 +743,9 @@ impl<'de> Deserialize<'de> for ChainConfig { "CosmosSdk" => CosmosSdkConfig::deserialize(value) .map(Self::CosmosSdk) .map_err(|e| serde::de::Error::custom(format!("invalid CosmosSdk config: {e}"))), + "Namada" => CosmosSdkConfig::deserialize(value) + .map(Self::Namada) + .map_err(|e| serde::de::Error::custom(format!("invalid Namada config: {e}"))), // // <-- Add new chain types here -->