diff --git a/.github/workflows/contracts.yaml b/.github/workflows/contracts.yaml index fac1114b..941f162e 100644 --- a/.github/workflows/contracts.yaml +++ b/.github/workflows/contracts.yaml @@ -14,7 +14,7 @@ on: type: boolean env: - RUST_VERSION: 1.68.0 + RUST_VERSION: 1.70.0 RUSTC_TARGET: 'wasm32-unknown-unknown' jobs: diff --git a/.gitignore b/.gitignore index e43975c5..7c5d199c 100644 --- a/.gitignore +++ b/.gitignore @@ -46,5 +46,6 @@ yarn-error.log* .env.production.local .env.test.local refs.terrain.tmp.json +*.env terrarium.json \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 2d124550..682eb5db 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,46 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "abstract-cw-multi-test" +version = "0.16.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "220367785f98ac307fdeac9810164678ceea454d1298aa780503e907776a892c" +dependencies = [ + "anyhow", + "cosmwasm-schema", + "cosmwasm-std", + "cw-storage-plus 1.2.0", + "cw-utils 1.0.1", + "cw20-ics20", + "derivative", + "hex", + "itertools 0.11.0", + "log", + "prost 0.11.9", + "schemars", + "serde", + "serde_json", + "sha2 0.10.6", + "sha256", + "thiserror", +] + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + [[package]] name = "ahash" version = "0.7.6" @@ -13,30 +53,262 @@ dependencies = [ "version_check", ] +[[package]] +name = "aho-corasick" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +dependencies = [ + "memchr", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + [[package]] name = "anyhow" version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" +[[package]] +name = "async-recursion" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "async-stream" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "async-trait" +version = "0.1.74" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "async-tungstenite" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0388bb7a400072bbb41ceb75d65c3baefb2ea99672fa22e85278452cd9b58b" +dependencies = [ + "futures-io", + "futures-util", + "log", + "pin-project-lite", + "rustls-native-certs 0.6.3", + "tokio", + "tokio-rustls 0.23.4", + "tungstenite", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http", + "http-body", + "hyper", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http", + "http-body", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + +[[package]] +name = "backtrace" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + +[[package]] +name = "base16" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d27c3610c36aee21ce8ac510e6224498de4228ad772a171ed65643a24693a5a8" + [[package]] name = "base16ct" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + [[package]] name = "base64" version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" + [[package]] name = "base64ct" version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b645a089122eccb6111b4f81cbc1a49f5900ac4666bb93ac027feaecf15607bf" +[[package]] +name = "bech32" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" + +[[package]] +name = "bip32" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e141fb0f8be1c7b45887af94c88b182472b57c96b56773250ae00cd6a14a164" +dependencies = [ + "bs58", + "hmac", + "k256 0.13.2", + "once_cell", + "pbkdf2 0.12.2", + "rand_core 0.6.4", + "ripemd", + "sha2 0.10.6", + "subtle", + "zeroize", +] + +[[package]] +name = "bitcoin" +version = "0.30.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1945a5048598e4189e239d3f809b19bdad4845c4b2ba400d304d2dcf26d2c462" +dependencies = [ + "bech32", + "bitcoin-private", + "bitcoin_hashes", + "hex_lit", + "secp256k1", +] + +[[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 = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" + [[package]] name = "block-buffer" version = "0.9.0" @@ -55,6 +327,27 @@ dependencies = [ "generic-array", ] +[[package]] +name = "bnum" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "128a44527fc0d6abf05f9eda748b9027536e12dff93f5acc8449f51583309350" + +[[package]] +name = "bs58" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" +dependencies = [ + "sha2 0.10.6", +] + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + [[package]] name = "byteorder" version = "1.4.3" @@ -63,9 +356,21 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.3.0" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" +dependencies = [ + "serde", +] + +[[package]] +name = "cc" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] [[package]] name = "cfg-if" @@ -73,11 +378,25 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "chrono" +version = "0.4.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "wasm-bindgen", + "windows-targets", +] + [[package]] name = "const-oid" -version = "0.9.1" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cec318a675afcb6a1ea1d4340e2d377e56e47c266f28043ceccbf4412ddfdd3b" +checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f" [[package]] name = "controller" @@ -86,7 +405,8 @@ dependencies = [ "cosmwasm-schema", "cosmwasm-std", "cw-multi-test", - "cw20", + "cw-orch", + "cw20 0.16.0", "cw721", "prost 0.11.9", "schemars", @@ -96,33 +416,93 @@ dependencies = [ "strum_macros", ] +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "cosmos-sdk-proto" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73c9d2043a9e617b0d602fbc0a0ecd621568edbf3a9774890a6d562389bd8e1c" +dependencies = [ + "prost 0.11.9", + "prost-types", + "tendermint-proto", + "tonic", +] + +[[package]] +name = "cosmrs" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af13955d6f356272e6def9ff5e2450a7650df536d8934f47052a20c76513d2f6" +dependencies = [ + "bip32", + "cosmos-sdk-proto", + "ecdsa 0.16.8", + "eyre", + "getrandom", + "k256 0.13.2", + "rand_core 0.6.4", + "serde", + "serde_json", + "subtle-encoding", + "tendermint", + "tendermint-rpc", + "thiserror", + "tokio", +] + [[package]] name = "cosmwasm-crypto" -version = "1.2.4" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b76d2207945b8aa3ce0735da53ab9a74f75fe3e7794754c216a9edfa04e1e627" +checksum = "d8bb3c77c3b7ce472056968c745eb501c440fbc07be5004eba02782c35bfbbe3" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", + "ecdsa 0.16.8", "ed25519-zebra", - "k256", + "k256 0.13.2", "rand_core 0.6.4", "thiserror", ] [[package]] name = "cosmwasm-derive" -version = "1.2.4" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dd07af7736164d2d8126dc67fdb33b1b5c54fb5a3190395c47f46d24fc6d592" +checksum = "fea73e9162e6efde00018d55ed0061e93a108b5d6ec4548b4f8ce3c706249687" dependencies = [ "syn 1.0.107", ] [[package]] name = "cosmwasm-schema" -version = "1.2.4" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e9e92cdce475a91659d0dc4d17836a484fc534e80e787281aa4adde4cb1798b" +checksum = "0df41ea55f2946b6b43579659eec048cc2f66e8c8e2e3652fc5e5e476f673856" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -133,9 +513,9 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.2.4" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69681bac3dbeb0b00990279e3ed39e3d4406b29f538b16b712f6771322a45048" +checksum = "43609e92ce1b9368aa951b334dd354a2d0dd4d484931a5f83ae10e12a26c8ba9" dependencies = [ "proc-macro2", "quote", @@ -144,11 +524,13 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.2.4" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d39f20967baeb94709123f7bba13a25ae2fa166bc5e7813f734914df3f8f6a1" +checksum = "04d6864742e3a7662d024b51a94ea81c9af21db6faea2f9a6d2232bb97c6e53e" dependencies = [ - "base64", + "base64 0.21.5", + "bech32", + "bnum", "cosmwasm-crypto", "cosmwasm-derive", "derivative", @@ -158,8 +540,8 @@ dependencies = [ "serde", "serde-json-wasm 0.5.1", "sha2 0.10.6", + "static_assertions", "thiserror", - "uint", ] [[package]] @@ -174,13 +556,22 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.5" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" +checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" dependencies = [ "libc", ] +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + [[package]] name = "crunchy" version = "0.2.2" @@ -199,6 +590,18 @@ dependencies = [ "zeroize", ] +[[package]] +name = "crypto-bigint" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.6" @@ -209,6 +612,15 @@ dependencies = [ "typenum", ] +[[package]] +name = "ct-logs" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1a816186fa68d9e426e3cb4ae4dff1fcd8e4a2c34b781bf7a822574a0d0aac8" +dependencies = [ + "sct 0.6.1", +] + [[package]] name = "curve25519-dalek" version = "3.2.0" @@ -223,35 +635,234 @@ dependencies = [ ] [[package]] -name = "cw-asset" -version = "2.4.0" +name = "curve25519-dalek" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28e955303c96778b58ad52bbbabbe10b170ae1c8df2fec08ce7d7eedf2c22701" +checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c" dependencies = [ - "cosmwasm-schema", - "cosmwasm-std", - "cw-storage-plus 0.16.0", - "cw1155", - "cw20", + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "platforms", + "rustc_version", + "subtle", + "zeroize", ] [[package]] -name = "cw-multi-test" -version = "0.16.2" +name = "curve25519-dalek-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2eb84554bbfa6b66736abcd6a9bfdf237ee0ecb83910f746dff7f799093c80a" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ - "anyhow", - "cosmwasm-std", - "cw-storage-plus 1.0.1", - "cw-utils 1.0.1", - "derivative", - "itertools", - "k256", - "prost 0.9.0", - "schemars", - "serde", - "thiserror", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "curve25519-dalek-ng" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.6.4", + "subtle-ng", + "zeroize", +] + +[[package]] +name = "cw-asset" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28e955303c96778b58ad52bbbabbe10b170ae1c8df2fec08ce7d7eedf2c22701" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-storage-plus 0.16.0", + "cw1155", + "cw20 0.16.0", +] + +[[package]] +name = "cw-controllers" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b129ca74fa41111fd2e1727426532556dc63973420343b659f5c072b85d789" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-storage-plus 1.2.0", + "cw-utils 1.0.1", + "schemars", + "serde", + "thiserror", +] + +[[package]] +name = "cw-multi-test" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2eb84554bbfa6b66736abcd6a9bfdf237ee0ecb83910f746dff7f799093c80a" +dependencies = [ + "anyhow", + "cosmwasm-std", + "cw-storage-plus 1.2.0", + "cw-utils 1.0.1", + "derivative", + "itertools 0.10.5", + "k256 0.11.6", + "prost 0.9.0", + "schemars", + "serde", + "thiserror", +] + +[[package]] +name = "cw-orch" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1b77e4e68e2822ac297cf9265f747f8e1256ebf4c370c341b459417aef4ee21" +dependencies = [ + "abstract-cw-multi-test", + "anyhow", + "cosmrs", + "cosmwasm-std", + "cw-orch-contract-derive", + "cw-orch-core", + "cw-orch-daemon", + "cw-orch-fns-derive", + "cw-orch-mock", + "cw-orch-networks", + "cw-orch-traits", + "cw-utils 1.0.1", + "log", + "schemars", + "serde", + "thiserror", + "tokio", +] + +[[package]] +name = "cw-orch-contract-derive" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "152f88fea80008fc9a214ee133c6b539e30a8d0dce56d03e61965c8dc746aa20" +dependencies = [ + "convert_case", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "cw-orch-core" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fad948ad25e5032d8422722455ccea11165cb7179ba7eea23755cb4575d20395" +dependencies = [ + "abstract-cw-multi-test", + "anyhow", + "cosmwasm-std", + "dirs", + "log", + "serde", + "serde_json", + "sha256", + "thiserror", +] + +[[package]] +name = "cw-orch-daemon" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3b27b19c80156b5e51db481e9a9a034e59449ecf74bde687b0f2e5ba73dfbb" +dependencies = [ + "abstract-cw-multi-test", + "anyhow", + "async-recursion", + "base16", + "base64 0.21.5", + "bitcoin", + "chrono", + "cosmrs", + "cosmwasm-std", + "cw-orch-core", + "cw-orch-networks", + "cw-orch-traits", + "dirs", + "ed25519-dalek", + "eyre", + "flate2", + "hex", + "hkd32", + "ibc-chain-registry", + "ibc-relayer-types", + "log", + "prost 0.11.9", + "prost-types", + "rand_core 0.6.4", + "reqwest", + "ring 0.17.5", + "ripemd", + "schemars", + "secp256k1", + "serde", + "serde_json", + "sha256", + "thiserror", + "tokio", + "tonic", +] + +[[package]] +name = "cw-orch-fns-derive" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650dd1b708742406023b51e1b49a83a91ba31f8dd653c5b6cc7d3c3c0c214bfd" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "cw-orch-mock" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "086aa0c00e709f59f83ba61c5390d89353e8ed5c7dafa9d0393dbb73fb3fa1e7" +dependencies = [ + "abstract-cw-multi-test", + "cosmwasm-std", + "cw-orch-core", + "cw-utils 1.0.1", + "serde", +] + +[[package]] +name = "cw-orch-networks" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "862eeb2fed4f7a15c3a874b44fc942f37845c86d525e2c2efb43434815807ee4" +dependencies = [ + "cw-orch-core", + "ibc-chain-registry", + "serde", +] + +[[package]] +name = "cw-orch-traits" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a5d92716089d3673ce416b7068766b33a918f55b37f2210e386f6ff4c1c1ec" +dependencies = [ + "cw-orch-core", + "prost 0.11.9", + "prost-types", ] [[package]] @@ -267,9 +878,9 @@ dependencies = [ [[package]] name = "cw-storage-plus" -version = "1.0.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053a5083c258acd68386734f428a5a171b29f7d733151ae83090c6fcc9417ffa" +checksum = "d5ff29294ee99373e2cd5fd21786a3c0ced99a52fec2ca347d565489c61b723c" dependencies = [ "cosmwasm-std", "schemars", @@ -299,7 +910,7 @@ checksum = "c80e93d1deccb8588db03945016a292c3c631e6325d349ebb35d2db6f4f946f7" dependencies = [ "cosmwasm-schema", "cosmwasm-std", - "cw2 1.0.1", + "cw2 1.1.1", "schemars", "semver", "serde", @@ -334,15 +945,16 @@ dependencies = [ [[package]] name = "cw2" -version = "1.0.1" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb70cee2cf0b4a8ff7253e6bc6647107905e8eb37208f87d54f67810faa62f8" +checksum = "9431d14f64f49e41c6ef5561ed11a5391c417d0cb16455dea8cdcb9037a8d197" dependencies = [ "cosmwasm-schema", "cosmwasm-std", - "cw-storage-plus 1.0.1", + "cw-storage-plus 1.2.0", "schemars", "serde", + "thiserror", ] [[package]] @@ -358,6 +970,38 @@ dependencies = [ "serde", ] +[[package]] +name = "cw20" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "786e9da5e937f473cecd2463e81384c1af65d0f6398bbd851be7655487c55492" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-utils 1.0.1", + "schemars", + "serde", +] + +[[package]] +name = "cw20-ics20" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3392c2c3b0f6afe736e2f236d73c6895c3d6e87804bba76e0d9de2e8f9f51f55" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-controllers", + "cw-storage-plus 1.2.0", + "cw-utils 1.0.1", + "cw2 1.1.1", + "cw20 1.1.1", + "schemars", + "semver", + "serde", + "thiserror", +] + [[package]] name = "cw721" version = "0.16.0" @@ -381,6 +1025,25 @@ dependencies = [ "zeroize", ] +[[package]] +name = "der" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] +name = "deranged" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" +dependencies = [ + "powerfmt", +] + [[package]] name = "derivative" version = "2.2.0" @@ -392,6 +1055,17 @@ dependencies = [ "syn 1.0.107", ] +[[package]] +name = "derive_more" +version = "0.99.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + [[package]] name = "digest" version = "0.9.0" @@ -403,15 +1077,43 @@ dependencies = [ [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.3", + "const-oid", "crypto-common", "subtle", ] +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + +[[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", +] + +[[package]] +name = "dotenv" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" + [[package]] name = "dyn-clone" version = "1.0.10" @@ -424,10 +1126,62 @@ version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" dependencies = [ - "der", - "elliptic-curve", - "rfc6979", - "signature", + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + +[[package]] +name = "ecdsa" +version = "0.16.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4" +dependencies = [ + "der 0.7.8", + "digest 0.10.7", + "elliptic-curve 0.13.7", + "rfc6979 0.4.0", + "signature 2.1.0", + "spki 0.7.2", +] + +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8 0.10.2", + "serde", + "signature 2.1.0", +] + +[[package]] +name = "ed25519-consensus" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" +dependencies = [ + "curve25519-dalek-ng", + "hex", + "rand_core 0.6.4", + "sha2 0.9.9", + "zeroize", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" +dependencies = [ + "curve25519-dalek 4.1.1", + "ed25519", + "serde", + "sha2 0.10.6", + "subtle", + "zeroize", ] [[package]] @@ -436,8 +1190,8 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c24f403d068ad0b359e577a77f92392118be3f3c927538f2bb544a5ecd828c6" dependencies = [ - "curve25519-dalek", - "hashbrown", + "curve25519-dalek 3.2.0", + "hashbrown 0.12.3", "hex", "rand_core 0.6.4", "serde", @@ -457,90 +1211,377 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" dependencies = [ - "base16ct", - "crypto-bigint", - "der", - "digest 0.10.6", - "ff", + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", + "digest 0.10.7", + "ff 0.12.1", "generic-array", - "group", - "pkcs8", + "group 0.12.1", + "pkcs8 0.9.0", "rand_core 0.6.4", - "sec1", + "sec1 0.3.0", "subtle", "zeroize", ] [[package]] -name = "ff" -version = "0.12.1" +name = "elliptic-curve" +version = "0.13.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +checksum = "e9775b22bc152ad86a0cf23f0f348b884b26add12bf741e7ffc4d4ab2ab4d205" dependencies = [ + "base16ct 0.2.0", + "crypto-bigint 0.5.4", + "digest 0.10.7", + "ff 0.13.0", + "generic-array", + "group 0.13.0", + "pkcs8 0.10.2", "rand_core 0.6.4", + "sec1 0.7.1", "subtle", + "zeroize", ] [[package]] -name = "forward_ref" -version = "1.0.0" +name = "encoding_rs" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8cbd1169bd7b4a0a20d92b9af7a7e0422888bd38a6f5ec29c1fd8c1558a272e" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +dependencies = [ + "cfg-if", +] [[package]] -name = "funding-account" -version = "0.1.0" +name = "env_logger" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece" dependencies = [ - "controller", - "cosmwasm-schema", - "cosmwasm-std", - "cosmwasm-storage", - "cw-asset", - "cw-multi-test", - "cw-storage-plus 0.16.0", - "cw2 0.16.0", - "cw20", - "json-codec-wasm", - "prost 0.11.9", - "schemars", - "serde", - "strum", - "strum_macros", - "thiserror", + "humantime", + "is-terminal", + "log", + "regex", + "termcolor", ] [[package]] -name = "generic-array" -version = "0.14.6" +name = "equivalent" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "erased-serde" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c" dependencies = [ - "typenum", - "version_check", + "serde", ] [[package]] -name = "getrandom" -version = "0.2.8" +name = "errno" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8" dependencies = [ - "cfg-if", "libc", - "wasi", + "windows-sys", ] [[package]] -name = "group" +name = "eyre" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c2b6b5a29c02cdc822728b7d7b8ae1bab3e3b05d44522770ddd49722eeac7eb" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "fiat-crypto" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7" + +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "static_assertions", +] + +[[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" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c606d892c9de11507fa0dcffc116434f94e105d0bbdc4e405b61519464c49d7b" +dependencies = [ + "anyhow", + "eyre", + "paste", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "forward_ref" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8cbd1169bd7b4a0a20d92b9af7a7e0422888bd38a6f5ec29c1fd8c1558a272e" + +[[package]] +name = "funding-account" +version = "0.1.0" +dependencies = [ + "controller", + "cosmwasm-schema", + "cosmwasm-std", + "cosmwasm-storage", + "cw-asset", + "cw-multi-test", + "cw-orch", + "cw-storage-plus 0.16.0", + "cw2 0.16.0", + "cw20 0.16.0", + "json-codec-wasm", + "prost 0.11.9", + "schemars", + "serde", + "strum", + "strum_macros", + "thiserror", +] + +[[package]] +name = "futures" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" + +[[package]] +name = "futures-executor" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa" + +[[package]] +name = "futures-macro" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "futures-sink" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817" + +[[package]] +name = "futures-task" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" + +[[package]] +name = "futures-util" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gimli" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + +[[package]] +name = "group" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" dependencies = [ - "ff", + "ff 0.12.1", + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff 0.13.0", "rand_core 0.6.4", "subtle", ] +[[package]] +name = "h2" +version = "0.3.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap 2.1.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + [[package]] name = "hashbrown" version = "0.12.3" @@ -550,465 +1591,2294 @@ dependencies = [ "ahash", ] +[[package]] +name = "hashbrown" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" + +[[package]] +name = "headers" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270" +dependencies = [ + "base64 0.21.5", + "bytes", + "headers-core", + "http", + "httpdate", + "mime", + "sha1", +] + +[[package]] +name = "headers-core" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" +dependencies = [ + "http", +] + [[package]] name = "heck" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" +[[package]] +name = "hermit-abi" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" + [[package]] name = "hex" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex_lit" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3011d1213f159867b13cfd6ac92d2cd5f1345762c63be3554e84092d85a50bbd" + +[[package]] +name = "hkd32" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e013a4f0b8772418eee1fc462e74017aba13c364a7b61bd3df1ddcbfe47b065" +dependencies = [ + "hmac", + "once_cell", + "pbkdf2 0.11.0", + "rand_core 0.6.4", + "sha2 0.10.6", + "subtle-encoding", + "zeroize", +] + [[package]] name = "hmac" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", +] + +[[package]] +name = "http" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2 0.4.10", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper-proxy" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca815a891b24fdfb243fa3239c86154392b0953ee584aa1a2a1f66d20cbe75cc" +dependencies = [ + "bytes", + "futures", + "headers", + "http", + "hyper", + "hyper-rustls 0.22.1", + "rustls-native-certs 0.5.0", + "tokio", + "tokio-rustls 0.22.0", + "tower-service", + "webpki 0.21.4", +] + +[[package]] +name = "hyper-rustls" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" +dependencies = [ + "ct-logs", + "futures-util", + "hyper", + "log", + "rustls 0.19.1", + "rustls-native-certs 0.5.0", + "tokio", + "tokio-rustls 0.22.0", + "webpki 0.21.4", + "webpki-roots 0.21.1", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http", + "hyper", + "rustls 0.21.9", + "tokio", + "tokio-rustls 0.24.1", +] + +[[package]] +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper", + "pin-project-lite", + "tokio", + "tokio-io-timeout", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ibc-chain-registry" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e550fe9592ad7096831442b38c45837c6385f683a55cf5eb32460e468ecddb4" +dependencies = [ + "async-trait", + "flex-error", + "futures", + "http", + "ibc-proto", + "ibc-relayer-types", + "itertools 0.10.5", + "reqwest", + "serde", + "serde_json", + "tendermint-rpc", + "tokio", + "tracing", +] + +[[package]] +name = "ibc-proto" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11c352715b36685c2543556a77091fb16af5d26257d5ce9c28e6756c1ccd71aa" +dependencies = [ + "base64 0.21.5", + "bytes", + "flex-error", + "ics23", + "prost 0.11.9", + "serde", + "subtle-encoding", + "tendermint-proto", + "tonic", +] + +[[package]] +name = "ibc-relayer-types" +version = "0.25.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fa9269c050d20b36a9e61955a5526345df1508f396f7f3a9acb4c03cdb572f3" +dependencies = [ + "bytes", + "derive_more", + "dyn-clone", + "erased-serde", + "flex-error", + "ibc-proto", + "ics23", + "itertools 0.10.5", + "num-rational", + "primitive-types", + "prost 0.11.9", + "regex", + "serde", + "serde_derive", + "serde_json", + "subtle-encoding", + "tendermint", + "tendermint-light-client-verifier", + "tendermint-proto", + "time", + "uint", +] + +[[package]] +name = "ics23" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "442d4bab37956e76f739c864f246c825d87c0bb7f9afa65660c57833c91bf6d4" +dependencies = [ + "anyhow", + "bytes", + "hex", + "informalsystems-pbjson", + "prost 0.11.9", + "ripemd", + "serde", + "sha2 0.10.6", + "sha3", +] + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +dependencies = [ + "serde", +] + +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" +dependencies = [ + "equivalent", + "hashbrown 0.14.2", +] + +[[package]] +name = "informalsystems-pbjson" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4eecd90f87bea412eac91c6ef94f6b1e390128290898cbe14f2b926787ae1fb" +dependencies = [ + "base64 0.13.1", + "serde", +] + +[[package]] +name = "interface" +version = "0.1.0" +dependencies = [ + "controller", + "cw-orch", + "funding-account", + "job-account", + "job-account-tracker", + "legacy-account", + "resolver", + "templates", + "warp-controller", + "warp-funding-account", + "warp-job-account", + "warp-job-account-tracker", + "warp-legacy-account", + "warp-resolver", + "warp-templates", +] + +[[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.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" +dependencies = [ + "hermit-abi", + "rustix", + "windows-sys", +] + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" + +[[package]] +name = "job-account" +version = "0.1.0" +dependencies = [ + "controller", + "cosmwasm-schema", + "cosmwasm-std", + "cw-multi-test", + "cw-orch", + "prost 0.11.9", + "schemars", + "serde", +] + +[[package]] +name = "job-account-tracker" +version = "0.1.0" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-multi-test", + "cw-orch", +] + +[[package]] +name = "js-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "json-codec-wasm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd1542a854cce55e7fc12c6c8c7406ace60e9e768316d37fc32e0746a60cae63" + +[[package]] +name = "k256" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b" +dependencies = [ + "cfg-if", + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2 0.10.6", +] + +[[package]] +name = "k256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b" +dependencies = [ + "cfg-if", + "ecdsa 0.16.8", + "elliptic-curve 0.13.7", + "once_cell", + "sha2 0.10.6", + "signature 2.1.0", +] + +[[package]] +name = "keccak" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "legacy-account" +version = "0.1.0" +dependencies = [ + "controller", + "cosmwasm-schema", + "cosmwasm-std", + "cw-multi-test", + "cw-orch", + "prost 0.11.9", + "schemars", + "serde", +] + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + +[[package]] +name = "libredox" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "matchit" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" + +[[package]] +name = "memchr" +version = "2.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" +dependencies = [ + "libc", + "wasi", + "windows-sys", +] + +[[package]] +name = "native-tls" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +dependencies = [ + "lazy_static", + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "num-bigint" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +dependencies = [ + "autocfg", + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" + +[[package]] +name = "opaque-debug" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" + +[[package]] +name = "openssl" +version = "0.10.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a257ad03cd8fb16ad4172fedf8094451e1af1c4b70097636ef2eac9a5f0cc33" +dependencies = [ + "bitflags 2.4.1", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-sys" +version = "0.9.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40a4130519a360279579c2053038317e40eff64d13fd3f004f9e1b72b8a6aaf9" +dependencies = [ + "cc", + "libc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets", +] + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "pbkdf2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest 0.10.7", + "hmac", +] + +[[package]] +name = "peg" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07c0b841ea54f523f7aa556956fbd293bcbe06f2e67d2eb732b7278aaf1d166a" +dependencies = [ + "peg-macros", + "peg-runtime", +] + +[[package]] +name = "peg-macros" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5aa52829b8decbef693af90202711348ab001456803ba2a98eb4ec8fb70844c" +dependencies = [ + "peg-runtime", + "proc-macro2", + "quote", +] + +[[package]] +name = "peg-runtime" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c719dcf55f09a3a7e764c6649ab594c18a177e3599c467983cdf644bfc0a4088" + +[[package]] +name = "percent-encoding" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" + +[[package]] +name = "pin-project" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs8" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +dependencies = [ + "der 0.6.1", + "spki 0.6.0", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der 0.7.8", + "spki 0.7.2", +] + +[[package]] +name = "pkg-config" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" + +[[package]] +name = "platforms" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "pretty_env_logger" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c" +dependencies = [ + "env_logger", + "log", +] + +[[package]] +name = "primitive-types" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-serde", + "uint", +] + +[[package]] +name = "proc-macro2" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "prost" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001" +dependencies = [ + "bytes", + "prost-derive 0.9.0", +] + +[[package]] +name = "prost" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" +dependencies = [ + "bytes", + "prost-derive 0.11.9", +] + +[[package]] +name = "prost-derive" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe" +dependencies = [ + "anyhow", + "itertools 0.10.5", + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "prost-derive" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" +dependencies = [ + "anyhow", + "itertools 0.10.5", + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "prost-types" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13" +dependencies = [ + "prost 0.11.9", +] + +[[package]] +name = "quote" +version = "1.0.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_users" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +dependencies = [ + "getrandom", + "libredox", + "thiserror", +] + +[[package]] +name = "regex" +version = "1.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" + +[[package]] +name = "reqwest" +version = "0.11.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" +dependencies = [ + "base64 0.21.5", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-rustls 0.24.2", + "hyper-tls", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls 0.21.9", + "rustls-pemfile", + "serde", + "serde_json", + "serde_urlencoded", + "system-configuration", + "tokio", + "tokio-native-tls", + "tokio-rustls 0.24.1", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.25.2", + "winreg", +] + +[[package]] +name = "resolver" +version = "0.1.0" +dependencies = [ + "controller", + "cosmwasm-schema", + "cosmwasm-std", + "cw-multi-test", + "cw-orch", +] + +[[package]] +name = "rfc6979" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +dependencies = [ + "crypto-bigint 0.4.9", + "hmac", + "zeroize", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + +[[package]] +name = "ring" +version = "0.16.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +dependencies = [ + "cc", + "libc", + "once_cell", + "spin 0.5.2", + "untrusted 0.7.1", + "web-sys", + "winapi", +] + +[[package]] +name = "ring" +version = "0.17.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b" +dependencies = [ + "cc", + "getrandom", + "libc", + "spin 0.9.8", + "untrusted 0.9.0", + "windows-sys", +] + +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver", +] + +[[package]] +name = "rustix" +version = "0.38.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ad981d6c340a49cdc40a1028d9c6084ec7e9fa33fcb839cab656a267071e234" +dependencies = [ + "bitflags 2.4.1", + "errno", + "libc", + "linux-raw-sys", + "windows-sys", +] + +[[package]] +name = "rustls" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" +dependencies = [ + "base64 0.13.1", + "log", + "ring 0.16.20", + "sct 0.6.1", + "webpki 0.21.4", +] + +[[package]] +name = "rustls" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" +dependencies = [ + "log", + "ring 0.16.20", + "sct 0.7.1", + "webpki 0.22.4", +] + +[[package]] +name = "rustls" +version = "0.21.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9" +dependencies = [ + "log", + "ring 0.17.5", + "rustls-webpki", + "sct 0.7.1", +] + +[[package]] +name = "rustls-native-certs" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a07b7c1885bd8ed3831c289b7870b13ef46fe0e856d288c30d9cc17d75a2092" +dependencies = [ + "openssl-probe", + "rustls 0.19.1", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64 0.21.5", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring 0.17.5", + "untrusted 0.9.0", +] + +[[package]] +name = "rustversion" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" + +[[package]] +name = "ryu" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" +dependencies = [ + "windows-sys", +] + +[[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.107", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "scripts" +version = "0.1.0" +dependencies = [ + "controller", + "cosmwasm-std", + "cw-orch", + "dotenv", + "interface", + "job-account", + "job-account-tracker", + "legacy-account", + "pretty_env_logger", + "resolver", + "templates", + "tokio", + "warp-controller", + "warp-job-account", + "warp-job-account-tracker", + "warp-legacy-account", + "warp-resolver", + "warp-templates", +] + +[[package]] +name = "sct" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" +dependencies = [ + "ring 0.16.20", + "untrusted 0.7.1", +] + +[[package]] +name = "sct" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring 0.17.5", + "untrusted 0.9.0", +] + +[[package]] +name = "sec1" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +dependencies = [ + "base16ct 0.1.1", + "der 0.6.1", + "generic-array", + "pkcs8 0.9.0", + "subtle", + "zeroize", +] + +[[package]] +name = "sec1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48518a2b5775ba8ca5b46596aae011caa431e6ce7e4a67ead66d92f08884220e" +dependencies = [ + "base16ct 0.2.0", + "der 0.7.8", + "generic-array", + "pkcs8 0.10.2", + "subtle", + "zeroize", +] + +[[package]] +name = "secp256k1" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" +dependencies = [ + "bitcoin_hashes", + "secp256k1-sys", +] + +[[package]] +name = "secp256k1-sys" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" +dependencies = [ + "cc", +] + +[[package]] +name = "security-framework" +version = "2.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" + +[[package]] +name = "serde" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde-json-wasm" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479b4dbc401ca13ee8ce902851b834893251404c4f3c65370a49e047a6be09a5" +dependencies = [ + "serde", +] + +[[package]] +name = "serde-json-wasm" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16a62a1fad1e1828b24acac8f2b468971dade7b8c3c2e672bcadefefb1f8c137" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_bytes" +version = "0.11.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_derive" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[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.107", +] + +[[package]] +name = "serde_json" +version = "1.0.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_repr" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + +[[package]] +name = "sha2" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha256" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7895c8ae88588ccead14ff438b939b0c569cd619116f14b4d13fdff7b8333386" +dependencies = [ + "async-trait", + "bytes", + "hex", + "sha2 0.10.6", + "tokio", +] + +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] + +[[package]] +name = "signal-hook-registry" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", +] + +[[package]] +name = "signature" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", ] [[package]] -name = "itertools" -version = "0.10.5" +name = "slab" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" dependencies = [ - "either", + "autocfg", ] [[package]] -name = "itoa" -version = "1.0.5" +name = "smallvec" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" [[package]] -name = "job-account" -version = "0.1.0" +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" dependencies = [ - "controller", - "cosmwasm-schema", - "cosmwasm-std", - "cw-multi-test", - "prost 0.11.9", - "schemars", - "serde", + "libc", + "winapi", ] [[package]] -name = "job-account-tracker" -version = "0.1.0" +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" dependencies = [ - "cosmwasm-schema", - "cosmwasm-std", - "cw-multi-test", + "libc", + "windows-sys", ] [[package]] -name = "json-codec-wasm" -version = "0.1.0" +name = "spin" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1542a854cce55e7fc12c6c8c7406ace60e9e768316d37fc32e0746a60cae63" +checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] -name = "k256" -version = "0.11.6" +name = "spin" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b" -dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "sha2 0.10.6", -] +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" [[package]] -name = "legacy-account" -version = "0.1.0" +name = "spki" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" dependencies = [ - "controller", - "cosmwasm-schema", - "cosmwasm-std", - "cw-multi-test", - "prost 0.11.9", - "schemars", - "serde", + "base64ct", + "der 0.6.1", ] [[package]] -name = "libc" -version = "0.2.138" +name = "spki" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8" +checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" +dependencies = [ + "base64ct", + "der 0.7.8", +] [[package]] -name = "once_cell" -version = "1.16.0" +name = "static_assertions" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] -name = "opaque-debug" -version = "0.3.0" +name = "strum" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" [[package]] -name = "pkcs8" -version = "0.9.0" +name = "strum_macros" +version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ - "der", - "spki", + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.107", ] [[package]] -name = "proc-macro2" -version = "1.0.56" +name = "subtle" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" -dependencies = [ - "unicode-ident", -] +checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] -name = "prost" -version = "0.9.0" +name = "subtle-encoding" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001" +checksum = "7dcb1ed7b8330c5eed5441052651dd7a12c75e2ed88f2ec024ae1fa3a5e59945" dependencies = [ - "bytes", - "prost-derive 0.9.0", + "zeroize", ] [[package]] -name = "prost" -version = "0.11.9" +name = "subtle-ng" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" -dependencies = [ - "bytes", - "prost-derive 0.11.9", -] +checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" [[package]] -name = "prost-derive" -version = "0.9.0" +name = "syn" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" dependencies = [ - "anyhow", - "itertools", "proc-macro2", "quote", - "syn 1.0.107", + "unicode-ident", ] [[package]] -name = "prost-derive" -version = "0.11.9" +name = "syn" +version = "2.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" dependencies = [ - "anyhow", - "itertools", "proc-macro2", "quote", - "syn 1.0.107", + "unicode-ident", ] [[package]] -name = "quote" -version = "1.0.26" +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "system-configuration" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ - "proc-macro2", + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", ] [[package]] -name = "rand_core" -version = "0.5.1" +name = "system-configuration-sys" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] [[package]] -name = "rand_core" -version = "0.6.4" +name = "tempfile" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" dependencies = [ - "getrandom", + "cfg-if", + "fastrand", + "redox_syscall", + "rustix", + "windows-sys", ] [[package]] -name = "resolver" +name = "templates" version = "0.1.0" dependencies = [ "controller", "cosmwasm-schema", "cosmwasm-std", "cw-multi-test", + "cw-orch", + "resolver", ] [[package]] -name = "rfc6979" -version = "0.3.1" +name = "tendermint" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +checksum = "3f0a7d05cf78524782337f8edd55cbc578d159a16ad4affe2135c92f7dbac7f0" dependencies = [ - "crypto-bigint", - "hmac", + "bytes", + "digest 0.10.7", + "ed25519", + "ed25519-consensus", + "flex-error", + "futures", + "k256 0.13.2", + "num-traits", + "once_cell", + "prost 0.11.9", + "prost-types", + "ripemd", + "serde", + "serde_bytes", + "serde_json", + "serde_repr", + "sha2 0.10.6", + "signature 2.1.0", + "subtle", + "subtle-encoding", + "tendermint-proto", + "time", "zeroize", ] [[package]] -name = "rustversion" -version = "1.0.11" +name = "tendermint-config" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" +checksum = "71a72dbbea6dde12045d261f2c70c0de039125675e8a026c8d5ad34522756372" +dependencies = [ + "flex-error", + "serde", + "serde_json", + "tendermint", + "toml", + "url", +] [[package]] -name = "ryu" -version = "1.0.12" +name = "tendermint-light-client-verifier" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" +checksum = "9875dce5c1b08201152eb0860f8fb1dce96c53e37532c310ffc4956d20f90def" +dependencies = [ + "derive_more", + "flex-error", + "serde", + "tendermint", + "time", +] [[package]] -name = "schemars" -version = "0.8.11" +name = "tendermint-proto" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a5fb6c61f29e723026dc8e923d94c694313212abbecbbe5f55a7748eec5b307" +checksum = "c0cec054567d16d85e8c3f6a3139963d1a66d9d3051ed545d31562550e9bcc3d" dependencies = [ - "dyn-clone", - "schemars_derive", + "bytes", + "flex-error", + "num-derive", + "num-traits", + "prost 0.11.9", + "prost-types", + "serde", + "serde_bytes", + "subtle-encoding", + "time", +] + +[[package]] +name = "tendermint-rpc" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d119d83a130537fc4a98c3c9eb6899ebe857fea4860400a61675bfb5f0b35129" +dependencies = [ + "async-trait", + "async-tungstenite", + "bytes", + "flex-error", + "futures", + "getrandom", + "http", + "hyper", + "hyper-proxy", + "hyper-rustls 0.22.1", + "peg", + "pin-project", + "semver", "serde", + "serde_bytes", "serde_json", + "subtle", + "subtle-encoding", + "tendermint", + "tendermint-config", + "tendermint-proto", + "thiserror", + "time", + "tokio", + "tracing", + "url", + "uuid", + "walkdir", ] [[package]] -name = "schemars_derive" -version = "0.8.11" +name = "termcolor" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f188d036977451159430f3b8dc82ec76364a42b7e289c2b18a9a18f4470058e9" +checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "serde_derive_internals", - "syn 1.0.107", + "syn 2.0.39", ] [[package]] -name = "sec1" -version = "0.3.0" +name = "time" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", + "deranged", + "powerfmt", + "serde", + "time-core", + "time-macros", ] [[package]] -name = "semver" -version = "1.0.16" +name = "time-core" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] -name = "serde" -version = "1.0.160" +name = "time-macros" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2f3770c8bce3bcda7e149193a069a0f4365bda1fa5cd88e03bca26afc1216c" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" dependencies = [ - "serde_derive", + "time-core", ] [[package]] -name = "serde-json-wasm" -version = "0.4.1" +name = "tinyvec" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479b4dbc401ca13ee8ce902851b834893251404c4f3c65370a49e047a6be09a5" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" dependencies = [ - "serde", + "tinyvec_macros", ] [[package]] -name = "serde-json-wasm" -version = "0.5.1" +name = "tinyvec_macros" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16a62a1fad1e1828b24acac8f2b468971dade7b8c3c2e672bcadefefb1f8c137" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" dependencies = [ - "serde", + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2 0.5.5", + "tokio-macros", + "windows-sys", ] [[package]] -name = "serde_derive" -version = "1.0.160" +name = "tokio-io-timeout" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291a097c63d8497e00160b166a967a4a79c64f3facdd01cbd7502231688d77df" +checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.15", + "pin-project-lite", + "tokio", ] [[package]] -name = "serde_derive_internals" -version = "0.26.0" +name = "tokio-macros" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 2.0.39", ] [[package]] -name = "serde_json" -version = "1.0.91" +name = "tokio-native-tls" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" dependencies = [ - "itoa", - "ryu", - "serde", + "native-tls", + "tokio", ] [[package]] -name = "sha2" -version = "0.9.9" +name = "tokio-rustls" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", + "rustls 0.19.1", + "tokio", + "webpki 0.21.4", ] [[package]] -name = "sha2" -version = "0.10.6" +name = "tokio-rustls" +version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.6", + "rustls 0.20.9", + "tokio", + "webpki 0.22.4", +] + +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls 0.21.9", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", ] [[package]] -name = "signature" -version = "1.6.4" +name = "tokio-util" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" dependencies = [ - "digest 0.10.6", - "rand_core 0.6.4", + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", + "tracing", ] [[package]] -name = "spki" -version = "0.6.0" +name = "toml" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" dependencies = [ - "base64ct", - "der", + "serde", ] [[package]] -name = "static_assertions" -version = "1.1.0" +name = "tonic" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +checksum = "3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a" +dependencies = [ + "async-stream", + "async-trait", + "axum", + "base64 0.21.5", + "bytes", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-timeout", + "percent-encoding", + "pin-project", + "prost 0.11.9", + "rustls-native-certs 0.6.3", + "rustls-pemfile", + "tokio", + "tokio-rustls 0.24.1", + "tokio-stream", + "tower", + "tower-layer", + "tower-service", + "tracing", +] [[package]] -name = "strum" -version = "0.24.1" +name = "tower" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand", + "slab", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] [[package]] -name = "strum_macros" -version = "0.24.3" +name = "tower-layer" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 1.0.107", -] +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] -name = "subtle" -version = "2.4.1" +name = "tower-service" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] -name = "syn" -version = "1.0.107" +name = "tracing" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", + "pin-project-lite", + "tracing-attributes", + "tracing-core", ] [[package]] -name = "syn" -version = "2.0.15" +name = "tracing-attributes" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "unicode-ident", + "syn 2.0.39", ] [[package]] -name = "templates" -version = "0.1.0" +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ - "controller", - "cosmwasm-schema", - "cosmwasm-std", - "cw-multi-test", - "resolver", + "once_cell", ] [[package]] -name = "thiserror" -version = "1.0.38" +name = "try-lock" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" -dependencies = [ - "thiserror-impl", -] +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] -name = "thiserror-impl" -version = "1.0.38" +name = "tungstenite" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +checksum = "30ee6ab729cd4cf0fd55218530c4522ed30b7b6081752839b68fcec8d0960788" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.107", + "base64 0.13.1", + "byteorder", + "bytes", + "http", + "httparse", + "log", + "rand", + "rustls 0.20.9", + "sha1", + "thiserror", + "url", + "utf-8", + "webpki 0.22.4", ] [[package]] @@ -1029,12 +3899,74 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "unicode-bidi" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" + [[package]] name = "unicode-ident" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + +[[package]] +name = "untrusted" +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.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "uuid" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + [[package]] name = "version_check" version = "0.9.4" @@ -1042,48 +3974,69 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" [[package]] -name = "warp-account" +name = "walkdir" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "warp-controller" version = "0.1.0" dependencies = [ - "base64", + "base64 0.13.1", "controller", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", + "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", - "cw721", - "funding-account", + "cw20 0.16.0", + "job-account", + "job-account-tracker", "json-codec-wasm", - "prost 0.11.9", + "legacy-account", + "resolver", "schemars", "serde-json-wasm 0.4.1", "thiserror", ] [[package]] -name = "warp-controller" +name = "warp-funding-account" version = "0.1.0" dependencies = [ - "base64", + "base64 0.13.1", "controller", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", - "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", - "job-account", - "job-account-tracker", + "cw20 0.16.0", + "cw721", + "funding-account", "json-codec-wasm", - "legacy-account", - "resolver", + "prost 0.11.9", "schemars", "serde-json-wasm 0.4.1", "thiserror", @@ -1094,17 +4047,18 @@ name = "warp-job-account" version = "0.1.0" dependencies = [ "anyhow", - "base64", + "base64 0.13.1", "controller", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", + "cw20 0.16.0", "cw721", "job-account", "json-codec-wasm", @@ -1119,16 +4073,17 @@ name = "warp-job-account-tracker" version = "0.1.0" dependencies = [ "anyhow", - "base64", + "base64 0.13.1", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", + "cw20 0.16.0", "cw721", "job-account-tracker", "json-codec-wasm", @@ -1143,17 +4098,18 @@ name = "warp-legacy-account" version = "0.1.0" dependencies = [ "anyhow", - "base64", + "base64 0.13.1", "controller", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", + "cw20 0.16.0", "cw721", "json-codec-wasm", "legacy-account", @@ -1167,17 +4123,18 @@ dependencies = [ name = "warp-resolver" version = "0.1.0" dependencies = [ - "base64", + "base64 0.13.1", "controller", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", "cw-utils 0.16.0", "cw2 0.16.0", - "cw20", + "cw20 0.16.0", "cw721", "json-codec-wasm", "resolver", @@ -1190,15 +4147,16 @@ dependencies = [ name = "warp-templates" version = "0.1.0" dependencies = [ - "base64", + "base64 0.13.1", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", "cw-asset", "cw-multi-test", + "cw-orch", "cw-storage-plus 0.16.0", "cw2 0.16.0", - "cw20", + "cw20 0.16.0", "cw721", "json-codec-wasm", "resolver", @@ -1214,8 +4172,249 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasm-bindgen" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b" + +[[package]] +name = "web-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki" +version = "0.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" +dependencies = [ + "ring 0.16.20", + "untrusted 0.7.1", +] + +[[package]] +name = "webpki" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed63aea5ce73d0ff405984102c42de94fc55a6b75765d621c65262469b3c9b53" +dependencies = [ + "ring 0.17.5", + "untrusted 0.9.0", +] + +[[package]] +name = "webpki-roots" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aabe153544e473b775453675851ecc86863d2a81d786d741f6b76778f2a48940" +dependencies = [ + "webpki 0.21.4", +] + +[[package]] +name = "webpki-roots" +version = "0.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys", +] + [[package]] name = "zeroize" version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c394b5bd0c6f669e7275d9c20aa90ae064cb22e75a1cad54e1b34088034b149f" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] diff --git a/Cargo.toml b/Cargo.toml index 26538d8d..077400d8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,8 @@ [workspace] members = [ "contracts/*", - "packages/*" + "packages/*", + "scripts" ] exclude = [ ] diff --git a/contracts/warp-controller/Cargo.toml b/contracts/warp-controller/Cargo.toml index 8e2000f8..fd7487b5 100644 --- a/contracts/warp-controller/Cargo.toml +++ b/contracts/warp-controller/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -48,6 +49,7 @@ schemars = "0.8" thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-controller/src/contract.rs b/contracts/warp-controller/src/contract.rs index e2c16c1e..24fafc7e 100644 --- a/contracts/warp-controller/src/contract.rs +++ b/contracts/warp-controller/src/contract.rs @@ -1,6 +1,6 @@ use cosmwasm_std::{ - entry_point, to_binary, Binary, Deps, DepsMut, Env, MessageInfo, Reply, Response, StdResult, - Uint64, + entry_point, to_json_binary, Binary, Deps, DepsMut, Env, MessageInfo, Reply, Response, + StdResult, Uint64, }; use cw_utils::{must_pay, nonpayable}; @@ -151,21 +151,23 @@ pub fn execute( #[cfg_attr(not(feature = "library"), entry_point)] pub fn query(deps: Deps, env: Env, msg: QueryMsg) -> StdResult { match msg { - QueryMsg::QueryJob(data) => to_binary(&query::job::query_job(deps, env, data)?), - QueryMsg::QueryJobs(data) => to_binary(&query::job::query_jobs(deps, env, data)?), + QueryMsg::QueryJob(data) => to_json_binary(&query::job::query_job(deps, env, data)?), + QueryMsg::QueryJobs(data) => to_json_binary(&query::job::query_jobs(deps, env, data)?), // For job account, please query it via the account tracker contract QueryMsg::QueryLegacyAccount(data) => { - to_binary(&query::account::query_legacy_account(deps, env, data)?) + to_json_binary(&query::account::query_legacy_account(deps, env, data)?) } QueryMsg::QueryLegacyAccounts(data) => { - to_binary(&query::account::query_legacy_accounts(deps, env, data)?) + to_json_binary(&query::account::query_legacy_accounts(deps, env, data)?) } QueryMsg::QueryConfig(data) => { - to_binary(&query::controller::query_config(deps, env, data)?) + to_json_binary(&query::controller::query_config(deps, env, data)?) + } + QueryMsg::QueryState(data) => { + to_json_binary(&query::controller::query_state(deps, env, data)?) } - QueryMsg::QueryState(data) => to_binary(&query::controller::query_state(deps, env, data)?), } } diff --git a/contracts/warp-controller/src/execute/job.rs b/contracts/warp-controller/src/execute/job.rs index a529226b..8987abe7 100644 --- a/contracts/warp-controller/src/execute/job.rs +++ b/contracts/warp-controller/src/execute/job.rs @@ -6,8 +6,8 @@ use controller::job::{ CreateJobMsg, DeleteJobMsg, EvictJobMsg, ExecuteJobMsg, Execution, Job, JobStatus, UpdateJobMsg, }; use cosmwasm_std::{ - to_binary, Attribute, Coin, CosmosMsg, DepsMut, Env, MessageInfo, ReplyOn, Response, StdResult, - SubMsg, Uint128, Uint64, WasmMsg, + to_json_binary, Attribute, Coin, CosmosMsg, DepsMut, Env, MessageInfo, ReplyOn, Response, + StdResult, SubMsg, Uint128, Uint64, WasmMsg, }; use crate::{ @@ -389,7 +389,7 @@ pub fn execute_job( id: data.id.u64(), msg: CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: job.account.to_string(), - msg: to_binary(&job_account::ExecuteMsg::WarpMsgs(WarpMsgs { + msg: to_json_binary(&job_account::ExecuteMsg::WarpMsgs(WarpMsgs { msgs: deps.querier.query_wasm_smart( config.resolver_address, &resolver::QueryMsg::QueryHydrateMsgs(QueryHydrateMsgsMsg { diff --git a/contracts/warp-controller/src/migrate/job_account.rs b/contracts/warp-controller/src/migrate/job_account.rs index c972be54..906543ce 100644 --- a/contracts/warp-controller/src/migrate/job_account.rs +++ b/contracts/warp-controller/src/migrate/job_account.rs @@ -1,4 +1,4 @@ -use cosmwasm_std::{to_binary, Deps, Env, MessageInfo, Response, WasmMsg}; +use cosmwasm_std::{to_json_binary, Deps, Env, MessageInfo, Response, WasmMsg}; use crate::ContractError; use controller::{Config, MigrateJobAccountsMsg}; @@ -31,7 +31,7 @@ pub fn migrate_free_job_accounts( migration_msgs.push(WasmMsg::Migrate { contract_addr: job_account.addr.to_string(), new_code_id: msg.warp_job_account_code_id.u64(), - msg: to_binary(&MigrateMsg {})?, + msg: to_json_binary(&MigrateMsg {})?, }); } @@ -63,7 +63,7 @@ pub fn migrate_taken_job_accounts( migration_msgs.push(WasmMsg::Migrate { contract_addr: job_account.addr.to_string(), new_code_id: msg.warp_job_account_code_id.u64(), - msg: to_binary(&MigrateMsg {})?, + msg: to_json_binary(&MigrateMsg {})?, }); } diff --git a/contracts/warp-controller/src/migrate/legacy_account.rs b/contracts/warp-controller/src/migrate/legacy_account.rs index c7c7baf0..0e2999d4 100644 --- a/contracts/warp-controller/src/migrate/legacy_account.rs +++ b/contracts/warp-controller/src/migrate/legacy_account.rs @@ -1,4 +1,4 @@ -use cosmwasm_std::{to_binary, DepsMut, MessageInfo, Order, Response, WasmMsg}; +use cosmwasm_std::{to_json_binary, DepsMut, MessageInfo, Order, Response, WasmMsg}; use cw_storage_plus::Bound; use crate::{state::LEGACY_ACCOUNTS, ContractError}; @@ -32,7 +32,7 @@ pub fn migrate_legacy_accounts( migration_msgs.push(WasmMsg::Migrate { contract_addr: account_address.to_string(), new_code_id: msg.warp_legacy_account_code_id.u64(), - msg: to_binary(&legacy_account::MigrateMsg {})?, + msg: to_json_binary(&legacy_account::MigrateMsg {})?, }) } diff --git a/contracts/warp-controller/src/util/msg.rs b/contracts/warp-controller/src/util/msg.rs index 214d7596..6884cf17 100644 --- a/contracts/warp-controller/src/util/msg.rs +++ b/contracts/warp-controller/src/util/msg.rs @@ -1,4 +1,4 @@ -use cosmwasm_std::{to_binary, BankMsg, Coin, CosmosMsg, Uint128, Uint64, WasmMsg}; +use cosmwasm_std::{to_json_binary, BankMsg, Coin, CosmosMsg, Uint128, Uint64, WasmMsg}; use controller::account::{ AssetInfo, CwFund, FundTransferMsgs, TransferFromMsg, TransferNftMsg, WarpMsg, WarpMsgs, @@ -20,7 +20,7 @@ pub fn build_instantiate_warp_account_msg( CosmosMsg::Wasm(WasmMsg::Instantiate { admin: Some(admin_addr), code_id, - msg: to_binary(&job_account::InstantiateMsg { + msg: to_json_binary(&job_account::InstantiateMsg { owner: account_owner.clone(), job_id, native_funds: native_funds.clone(), @@ -41,7 +41,7 @@ pub fn build_free_account_msg( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: job_account_tracker_addr, - msg: to_binary(&job_account_tracker::ExecuteMsg::FreeAccount( + msg: to_json_binary(&job_account_tracker::ExecuteMsg::FreeAccount( FreeAccountMsg { account_owner_addr, account_addr, @@ -61,7 +61,7 @@ pub fn build_taken_account_msg( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: job_account_tracker_addr, - msg: to_binary(&job_account_tracker::ExecuteMsg::TakeAccount( + msg: to_json_binary(&job_account_tracker::ExecuteMsg::TakeAccount( TakeAccountMsg { account_owner_addr, account_addr, @@ -81,7 +81,7 @@ pub fn build_transfer_cw20_msg( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: cw20_token_contract_addr, - msg: to_binary(&FundTransferMsgs::TransferFrom(TransferFromMsg { + msg: to_json_binary(&FundTransferMsgs::TransferFrom(TransferFromMsg { owner: owner_addr, recipient: recipient_addr, amount, @@ -98,7 +98,7 @@ pub fn build_transfer_cw721_msg( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: cw721_token_contract_addr, - msg: to_binary(&FundTransferMsgs::TransferNft(TransferNftMsg { + msg: to_json_binary(&FundTransferMsgs::TransferNft(TransferNftMsg { recipient: recipient_addr, token_id, })) @@ -123,7 +123,7 @@ pub fn build_account_execute_generic_msgs( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: account_addr, - msg: to_binary(&job_account::ExecuteMsg::Generic(GenericMsg { + msg: to_json_binary(&job_account::ExecuteMsg::Generic(GenericMsg { msgs: cosmos_msgs_for_account_to_execute, })) .unwrap(), @@ -137,7 +137,7 @@ pub fn build_account_execute_warp_msgs( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: account_addr, - msg: to_binary(&job_account::ExecuteMsg::WarpMsgs(WarpMsgs { + msg: to_json_binary(&job_account::ExecuteMsg::WarpMsgs(WarpMsgs { msgs: warp_msgs_for_account_to_execute, })) .unwrap(), @@ -151,7 +151,7 @@ pub fn build_account_withdraw_assets_msg( ) -> CosmosMsg { CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: account_addr, - msg: to_binary(&job_account::ExecuteMsg::WithdrawAssets( + msg: to_json_binary(&job_account::ExecuteMsg::WithdrawAssets( WithdrawAssetsMsg { asset_infos: assets_to_withdraw, }, diff --git a/contracts/warp-funding-account/Cargo.toml b/contracts/warp-funding-account/Cargo.toml index 415cb322..a82f161d 100644 --- a/contracts/warp-funding-account/Cargo.toml +++ b/contracts/warp-funding-account/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp-account" +name = "warp-funding-account" version = "0.1.0" authors = ["Terra Money "] edition = "2021" @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -46,6 +47,7 @@ thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" prost = "0.11.9" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-funding-account/examples/warp-funding-account-schema.rs b/contracts/warp-funding-account/examples/warp-funding-account-schema.rs index 1f9d1db8..9c7694a1 100644 --- a/contracts/warp-funding-account/examples/warp-funding-account-schema.rs +++ b/contracts/warp-funding-account/examples/warp-funding-account-schema.rs @@ -1,10 +1,7 @@ use std::env::current_dir; use std::fs::create_dir_all; -use controller::{ - account::{FundingAccountResponse, FundingAccountsResponse}, - job::{JobResponse, JobsResponse}, -}; +use controller::job::{JobResponse, JobsResponse}; use cosmwasm_schema::{export_schema, remove_schemas, schema_for}; use funding_account::{Config, ExecuteMsg, InstantiateMsg}; @@ -19,6 +16,4 @@ fn main() { export_schema(&schema_for!(Config), &out_dir); export_schema(&schema_for!(JobResponse), &out_dir); export_schema(&schema_for!(JobsResponse), &out_dir); - export_schema(&schema_for!(FundingAccountResponse), &out_dir); - export_schema(&schema_for!(FundingAccountsResponse), &out_dir); } diff --git a/contracts/warp-funding-account/src/contract.rs b/contracts/warp-funding-account/src/contract.rs index 344c01ce..9fc6c61c 100644 --- a/contracts/warp-funding-account/src/contract.rs +++ b/contracts/warp-funding-account/src/contract.rs @@ -2,7 +2,7 @@ use crate::state::CONFIG; use crate::ContractError; use controller::account::execute_warp_msgs; use cosmwasm_std::{ - entry_point, to_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, + entry_point, to_json_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, }; use funding_account::{Config, ExecuteMsg, InstantiateMsg, MigrateMsg, QueryMsg}; @@ -49,7 +49,7 @@ pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { match msg { QueryMsg::Config => { let config = CONFIG.load(deps.storage)?; - to_binary(&config) + to_json_binary(&config) } } } diff --git a/contracts/warp-funding-account/src/tests.rs b/contracts/warp-funding-account/src/tests.rs index 71af730f..32546432 100644 --- a/contracts/warp-funding-account/src/tests.rs +++ b/contracts/warp-funding-account/src/tests.rs @@ -3,7 +3,7 @@ use crate::ContractError; use controller::account::{WarpMsg, WarpMsgs}; use cosmwasm_std::testing::{mock_dependencies, mock_env, mock_info}; use cosmwasm_std::{ - to_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, + to_json_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, IbcTimeoutBlock, Response, StakingMsg, Uint128, VoteOption, WasmMsg, }; use funding_account::{ExecuteMsg, InstantiateMsg}; @@ -27,7 +27,7 @@ fn test_execute_controller() { msgs: vec![ WarpMsg::Generic(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -84,7 +84,7 @@ fn test_execute_controller() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -149,7 +149,7 @@ fn test_execute_owner() { msgs: vec![ WarpMsg::Generic(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -208,7 +208,7 @@ fn test_execute_owner() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -273,7 +273,7 @@ fn test_execute_unauth() { msgs: vec![ WarpMsg::Generic(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), diff --git a/contracts/warp-job-account-tracker/Cargo.toml b/contracts/warp-job-account-tracker/Cargo.toml index ac23a59f..45c7af52 100644 --- a/contracts/warp-job-account-tracker/Cargo.toml +++ b/contracts/warp-job-account-tracker/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -46,6 +47,7 @@ thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" prost = "0.11.9" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-job-account-tracker/src/contract.rs b/contracts/warp-job-account-tracker/src/contract.rs index 2563b660..884fa7ec 100644 --- a/contracts/warp-job-account-tracker/src/contract.rs +++ b/contracts/warp-job-account-tracker/src/contract.rs @@ -1,7 +1,7 @@ use crate::state::CONFIG; use crate::{execute, query, ContractError}; use cosmwasm_std::{ - entry_point, to_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, + entry_point, to_json_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, }; use cw_utils::nonpayable; use job_account_tracker::{Config, ExecuteMsg, InstantiateMsg, MigrateMsg, QueryMsg}; @@ -58,15 +58,15 @@ pub fn execute( #[cfg_attr(not(feature = "library"), entry_point)] pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { match msg { - QueryMsg::QueryConfig(_) => to_binary(&query::account::query_config(deps)?), + QueryMsg::QueryConfig(_) => to_json_binary(&query::account::query_config(deps)?), QueryMsg::QueryTakenAccounts(data) => { - to_binary(&query::account::query_taken_accounts(deps, data)?) + to_json_binary(&query::account::query_taken_accounts(deps, data)?) } QueryMsg::QueryFreeAccounts(data) => { - to_binary(&query::account::query_free_accounts(deps, data)?) + to_json_binary(&query::account::query_free_accounts(deps, data)?) } QueryMsg::QueryFirstFreeAccount(data) => { - to_binary(&query::account::query_first_free_account(deps, data)?) + to_json_binary(&query::account::query_first_free_account(deps, data)?) } } } diff --git a/contracts/warp-job-account/Cargo.toml b/contracts/warp-job-account/Cargo.toml index 9cefbc9d..fc0c076d 100644 --- a/contracts/warp-job-account/Cargo.toml +++ b/contracts/warp-job-account/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -47,6 +48,7 @@ thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" prost = "0.11.9" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-job-account/src/contract.rs b/contracts/warp-job-account/src/contract.rs index ad429fcf..de02b008 100644 --- a/contracts/warp-job-account/src/contract.rs +++ b/contracts/warp-job-account/src/contract.rs @@ -4,7 +4,7 @@ use controller::account::{ execute_warp_msgs, ibc_transfer, warp_msgs_to_cosmos_msgs, withdraw_assets, }; use cosmwasm_std::{ - entry_point, to_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, + entry_point, to_json_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdResult, }; use cw_utils::nonpayable; use job_account::{Config, ExecuteMsg, InstantiateMsg, MigrateMsg, QueryMsg}; @@ -69,7 +69,7 @@ pub fn execute( #[cfg_attr(not(feature = "library"), entry_point)] pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { match msg { - QueryMsg::QueryConfig(_) => to_binary(&query::account::query_config(deps)?), + QueryMsg::QueryConfig(_) => to_json_binary(&query::account::query_config(deps)?), } } diff --git a/contracts/warp-job-account/src/tests.rs b/contracts/warp-job-account/src/tests.rs index 5775661e..1ea033ef 100644 --- a/contracts/warp-job-account/src/tests.rs +++ b/contracts/warp-job-account/src/tests.rs @@ -2,7 +2,7 @@ use crate::contract::{execute, instantiate}; use crate::ContractError; use cosmwasm_std::testing::{mock_dependencies, mock_env, mock_info}; use cosmwasm_std::{ - to_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, + to_json_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, IbcTimeoutBlock, Response, StakingMsg, Uint128, Uint64, VoteOption, WasmMsg, }; use job_account::{ExecuteMsg, GenericMsg, InstantiateMsg}; @@ -30,7 +30,7 @@ fn test_execute_controller() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -85,7 +85,7 @@ fn test_execute_controller() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -155,7 +155,7 @@ fn test_execute_owner() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -212,7 +212,7 @@ fn test_execute_owner() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -282,7 +282,7 @@ fn test_execute_unauth() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), diff --git a/contracts/warp-legacy-account/Cargo.toml b/contracts/warp-legacy-account/Cargo.toml index b4350b67..b32d0021 100644 --- a/contracts/warp-legacy-account/Cargo.toml +++ b/contracts/warp-legacy-account/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -47,6 +48,7 @@ thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" prost = "0.11.9" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-legacy-account/src/contract.rs b/contracts/warp-legacy-account/src/contract.rs index ba00f27f..8a64db2a 100644 --- a/contracts/warp-legacy-account/src/contract.rs +++ b/contracts/warp-legacy-account/src/contract.rs @@ -3,7 +3,7 @@ use crate::ContractError; use controller::account::{AssetInfo, Cw721ExecuteMsg}; use cosmwasm_std::CosmosMsg::Stargate; use cosmwasm_std::{ - entry_point, to_binary, Addr, BankMsg, Binary, CosmosMsg, Deps, DepsMut, Env, MessageInfo, + entry_point, to_json_binary, Addr, BankMsg, Binary, CosmosMsg, Deps, DepsMut, Env, MessageInfo, Response, StdResult, Uint128, WasmMsg, }; use cw20::{BalanceResponse, Cw20ExecuteMsg}; @@ -61,7 +61,7 @@ pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { match msg { QueryMsg::Config => { let config = CONFIG.load(deps.storage)?; - to_binary(&config) + to_json_binary(&config) } } } @@ -190,7 +190,7 @@ fn withdraw_asset_cw20( let res = if amount.balance > Uint128::zero() { Some(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: token.to_string(), - msg: to_binary(&Cw20ExecuteMsg::Transfer { + msg: to_json_binary(&Cw20ExecuteMsg::Transfer { recipient: owner.to_string(), amount: amount.balance, })?, @@ -220,7 +220,7 @@ fn withdraw_asset_cw721( let res = if owner_query.owner == *owner { Some(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: token.to_string(), - msg: to_binary(&Cw721ExecuteMsg::TransferNft { + msg: to_json_binary(&Cw721ExecuteMsg::TransferNft { recipient: owner.to_string(), token_id: token_id.to_string(), })?, diff --git a/contracts/warp-legacy-account/src/tests.rs b/contracts/warp-legacy-account/src/tests.rs index 68871a06..a3d2160f 100644 --- a/contracts/warp-legacy-account/src/tests.rs +++ b/contracts/warp-legacy-account/src/tests.rs @@ -2,7 +2,7 @@ use crate::contract::{execute, instantiate}; use crate::ContractError; use cosmwasm_std::testing::{mock_dependencies, mock_env, mock_info}; use cosmwasm_std::{ - to_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, + to_json_binary, BankMsg, Coin, CosmosMsg, DistributionMsg, GovMsg, IbcMsg, IbcTimeout, IbcTimeoutBlock, Response, StakingMsg, Uint128, VoteOption, WasmMsg, }; use legacy_account::{ExecuteMsg, GenericMsg, InstantiateMsg}; @@ -27,7 +27,7 @@ fn test_execute_controller() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -82,7 +82,7 @@ fn test_execute_controller() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -149,7 +149,7 @@ fn test_execute_owner() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), @@ -206,7 +206,7 @@ fn test_execute_owner() { .add_messages(vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100) @@ -273,7 +273,7 @@ fn test_execute_unauth() { msgs: vec![ CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: "contract".to_string(), - msg: to_binary("test").unwrap(), + msg: to_json_binary("test").unwrap(), funds: vec![Coin { denom: "coin".to_string(), amount: Uint128::new(100), diff --git a/contracts/warp-resolver/Cargo.toml b/contracts/warp-resolver/Cargo.toml index 1009beb8..337d1cd3 100644 --- a/contracts/warp-resolver/Cargo.toml +++ b/contracts/warp-resolver/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -46,6 +47,7 @@ schemars = "0.8" thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-resolver/src/contract.rs b/contracts/warp-resolver/src/contract.rs index 5a22d42d..0482601b 100644 --- a/contracts/warp-resolver/src/contract.rs +++ b/contracts/warp-resolver/src/contract.rs @@ -6,7 +6,8 @@ use crate::util::variable::{ use crate::ContractError; use controller::account::WarpMsg; use cosmwasm_std::{ - entry_point, to_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdError, StdResult, + entry_point, to_json_binary, Binary, Deps, DepsMut, Env, MessageInfo, Response, StdError, + StdResult, }; use cw_utils::nonpayable; @@ -178,16 +179,16 @@ pub fn execute_hydrate_msgs( #[cfg_attr(not(feature = "library"), entry_point)] pub fn query(deps: Deps, env: Env, msg: QueryMsg) -> StdResult { match msg { - QueryMsg::SimulateQuery(data) => to_binary(&query_simulate_query(deps, env, data)?), + QueryMsg::SimulateQuery(data) => to_json_binary(&query_simulate_query(deps, env, data)?), QueryMsg::QueryValidateJobCreation(data) => { - to_binary(&query_validate_job_creation(deps, env, data)?) + to_json_binary(&query_validate_job_creation(deps, env, data)?) } - QueryMsg::QueryHydrateVars(data) => to_binary(&query_hydrate_vars(deps, env, data)?), + QueryMsg::QueryHydrateVars(data) => to_json_binary(&query_hydrate_vars(deps, env, data)?), QueryMsg::QueryResolveCondition(data) => { - to_binary(&query_resolve_condition(deps, env, data)?) + to_json_binary(&query_resolve_condition(deps, env, data)?) } - QueryMsg::QueryApplyVarFn(data) => to_binary(&query_apply_var_fn(deps, env, data)?), - QueryMsg::QueryHydrateMsgs(data) => to_binary(&query_hydrate_msgs(deps, env, data)?), + QueryMsg::QueryApplyVarFn(data) => to_json_binary(&query_apply_var_fn(deps, env, data)?), + QueryMsg::QueryHydrateMsgs(data) => to_json_binary(&query_hydrate_msgs(deps, env, data)?), } } diff --git a/contracts/warp-resolver/src/tests.rs b/contracts/warp-resolver/src/tests.rs index a1c9f1fa..a1422906 100644 --- a/contracts/warp-resolver/src/tests.rs +++ b/contracts/warp-resolver/src/tests.rs @@ -7,13 +7,13 @@ use crate::util::variable::{hydrate_msgs, hydrate_vars}; use cosmwasm_std::{testing::mock_env, WasmQuery}; use cosmwasm_std::{ - to_binary, BankQuery, Binary, ContractResult, CosmosMsg, OwnedDeps, Uint256, WasmMsg, + to_json_binary, BankQuery, Binary, ContractResult, CosmosMsg, OwnedDeps, Uint256, WasmMsg, }; use crate::contract::query; use cosmwasm_schema::cw_serde; use cosmwasm_std::testing::{mock_info, MockApi, MockQuerier, MockStorage}; -use cosmwasm_std::{from_slice, Empty, Querier, QueryRequest, SystemError, SystemResult}; +use cosmwasm_std::{from_json, Empty, Querier, QueryRequest, SystemError, SystemResult}; use resolver::variable::{ FnValue, QueryExpr, QueryVariable, StaticVariable, Variable, VariableKind, @@ -82,7 +82,7 @@ pub struct WasmMockQuerier { impl Querier for WasmMockQuerier { fn raw_query(&self, bin_request: &[u8]) -> SystemResult> { - let request: QueryRequest = match from_slice(bin_request) { + let request: QueryRequest = match from_json(bin_request) { Ok(v) => v, Err(e) => { return SystemResult::Err(SystemError::InvalidRequest { @@ -116,13 +116,13 @@ impl WasmMockQuerier { }) .to_string(); - SystemResult::Ok(ContractResult::Ok(to_binary(&response).unwrap())) + SystemResult::Ok(ContractResult::Ok(to_json_binary(&response).unwrap())) } QueryRequest::Bank(BankQuery::Balance { address: contract_addr, denom: _, }) => SystemResult::Ok(ContractResult::Ok( - to_binary(&contract_addr.to_string()).unwrap(), + to_json_binary(&contract_addr.to_string()).unwrap(), )), _ => self.base.handle_query(request), } diff --git a/contracts/warp-resolver/src/util/condition.rs b/contracts/warp-resolver/src/util/condition.rs index b2db2a75..d6bc60e7 100644 --- a/contracts/warp-resolver/src/util/condition.rs +++ b/contracts/warp-resolver/src/util/condition.rs @@ -2,7 +2,7 @@ use crate::util::path::resolve_path; use crate::util::variable::get_var; use crate::ContractError; use cosmwasm_std::{ - to_vec, ContractResult, Decimal256, Deps, Env, StdError, SystemResult, Uint256, + to_json_vec, ContractResult, Decimal256, Deps, Env, StdError, SystemResult, Uint256, }; use cw_storage_plus::KeyDeserialize; use json_codec_wasm::ast::Ref; @@ -577,7 +577,7 @@ pub fn resolve_str_op(_deps: Deps, _env: Env, left: String, right: String, op: S } pub fn resolve_query_expr(deps: Deps, _env: Env, expr: QueryExpr) -> Result { - let raw = to_vec(&expr.query).map_err(|serialize_err| { + let raw = to_json_vec(&expr.query).map_err(|serialize_err| { StdError::generic_err(format!("Serializing QueryRequest: {}", serialize_err)) })?; diff --git a/contracts/warp-templates/Cargo.toml b/contracts/warp-templates/Cargo.toml index 1999eb81..06834203 100644 --- a/contracts/warp-templates/Cargo.toml +++ b/contracts/warp-templates/Cargo.toml @@ -20,6 +20,7 @@ crate-type = ["cdylib", "rlib"] backtraces = ["cosmwasm-std/backtraces"] # use library feature to disable all instantiate/execute/query exports library = [] +interface = ["dep:cw-orch"] [package.metadata.scripts] optimize = """docker run --rm -v "${process.cwd()}":/code \ @@ -45,6 +46,7 @@ schemars = "0.8" thiserror = "1" serde-json-wasm = "0.4.1" json-codec-wasm = "0.1.0" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16.0" diff --git a/contracts/warp-templates/src/contract.rs b/contracts/warp-templates/src/contract.rs index 298d4776..ff420085 100644 --- a/contracts/warp-templates/src/contract.rs +++ b/contracts/warp-templates/src/contract.rs @@ -1,7 +1,7 @@ use crate::state::{CONFIG, QUERY_PAGE_SIZE, STATE, TEMPLATES}; use crate::ContractError; use cosmwasm_std::{ - entry_point, to_binary, BankMsg, Binary, Coin, CosmosMsg, Deps, DepsMut, Env, MessageInfo, + entry_point, to_json_binary, BankMsg, Binary, Coin, CosmosMsg, Deps, DepsMut, Env, MessageInfo, Order, Response, StdError, StdResult, Uint64, }; use cw_storage_plus::Bound; @@ -71,9 +71,9 @@ pub fn execute( #[cfg_attr(not(feature = "library"), entry_point)] pub fn query(deps: Deps, env: Env, msg: QueryMsg) -> StdResult { match msg { - QueryMsg::QueryTemplate(data) => to_binary(&query_template(deps, env, data)?), - QueryMsg::QueryTemplates(data) => to_binary(&query_templates(deps, env, data)?), - QueryMsg::QueryConfig(data) => to_binary(&query_config(deps, env, data)?), + QueryMsg::QueryTemplate(data) => to_json_binary(&query_template(deps, env, data)?), + QueryMsg::QueryTemplates(data) => to_json_binary(&query_templates(deps, env, data)?), + QueryMsg::QueryConfig(data) => to_json_binary(&query_config(deps, env, data)?), } } diff --git a/packages/controller/Cargo.toml b/packages/controller/Cargo.toml index c41b0f7b..05359043 100644 --- a/packages/controller/Cargo.toml +++ b/packages/controller/Cargo.toml @@ -7,6 +7,7 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" @@ -19,6 +20,7 @@ prost = "0.11.9" cw20 = "0.16" cw721 = "0.16.0" serde-json-wasm = "0.4.1" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/controller/src/account.rs b/packages/controller/src/account.rs index 376b99e6..b02dd33f 100644 --- a/packages/controller/src/account.rs +++ b/packages/controller/src/account.rs @@ -1,6 +1,6 @@ use cosmwasm_schema::cw_serde; use cosmwasm_std::CosmosMsg::Stargate; -use cosmwasm_std::{to_binary, BankMsg, DepsMut, WasmMsg}; +use cosmwasm_std::{to_json_binary, BankMsg, DepsMut, WasmMsg}; use cosmwasm_std::{Addr, CosmosMsg, Deps, Env, Response, StdError, StdResult, Uint128}; use cw20::{BalanceResponse, Cw20ExecuteMsg}; use cw721::{Cw721QueryMsg, OwnerOfResponse}; @@ -276,7 +276,7 @@ fn withdraw_asset_cw20( let res = if amount.balance > Uint128::zero() { Some(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: token.to_string(), - msg: to_binary(&Cw20ExecuteMsg::Transfer { + msg: to_json_binary(&Cw20ExecuteMsg::Transfer { recipient: owner.to_string(), amount: amount.balance, })?, @@ -306,7 +306,7 @@ fn withdraw_asset_cw721( let res = if owner_query.owner == *owner { Some(CosmosMsg::Wasm(WasmMsg::Execute { contract_addr: token.to_string(), - msg: to_binary(&Cw721ExecuteMsg::TransferNft { + msg: to_json_binary(&Cw721ExecuteMsg::TransferNft { recipient: owner.to_string(), token_id: token_id.to_string(), })?, diff --git a/packages/controller/src/lib.rs b/packages/controller/src/lib.rs index 29f65654..5529ad7d 100644 --- a/packages/controller/src/lib.rs +++ b/packages/controller/src/lib.rs @@ -90,6 +90,7 @@ pub struct InstantiateMsg { //execute #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { CreateJob(Box), DeleteJob(Box), @@ -157,6 +158,7 @@ pub struct MigrateJobsMsg { //query #[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { #[returns(JobResponse)] QueryJob(QueryJobMsg), diff --git a/packages/funding-account/Cargo.toml b/packages/funding-account/Cargo.toml index 73255c32..bd5fd8d9 100644 --- a/packages/funding-account/Cargo.toml +++ b/packages/funding-account/Cargo.toml @@ -7,6 +7,7 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" @@ -24,6 +25,7 @@ strum_macros = "0.24" thiserror = { version = "1" } controller = {path = "../controller"} prost = "0.11.9" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/interface/Cargo.toml b/packages/interface/Cargo.toml new file mode 100644 index 00000000..2ead717b --- /dev/null +++ b/packages/interface/Cargo.toml @@ -0,0 +1,28 @@ +[package] +name = "interface" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[features] +interface = ["dep:cw-orch"] + +[dependencies] +cw-orch = {version = "0.18.1", optional = true } + +warp-controller = { path = "../../contracts/warp-controller", default-features = false, version = "*", features = ["interface"]} +warp-funding-account = { path = "../../contracts/warp-funding-account", default-features = false, version = "*", features = ["interface"]} +warp-job-account = { path = "../../contracts/warp-job-account", default-features = false, version = "*", features = ["interface"] } +warp-job-account-tracker = { path = "../../contracts/warp-job-account-tracker", default-features = false, version = "*", features = ["interface"] } +warp-legacy-account = { path = "../../contracts/warp-legacy-account", default-features = false, version = "*", features = ["interface"] } +warp-resolver = { path = "../../contracts/warp-resolver", default-features = false, version = "*", features = ["interface"] } +warp-templates = { path = "../../contracts/warp-templates", default-features = false, version = "*", features = ["interface"] } + +controller = { path = "../controller", default-features = false, version = "*", features = ["interface"] } +funding-account = { path = "../funding-account", default-features = false, version = "*", features = ["interface"] } +job-account = { path = "../job-account", default-features = false, version = "*", features = ["interface"] } +job-account-tracker = { path = "../job-account-tracker", default-features = false, version = "*", features = ["interface"] } +legacy-account = { path = "../legacy-account", default-features = false, version = "*", features = ["interface"] } +resolver = { path = "../resolver", default-features = false, version = "*", features = ["interface"] } +templates = { path = "../templates", default-features = false, version = "*", features = ["interface"] } \ No newline at end of file diff --git a/packages/interface/src/lib.rs b/packages/interface/src/lib.rs new file mode 100644 index 00000000..b51d7511 --- /dev/null +++ b/packages/interface/src/lib.rs @@ -0,0 +1,29 @@ +#[cfg(feature = "interface")] +pub mod warp_controller; +#[cfg(feature = "interface")] +pub mod warp_funding_account; +#[cfg(feature = "interface")] +pub mod warp_job_account; +#[cfg(feature = "interface")] +pub mod warp_job_account_tracker; +#[cfg(feature = "interface")] +pub mod warp_legacy_account; +#[cfg(feature = "interface")] +pub mod warp_resolver; +#[cfg(feature = "interface")] +pub mod warp_templates; + +pub fn add(left: usize, right: usize) -> usize { + left + right +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn it_works() { + let result = add(2, 2); + assert_eq!(result, 4); + } +} diff --git a/packages/interface/src/warp_controller.rs b/packages/interface/src/warp_controller.rs new file mode 100644 index 00000000..05786982 --- /dev/null +++ b/packages/interface/src/warp_controller.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use controller::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_controller::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpController; + +impl Uploadable for WarpController { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_controller.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_funding_account.rs b/packages/interface/src/warp_funding_account.rs new file mode 100644 index 00000000..0e8cc6ec --- /dev/null +++ b/packages/interface/src/warp_funding_account.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use funding_account::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_funding_account::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpFundingAccount; + +impl Uploadable for WarpFundingAccount { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_funding_account.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_job_account.rs b/packages/interface/src/warp_job_account.rs new file mode 100644 index 00000000..6044795a --- /dev/null +++ b/packages/interface/src/warp_job_account.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use job_account::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_job_account::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpJobAccount; + +impl Uploadable for WarpJobAccount { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_job_account.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_job_account_tracker.rs b/packages/interface/src/warp_job_account_tracker.rs new file mode 100644 index 00000000..1a18ec8e --- /dev/null +++ b/packages/interface/src/warp_job_account_tracker.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use job_account_tracker::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_job_account_tracker::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpJobAccountTracker; + +impl Uploadable for WarpJobAccountTracker { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_job_account_tracker.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_legacy_account.rs b/packages/interface/src/warp_legacy_account.rs new file mode 100644 index 00000000..7eeb66ff --- /dev/null +++ b/packages/interface/src/warp_legacy_account.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use legacy_account::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_legacy_account::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpLegacyAccount; + +impl Uploadable for WarpLegacyAccount { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_legacy_account.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_resolver.rs b/packages/interface/src/warp_resolver.rs new file mode 100644 index 00000000..5bbf7f59 --- /dev/null +++ b/packages/interface/src/warp_resolver.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use resolver::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_resolver::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpResolver; + +impl Uploadable for WarpResolver { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_resolver.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/interface/src/warp_templates.rs b/packages/interface/src/warp_templates.rs new file mode 100644 index 00000000..5a4c3edd --- /dev/null +++ b/packages/interface/src/warp_templates.rs @@ -0,0 +1,27 @@ +use cw_orch::{interface, prelude::*}; + +pub use templates::{ExecuteMsg, InstantiateMsg, QueryMsg}; +use warp_templates::contract; + +#[interface(InstantiateMsg, ExecuteMsg, QueryMsg, Empty)] +pub struct WarpTemplates; + +impl Uploadable for WarpTemplates { + // Return the path to the wasm file + fn wasm(&self) -> WasmPath { + artifacts_dir_from_workspace!() + .find_wasm_path("warp_templates.wasm") + .unwrap() + } + // Return a CosmWasm contract wrapper + fn wrapper(&self) -> Box> { + Box::new( + ContractWrapper::new_with_empty( + contract::execute, + contract::instantiate, + contract::query, + ) + .with_migrate(contract::migrate), + ) + } +} diff --git a/packages/job-account-tracker/Cargo.toml b/packages/job-account-tracker/Cargo.toml index c7e71053..fd90350b 100644 --- a/packages/job-account-tracker/Cargo.toml +++ b/packages/job-account-tracker/Cargo.toml @@ -7,10 +7,12 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" cosmwasm-schema = "1.1" +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/job-account-tracker/src/lib.rs b/packages/job-account-tracker/src/lib.rs index 7b58fcac..b2aea015 100644 --- a/packages/job-account-tracker/src/lib.rs +++ b/packages/job-account-tracker/src/lib.rs @@ -16,6 +16,7 @@ pub struct InstantiateMsg { #[cw_serde] #[allow(clippy::large_enum_variant)] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { TakeAccount(TakeAccountMsg), FreeAccount(FreeAccountMsg), @@ -37,6 +38,7 @@ pub struct FreeAccountMsg { #[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { #[returns(ConfigResponse)] QueryConfig(QueryConfigMsg), diff --git a/packages/job-account/Cargo.toml b/packages/job-account/Cargo.toml index 753f2e0a..ff17bb6a 100644 --- a/packages/job-account/Cargo.toml +++ b/packages/job-account/Cargo.toml @@ -7,6 +7,7 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" @@ -14,8 +15,8 @@ cosmwasm-schema = "1.1" schemars = "0.8" serde = { version = "1", default-features = false, features = ["derive"] } prost = "0.11.9" - controller = { path = "../controller" } +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/job-account/src/lib.rs b/packages/job-account/src/lib.rs index 620e80f8..1261fc04 100644 --- a/packages/job-account/src/lib.rs +++ b/packages/job-account/src/lib.rs @@ -25,6 +25,7 @@ pub struct InstantiateMsg { #[cw_serde] #[allow(clippy::large_enum_variant)] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { WarpMsgs(WarpMsgs), @@ -44,6 +45,7 @@ pub struct ExecuteWasmMsg {} #[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { #[returns(ConfigResponse)] QueryConfig(QueryConfigMsg), diff --git a/packages/legacy-account/Cargo.toml b/packages/legacy-account/Cargo.toml index 8d2455da..4313695c 100644 --- a/packages/legacy-account/Cargo.toml +++ b/packages/legacy-account/Cargo.toml @@ -7,6 +7,7 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" @@ -14,8 +15,8 @@ cosmwasm-schema = "1.1" schemars = "0.8" serde = { version = "1", default-features = false, features = ["derive"] } prost = "0.11.9" - controller = { path = "../controller" } +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/legacy-account/src/lib.rs b/packages/legacy-account/src/lib.rs index a261a62c..16a9d62e 100644 --- a/packages/legacy-account/src/lib.rs +++ b/packages/legacy-account/src/lib.rs @@ -1,5 +1,5 @@ use controller::account::{AssetInfo, CwFund}; -use cosmwasm_schema::cw_serde; +use cosmwasm_schema::{cw_serde, QueryResponses}; use cosmwasm_std::{Addr, CosmosMsg}; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; @@ -18,6 +18,7 @@ pub struct InstantiateMsg { #[cw_serde] #[allow(clippy::large_enum_variant)] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { Generic(GenericMsg), WithdrawAssets(WithdrawAssetsMsg), @@ -86,8 +87,11 @@ pub struct WithdrawAssetsMsg { #[cw_serde] pub struct ExecuteWasmMsg {} +#[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { + #[returns(Config)] Config, } diff --git a/packages/resolver/Cargo.toml b/packages/resolver/Cargo.toml index aefa9005..7243d53a 100644 --- a/packages/resolver/Cargo.toml +++ b/packages/resolver/Cargo.toml @@ -7,11 +7,13 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" cosmwasm-schema = "1.1" controller = { path = "../controller" } +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/resolver/src/lib.rs b/packages/resolver/src/lib.rs index ad5abe6d..688c8af9 100644 --- a/packages/resolver/src/lib.rs +++ b/packages/resolver/src/lib.rs @@ -11,6 +11,7 @@ use cosmwasm_std::QueryRequest; pub struct InstantiateMsg {} #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { ExecuteSimulateQuery(ExecuteSimulateQueryMsg), ExecuteValidateJobCreation(ExecuteValidateJobCreationMsg), @@ -22,6 +23,7 @@ pub enum ExecuteMsg { #[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { #[returns(SimulateResponse)] SimulateQuery(SimulateQueryMsg), diff --git a/packages/templates/Cargo.toml b/packages/templates/Cargo.toml index 02e1f5f8..31390fd6 100644 --- a/packages/templates/Cargo.toml +++ b/packages/templates/Cargo.toml @@ -7,12 +7,14 @@ edition = "2021" [features] # for more explicit tests, cargo test --features=backtraces backtraces = ["cosmwasm-std/backtraces"] +interface = ["dep:cw-orch"] [dependencies] cosmwasm-std = "1.1" cosmwasm-schema = "1.1" controller = { path = "../controller" } resolver = { path = "../resolver" } +cw-orch = {version = "0.18.1", optional = true } [dev-dependencies] cw-multi-test = "0.16" diff --git a/packages/templates/src/lib.rs b/packages/templates/src/lib.rs index 40bb3994..5806b2a0 100644 --- a/packages/templates/src/lib.rs +++ b/packages/templates/src/lib.rs @@ -30,6 +30,7 @@ pub struct InstantiateMsg { } #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::ExecuteFns))] pub enum ExecuteMsg { SubmitTemplate(SubmitTemplateMsg), EditTemplate(EditTemplateMsg), @@ -40,6 +41,7 @@ pub enum ExecuteMsg { #[derive(QueryResponses)] #[cw_serde] +#[cfg_attr(feature = "interface", derive(cw_orch::QueryFns))] pub enum QueryMsg { #[returns(TemplateResponse)] QueryTemplate(QueryTemplateMsg), diff --git a/scripts/Cargo.toml b/scripts/Cargo.toml new file mode 100644 index 00000000..c99e75a4 --- /dev/null +++ b/scripts/Cargo.toml @@ -0,0 +1,31 @@ +[package] +name = "scripts" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + + +[dependencies] +dotenv = { version = "0.15.0" } # Enables loading of .env files +pretty_env_logger = { version = "0.5.0" } # Enables logging to stdout and prettifies it +cw-orch = {version = "0.18.1", features = ["daemon"] } +tokio = { version = "1.4", features = ["full"] } + +cosmwasm-std = "1.1" + +interface = { path = "../packages/interface", default-features = false, version = "*", features = ["interface"]} + +warp-controller = { path = "../contracts/warp-controller", default-features = false, version = "*", features = ["interface"]} +warp-job-account = { path = "../contracts/warp-job-account", default-features = false, version = "*", features = ["interface"] } +warp-job-account-tracker = { path = "../contracts/warp-job-account-tracker", default-features = false, version = "*", features = ["interface"] } +warp-legacy-account = { path = "../contracts/warp-legacy-account", default-features = false, version = "*", features = ["interface"] } +warp-resolver = { path = "../contracts/warp-resolver", default-features = false, version = "*", features = ["interface"] } +warp-templates = { path = "../contracts/warp-templates", default-features = false, version = "*", features = ["interface"] } + +controller = { path = "../packages/controller", default-features = false, version = "*", features = ["interface"] } +job-account = { path = "../packages/job-account", default-features = false, version = "*", features = ["interface"] } +job-account-tracker = { path = "../packages/job-account-tracker", default-features = false, version = "*", features = ["interface"] } +legacy-account = { path = "../packages/legacy-account", default-features = false, version = "*", features = ["interface"] } +resolver = { path = "../packages/resolver", default-features = false, version = "*", features = ["interface"] } +templates = { path = "../packages/templates", default-features = false, version = "*", features = ["interface"] } \ No newline at end of file diff --git a/scripts/src/deploy.rs b/scripts/src/deploy.rs new file mode 100644 index 00000000..227d9fdc --- /dev/null +++ b/scripts/src/deploy.rs @@ -0,0 +1,97 @@ +use cosmwasm_std::Uint64; +use cw_orch::anyhow; +use cw_orch::prelude::*; +use interface::warp_controller::WarpController; +use interface::warp_funding_account::WarpFundingAccount; +use interface::warp_job_account::WarpJobAccount; +use interface::warp_job_account_tracker::WarpJobAccountTracker; +use interface::warp_legacy_account::WarpLegacyAccount; +use interface::warp_resolver::WarpResolver; +use interface::warp_templates::WarpTemplates; +use tokio::runtime::Runtime; +// We start by creating a runtime, which is required for a sync daemon. + +pub fn deploy() -> anyhow::Result<()> { + dotenv::dotenv().ok(); // Used to load the `.env` file if any + pretty_env_logger::init(); // Used to log contract and chain interactions + + let rt = Runtime::new()?; + let network = networks::PHOENIX_1; + let chain = DaemonBuilder::default() + .handle(rt.handle()) + .chain(network) + .build()?; + + let funding_account = WarpFundingAccount::new("warp_funding_account", chain.clone()); + funding_account.upload()?; + + let job_account = WarpJobAccount::new("warp_job_account", chain.clone()); + job_account.upload()?; + + let job_account_tracker = WarpJobAccountTracker::new("warp_job_account_tracker", chain.clone()); + job_account_tracker.upload()?; + job_account_tracker.instantiate( + &job_account_tracker::InstantiateMsg { + admin: chain.wallet().address()?.to_string(), + warp_addr: "".to_string(), + }, + Some(&Addr::unchecked(chain.wallet().address()?.to_string())), + None, + )?; + + let legacy_account = WarpLegacyAccount::new("warp_legacy_account", chain.clone()); + legacy_account.upload()?; + + let resolver = WarpResolver::new("warp_resolver", chain.clone()); + resolver.upload()?; + resolver.instantiate(&resolver::InstantiateMsg {}, None, None)?; + + let templates = WarpTemplates::new("warp_templates", chain.clone()); + templates.upload()?; + templates.instantiate( + &templates::InstantiateMsg { + owner: chain.wallet().address()?.to_string(), + fee_denom: "uluna".to_string(), + fee_collector: chain.wallet().address()?.to_string(), + templates: vec![], + }, + Some(&Addr::unchecked(chain.wallet().address()?.to_string())), + None, + )?; + + let controller = WarpController::new("warp_controller", chain.clone()); + + controller.upload()?; + controller.instantiate( + &controller::InstantiateMsg { + owner: Some(chain.wallet().address()?.to_string()), + fee_denom: "".to_string(), + fee_collector: Some(chain.wallet().address()?.to_string()), + warp_account_code_id: Uint64::from(templates.code_id()?), + minimum_reward: Default::default(), + creation_fee: Default::default(), + cancellation_fee: Default::default(), + resolver_address: resolver.address()?.to_string(), + job_account_tracker_address: job_account_tracker.address()?.to_string(), + t_max: Default::default(), + t_min: Default::default(), + a_max: Default::default(), + a_min: Default::default(), + q_max: Default::default(), + creation_fee_min: Default::default(), + creation_fee_max: Default::default(), + burn_fee_min: Default::default(), + maintenance_fee_min: Default::default(), + maintenance_fee_max: Default::default(), + duration_days_left: Default::default(), + duration_days_right: Default::default(), + queue_size_left: Default::default(), + queue_size_right: Default::default(), + burn_fee_rate: Default::default(), + }, + Some(&Addr::unchecked(chain.wallet().address()?.to_string())), + None, + )?; + + Ok(()) +} diff --git a/scripts/src/main.rs b/scripts/src/main.rs new file mode 100644 index 00000000..c7f2bea7 --- /dev/null +++ b/scripts/src/main.rs @@ -0,0 +1,7 @@ +mod deploy; +mod migrate; + +fn main() { + let _ = deploy::deploy(); + let _ = migrate::migrate(); +} diff --git a/scripts/src/migrate.rs b/scripts/src/migrate.rs new file mode 100644 index 00000000..58b1be40 --- /dev/null +++ b/scripts/src/migrate.rs @@ -0,0 +1,5 @@ +use cw_orch::anyhow; + +pub fn migrate() -> anyhow::Result<()> { + Ok(()) +} diff --git a/~/.cw-orchestrator/my_state.json b/~/.cw-orchestrator/my_state.json new file mode 100644 index 00000000..186adfa2 --- /dev/null +++ b/~/.cw-orchestrator/my_state.json @@ -0,0 +1,8 @@ +{ + "terra2": { + "phoenix-1": { + "code_ids": {}, + "default": {} + } + } +} \ No newline at end of file