diff --git a/Cargo.lock b/Cargo.lock index 23174f8..1a12746 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -49,9 +49,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.86" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" [[package]] name = "ark-bls12-381" @@ -140,21 +140,32 @@ dependencies = [ [[package]] name = "arrayref" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" [[package]] name = "arrayvec" -version = "0.7.4" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "async-trait" +version = "0.1.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] [[package]] name = "autocfg" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "base16ct" @@ -276,9 +287,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.5.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9ec96fe9a81b5e365f9db71fe00edc4fe4ca2cc7dcb7861f0603012a7caa210" +checksum = "d82033247fd8e890df8f740e407ad4d038debb9eb1f40533fffb32e7d17dc6f7" dependencies = [ "arrayref", "arrayvec", @@ -305,16 +316,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "block_party" -version = "0.1.0" -dependencies = [ - "getrandom", - "namada_proof_of_stake", - "namada_tx_prelude", - "rlsf", -] - [[package]] name = "bls12_381" version = "0.8.0" @@ -358,7 +359,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", "syn_derive", ] @@ -390,9 +391,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.6.1" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a12916984aab3fa6e39d655a33e09c0071eb36d6ab3aea5c2d78551f1df6d952" +checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" dependencies = [ "serde", ] @@ -408,9 +409,12 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.6" +version = "1.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aba8f4e9906c7ce3c73463f62a7f0c65183ada1a2d47e397cc8810827f9694f" +checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" +dependencies = [ + "shlex", +] [[package]] name = "cfg-if" @@ -490,31 +494,56 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "const_panic" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6051f239ecec86fde3410901ab7860d458d160371533842974fc61f96d15879b" +checksum = "013b6c2c3a14d678f38cd23994b02da3a1a1b6a5d1eedddfe63a5a5f11b13a81" [[package]] name = "constant_time_eq" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" dependencies = [ "libc", ] +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + [[package]] name = "crunchy" version = "0.2.2" @@ -600,7 +629,7 @@ checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -652,7 +681,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -740,7 +769,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", - "windows-sys", + "windows-sys 0.52.0", ] [[package]] @@ -807,9 +836,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "ff" @@ -877,12 +906,13 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" dependencies = [ "futures-channel", "futures-core", + "futures-executor", "futures-io", "futures-sink", "futures-task", @@ -891,9 +921,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" dependencies = [ "futures-core", "futures-sink", @@ -901,39 +931,66 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-executor" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-macro" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ + "futures-channel", "futures-core", + "futures-io", + "futures-macro", "futures-sink", "futures-task", + "memchr", "pin-project-lite", "pin-utils", + "slab", ] [[package]] @@ -976,6 +1033,12 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + [[package]] name = "heck" version = "0.5.0" @@ -1010,9 +1073,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -1033,8 +1096,8 @@ dependencies = [ [[package]] name = "ibc" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-apps", "ibc-clients", @@ -1046,8 +1109,8 @@ dependencies = [ [[package]] name = "ibc-app-nft-transfer" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-app-nft-transfer-types", "ibc-core", @@ -1056,8 +1119,8 @@ dependencies = [ [[package]] name = "ibc-app-nft-transfer-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "base64 0.22.1", "borsh", @@ -1077,8 +1140,8 @@ dependencies = [ [[package]] name = "ibc-app-transfer" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-app-transfer-types", "ibc-core", @@ -1087,8 +1150,8 @@ dependencies = [ [[package]] name = "ibc-app-transfer-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1105,8 +1168,8 @@ dependencies = [ [[package]] name = "ibc-apps" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-app-nft-transfer", "ibc-app-transfer", @@ -1114,8 +1177,8 @@ dependencies = [ [[package]] name = "ibc-client-tendermint" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "derive_more", "ibc-client-tendermint-types", @@ -1131,8 +1194,8 @@ dependencies = [ [[package]] name = "ibc-client-tendermint-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "displaydoc", "ibc-core-client-types", @@ -1148,8 +1211,8 @@ dependencies = [ [[package]] name = "ibc-client-wasm-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "base64 0.22.1", "displaydoc", @@ -1162,8 +1225,8 @@ dependencies = [ [[package]] name = "ibc-clients" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-client-tendermint", "ibc-client-wasm-types", @@ -1171,8 +1234,8 @@ dependencies = [ [[package]] name = "ibc-core" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -1187,8 +1250,8 @@ dependencies = [ [[package]] name = "ibc-core-channel" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-core-channel-types", "ibc-core-client", @@ -1202,8 +1265,8 @@ dependencies = [ [[package]] name = "ibc-core-channel-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1225,8 +1288,8 @@ dependencies = [ [[package]] name = "ibc-core-client" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-core-client-context", "ibc-core-client-types", @@ -1238,8 +1301,8 @@ dependencies = [ [[package]] name = "ibc-core-client-context" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "derive_more", "displaydoc", @@ -1254,8 +1317,8 @@ dependencies = [ [[package]] name = "ibc-core-client-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1274,8 +1337,8 @@ dependencies = [ [[package]] name = "ibc-core-commitment-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1293,8 +1356,8 @@ dependencies = [ [[package]] name = "ibc-core-connection" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-client-wasm-types", "ibc-core-client", @@ -1302,13 +1365,13 @@ dependencies = [ "ibc-core-handler-types", "ibc-core-host", "ibc-primitives", - "prost", + "prost 0.13.3", ] [[package]] name = "ibc-core-connection-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1328,8 +1391,8 @@ dependencies = [ [[package]] name = "ibc-core-handler" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "ibc-core-channel", "ibc-core-client", @@ -1343,8 +1406,8 @@ dependencies = [ [[package]] name = "ibc-core-handler-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1367,8 +1430,8 @@ dependencies = [ [[package]] name = "ibc-core-host" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "derive_more", "displaydoc", @@ -1385,8 +1448,8 @@ dependencies = [ [[package]] name = "ibc-core-host-cosmos" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "derive_more", "displaydoc", @@ -1408,8 +1471,8 @@ dependencies = [ [[package]] name = "ibc-core-host-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1423,8 +1486,8 @@ dependencies = [ [[package]] name = "ibc-core-router" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "derive_more", "displaydoc", @@ -1437,8 +1500,8 @@ dependencies = [ [[package]] name = "ibc-core-router-types" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", @@ -1456,25 +1519,25 @@ dependencies = [ [[package]] name = "ibc-derive" -version = "0.7.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.8.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] name = "ibc-primitives" -version = "0.53.0" -source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=0c3b3c0ab598e1e627089d06941efe0e39b61cd7#0c3b3c0ab598e1e627089d06941efe0e39b61cd7" +version = "0.54.0" +source = "git+https://github.com/heliaxdev/cosmos-ibc-rs?rev=38bd2a32f35117d4d9165a3c68c64ccd87ad56dd#38bd2a32f35117d4d9165a3c68c64ccd87ad56dd" dependencies = [ "borsh", "derive_more", "displaydoc", "ibc-proto", "parity-scale-codec", - "prost", + "prost 0.13.3", "scale-info", "schemars", "serde", @@ -1484,9 +1547,9 @@ dependencies = [ [[package]] name = "ibc-proto" -version = "0.46.0" +version = "0.47.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cb09e0b52b8a16e98ce98845e7c15b018440f3c56defa12fa44782cd66bab65" +checksum = "c852d22b782d2d793f4a646f968de419be635e02bc8798d5d74a6e44eef27733" dependencies = [ "base64 0.22.1", "borsh", @@ -1495,7 +1558,7 @@ dependencies = [ "ics23", "informalsystems-pbjson", "parity-scale-codec", - "prost", + "prost 0.13.3", "scale-info", "schemars", "serde", @@ -1505,9 +1568,9 @@ dependencies = [ [[package]] name = "ics23" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18798160736c1e368938ba6967dbcb3c7afb3256b442a5506ba5222eebb68a5a" +checksum = "73b17f1a5bd7d12ad30a21445cfa5f52fd7651cb3243ba866f9916b1ec112f12" dependencies = [ "anyhow", "blake2", @@ -1515,7 +1578,7 @@ dependencies = [ "bytes", "hex", "informalsystems-pbjson", - "prost", + "prost 0.13.3", "ripemd", "serde", "sha2 0.10.8", @@ -1602,18 +1665,18 @@ source = "git+https://github.com/heliaxdev/indexmap?tag=2.2.4-heliax-1#b5b5b547b dependencies = [ "borsh", "equivalent", - "hashbrown", + "hashbrown 0.14.5", "serde", ] [[package]] name = "indexmap" -version = "2.2.6" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown", + "hashbrown 0.15.0", ] [[package]] @@ -1662,6 +1725,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -1670,9 +1742,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.69" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ "wasm-bindgen", ] @@ -1706,9 +1778,9 @@ dependencies = [ [[package]] name = "k256" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ "cfg-if", "ecdsa", @@ -1755,9 +1827,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.155" +version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" [[package]] name = "libm" @@ -1875,10 +1947,19 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" +[[package]] +name = "nam_party" +version = "0.1.0" +dependencies = [ + "getrandom", + "namada_tx_prelude", + "rlsf", +] + [[package]] name = "namada_account" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "namada_core", @@ -1889,8 +1970,8 @@ dependencies = [ [[package]] name = "namada_controller" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", "smooth-operator", @@ -1899,8 +1980,8 @@ dependencies = [ [[package]] name = "namada_core" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "bech32", "borsh", @@ -1925,7 +2006,8 @@ dependencies = [ "num256", "num_enum", "primitive-types", - "prost-types", + "prost-types 0.13.3", + "rayon", "ripemd", "serde", "serde_json", @@ -1943,8 +2025,8 @@ dependencies = [ [[package]] name = "namada_events" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "namada_core", @@ -1957,8 +2039,8 @@ dependencies = [ [[package]] name = "namada_gas" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "namada_core", @@ -1970,8 +2052,8 @@ dependencies = [ [[package]] name = "namada_governance" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "itertools 0.12.1", @@ -1983,7 +2065,7 @@ dependencies = [ "namada_state", "namada_systems", "namada_tx", - "namada_vp", + "namada_vp_env", "serde", "serde_json", "smooth-operator", @@ -1993,8 +2075,8 @@ dependencies = [ [[package]] name = "namada_ibc" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "data-encoding", @@ -2008,12 +2090,11 @@ dependencies = [ "namada_gas", "namada_macros", "namada_state", - "namada_storage", "namada_systems", "namada_tx", "namada_vp", "primitive-types", - "prost", + "prost 0.13.3", "serde", "serde_json", "sha2 0.9.9", @@ -2024,8 +2105,8 @@ dependencies = [ [[package]] name = "namada_macros" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "data-encoding", "proc-macro2", @@ -2036,39 +2117,38 @@ dependencies = [ [[package]] name = "namada_merkle_tree" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "eyre", "ics23", "namada_core", "namada_macros", - "prost", + "prost 0.13.3", "sparse-merkle-tree", "thiserror", ] [[package]] name = "namada_parameters" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", "namada_macros", "namada_state", - "namada_storage", "namada_systems", "namada_tx", - "namada_vp", + "namada_vp_env", "smooth-operator", "thiserror", ] [[package]] name = "namada_proof_of_stake" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "itertools 0.12.1", @@ -2079,10 +2159,9 @@ dependencies = [ "namada_events", "namada_macros", "namada_state", - "namada_storage", "namada_systems", "namada_tx", - "namada_vp", + "namada_vp_env", "once_cell", "serde", "smooth-operator", @@ -2092,43 +2171,53 @@ dependencies = [ [[package]] name = "namada_replay_protection" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", ] [[package]] name = "namada_shielded_token" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ + "async-trait", "borsh", + "eyre", + "futures", + "itertools 0.12.1", "lazy_static", "masp_primitives", "masp_proofs", "namada_account", "namada_controller", "namada_core", + "namada_events", "namada_gas", + "namada_macros", "namada_state", - "namada_storage", "namada_systems", "namada_tx", - "namada_vp", + "namada_vp_env", + "rand", "rand_core", "ripemd", "serde", + "serde_json", "sha2 0.9.9", "smooth-operator", + "tempfile", "thiserror", "tracing", + "typed-builder", + "xorf", ] [[package]] name = "namada_state" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "clru", @@ -2150,12 +2239,13 @@ dependencies = [ [[package]] name = "namada_storage" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "itertools 0.12.1", "namada_core", + "namada_gas", "namada_macros", "namada_merkle_tree", "namada_replay_protection", @@ -2168,17 +2258,18 @@ dependencies = [ [[package]] name = "namada_systems" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", + "namada_events", "namada_storage", ] [[package]] name = "namada_token" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", "namada_core", @@ -2188,30 +2279,32 @@ dependencies = [ "namada_storage", "namada_systems", "namada_trans_token", + "namada_tx", + "namada_tx_env", "serde", ] [[package]] name = "namada_trans_token" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "konst", "namada_core", "namada_events", "namada_state", - "namada_storage", "namada_systems", "namada_tx", - "namada_vp", + "namada_tx_env", + "namada_vp_env", "thiserror", "tracing", ] [[package]] name = "namada_tx" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "ark-bls12-381", "bitflags", @@ -2220,14 +2313,15 @@ dependencies = [ "either", "konst", "masp_primitives", + "namada_account", "namada_core", "namada_events", "namada_gas", "namada_macros", "num-derive 0.4.2", "num-traits 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", - "prost", - "prost-types", + "prost 0.13.3", + "prost-types 0.13.3", "rand_core", "serde", "serde_json", @@ -2238,8 +2332,8 @@ dependencies = [ [[package]] name = "namada_tx_env" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", "namada_events", @@ -2248,11 +2342,10 @@ dependencies = [ [[package]] name = "namada_tx_prelude" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "borsh", - "masp_primitives", "namada_account", "namada_core", "namada_events", @@ -2262,7 +2355,7 @@ dependencies = [ "namada_macros", "namada_parameters", "namada_proof_of_stake", - "namada_storage", + "namada_state", "namada_token", "namada_tx", "namada_tx_env", @@ -2271,18 +2364,16 @@ dependencies = [ [[package]] name = "namada_vm_env" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ - "borsh", - "masp_primitives", "namada_core", ] [[package]] name = "namada_vp" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "namada_core", "namada_events", @@ -2297,13 +2388,14 @@ dependencies = [ [[package]] name = "namada_vp_env" -version = "0.43.0" -source = "git+https://github.com/anoma/namada?tag=v0.43.0#f5c3b708018c38bb8768da57ce3199a208ff9e12" +version = "0.44.1" +source = "git+https://github.com/anoma/namada?tag=v0.44.1#675e933789b94c5ad309dcf21f68ed52102aaf11" dependencies = [ "derivative", "masp_primitives", "namada_core", "namada_events", + "namada_gas", "namada_storage", "namada_tx", "smooth-operator", @@ -2373,7 +2465,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -2440,30 +2532,30 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] name = "once_cell" -version = "1.19.0" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "opaque-debug" @@ -2557,9 +2649,9 @@ dependencies = [ [[package]] name = "pest" -version = "2.7.11" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95" +checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" dependencies = [ "memchr", "thiserror", @@ -2573,7 +2665,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.2.6", + "indexmap 2.6.0", ] [[package]] @@ -2617,18 +2709,21 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] [[package]] name = "prettyplease" -version = "0.2.20" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" +checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" dependencies = [ "proc-macro2", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -2646,9 +2741,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ "toml_edit", ] @@ -2678,9 +2773,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" dependencies = [ "unicode-ident", ] @@ -2692,7 +2787,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" dependencies = [ "bytes", - "prost-derive", + "prost-derive 0.12.6", +] + +[[package]] +name = "prost" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f" +dependencies = [ + "bytes", + "prost-derive 0.13.3", ] [[package]] @@ -2709,10 +2814,10 @@ dependencies = [ "once_cell", "petgraph", "prettyplease", - "prost", - "prost-types", + "prost 0.12.6", + "prost-types 0.12.6", "regex", - "syn 2.0.72", + "syn 2.0.79", "tempfile", ] @@ -2726,7 +2831,20 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", +] + +[[package]] +name = "prost-derive" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5" +dependencies = [ + "anyhow", + "itertools 0.13.0", + "proc-macro2", + "quote", + "syn 2.0.79", ] [[package]] @@ -2735,14 +2853,23 @@ version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" dependencies = [ - "prost", + "prost 0.12.6", +] + +[[package]] +name = "prost-types" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4759aa0d3a6232fb8dbdb97b61de2c20047c68aca932c7ed76da9d788508d670" +dependencies = [ + "prost 0.13.3", ] [[package]] name = "quote" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" dependencies = [ "proc-macro2", ] @@ -2783,6 +2910,26 @@ dependencies = [ "getrandom", ] +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +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", +] + [[package]] name = "reddsa" version = "0.5.1" @@ -2816,9 +2963,9 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", "libredox", @@ -2827,9 +2974,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.10.5" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" dependencies = [ "aho-corasick", "memchr", @@ -2839,9 +2986,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" dependencies = [ "aho-corasick", "memchr", @@ -2850,9 +2997,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rfc6979" @@ -2912,15 +3059,15 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.34" +version = "0.38.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" dependencies = [ "bitflags", "errno", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.52.0", ] [[package]] @@ -2974,7 +3121,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3012,9 +3159,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.204" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] @@ -3039,13 +3186,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.204" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3056,16 +3203,17 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] name = "serde_json" -version = "1.0.120" +version = "1.0.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5" +checksum = "6dbcf9b78a125ee667ae19388837dd12294b858d101fdd393cb9d5501ef09eb2" dependencies = [ "itoa", + "memchr", "ryu", "serde", ] @@ -3078,7 +3226,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3126,7 +3274,7 @@ dependencies = [ ] [[package]] -name = "shielded_reward_party" +name = "shielding_party" version = "0.1.0" dependencies = [ "getrandom", @@ -3135,7 +3283,7 @@ dependencies = [ ] [[package]] -name = "shielding_party" +name = "shielding_rewards_party" version = "0.1.0" dependencies = [ "getrandom", @@ -3143,6 +3291,12 @@ dependencies = [ "rlsf", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "signature" version = "2.2.0" @@ -3153,6 +3307,15 @@ dependencies = [ "rand_core", ] +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + [[package]] name = "smooth-operator" version = "0.7.0" @@ -3168,13 +3331,13 @@ source = "git+https://github.com/heliaxdev/smooth-operator?tag=v0.7.0#0e182707f5 dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] name = "sparse-merkle-tree" version = "0.3.1-pre" -source = "git+https://github.com/heliaxdev/sparse-merkle-tree?rev=bab8cb96872db22cc9a139b2d3dfc4e00521d097#bab8cb96872db22cc9a139b2d3dfc4e00521d097" +source = "git+https://github.com/heliaxdev/sparse-merkle-tree?rev=a93c55ccd47840ee0967eee237e47d9245478594#a93c55ccd47840ee0967eee237e47d9245478594" dependencies = [ "borsh", "cfg-if", @@ -3198,6 +3361,7 @@ name = "staking_party" version = "0.1.0" dependencies = [ "getrandom", + "namada_proof_of_stake", "namada_tx_prelude", "rlsf", ] @@ -3255,9 +3419,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.72" +version = "2.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" dependencies = [ "proc-macro2", "quote", @@ -3273,7 +3437,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3284,21 +3448,22 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.10.1" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" dependencies = [ "cfg-if", "fastrand", + "once_cell", "rustix", - "windows-sys", + "windows-sys 0.59.0", ] [[package]] name = "tendermint" -version = "0.37.0" +version = "0.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "954496fbc9716eb4446cdd6d00c071a3e2f22578d62aa03b40c7e5b4fda3ed42" +checksum = "505d9d6ffeb83b1de47c307c6e0d2dff56c6256989299010ad03cd80a8491e97" dependencies = [ "bytes", "digest 0.10.7", @@ -3309,8 +3474,8 @@ dependencies = [ "k256", "num-traits 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell", - "prost", - "prost-types", + "prost 0.13.3", + "prost-types 0.13.3", "ripemd", "serde", "serde_bytes", @@ -3327,9 +3492,9 @@ dependencies = [ [[package]] name = "tendermint-light-client-verifier" -version = "0.37.0" +version = "0.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3848090df4502a09ee27cb1a00f1835e1111c8993b22c5e1e41ffb7f6f09d57e" +checksum = "7a2674adbf0dc51aa0c8eaf8462c7d6692ec79502713e50ed5432a442002be90" dependencies = [ "derive_more", "flex-error", @@ -3340,14 +3505,14 @@ dependencies = [ [[package]] name = "tendermint-proto" -version = "0.37.0" +version = "0.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc87024548c7f3da479885201e3da20ef29e85a3b13d04606b380ac4c7120d87" +checksum = "8ed14abe3b0502a3afe21ca74ca5cdd6c7e8d326d982c26f98a394445eb31d6e" dependencies = [ "bytes", "flex-error", - "prost", - "prost-types", + "prost 0.13.3", + "prost-types 0.13.3", "serde", "serde_bytes", "subtle-encoding", @@ -3356,22 +3521,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3430,17 +3595,17 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "toml_datetime" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fb9f64314842840f1d940ac544da178732128f1c78c21772e876579e0da1db" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" [[package]] name = "toml_edit" -version = "0.21.1" +version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.6.0", "toml_datetime", "winnow", ] @@ -3455,7 +3620,7 @@ dependencies = [ "proc-macro2", "prost-build", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3477,7 +3642,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] [[package]] @@ -3489,6 +3654,26 @@ dependencies = [ "once_cell", ] +[[package]] +name = "typed-builder" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06fbd5b8de54c5f7c91f6fe4cebb949be2125d7758e630bb58b1d831dbce600" +dependencies = [ + "typed-builder-macro", +] + +[[package]] +name = "typed-builder-macro" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9534daa9fd3ed0bd911d462a37f172228077e7abf18c18a5f67199d959205f8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "typenum" version = "1.17.0" @@ -3512,9 +3697,9 @@ checksum = "e36a83ea2b3c704935a01b4642946aadd445cea40b10935e3f8bd8052b8193d6" [[package]] name = "ucd-trie" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" [[package]] name = "uint" @@ -3530,24 +3715,24 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unicode-normalization" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" dependencies = [ "tinyvec", ] [[package]] name = "unicode-width" -version = "0.1.13" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "universal-hash" @@ -3573,34 +3758,35 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" dependencies = [ "cfg-if", + "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3608,22 +3794,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "winapi" @@ -3665,6 +3851,15 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets", +] + [[package]] name = "windows-targets" version = "0.52.6" @@ -3731,9 +3926,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.5.40" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" dependencies = [ "memchr", ] @@ -3747,6 +3942,17 @@ dependencies = [ "tap", ] +[[package]] +name = "xorf" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf24c008fe464f5d8f58b8d16a1ab7e930bd73b2a6933ff8704c414b2bed7f92" +dependencies = [ + "libm", + "rand", + "serde", +] + [[package]] name = "zcash_encoding" version = "0.2.0" @@ -3756,6 +3962,27 @@ dependencies = [ "nonempty", ] +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "zeroize" version = "1.8.1" @@ -3773,5 +4000,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.72", + "syn 2.0.79", ] diff --git a/Cargo.toml b/Cargo.toml index 47f6265..0800a4f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,17 +2,17 @@ resolver = "2" members = [ - "block_party", "staking_party", "shielding_party", - "shielding_reward_party", + "shielding_rewards_party", + "nam_party", ] default-members = [ - "block_party", "staking_party", "shielding_party", - "shielding_reward_party", + "shielding_rewards_party", + "nam_party", ] [workspace.package] @@ -22,9 +22,9 @@ license = "GPL-3.0" version = "0.1.0" [workspace.dependencies] -namada_tx_prelude = { git = "https://github.com/anoma/namada", tag = "v0.43.0" } -namada_proof_of_stake = { git = "https://github.com/anoma/namada", tag = "v0.43.0" } -namada_ibc = { git = "https://github.com/anoma/namada", tag = "v0.43.0" } +namada_tx_prelude = { git = "https://github.com/anoma/namada", tag = "v0.44.1" } +namada_proof_of_stake = { git = "https://github.com/anoma/namada", tag = "v0.44.1" } +namada_ibc = { git = "https://github.com/anoma/namada", tag = "v0.44.1" } rlsf = "0.2.1" getrandom = { version = "0.2", features = ["custom"] } lazy_static = "1.4.0" @@ -33,4 +33,4 @@ lazy_static = "1.4.0" lto = true panic = "abort" opt-level = 'z' -strip = "debuginfo" \ No newline at end of file +strip = "debuginfo" diff --git a/Earthfile b/Earthfile index 51b9684..bd29a26 100644 --- a/Earthfile +++ b/Earthfile @@ -18,7 +18,7 @@ source: COPY --keep-ts Cargo.toml Cargo.lock ./ COPY --keep-ts --chmod 755 docker/run-wasmopt.sh ./run-wasmopt.sh COPY --keep-ts --chmod 755 docker/download-wasmopt.sh ./download-wasmopt.sh - COPY --keep-ts --dir block_party shielding_party staking_party shielding_reward_party ./ + COPY --keep-ts --dir shielding_party staking_party shielding_rewards_party nam_party ./ # lint runs cargo clippy on the source code lint: diff --git a/README.md b/README.md index b8cbc35..1f7c86f 100644 --- a/README.md +++ b/README.md @@ -8,25 +8,25 @@ Namada mainnet launch is divided into [5 phases](https://namada.net/mainnet-laun Staking rewards are enabled for delegators and validators staking NAM. Public Goods Funding is enabled to support public goods in the Namada ecosystem and beyond. -The reference code can be found in [block_party folder](./block_party/). +The reference code can be found in [staking_party folder](./staking_party/). ## Staking party -> Shielding party (Phase 2 -> 3) Transparent and shielded transfers of governance-enabled IBC assets are enabled. Users can begin shielding assets in the unified shielded set. NAM transfers remain locked until phase 5 (NAM party). -The reference code can be found in [staking_party folder](./staking_party/). +The reference code can be found in [shielding_party folder](./shielding_party/). ## Shielding party -> Shielding Reward party (Phase 3 -> 4) Shielding rewards for governance-enabled IBC assets are enabled. Users begin collecting rewards for shielding assets, which protects their data and helps strengthen Namada’s unified shielded set. -The reference code can be found in [shielding_party folder](./shielding_party/). +The reference code can be found in [shielding_rewards_party folder](./shielding_rewards_party/). ## Shielding Reward party -> NAM Party (Phase 4 -> 5) When the Namada community is confident that the network is stable, NAM transfers are enabled. All key protocol functionality is now live. From here on, new features and support for new assets can continue to be added by the community via on-chain governance. -The reference code can be found in [shielding_reward_party folder](./shielding_reward_party/). +The reference code can be found in [nam_party folder](./nam_party/). # How to build To generate the wasm artifacts that can be attached to the governance proposal, run: diff --git a/block_party/src/lib.rs b/block_party/src/lib.rs deleted file mode 100644 index 5c558a5..0000000 --- a/block_party/src/lib.rs +++ /dev/null @@ -1,29 +0,0 @@ -use dec::Dec; -use namada_tx_prelude::*; - -use std::str::FromStr; - -use namada_proof_of_stake::storage::{read_pos_params, write_pos_params}; - -#[transaction] -fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { - // PoS inflation - let mut pos_params = read_pos_params::<_, governance::Store<_>>(ctx)?.owned; - pos_params.max_inflation_rate = Dec::from_str("0.1").unwrap(); - pos_params.target_staked_ratio = Dec::from_str("0.666667").unwrap(); - pos_params.rewards_gain_p = Dec::from_str("2.5").unwrap(); - pos_params.rewards_gain_d = Dec::from_str("2.5").unwrap(); - write_pos_params(ctx, &pos_params)?; - - // PGF inflation - let pgf_inflation_key = governance::pgf::storage::keys::get_pgf_inflation_rate_key(); - let pgf_inflation_rate = Dec::from_str("0.025").unwrap(); - ctx.write(&pgf_inflation_key, pgf_inflation_rate)?; - - // PGF stewards inflation - let steward_inflation_key = governance::pgf::storage::keys::get_steward_inflation_rate_key(); - let steward_inflation_rate = Dec::from_str("0.001").unwrap(); - ctx.write(&steward_inflation_key, steward_inflation_rate)?; - - Ok(()) -} diff --git a/builder/parameters/shielding-reward-party.json b/builder/parameters/nam-party.json similarity index 95% rename from builder/parameters/shielding-reward-party.json rename to builder/parameters/nam-party.json index 29baab8..a897bfc 100644 --- a/builder/parameters/shielding-reward-party.json +++ b/builder/parameters/nam-party.json @@ -11,5 +11,5 @@ "voting_start_epoch": 9, "voting_end_epoch": 18, "activation_epoch": 25, - "wasm_path": "artifacts/shielded_reward_party.wasm" + "wasm_path": "artifacts/nam_party.wasm" } \ No newline at end of file diff --git a/builder/parameters/block-party.json b/builder/parameters/shielding-rewards-party.json similarity index 87% rename from builder/parameters/block-party.json rename to builder/parameters/shielding-rewards-party.json index d885791..8122259 100644 --- a/builder/parameters/block-party.json +++ b/builder/parameters/shielding-rewards-party.json @@ -8,8 +8,8 @@ "details": "Phasellus quis sem finibus, luctus neque in, vestibulum lectus.", "requires": "-1", "author": "tnam1qxfj3sf6a0meahdu9t6znp05g8zx4dkjtgyn9gfu", - "voting_start_epoch": 6, - "voting_end_epoch": 12, - "activation_epoch": 18, - "wasm_path": "artifacts/block_party.wasm" + "voting_start_epoch": 9, + "voting_end_epoch": 18, + "activation_epoch": 25, + "wasm_path": "artifacts/shielding_rewards_party.wasm" } \ No newline at end of file diff --git a/builder/parameters/staking-party.json b/builder/parameters/staking-party.json index ec54868..a283038 100644 --- a/builder/parameters/staking-party.json +++ b/builder/parameters/staking-party.json @@ -8,8 +8,8 @@ "details": "Phasellus quis sem finibus, luctus neque in, vestibulum lectus.", "requires": "-1", "author": "tnam1qxfj3sf6a0meahdu9t6znp05g8zx4dkjtgyn9gfu", - "voting_start_epoch": 9, - "voting_end_epoch": 18, - "activation_epoch": 25, + "voting_start_epoch": 6, + "voting_end_epoch": 12, + "activation_epoch": 18, "wasm_path": "artifacts/staking_party.wasm" } \ No newline at end of file diff --git a/shielding_reward_party/Cargo.toml b/nam_party/Cargo.toml similarity index 93% rename from shielding_reward_party/Cargo.toml rename to nam_party/Cargo.toml index dc7ede5..dcdaadc 100644 --- a/shielding_reward_party/Cargo.toml +++ b/nam_party/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "shielded_reward_party" +name = "nam_party" description = "WASM transaction to transition from phase 4 to phase 5 of Namada mainnet." authors.workspace = true edition.workspace = true diff --git a/shielding_reward_party/src/lib.rs b/nam_party/src/lib.rs similarity index 79% rename from shielding_reward_party/src/lib.rs rename to nam_party/src/lib.rs index d733820..cf36be0 100644 --- a/shielding_reward_party/src/lib.rs +++ b/nam_party/src/lib.rs @@ -8,15 +8,18 @@ pub const NAM_TARGET_LOCKED_AMOUNT: u64 = 1_000_000_000; pub const KP_GAIN: &str = "120000"; pub const KD_GAIN: &str = "120000"; +pub const MIN_PROPOSAL_GRACE_EPOCHS: u64 = 8; +pub const MIN_PROPOSAL_VOTING_PERIOD: u64 = 28; + #[transaction] fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { let nam_address = ctx.get_native_token()?; - // Enable NAM transfers + // 1. Enable NAM transfers let native_token_transferable_key = parameters_storage::get_native_token_transferable_key(); ctx.write(&native_token_transferable_key, true)?; - // Enable NAM MASP rewards + // 2. Enable MASP rewards for NAM let shielded_token_last_inflation_key = token::storage_key::masp_last_inflation_key(&nam_address); let shielded_token_last_locked_amount_key = @@ -50,5 +53,12 @@ fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { ctx.write(&shielded_token_kp_gain_key, Dec::from_str(KP_GAIN).unwrap())?; ctx.write(&shielded_token_kd_gain_key, Dec::from_str(KD_GAIN).unwrap())?; + // 3. Update governance parameters + let min_proposal_grace_epochs_key = gov_storage::keys::get_min_proposal_grace_epochs_key(); + ctx.write(&min_proposal_grace_epochs_key, MIN_PROPOSAL_GRACE_EPOCHS)?; + + let min_proposal_voting_period_key = gov_storage::keys::get_min_proposal_voting_period_key(); + ctx.write(&min_proposal_voting_period_key, MIN_PROPOSAL_VOTING_PERIOD)?; + Ok(()) } diff --git a/shielding_party/Cargo.toml b/shielding_party/Cargo.toml index af9a216..e7a1c03 100644 --- a/shielding_party/Cargo.toml +++ b/shielding_party/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "shielding_party" -description = "WASM transaction to transition from phase 3 to phase 4 of Namada mainnet." +description = "WASM transaction to transition from phase 2 to phase 3 of Namada mainnet." authors.workspace = true edition.workspace = true license.workspace = true diff --git a/shielding_party/src/lib.rs b/shielding_party/src/lib.rs index 9526289..9a58976 100644 --- a/shielding_party/src/lib.rs +++ b/shielding_party/src/lib.rs @@ -1,126 +1,31 @@ -use dec::Dec; use namada_tx_prelude::*; -use std::str::FromStr; -pub type Denomination = u8; pub type ChannelId = &'static str; pub type BaseToken = &'static str; -pub type TokenMaxReward = &'static str; -pub type TokenTargetLockedAmount = u64; -pub type KpGain = &'static str; -pub type KdGain = &'static str; +pub type MintTokenLimit = token::Amount; +pub type ThroughtputTokenLimit = token::Amount; -const IBC_TOKENS: [( - Denomination, - ChannelId, - BaseToken, - TokenMaxReward, - TokenTargetLockedAmount, - KpGain, - KdGain, -); 2] = [ - ( - 0, - "channel-0", - "tnam1qrdm8ymq2svrrafzuqahm547xm4kfuw3aue93uzs", - "0.01", - 1_000_000_000, - "120000", - "120000", - ), - ( - 0, - "channel-1", - "tnam1qqx4luqsngxdmpf5nk8shkn7wwlmz6g7dckp8kgm", - "0.015", - 1_500_000_000, - "150000", - "110000", - ), -]; +const IBC_TOKENS: [(ChannelId, BaseToken, MintTokenLimit, ThroughtputTokenLimit); 1] = [( + "channel-0", + "uosmo", + MintTokenLimit::from_u64(10000000000), + ThroughtputTokenLimit::from_u64(10000000000), +)]; #[transaction] fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { - // Read the current MASP token map - let token_map_key = token::storage_key::masp_token_map_key(); - let mut token_map = ctx - .read::(&token_map_key)? - .unwrap_or_default(); - - let nam_address = ctx.get_native_token()?; - - // Add native token to token map - token_map.insert("nam".to_string(), nam_address.clone()); - - let shielded_native_token_last_inflation_key = - token::storage_key::masp_last_inflation_key(&nam_address); - let shielded_native_token_last_locked_amount_key = - token::storage_key::masp_last_locked_amount_key(&nam_address); - let shielded_native_token_max_rewards_key = - token::storage_key::masp_max_reward_rate_key(&nam_address); - let shielded_native_token_target_locked_amount_key = - token::storage_key::masp_locked_amount_target_key(&nam_address); - let shielded_native_token_kp_gain_key = token::storage_key::masp_kp_gain_key(&nam_address); - let shielded_native_token_kd_gain_key = token::storage_key::masp_kd_gain_key(&nam_address); - - // Setup native token shielded set rewards to 0 - ctx.write( - &shielded_native_token_last_inflation_key, - token::Amount::zero(), - )?; - ctx.write( - &shielded_native_token_last_locked_amount_key, - token::Amount::zero(), - )?; - ctx.write(&shielded_native_token_max_rewards_key, Dec::zero())?; - ctx.write( - &shielded_native_token_target_locked_amount_key, - token::Amount::from_uint(0, 6).unwrap(), - )?; - ctx.write(&shielded_native_token_kp_gain_key, Dec::zero())?; - ctx.write(&shielded_native_token_kd_gain_key, Dec::zero())?; - - // Enable shielded set rewards for ibc tokens - for (denomination, channel_id, base_token, max_reward, target_locked_amount, kp, kd) in - IBC_TOKENS - { + // Enable IBC deposit/withdraws limits + for (channel_id, base_token, mint_limit, throughput_limit) in IBC_TOKENS { let ibc_denom = format!("transfer/{channel_id}/{base_token}"); let token_address = ibc::ibc_token(&ibc_denom); - let shielded_token_last_inflation_key = - token::storage_key::masp_last_inflation_key(&token_address); - let shielded_token_last_locked_amount_key = - token::storage_key::masp_last_locked_amount_key(&token_address); - let shielded_token_max_rewards_key = - token::storage_key::masp_max_reward_rate_key(&token_address); - let shielded_token_target_locked_amount_key = - token::storage_key::masp_locked_amount_target_key(&token_address); - let shielded_token_kp_gain_key = token::storage_key::masp_kp_gain_key(&token_address); - let shielded_token_kd_gain_key = token::storage_key::masp_kd_gain_key(&token_address); - - // Add the ibc token to the masp token map - token_map.insert(ibc_denom, token_address); + let mint_limit_token_key = ibc::mint_limit_key(&token_address); + ctx.write(&mint_limit_token_key, mint_limit)?; - // Write the MASP inflation keys - ctx.write(&shielded_token_last_inflation_key, token::Amount::zero())?; - ctx.write( - &shielded_token_last_locked_amount_key, - token::Amount::zero(), - )?; - ctx.write( - &shielded_token_max_rewards_key, - Dec::from_str(max_reward).unwrap(), - )?; - ctx.write( - &shielded_token_target_locked_amount_key, - token::Amount::from_uint(target_locked_amount, denomination).unwrap(), - )?; - ctx.write(&shielded_token_kp_gain_key, Dec::from_str(kp).unwrap())?; - ctx.write(&shielded_token_kd_gain_key, Dec::from_str(kd).unwrap())?; + let throughput_limit_token_key = ibc::throughput_limit_key(&token_address); + ctx.write(&throughput_limit_token_key, throughput_limit)?; } - ctx.write(&token_map_key, token_map)?; - Ok(()) } diff --git a/block_party/Cargo.toml b/shielding_rewards_party/Cargo.toml similarity index 69% rename from block_party/Cargo.toml rename to shielding_rewards_party/Cargo.toml index 8c8bd01..63718d4 100644 --- a/block_party/Cargo.toml +++ b/shielding_rewards_party/Cargo.toml @@ -1,6 +1,6 @@ [package] -name = "block_party" -description = "WASM transaction to transition from phase 1 to phase 2 of Namada mainnet." +name = "shielding_rewards_party" +description = "WASM transaction to transition from phase 3 to phase 4 of Namada mainnet." authors.workspace = true edition.workspace = true license.workspace = true @@ -10,7 +10,6 @@ version.workspace = true [dependencies] namada_tx_prelude.workspace = true -namada_proof_of_stake.workspace = true rlsf.workspace = true getrandom.workspace = true diff --git a/shielding_rewards_party/src/lib.rs b/shielding_rewards_party/src/lib.rs new file mode 100644 index 0000000..cd29940 --- /dev/null +++ b/shielding_rewards_party/src/lib.rs @@ -0,0 +1,121 @@ +use dec::Dec; +use namada_tx_prelude::*; +use std::str::FromStr; +use token::storage_key::balance_key; + +pub type Denomination = u8; +pub type ChannelId = &'static str; +pub type BaseToken = &'static str; + +pub type TokenMaxReward = &'static str; +pub type TokenTargetLockedAmount = u64; +pub type KpGain = &'static str; +pub type KdGain = &'static str; + +const IBC_TOKENS: [( + Denomination, + ChannelId, + BaseToken, + TokenMaxReward, + TokenTargetLockedAmount, + KpGain, + KdGain, +); 1] = [( + 6, + "channel-0", + "uosmo", + "0.01", + 1_000_000, + "120000", + "120000", +)]; + +#[transaction] +fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { + // Read the current MASP token map + let token_map_key = token::storage_key::masp_token_map_key(); + let mut token_map = ctx + .read::(&token_map_key)? + .unwrap_or_default(); + + // let nam_address = ctx.get_native_token()?; + + // Add native token to token map + // token_map.insert("nam".to_string(), nam_address.clone()); + + // let shielded_native_token_last_inflation_key = + // token::storage_key::masp_last_inflation_key(&nam_address); + // let shielded_native_token_last_locked_amount_key = + // token::storage_key::masp_last_locked_amount_key(&nam_address); + // let shielded_native_token_max_rewards_key = + // token::storage_key::masp_max_reward_rate_key(&nam_address); + // let shielded_native_token_target_locked_amount_key = + // token::storage_key::masp_locked_amount_target_key(&nam_address); + // let shielded_native_token_kp_gain_key = token::storage_key::masp_kp_gain_key(&nam_address); + // let shielded_native_token_kd_gain_key = token::storage_key::masp_kd_gain_key(&nam_address); + + // Setup native token shielded set rewards to 0 + // ctx.write( + // &shielded_native_token_last_inflation_key, + // token::Amount::zero(), + // )?; + // ctx.write( + // &shielded_native_token_last_locked_amount_key, + // token::Amount::zero(), + // )?; + // ctx.write(&shielded_native_token_max_rewards_key, Dec::zero())?; + // ctx.write( + // &shielded_native_token_target_locked_amount_key, + // token::Amount::from_uint(0, 6).unwrap(), + // )?; + // ctx.write(&shielded_native_token_kp_gain_key, Dec::zero())?; + // ctx.write(&shielded_native_token_kd_gain_key, Dec::zero())?; + + // Enable shielded set rewards for ibc tokens + for (denomination, channel_id, base_token, max_reward, target_locked_amount, kp, kd) in + IBC_TOKENS + { + let ibc_denom = format!("transfer/{channel_id}/{base_token}"); + let token_address = ibc::ibc_token(&ibc_denom); + + let shielded_token_last_inflation_key = + token::storage_key::masp_last_inflation_key(&token_address); + let shielded_token_last_locked_amount_key = + token::storage_key::masp_last_locked_amount_key(&token_address); + let shielded_token_max_rewards_key = + token::storage_key::masp_max_reward_rate_key(&token_address); + let shielded_token_target_locked_amount_key = + token::storage_key::masp_locked_amount_target_key(&token_address); + let shielded_token_kp_gain_key = token::storage_key::masp_kp_gain_key(&token_address); + let shielded_token_kd_gain_key = token::storage_key::masp_kd_gain_key(&token_address); + + // Add the ibc token to the masp token map + token_map.insert(ibc_denom, token_address.clone()); + + // Read the current balance of the IBC token in MASP and set that as initial locked amount + let ibc_balance_key = balance_key( + &token_address, + &Address::Internal(address::InternalAddress::Masp), + ); + let current_ibc_amount = ctx.read::(&ibc_balance_key)?.unwrap(); + ctx.write(&shielded_token_last_locked_amount_key, current_ibc_amount)?; + + // Initialize the remaining MASP inflation keys + ctx.write(&shielded_token_last_inflation_key, token::Amount::zero())?; + + ctx.write( + &shielded_token_max_rewards_key, + Dec::from_str(max_reward).unwrap(), + )?; + ctx.write( + &shielded_token_target_locked_amount_key, + token::Amount::from_uint(target_locked_amount, denomination).unwrap(), + )?; + ctx.write(&shielded_token_kp_gain_key, Dec::from_str(kp).unwrap())?; + ctx.write(&shielded_token_kd_gain_key, Dec::from_str(kd).unwrap())?; + } + + ctx.write(&token_map_key, token_map)?; + + Ok(()) +} diff --git a/staking_party/Cargo.toml b/staking_party/Cargo.toml index 56ba1d6..f2fcdab 100644 --- a/staking_party/Cargo.toml +++ b/staking_party/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "staking_party" -description = "WASM transaction to transition from phase 2 to phase 3 of Namada mainnet." +description = "WASM transaction to transition from phase 1 to phase 2 of Namada mainnet." authors.workspace = true edition.workspace = true license.workspace = true @@ -10,6 +10,7 @@ version.workspace = true [dependencies] namada_tx_prelude.workspace = true +namada_proof_of_stake.workspace = true rlsf.workspace = true getrandom.workspace = true diff --git a/staking_party/src/lib.rs b/staking_party/src/lib.rs index 82d1187..bb23459 100644 --- a/staking_party/src/lib.rs +++ b/staking_party/src/lib.rs @@ -1,39 +1,29 @@ +use dec::Dec; use namada_tx_prelude::*; -pub type ChannelId = &'static str; -pub type BaseToken = &'static str; +use std::str::FromStr; -pub type MintTokenLimit = token::Amount; -pub type ThroughtputTokenLimit = token::Amount; - -const IBC_TOKENS: [(ChannelId, BaseToken, MintTokenLimit, ThroughtputTokenLimit); 2] = [ - ( - "channel-0", - "tnam1qrdm8ymq2svrrafzuqahm547xm4kfuw3aue93uzs", - MintTokenLimit::from_u64(1000), - ThroughtputTokenLimit::from_u64(10000), - ), - ( - "channel-1", - "tnam1qqx4luqsngxdmpf5nk8shkn7wwlmz6g7dckp8kgm", - MintTokenLimit::from_u64(2000), - ThroughtputTokenLimit::from_u64(13000), - ), -]; +use namada_proof_of_stake::storage::{read_pos_params, write_pos_params}; #[transaction] fn apply_tx(ctx: &mut Ctx, _tx_data: BatchedTx) -> TxResult { - // Enable IBC deposit/withdraws limits - for (channel_id, base_token, mint_limit, throughput_limit) in IBC_TOKENS { - let ibc_denom = format!("transfer/{channel_id}/{base_token}"); - let token_address = ibc::ibc_token(&ibc_denom); + // PoS inflation + let mut pos_params = read_pos_params::>(ctx)?.owned; + pos_params.max_inflation_rate = Dec::from_str("0.1").unwrap(); + pos_params.target_staked_ratio = Dec::from_str("0.4").unwrap(); + pos_params.rewards_gain_p = Dec::from_str("0.25").unwrap(); + pos_params.rewards_gain_d = Dec::from_str("0.25").unwrap(); + write_pos_params(ctx, &pos_params)?; - let mint_limit_token_key = ibc::mint_limit_key(&token_address); - ctx.write(&mint_limit_token_key, mint_limit)?; + // PGF inflation + let pgf_inflation_key = governance::pgf::storage::keys::get_pgf_inflation_rate_key(); + let pgf_inflation_rate = Dec::from_str("0.05").unwrap(); + ctx.write(&pgf_inflation_key, pgf_inflation_rate)?; - let throughput_limit_token_key = ibc::throughput_limit_key(&token_address); - ctx.write(&throughput_limit_token_key, throughput_limit)?; - } + // PGF stewards inflation + let steward_inflation_key = governance::pgf::storage::keys::get_steward_inflation_rate_key(); + let steward_inflation_rate = Dec::from_str("0.005").unwrap(); + ctx.write(&steward_inflation_key, steward_inflation_rate)?; Ok(()) }