From 6b5d6aa898b02cbe17b421a1aa2eb5382e52d4bc Mon Sep 17 00:00:00 2001 From: Piotr Babel Date: Fri, 24 Mar 2023 13:26:31 +0100 Subject: [PATCH 1/4] Improve emergency mgmt. --- Cargo.lock | 284 +++++++++--------- Cargo.toml | 2 +- contracts/red-bank/src/contract.rs | 3 - contracts/red-bank/src/execute.rs | 22 +- contracts/red-bank/src/query.rs | 8 +- contracts/red-bank/src/state.rs | 1 - contracts/red-bank/tests/helpers.rs | 1 - contracts/red-bank/tests/test_admin.rs | 20 +- .../tests/test_update_emergency_owner.rs | 115 ++----- integration-tests/tests/test_oracles.rs | 1 - packages/testing/src/integration/mock_env.rs | 1 - packages/types/src/red_bank/msg.rs | 5 - packages/types/src/red_bank/types.rs | 2 - 13 files changed, 180 insertions(+), 285 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 01acc29c7..16831a5d1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,19 +24,19 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.68" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" +checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4" [[package]] name = "async-trait" -version = "0.1.63" +version = "0.1.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff18d764974428cf3a9328e23fc5c986f5fbed46e6cd4cdf42544df5d297ec1" +checksum = "86ea188f25f0255d8f92797797c97ebf5631fa88178beb1a46fdf5622c9a00e4" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.8", ] [[package]] @@ -70,9 +70,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64ct" -version = "1.5.3" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b645a089122eccb6111b4f81cbc1a49f5900ac4666bb93ac027feaecf15607bf" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "bech32" @@ -138,9 +138,9 @@ dependencies = [ [[package]] name = "block-buffer" -version = "0.10.3" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ "generic-array", ] @@ -168,9 +168,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "cexpr" @@ -189,9 +189,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.23" +version = "0.4.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" +checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" dependencies = [ "num-integer", "num-traits", @@ -199,9 +199,9 @@ dependencies = [ [[package]] name = "clang-sys" -version = "1.4.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3" +checksum = "77ed9a53e5d4d9c573ae844bfac6872b159cb1d1585a83b29e7a64b7eef7332a" dependencies = [ "glob", "libc", @@ -234,9 +234,9 @@ dependencies = [ [[package]] name = "const-oid" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cec318a675afcb6a1ea1d4340e2d377e56e47c266f28043ceccbf4412ddfdd3b" +checksum = "520fbf3c07483f94e3e3ca9d0cfd913d7718ef2483d2cfd91c0d9e91474ab913" [[package]] name = "cosmos-sdk-proto" @@ -244,7 +244,7 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20b42021d8488665b1a0d9748f1f81df7235362d194f44481e2e61bf376b77b4" dependencies = [ - "prost 0.11.6", + "prost 0.11.8", "prost-types", "tendermint-proto", ] @@ -271,9 +271,9 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.2.0" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb56fffc2233212e9546df66e01267277173d55f6237ab939690ef2c5cfd50c2" +checksum = "f22add0f9b2a5416df98c1d0248a8d8eedb882c38fbf0c5052b64eebe865df6d" dependencies = [ "digest 0.10.6", "ed25519-zebra", @@ -284,18 +284,18 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.2.0" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e26a78e202d602a23fd5d13dff898732814ebe7a8bde20f1bf71eb0209d56d56" +checksum = "c2e64f710a18ef90d0a632cf27842e98ffc2d005a38a6f76c12fd0bc03bc1a2d" dependencies = [ - "syn", + "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.2.0" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a3dfcfa0c6f4b9aef8820c0a999410f239828a4503a388ce8e55f59fe3ac863" +checksum = "fe5ad2e23a971b9e4cd57b20cee3e2e79c33799bed4b128e473aca3702bfe5dd" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -306,20 +306,20 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.2.0" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e19cd48063eef5b92a0aabcf0687705802178ae175571dfdc5f3b925d0741d39" +checksum = "2926d159a9bb1a716a592b40280f1663f2491a9de3b6da77c0933cee2a2655b8" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "cosmwasm-std" -version = "1.2.0" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b50f4deaed6196047a3ceec9bc23e85d4292b73442d77af63723842d8b6049d" +checksum = "76fee88ff5bf7bef55bd37ac0619974701b99bf6bd4b16cf56ee8810718abd71" dependencies = [ "base64", "cosmwasm-crypto", @@ -474,7 +474,7 @@ checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -492,16 +492,16 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" dependencies = [ - "block-buffer 0.10.3", + "block-buffer 0.10.4", "crypto-common", "subtle", ] [[package]] name = "dyn-clone" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9b0705efd4599c15a38151f4721f7bc388306f61084d3bfd50bd07fbca5cb60" +checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30" [[package]] name = "ecdsa" @@ -553,9 +553,9 @@ dependencies = [ [[package]] name = "either" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" +checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" [[package]] name = "elliptic-curve" @@ -628,9 +628,9 @@ checksum = "c8cbd1169bd7b4a0a20d92b9af7a7e0422888bd38a6f5ec29c1fd8c1558a272e" [[package]] name = "futures" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0" +checksum = "531ac96c6ff5fd7c62263c5e3c67a603af4fcaee2e1a0ae5565ba3a11e69e549" dependencies = [ "futures-channel", "futures-core", @@ -642,9 +642,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed" +checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac" dependencies = [ "futures-core", "futures-sink", @@ -652,33 +652,33 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac" +checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd" [[package]] name = "futures-io" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb" +checksum = "89d422fa3cbe3b40dca574ab087abb5bc98258ea57eea3fd6f1fa7162c778b91" [[package]] name = "futures-sink" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9" +checksum = "ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2" [[package]] name = "futures-task" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea" +checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879" [[package]] name = "futures-util" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6" +checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab" dependencies = [ "futures-core", "futures-sink", @@ -793,15 +793,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" +checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" [[package]] name = "js-sys" -version = "0.3.60" +version = "0.3.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" dependencies = [ "wasm-bindgen", ] @@ -842,9 +842,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.139" +version = "0.2.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" +checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c" [[package]] name = "libloading" @@ -972,9 +972,9 @@ dependencies = [ [[package]] name = "mars-owner" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5644a8b047a0d64d04706414805872f35439755e057431152dd36e6f369be24" +checksum = "8ca010da465b4a5ea7274f59132d22b7c10765295c73d5744add2c1fea6c5e38" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -1061,7 +1061,7 @@ dependencies = [ "mars-red-bank-types", "mars-rewards-collector-osmosis", "osmosis-std 0.14.0", - "prost 0.11.6", + "prost 0.11.8", "schemars", "serde", "thiserror", @@ -1105,7 +1105,7 @@ checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -1138,9 +1138,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.17.0" +version = "1.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" [[package]] name = "opaque-debug" @@ -1150,9 +1150,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "os_str_bytes" -version = "6.4.1" +version = "6.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" +checksum = "ceedf44fb00f2d1984b0bc98102627ce622e083e49a5bacdb3e514fa4238e267" [[package]] name = "osmosis-std" @@ -1163,7 +1163,7 @@ dependencies = [ "chrono", "cosmwasm-std", "osmosis-std-derive", - "prost 0.11.6", + "prost 0.11.8", "prost-types", "schemars", "serde", @@ -1179,7 +1179,7 @@ dependencies = [ "chrono", "cosmwasm-std", "osmosis-std-derive", - "prost 0.11.6", + "prost 0.11.8", "prost-types", "schemars", "serde", @@ -1195,7 +1195,7 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -1209,7 +1209,7 @@ dependencies = [ "cosmrs", "cosmwasm-std", "osmosis-std 0.13.2", - "prost 0.11.6", + "prost 0.11.8", "serde", "serde_json", "test-tube", @@ -1218,9 +1218,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba" +checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" [[package]] name = "pbkdf2" @@ -1261,9 +1261,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.50" +version = "1.0.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2" +checksum = "ba466839c78239c09faf015484e5cc04860f88242cff4d03eb038f04b4699b73" dependencies = [ "unicode-ident", ] @@ -1280,12 +1280,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.11.6" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21dc42e00223fc37204bd4aa177e69420c604ca4a183209a8f9de30c6d934698" +checksum = "e48e50df39172a3e7eb17e14642445da64996989bc212b583015435d39a58537" dependencies = [ "bytes", - "prost-derive 0.11.6", + "prost-derive 0.11.8", ] [[package]] @@ -1298,37 +1298,36 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "prost-derive" -version = "0.11.6" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bda8c0881ea9f722eb9629376db3d0b903b462477c1aafcb0566610ac28ac5d" +checksum = "4ea9b0f8cbe5e15a8a042d030bd96668db28ecb567ec37d691971ff5731d2b1b" dependencies = [ "anyhow", "itertools", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "prost-types" -version = "0.11.6" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e0526209433e96d83d750dd81a99118edbc55739e7e61a46764fd2ad537788" +checksum = "379119666929a1afd7a043aa6cf96fa67a6dce9af60c88095a4686dbce4c9c88" dependencies = [ - "bytes", - "prost 0.11.6", + "prost 0.11.8", ] [[package]] name = "quote" -version = "1.0.23" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" dependencies = [ "proc-macro2", ] @@ -1350,9 +1349,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.7.1" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +checksum = "cce168fea28d3e05f158bda4576cf0c844d5045bc2cc3620fa0292ed5bb5814c" dependencies = [ "aho-corasick", "memchr", @@ -1361,9 +1360,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.6.28" +version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "rfc6979" @@ -1404,15 +1403,15 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "ryu" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" +checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" [[package]] name = "schemars" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a5fb6c61f29e723026dc8e923d94c694313212abbecbbe5f55a7748eec5b307" +checksum = "02c613288622e5f0c3fdc5dbd4db1c5fbe752746b1d1a56a0630b78fd00de44f" dependencies = [ "dyn-clone", "schemars_derive", @@ -1422,14 +1421,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f188d036977451159430f3b8dc82ec76364a42b7e289c2b18a9a18f4470058e9" +checksum = "109da1e6b197438deb6db99952990c7f959572794b80ff93707d55a232545e7c" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn", + "syn 1.0.109", ] [[package]] @@ -1448,15 +1447,15 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" +checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" [[package]] name = "serde" -version = "1.0.152" +version = "1.0.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9" dependencies = [ "serde_derive", ] @@ -1481,22 +1480,22 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718dc5fff5b36f99093fc49b280cfc96ce6fc824317783bff5a1fed0c7a64819" +checksum = "416bda436f9aab92e02c8e10d49a15ddd339cea90b6e340fe51ed97abb548294" dependencies = [ "serde", ] [[package]] name = "serde_derive" -version = "1.0.152" +version = "1.0.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.8", ] [[package]] @@ -1507,14 +1506,14 @@ checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea" dependencies = [ "itoa", "ryu", @@ -1523,13 +1522,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e" +checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.8", ] [[package]] @@ -1621,9 +1620,20 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.107" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcc02725fd69ab9f26eab07fad303e2497fad6fb9eba4f96c4d1687bdf704ad9" dependencies = [ "proc-macro2", "quote", @@ -1638,7 +1648,7 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "unicode-xid", ] @@ -1657,7 +1667,7 @@ dependencies = [ "k256", "num-traits", "once_cell", - "prost 0.11.6", + "prost 0.11.8", "prost-types", "ripemd160", "serde", @@ -1683,7 +1693,7 @@ dependencies = [ "flex-error", "num-derive", "num-traits", - "prost 0.11.6", + "prost 0.11.8", "prost-types", "serde", "serde_bytes", @@ -1710,7 +1720,7 @@ dependencies = [ "cosmrs", "cosmwasm-std", "osmosis-std 0.13.2", - "prost 0.11.6", + "prost 0.11.8", "serde", "serde_json", "thiserror", @@ -1724,22 +1734,22 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.38" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" +checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.38" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.8", ] [[package]] @@ -1779,9 +1789,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" +checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" [[package]] name = "unicode-xid" @@ -1803,9 +1813,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.83" +version = "0.2.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" +checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -1813,24 +1823,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.83" +version = "0.2.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" +checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn", + "syn 1.0.109", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.83" +version = "0.2.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" +checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -1838,22 +1848,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.83" +version = "0.2.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" +checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.83" +version = "0.2.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" +checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" [[package]] name = "which" @@ -1914,6 +1924,6 @@ checksum = "44bf07cb3e50ea2003396695d58bf46bc9887a1f362260446fad6bc4e79bd36c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "synstructure", ] diff --git a/Cargo.toml b/Cargo.toml index b3ff30e40..b9e801f02 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,7 +38,7 @@ cw2 = { git = "https://github.com/mars-protocol/cw-plus", rev = "4 cw-multi-test = "0.16.1" cw-storage-plus = "1.0.1" cw-utils = "1.0.1" -mars-owner = "1.0.0" +mars-owner = { version = "1.0.0", features = ["emergency-owner"] } osmosis-std = "0.14.0" osmosis-test-tube = "14.1.1" prost = { version = "0.11.5", default-features = false, features = ["prost-derive"] } diff --git a/contracts/red-bank/src/contract.rs b/contracts/red-bank/src/contract.rs index e01e80369..e467c5c76 100644 --- a/contracts/red-bank/src/contract.rs +++ b/contracts/red-bank/src/contract.rs @@ -22,9 +22,6 @@ pub fn execute( ) -> Result { match msg { ExecuteMsg::UpdateOwner(update) => execute::update_owner(deps, info, update), - ExecuteMsg::UpdateEmergencyOwner(update) => { - execute::update_emergency_owner(deps, info, update) - } ExecuteMsg::UpdateConfig { config, } => execute::update_config(deps, info, config), diff --git a/contracts/red-bank/src/execute.rs b/contracts/red-bank/src/execute.rs index a745295f4..3a6046aee 100644 --- a/contracts/red-bank/src/execute.rs +++ b/contracts/red-bank/src/execute.rs @@ -26,9 +26,7 @@ use crate::{ apply_accumulated_interests, get_scaled_debt_amount, get_scaled_liquidity_amount, get_underlying_debt_amount, get_underlying_liquidity_amount, update_interest_rates, }, - state::{ - COLLATERALS, CONFIG, DEBTS, EMERGENCY_OWNER, MARKETS, OWNER, UNCOLLATERALIZED_LOAN_LIMITS, - }, + state::{COLLATERALS, CONFIG, DEBTS, MARKETS, OWNER, UNCOLLATERALIZED_LOAN_LIMITS}, user::User, }; @@ -69,14 +67,6 @@ pub fn instantiate(deps: DepsMut, msg: InstantiateMsg) -> Result Result { - Ok(EMERGENCY_OWNER.update(deps, info, update)?) -} - /// Update config pub fn update_config( deps: DepsMut, @@ -216,7 +198,7 @@ pub fn update_asset( ) -> Result { if OWNER.is_owner(deps.storage, &info.sender)? { update_asset_by_owner(deps, &env, &denom, params) - } else if EMERGENCY_OWNER.is_owner(deps.storage, &info.sender)? { + } else if OWNER.is_emergency_owner(deps.storage, &info.sender)? { update_asset_by_emergency_owner(deps, &denom, params) } else { Err(OwnerError::NotOwner {}.into()) diff --git a/contracts/red-bank/src/query.rs b/contracts/red-bank/src/query.rs index 5db075b89..5fea2642b 100644 --- a/contracts/red-bank/src/query.rs +++ b/contracts/red-bank/src/query.rs @@ -15,9 +15,7 @@ use crate::{ get_scaled_debt_amount, get_scaled_liquidity_amount, get_underlying_debt_amount, get_underlying_liquidity_amount, }, - state::{ - COLLATERALS, CONFIG, DEBTS, EMERGENCY_OWNER, MARKETS, OWNER, UNCOLLATERALIZED_LOAN_LIMITS, - }, + state::{COLLATERALS, CONFIG, DEBTS, MARKETS, OWNER, UNCOLLATERALIZED_LOAN_LIMITS}, }; const DEFAULT_LIMIT: u32 = 5; @@ -25,13 +23,11 @@ const MAX_LIMIT: u32 = 10; pub fn query_config(deps: Deps) -> StdResult { let owner_state = OWNER.query(deps.storage)?; - let emergency_owner_state = EMERGENCY_OWNER.query(deps.storage)?; let config = CONFIG.load(deps.storage)?; Ok(ConfigResponse { owner: owner_state.owner, proposed_new_owner: owner_state.proposed, - emergency_owner: emergency_owner_state.owner, - proposed_new_emergency_owner: emergency_owner_state.proposed, + emergency_owner: owner_state.emergency_owner, address_provider: config.address_provider.to_string(), close_factor: config.close_factor, }) diff --git a/contracts/red-bank/src/state.rs b/contracts/red-bank/src/state.rs index 50cf3437b..4eaf0be3b 100644 --- a/contracts/red-bank/src/state.rs +++ b/contracts/red-bank/src/state.rs @@ -4,7 +4,6 @@ use mars_owner::Owner; use mars_red_bank_types::red_bank::{Collateral, Config, Debt, Market}; pub const OWNER: Owner = Owner::new("owner"); -pub const EMERGENCY_OWNER: Owner = Owner::new("emergency_owner"); pub const CONFIG: Item> = Item::new("config"); pub const MARKETS: Map<&str, Market> = Map::new("markets"); pub const COLLATERALS: Map<(&Addr, &str), Collateral> = Map::new("collaterals"); diff --git a/contracts/red-bank/tests/helpers.rs b/contracts/red-bank/tests/helpers.rs index e80550ec8..7a940a0ce 100644 --- a/contracts/red-bank/tests/helpers.rs +++ b/contracts/red-bank/tests/helpers.rs @@ -80,7 +80,6 @@ pub fn th_setup(contract_balances: &[Coin]) -> OwnedDeps, signer: &SigningAccount) -> (Strin OSMOSIS_RED_BANK_CONTRACT_NAME, &InstantiateRedBank { owner: signer.address(), - emergency_owner: signer.address(), config: CreateOrUpdateConfig { address_provider: Some(addr_provider_addr.clone()), close_factor: Some(Decimal::percent(10)), diff --git a/packages/testing/src/integration/mock_env.rs b/packages/testing/src/integration/mock_env.rs index 1fc7532cf..4a51d010a 100644 --- a/packages/testing/src/integration/mock_env.rs +++ b/packages/testing/src/integration/mock_env.rs @@ -621,7 +621,6 @@ impl MockEnvBuilder { self.owner.clone(), &red_bank::InstantiateMsg { owner: self.owner.to_string(), - emergency_owner: self.emergency_owner.to_string(), config: CreateOrUpdateConfig { address_provider: Some(address_provider_addr.to_string()), close_factor: Some(self.close_factor), diff --git a/packages/types/src/red_bank/msg.rs b/packages/types/src/red_bank/msg.rs index c7ad2029b..3a29d96e2 100644 --- a/packages/types/src/red_bank/msg.rs +++ b/packages/types/src/red_bank/msg.rs @@ -8,8 +8,6 @@ use crate::red_bank::InterestRateModel; pub struct InstantiateMsg { /// Contract's owner pub owner: String, - /// Contract's emergency owner - pub emergency_owner: String, /// Market configuration pub config: CreateOrUpdateConfig, } @@ -19,9 +17,6 @@ pub enum ExecuteMsg { /// Manages owner state UpdateOwner(OwnerUpdate), - /// Manages emergency owner state - UpdateEmergencyOwner(OwnerUpdate), - /// Update contract config (only owner can call) UpdateConfig { config: CreateOrUpdateConfig, diff --git a/packages/types/src/red_bank/types.rs b/packages/types/src/red_bank/types.rs index c6cd1202c..20b37bc10 100644 --- a/packages/types/src/red_bank/types.rs +++ b/packages/types/src/red_bank/types.rs @@ -72,8 +72,6 @@ pub struct ConfigResponse { pub proposed_new_owner: Option, /// The contract's emergency owner pub emergency_owner: Option, - /// The contract's proposed emergency owner - pub proposed_new_emergency_owner: Option, /// Address provider returns addresses for all protocol contracts pub address_provider: String, /// Maximum percentage of outstanding debt that can be covered by a liquidator From 5a7100ac50471a64dec1c3838758cdfe6ce29402 Mon Sep 17 00:00:00 2001 From: Piotr Babel Date: Fri, 24 Mar 2023 13:31:01 +0100 Subject: [PATCH 2/4] Update schema. --- .../mars-address-provider.json | 29 ++++++++++ schemas/mars-incentives/mars-incentives.json | 29 ++++++++++ .../mars-oracle-osmosis.json | 29 ++++++++++ schemas/mars-red-bank/mars-red-bank.json | 54 ++++++++++--------- .../mars-rewards-collector-osmosis.json | 29 ++++++++++ .../MarsAddressProvider.types.ts | 6 +++ .../mars-incentives/MarsIncentives.types.ts | 6 +++ .../MarsOracleOsmosis.types.ts | 6 +++ .../mars-red-bank/MarsRedBank.client.ts | 22 -------- .../mars-red-bank/MarsRedBank.react-query.ts | 20 ------- .../mars-red-bank/MarsRedBank.types.ts | 11 ++-- .../MarsRewardsCollectorOsmosis.types.ts | 6 +++ 12 files changed, 175 insertions(+), 72 deletions(-) diff --git a/schemas/mars-address-provider/mars-address-provider.json b/schemas/mars-address-provider/mars-address-provider.json index e3967e1b3..e3c3cea06 100644 --- a/schemas/mars-address-provider/mars-address-provider.json +++ b/schemas/mars-address-provider/mars-address-provider.json @@ -146,6 +146,35 @@ "enum": [ "abolish_owner_role" ] + }, + { + "description": "A separate entity managed by Owner that can be used for granting specific emergency powers.", + "type": "object", + "required": [ + "set_emergency_owner" + ], + "properties": { + "set_emergency_owner": { + "type": "object", + "required": [ + "emergency_owner" + ], + "properties": { + "emergency_owner": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "description": "Remove the entity in the Emergency Owner role", + "type": "string", + "enum": [ + "clear_emergency_owner" + ] } ] } diff --git a/schemas/mars-incentives/mars-incentives.json b/schemas/mars-incentives/mars-incentives.json index f72b53ec6..373dde4cb 100644 --- a/schemas/mars-incentives/mars-incentives.json +++ b/schemas/mars-incentives/mars-incentives.json @@ -238,6 +238,35 @@ "enum": [ "abolish_owner_role" ] + }, + { + "description": "A separate entity managed by Owner that can be used for granting specific emergency powers.", + "type": "object", + "required": [ + "set_emergency_owner" + ], + "properties": { + "set_emergency_owner": { + "type": "object", + "required": [ + "emergency_owner" + ], + "properties": { + "emergency_owner": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "description": "Remove the entity in the Emergency Owner role", + "type": "string", + "enum": [ + "clear_emergency_owner" + ] } ] }, diff --git a/schemas/mars-oracle-osmosis/mars-oracle-osmosis.json b/schemas/mars-oracle-osmosis/mars-oracle-osmosis.json index 78bda7d03..01b6a5527 100644 --- a/schemas/mars-oracle-osmosis/mars-oracle-osmosis.json +++ b/schemas/mars-oracle-osmosis/mars-oracle-osmosis.json @@ -391,6 +391,35 @@ "enum": [ "abolish_owner_role" ] + }, + { + "description": "A separate entity managed by Owner that can be used for granting specific emergency powers.", + "type": "object", + "required": [ + "set_emergency_owner" + ], + "properties": { + "set_emergency_owner": { + "type": "object", + "required": [ + "emergency_owner" + ], + "properties": { + "emergency_owner": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "description": "Remove the entity in the Emergency Owner role", + "type": "string", + "enum": [ + "clear_emergency_owner" + ] } ] } diff --git a/schemas/mars-red-bank/mars-red-bank.json b/schemas/mars-red-bank/mars-red-bank.json index a7972eb0a..4c7b02ce0 100644 --- a/schemas/mars-red-bank/mars-red-bank.json +++ b/schemas/mars-red-bank/mars-red-bank.json @@ -8,7 +8,6 @@ "type": "object", "required": [ "config", - "emergency_owner", "owner" ], "properties": { @@ -20,10 +19,6 @@ } ] }, - "emergency_owner": { - "description": "Contract's emergency owner", - "type": "string" - }, "owner": { "description": "Contract's owner", "type": "string" @@ -76,19 +71,6 @@ }, "additionalProperties": false }, - { - "description": "Manages emergency owner state", - "type": "object", - "required": [ - "update_emergency_owner" - ], - "properties": { - "update_emergency_owner": { - "$ref": "#/definitions/OwnerUpdate" - } - }, - "additionalProperties": false - }, { "description": "Update contract config (only owner can call)", "type": "object", @@ -603,6 +585,35 @@ "enum": [ "abolish_owner_role" ] + }, + { + "description": "A separate entity managed by Owner that can be used for granting specific emergency powers.", + "type": "object", + "required": [ + "set_emergency_owner" + ], + "properties": { + "set_emergency_owner": { + "type": "object", + "required": [ + "emergency_owner" + ], + "properties": { + "emergency_owner": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "description": "Remove the entity in the Emergency Owner role", + "type": "string", + "enum": [ + "clear_emergency_owner" + ] } ] }, @@ -1040,13 +1051,6 @@ "null" ] }, - "proposed_new_emergency_owner": { - "description": "The contract's proposed emergency owner", - "type": [ - "string", - "null" - ] - }, "proposed_new_owner": { "description": "The contract's proposed owner", "type": [ diff --git a/schemas/mars-rewards-collector-osmosis/mars-rewards-collector-osmosis.json b/schemas/mars-rewards-collector-osmosis/mars-rewards-collector-osmosis.json index c4dc6b7e5..d76cde937 100644 --- a/schemas/mars-rewards-collector-osmosis/mars-rewards-collector-osmosis.json +++ b/schemas/mars-rewards-collector-osmosis/mars-rewards-collector-osmosis.json @@ -303,6 +303,35 @@ "enum": [ "abolish_owner_role" ] + }, + { + "description": "A separate entity managed by Owner that can be used for granting specific emergency powers.", + "type": "object", + "required": [ + "set_emergency_owner" + ], + "properties": { + "set_emergency_owner": { + "type": "object", + "required": [ + "emergency_owner" + ], + "properties": { + "emergency_owner": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + { + "description": "Remove the entity in the Emergency Owner role", + "type": "string", + "enum": [ + "clear_emergency_owner" + ] } ] }, diff --git a/scripts/types/generated/mars-address-provider/MarsAddressProvider.types.ts b/scripts/types/generated/mars-address-provider/MarsAddressProvider.types.ts index 7d7332706..e47f3d867 100644 --- a/scripts/types/generated/mars-address-provider/MarsAddressProvider.types.ts +++ b/scripts/types/generated/mars-address-provider/MarsAddressProvider.types.ts @@ -33,6 +33,12 @@ export type OwnerUpdate = | 'clear_proposed' | 'accept_proposed' | 'abolish_owner_role' + | { + set_emergency_owner: { + emergency_owner: string + } + } + | 'clear_emergency_owner' export type QueryMsg = | { config: {} diff --git a/scripts/types/generated/mars-incentives/MarsIncentives.types.ts b/scripts/types/generated/mars-incentives/MarsIncentives.types.ts index 2e8c10d9a..495f23929 100644 --- a/scripts/types/generated/mars-incentives/MarsIncentives.types.ts +++ b/scripts/types/generated/mars-incentives/MarsIncentives.types.ts @@ -50,6 +50,12 @@ export type OwnerUpdate = | 'clear_proposed' | 'accept_proposed' | 'abolish_owner_role' + | { + set_emergency_owner: { + emergency_owner: string + } + } + | 'clear_emergency_owner' export type QueryMsg = | { config: {} diff --git a/scripts/types/generated/mars-oracle-osmosis/MarsOracleOsmosis.types.ts b/scripts/types/generated/mars-oracle-osmosis/MarsOracleOsmosis.types.ts index 9b65cb2b7..66b92fc55 100644 --- a/scripts/types/generated/mars-oracle-osmosis/MarsOracleOsmosis.types.ts +++ b/scripts/types/generated/mars-oracle-osmosis/MarsOracleOsmosis.types.ts @@ -104,6 +104,12 @@ export type OwnerUpdate = | 'clear_proposed' | 'accept_proposed' | 'abolish_owner_role' + | { + set_emergency_owner: { + emergency_owner: string + } + } + | 'clear_emergency_owner' export interface DowntimeDetector { downtime: Downtime recovery: number diff --git a/scripts/types/generated/mars-red-bank/MarsRedBank.client.ts b/scripts/types/generated/mars-red-bank/MarsRedBank.client.ts index a6e0b0afb..87cc28d65 100644 --- a/scripts/types/generated/mars-red-bank/MarsRedBank.client.ts +++ b/scripts/types/generated/mars-red-bank/MarsRedBank.client.ts @@ -314,11 +314,6 @@ export interface MarsRedBankInterface extends MarsRedBankReadOnlyInterface { memo?: string, funds?: Coin[], ) => Promise - updateEmergencyOwner: ( - fee?: number | StdFee | 'auto', - memo?: string, - funds?: Coin[], - ) => Promise updateConfig: ( { config, @@ -453,7 +448,6 @@ export class MarsRedBankClient extends MarsRedBankQueryClient implements MarsRed this.sender = sender this.contractAddress = contractAddress this.updateOwner = this.updateOwner.bind(this) - this.updateEmergencyOwner = this.updateEmergencyOwner.bind(this) this.updateConfig = this.updateConfig.bind(this) this.initAsset = this.initAsset.bind(this) this.updateAsset = this.updateAsset.bind(this) @@ -482,22 +476,6 @@ export class MarsRedBankClient extends MarsRedBankQueryClient implements MarsRed funds, ) } - updateEmergencyOwner = async ( - fee: number | StdFee | 'auto' = 'auto', - memo?: string, - funds?: Coin[], - ): Promise => { - return await this.client.execute( - this.sender, - this.contractAddress, - { - update_emergency_owner: {}, - }, - fee, - memo, - funds, - ) - } updateConfig = async ( { config, diff --git a/scripts/types/generated/mars-red-bank/MarsRedBank.react-query.ts b/scripts/types/generated/mars-red-bank/MarsRedBank.react-query.ts index 74e68fa99..cd1bcc2d9 100644 --- a/scripts/types/generated/mars-red-bank/MarsRedBank.react-query.ts +++ b/scripts/types/generated/mars-red-bank/MarsRedBank.react-query.ts @@ -673,26 +673,6 @@ export function useMarsRedBankUpdateConfigMutation( options, ) } -export interface MarsRedBankUpdateEmergencyOwnerMutation { - client: MarsRedBankClient - args?: { - fee?: number | StdFee | 'auto' - memo?: string - funds?: Coin[] - } -} -export function useMarsRedBankUpdateEmergencyOwnerMutation( - options?: Omit< - UseMutationOptions, - 'mutationFn' - >, -) { - return useMutation( - ({ client, msg, args: { fee, memo, funds } = {} }) => - client.updateEmergencyOwner(msg, fee, memo, funds), - options, - ) -} export interface MarsRedBankUpdateOwnerMutation { client: MarsRedBankClient args?: { diff --git a/scripts/types/generated/mars-red-bank/MarsRedBank.types.ts b/scripts/types/generated/mars-red-bank/MarsRedBank.types.ts index 1e671af88..df95006e0 100644 --- a/scripts/types/generated/mars-red-bank/MarsRedBank.types.ts +++ b/scripts/types/generated/mars-red-bank/MarsRedBank.types.ts @@ -8,7 +8,6 @@ export type Decimal = string export interface InstantiateMsg { config: CreateOrUpdateConfig - emergency_owner: string owner: string } export interface CreateOrUpdateConfig { @@ -19,9 +18,6 @@ export type ExecuteMsg = | { update_owner: OwnerUpdate } - | { - update_emergency_owner: OwnerUpdate - } | { update_config: { config: CreateOrUpdateConfig @@ -92,6 +88,12 @@ export type OwnerUpdate = | 'clear_proposed' | 'accept_proposed' | 'abolish_owner_role' + | { + set_emergency_owner: { + emergency_owner: string + } + } + | 'clear_emergency_owner' export type Uint128 = string export interface InitOrUpdateAssetParams { borrow_enabled?: boolean | null @@ -197,7 +199,6 @@ export interface ConfigResponse { close_factor: Decimal emergency_owner?: string | null owner?: string | null - proposed_new_emergency_owner?: string | null proposed_new_owner?: string | null } export interface Market { diff --git a/scripts/types/generated/mars-rewards-collector-osmosis/MarsRewardsCollectorOsmosis.types.ts b/scripts/types/generated/mars-rewards-collector-osmosis/MarsRewardsCollectorOsmosis.types.ts index 6a1edecc9..92dfe51c0 100644 --- a/scripts/types/generated/mars-rewards-collector-osmosis/MarsRewardsCollectorOsmosis.types.ts +++ b/scripts/types/generated/mars-rewards-collector-osmosis/MarsRewardsCollectorOsmosis.types.ts @@ -62,6 +62,12 @@ export type OwnerUpdate = | 'clear_proposed' | 'accept_proposed' | 'abolish_owner_role' + | { + set_emergency_owner: { + emergency_owner: string + } + } + | 'clear_emergency_owner' export type OsmosisRoute = SwapAmountInRoute[] export type Uint128 = string export interface UpdateConfig { From fab5b3879e89fdc4137c6afbbb38e12698f14996 Mon Sep 17 00:00:00 2001 From: Piotr Babel Date: Fri, 24 Mar 2023 13:58:18 +0100 Subject: [PATCH 3/4] Fix clippy. --- contracts/red-bank/tests/test_update_emergency_owner.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/contracts/red-bank/tests/test_update_emergency_owner.rs b/contracts/red-bank/tests/test_update_emergency_owner.rs index 8b28bbdc4..c984b83d9 100644 --- a/contracts/red-bank/tests/test_update_emergency_owner.rs +++ b/contracts/red-bank/tests/test_update_emergency_owner.rs @@ -1,8 +1,5 @@ use cosmwasm_std::testing::{mock_env, mock_info}; -use mars_owner::{ - OwnerError::{NotOwner, NotProposedOwner}, - OwnerUpdate, -}; +use mars_owner::{OwnerError::NotOwner, OwnerUpdate}; use mars_red_bank::{contract::execute, error::ContractError}; use mars_red_bank_types::red_bank::{ConfigResponse, ExecuteMsg, QueryMsg}; From f8fe329d3c7d80c359976d7998dd95d117f66fc2 Mon Sep 17 00:00:00 2001 From: Piotr Babel Date: Tue, 28 Mar 2023 16:50:46 +0200 Subject: [PATCH 4/4] Fix clippy. --- contracts/red-bank/tests/test_query.rs | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/contracts/red-bank/tests/test_query.rs b/contracts/red-bank/tests/test_query.rs index dd4316289..8539dccaf 100644 --- a/contracts/red-bank/tests/test_query.rs +++ b/contracts/red-bank/tests/test_query.rs @@ -16,22 +16,10 @@ fn query_collateral() { let user_addr = Addr::unchecked("user"); // Setup first market - let market_1 = th_init_market( - deps.as_mut(), - "uosmo", - &Market { - ..Default::default() - }, - ); + let market_1 = th_init_market(deps.as_mut(), "uosmo", &Default::default()); // Setup second market - let market_2 = th_init_market( - deps.as_mut(), - "uusd", - &Market { - ..Default::default() - }, - ); + let market_2 = th_init_market(deps.as_mut(), "uusd", &Default::default()); let amount_1 = Uint128::new(12345); let amount_2 = Uint128::new(54321);