diff --git a/.gitmodules b/.gitmodules index 38a749cf8..1fb2a43cd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,10 +1,3 @@ -[submodule "anchor"] - path = 3rdparty/anchor - url = https://github.com/blockworks-foundation/anchor.git - branch = v0.25.0-mangov4 -[submodule "switchboard-v2"] - path = 3rdparty/switchboard-v2 - url = https://github.com/blockworks-foundation/sbv2-solana.git [submodule "3rdparty/fixed"] path = 3rdparty/fixed url = https://gitlab.com/ckamm/fixed.git diff --git a/3rdparty/anchor b/3rdparty/anchor deleted file mode 160000 index b3707b1fa..000000000 --- a/3rdparty/anchor +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b3707b1faaf6816cb3dd600074c81a39d373e952 diff --git a/3rdparty/switchboard-v2 b/3rdparty/switchboard-v2 deleted file mode 160000 index 97ed7b12d..000000000 --- a/3rdparty/switchboard-v2 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 97ed7b12de198f9dca2637af0ce8f5823cc3a0e3 diff --git a/Cargo.lock b/Cargo.lock index a1aa1c7b7..bf55098cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -103,130 +103,87 @@ checksum = "6b2d54853319fd101b8dd81de382bcbf3e03410a64d8928bbee85a3e7dcde483" [[package]] name = "anchor-attribute-access-control" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d5e1a413b311b039d29b61d0dbb401c9dbf04f792497ceca87593454bf6d7dd" dependencies = [ "anchor-syn", "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "regex", "syn 1.0.105", ] [[package]] name = "anchor-attribute-account" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cca9aeaf633c6e2365fed0525dcac68610be58eee5dc69d3b86fe0b1d4b320b9" dependencies = [ "anchor-syn", "anyhow", "bs58 0.4.0", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustversion", "syn 1.0.105", ] [[package]] name = "anchor-attribute-constant" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "788e44f9e8501dabeb6f9229da0f3268fb2ae3208912608ffaa056a72031296f" dependencies = [ "anchor-syn", - "proc-macro2 1.0.47", + "proc-macro2 1.0.56", "syn 1.0.105", ] [[package]] name = "anchor-attribute-error" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea0c4d8c7e4a2605ede6fcdced9690288b2f74e24768619a85229d57e597bc97" dependencies = [ "anchor-syn", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] [[package]] name = "anchor-attribute-event" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a3b07d5c5d87b5edc72428b447b8e9ee1143b83dd1afc6a6b1d352c6a6164d8" dependencies = [ "anchor-syn", "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", -] - -[[package]] -name = "anchor-attribute-interface" -version = "0.25.0" -dependencies = [ - "anchor-syn", - "anyhow", - "heck 0.3.3", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] [[package]] name = "anchor-attribute-program" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b22ad0445115dbea5869b1d062da49ae125abed9132fc20c33227f25e42dfa6b" dependencies = [ "anchor-syn", "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] -[[package]] -name = "anchor-attribute-state" -version = "0.25.0" -dependencies = [ - "anchor-syn", - "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", -] - -[[package]] -name = "anchor-cli" -version = "0.25.0" -dependencies = [ - "anchor-client", - "anchor-lang", - "anchor-syn", - "anyhow", - "cargo_toml", - "chrono", - "clap 3.2.23", - "dirs 3.0.2", - "flate2 1.0.25", - "heck 0.3.3", - "pathdiff", - "portpicker", - "rand 0.7.3", - "reqwest", - "semver 1.0.14", - "serde", - "serde_json", - "shellexpand", - "solana-cli-config", - "solana-client", - "solana-faucet", - "solana-program", - "solana-sdk", - "syn 1.0.105", - "tar", - "tokio", - "toml", - "walkdir", -] - [[package]] name = "anchor-client" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04c06e06497b5b4f392845e0d04dde8374fd244fa2832dd0e5c27bfd99cb0342" dependencies = [ "anchor-lang", "anyhow", @@ -241,28 +198,42 @@ dependencies = [ [[package]] name = "anchor-derive-accounts" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48daeff6781ba2f02961b0ad211feb9a2de75af345d42c62b1a252fd4dfb0724" dependencies = [ "anchor-syn", "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", + "syn 1.0.105", +] + +[[package]] +name = "anchor-derive-space" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4fe2886f92c4f33ec1b2b8b2b43ca1b9070cf4929e63c7eaaa09a9f2c0d5123" +dependencies = [ + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] [[package]] name = "anchor-lang" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbbe5d1c7c057c6d63b4f2f538a320e4a22111126c9966340c3d9490e2f15ed1" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", "anchor-attribute-constant", "anchor-attribute-error", "anchor-attribute-event", - "anchor-attribute-interface", "anchor-attribute-program", - "anchor-attribute-state", "anchor-derive-accounts", + "anchor-derive-space", "arrayref", "base64 0.13.1", "bincode", @@ -274,26 +245,28 @@ dependencies = [ [[package]] name = "anchor-spl" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75cc8066fbd45e0e03edf48342c79265aa34ca76cefeace48ef6c402b6946665" dependencies = [ "anchor-lang", - "mpl-token-metadata", - "serum_dex 0.4.0", "solana-program", "spl-associated-token-account", "spl-token", + "spl-token-2022 0.5.0", ] [[package]] name = "anchor-syn" -version = "0.25.0" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11cb31fe143aedb36fc41409ea072aa0b840cbea727e62eb2ff6e7b6cea036ff" dependencies = [ "anyhow", "bs58 0.3.1", "heck 0.3.3", - "proc-macro2 1.0.47", - "proc-macro2-diagnostics", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "serde", "serde_json", "sha2 0.9.9", @@ -377,8 +350,8 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "synstructure", ] @@ -389,8 +362,8 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -466,8 +439,8 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25f9db3b38af870bf7e5cc649167533b493928e50744e2c30ae350230b414670" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -477,8 +450,8 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10f203db73a71dfa2fb6dd22763990fa26f3d2625a6da2da900d23b87d26be27" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -488,8 +461,8 @@ version = "0.1.59" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "31e6e93155431f3931513b243d371981bb2770112b370c82745a1d19d2f99364" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -658,8 +631,8 @@ dependencies = [ "lazy_static", "lazycell", "peeking_take_while", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "regex", "rustc-hash", "shlex", @@ -759,7 +732,7 @@ dependencies = [ "borsh-derive-internal", "borsh-schema-derive-internal", "proc-macro-crate 0.1.5", - "proc-macro2 1.0.47", + "proc-macro2 1.0.56", "syn 1.0.105", ] @@ -769,8 +742,8 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -780,8 +753,8 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -859,45 +832,24 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" -[[package]] -name = "bytecheck" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d11cac2c12b5adc6570dad2ee1b87eff4955dac476fe12d81e5fdd352e52406f" -dependencies = [ - "bytecheck_derive", - "ptr_meta", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e576ebe98e605500b3c8041bb888e966653577172df6dd97398714eb30b9bf" -dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", -] - [[package]] name = "bytemuck" -version = "1.12.3" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaa3a8d9a1ca92e282c96a32d6511b695d7d994d1d102ba85d279f9b2756947f" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.3.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fe233b960f12f8007e3db2d136e3cb1c291bfd7396e384ee76025fc1a3932b4" +checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", + "proc-macro2 1.0.56", + "quote 1.0.27", + "syn 2.0.15", ] [[package]] @@ -953,17 +905,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "cargo_toml" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c3596addfb02dcdc06f5252ddda9f3785f9230f5827fb4284645240fa05ad92" -dependencies = [ - "serde", - "serde_derive", - "toml", -] - [[package]] name = "cc" version = "1.0.77" @@ -999,8 +940,8 @@ name = "checked_math" version = "0.1.0" dependencies = [ "proc-macro-error", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "trybuild", ] @@ -1100,8 +1041,8 @@ checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" dependencies = [ "heck 0.4.0", "proc-macro-error", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1377,8 +1318,8 @@ dependencies = [ "cc", "codespan-reporting", "once_cell", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "scratch", "syn 1.0.105", ] @@ -1395,8 +1336,8 @@ version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1362b0ddcfc4eb0a1f57b68bd77dd99f0e826958a96abd0ae9bd092e114ffed6" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1463,8 +1404,8 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1475,8 +1416,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ "convert_case", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustc_version 0.4.0", "syn 1.0.105", ] @@ -1530,15 +1471,6 @@ dependencies = [ "walkdir", ] -[[package]] -name = "dirs" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30baa043103c9d0c2a57cf537cc2f35623889dc0d405e6c3cccfadbc81c71309" -dependencies = [ - "dirs-sys", -] - [[package]] name = "dirs" version = "4.0.0" @@ -1586,8 +1518,8 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1674,8 +1606,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb0188e3c3ba8df5753894d54461f0e39bc91741dc5b22e1c46999ec2c71f4e4" dependencies = [ "enum-ordinalize", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1715,8 +1647,8 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8958699f9359f0b04e691a13850d48b7de329138023876d07cbd024c2c820598" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1728,8 +1660,8 @@ checksum = "a62bb1df8b45ecb7ffa78dca1c17a438fb193eb083db0b1b494d2a61bcb5096a" dependencies = [ "num-bigint 0.4.3", "num-traits", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustc_version 0.4.0", "syn 1.0.105", ] @@ -1741,8 +1673,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eb359f1476bf611266ac1f5355bc14aeca37b299d0ebccc038ee7058891c9cb" dependencies = [ "once_cell", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -1761,8 +1693,8 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "946ee94e3dbf58fdd324f9ce245c7b238d46a66f00e86a020b71996349e46cce" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -2009,8 +1941,8 @@ version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -2570,15 +2502,6 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec947b7a4ce12e3b87e353abae7ce124d025b6c7d6c5aea5cc0bcf92e9510ded" -[[package]] -name = "itertools" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.10.5" @@ -2697,8 +2620,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b939a78fa820cdfcb7ee7484466746a7377760970f6f9c6fe19f9edcc8a38d2" dependencies = [ "proc-macro-crate 0.1.5", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -3005,7 +2928,7 @@ dependencies = [ [[package]] name = "mango-v4" -version = "0.15.0" +version = "0.16.0" dependencies = [ "anchor-lang", "anchor-spl", @@ -3019,7 +2942,7 @@ dependencies = [ "derivative", "env_logger 0.9.3", "fixed", - "itertools 0.10.5", + "itertools", "lazy_static", "log 0.4.17", "num 0.4.0", @@ -3027,7 +2950,7 @@ dependencies = [ "pyth-sdk-solana", "rand 0.8.5", "serde", - "serum_dex 0.5.10", + "serum_dex", "solana-address-lookup-table-program", "solana-logger", "solana-program", @@ -3058,7 +2981,7 @@ dependencies = [ "mango-v4", "mango-v4-client", "pyth-sdk-solana", - "serum_dex 0.5.10", + "serum_dex", "solana-client", "solana-sdk", "tokio", @@ -3079,7 +3002,7 @@ dependencies = [ "bincode", "fixed", "futures 0.3.25", - "itertools 0.10.5", + "itertools", "jsonrpc-core 18.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client", "log 0.4.17", @@ -3089,7 +3012,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "serum_dex 0.5.10", + "serum_dex", "shellexpand", "solana-account-decoder", "solana-address-lookup-table-program", @@ -3115,14 +3038,14 @@ dependencies = [ "env_logger 0.8.4", "fixed", "futures 0.3.25", - "itertools 0.10.5", + "itertools", "lazy_static", "log 0.4.17", "mango-v4", "mango-v4-client", "prometheus", "pyth-sdk-solana", - "serum_dex 0.5.10", + "serum_dex", "solana-client", "solana-sdk", "tokio", @@ -3149,7 +3072,7 @@ dependencies = [ "futures 0.3.25", "futures-core", "futures-util", - "itertools 0.10.5", + "itertools", "jemallocator", "jsonrpc-core 18.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client", @@ -3162,7 +3085,7 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "serum_dex 0.5.10", + "serum_dex", "shellexpand", "solana-account-decoder", "solana-client", @@ -3195,7 +3118,7 @@ dependencies = [ "futures 0.3.25", "futures-core", "futures-util", - "itertools 0.10.5", + "itertools", "jemallocator", "jsonrpc-core 18.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client", @@ -3209,7 +3132,7 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "serum_dex 0.5.10", + "serum_dex", "shellexpand", "solana-account-decoder", "solana-client", @@ -3403,43 +3326,11 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] -[[package]] -name = "mpl-token-metadata" -version = "1.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e719d7e0b5a9d97c7fd4d6f52ebfc32f1e3942e068173e47355f8c275656488a" -dependencies = [ - "arrayref", - "borsh", - "mpl-token-vault", - "num-derive", - "num-traits", - "shank", - "solana-program", - "spl-associated-token-account", - "spl-token", - "thiserror", -] - -[[package]] -name = "mpl-token-vault" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ade4ef15bc06a6033076c4ff28cba9b42521df5ec61211d6f419415ace2746a" -dependencies = [ - "borsh", - "num-derive", - "num-traits", - "solana-program", - "spl-token", - "thiserror", -] - [[package]] name = "multimap" version = "0.8.3" @@ -3599,8 +3490,8 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -3670,22 +3561,22 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.7" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ "proc-macro-crate 1.2.1", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -3743,8 +3634,8 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -3820,8 +3711,8 @@ checksum = "4a0d9d1a6191c4f391f87219d1ea42b23f09ee84d64763cd05ee6ea88d9f384d" dependencies = [ "Inflector", "proc-macro-error", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -3899,12 +3790,6 @@ dependencies = [ "windows-sys 0.42.0", ] -[[package]] -name = "pathdiff" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" - [[package]] name = "pbkdf2" version = "0.4.0" @@ -3994,8 +3879,8 @@ version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -4046,15 +3931,6 @@ dependencies = [ "universal-hash", ] -[[package]] -name = "portpicker" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be97d76faf1bfab666e1375477b23fde79eccf0276e9b63b92a39d676a889ba9" -dependencies = [ - "rand 0.8.5", -] - [[package]] name = "ppv-lite86" version = "0.2.17" @@ -4067,7 +3943,7 @@ version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c142c0e46b57171fe0c528bee8c5b7569e80f0c17e377cd0e30ea57dbc11bb51" dependencies = [ - "proc-macro2 1.0.47", + "proc-macro2 1.0.56", "syn 1.0.105", ] @@ -4108,8 +3984,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "version_check 0.9.4", ] @@ -4120,8 +3996,8 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "version_check 0.9.4", ] @@ -4136,26 +4012,13 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.47" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725" +checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bf29726d67464d49fa6224a1d07936a8c08bb3fba727c7493f6cf1616fdaada" -dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", - "version_check 0.9.4", - "yansi", -] - [[package]] name = "prometheus" version = "0.13.3" @@ -4189,7 +4052,7 @@ checksum = "276470f7f281b0ed53d2ae42dd52b4a8d08853a3c70e7fe95882acbb98a6ae94" dependencies = [ "bytes 1.3.0", "heck 0.4.0", - "itertools 0.10.5", + "itertools", "lazy_static", "log 0.4.17", "multimap", @@ -4210,9 +4073,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "164ae68b6587001ca506d3bf7f1000bfa248d0e1217b618108fba4ec1d0cc306" dependencies = [ "anyhow", - "itertools 0.10.5", - "proc-macro2 1.0.47", - "quote 1.0.21", + "itertools", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -4241,26 +4104,6 @@ dependencies = [ "autotools", ] -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", -] - [[package]] name = "pyth-sdk" version = "0.1.0" @@ -4378,11 +4221,11 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.21" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" +checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500" dependencies = [ - "proc-macro2 1.0.47", + "proc-macro2 1.0.56", ] [[package]] @@ -4681,15 +4524,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "rend" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79af64b4b6362ffba04eef3a4e10829718a4896dac19daa741851c86781edf95" -dependencies = [ - "bytecheck", -] - [[package]] name = "reqwest" version = "0.11.13" @@ -4712,7 +4546,6 @@ dependencies = [ "js-sys", "log 0.4.17", "mime 0.3.16", - "mime_guess", "native-tls", "once_cell", "percent-encoding 2.2.0", @@ -4750,31 +4583,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "rkyv" -version = "0.7.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cec2b3485b07d96ddfd3134767b8a447b45ea4eb91448d0a35180ec0ffd5ed15" -dependencies = [ - "bytecheck", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eaedadc88b53e36dd32d940ed21ae4d850d5916f2581526921f553a72ac34c4" -dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "syn 1.0.105", -] - [[package]] name = "rocksdb" version = "0.19.0" @@ -4799,29 +4607,22 @@ dependencies = [ [[package]] name = "rust_decimal" -version = "1.27.0" +version = "1.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c321ee4e17d2b7abe12b5d20c1231db708dd36185c8a21e9de5fed6da4dbe9" +checksum = "ee9164faf726e4f3ece4978b25ca877ddc6802fa77f38cdccb32c7f805ecd70c" dependencies = [ "arrayvec", - "borsh", - "bytecheck", - "byteorder", - "bytes 1.3.0", "num-traits", - "rand 0.8.5", - "rkyv", "serde", - "serde_json", ] [[package]] name = "rust_decimal_macros" -version = "1.27.0" +version = "1.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a7e2dba1342e9f1166786a4329ba0d6d6b8d9db7e81d702ec9ba3b39591ddff" +checksum = "4903d8db81d2321699ca8318035d6ff805c548868df435813968795a802171b2" dependencies = [ - "quote 1.0.21", + "quote 1.0.27", "rust_decimal", ] @@ -4976,8 +4777,8 @@ version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f188d036977451159430f3b8dc82ec76364a42b7e289c2b18a9a18f4470058e9" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "serde_derive_internals", "syn 1.0.105", ] @@ -5015,8 +4816,8 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bdbda6ac5cd1321e724fa9cee216f3a61885889b896f073b8f82322789c5250e" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -5030,12 +4831,6 @@ dependencies = [ "untrusted", ] -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - [[package]] name = "security-framework" version = "2.7.0" @@ -5122,8 +4917,8 @@ version = "1.0.152" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -5133,8 +4928,8 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -5173,29 +4968,6 @@ dependencies = [ "yaml-rust", ] -[[package]] -name = "serum_dex" -version = "0.4.0" -source = "git+https://github.com/project-serum/serum-dex?rev=1be91f2#1be91f2863d8ecede32daaae7e768034e24bbc79" -dependencies = [ - "arrayref", - "bincode", - "bytemuck", - "byteorder", - "enumflags2", - "field-offset", - "itertools 0.9.0", - "num-traits", - "num_enum", - "safe-transmute", - "serde", - "solana-program", - "spl-token", - "static_assertions", - "thiserror", - "without-alloc", -] - [[package]] name = "serum_dex" version = "0.5.10" @@ -5209,7 +4981,7 @@ dependencies = [ "default-env", "enumflags2", "field-offset", - "itertools 0.10.5", + "itertools", "num-traits", "num_enum", "safe-transmute", @@ -5315,40 +5087,6 @@ dependencies = [ "keccak", ] -[[package]] -name = "shank" -version = "0.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b63e565b5e95ad88ab38f312e89444c749360641c509ef2de0093b49f55974a5" -dependencies = [ - "shank_macro", -] - -[[package]] -name = "shank_macro" -version = "0.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63927d22a1e8b74bda98cc6e151fcdf178b7abb0dc6c4f81e0bbf5ffe2fc4ec8" -dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", - "shank_macro_impl", - "syn 1.0.105", -] - -[[package]] -name = "shank_macro_impl" -version = "0.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ce03403df682f80f4dc1efafa87a4d0cb89b03726d0565e6364bdca5b9a441" -dependencies = [ - "anyhow", - "proc-macro2 1.0.47", - "quote 1.0.21", - "serde", - "syn 1.0.105", -] - [[package]] name = "sharded-slab" version = "0.1.4" @@ -5364,7 +5102,7 @@ version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ccc8076840c4da029af4f87e4e8daeb0fca6b87bbb02e10cb60b791450e11e4" dependencies = [ - "dirs 4.0.0", + "dirs", ] [[package]] @@ -5471,9 +5209,9 @@ dependencies = [ [[package]] name = "solana-account-decoder" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e319617cd926e48d3521849c38b1a9b282a37d87c74e7524d796f4fd64bb050" +checksum = "fd1d1d16c04e7867408f2e0383a863e272dba2eda2c4b7095c70aa1a7ad4ff36" dependencies = [ "Inflector", "base64 0.13.1", @@ -5489,16 +5227,16 @@ dependencies = [ "solana-sdk", "solana-vote-program", "spl-token", - "spl-token-2022", + "spl-token-2022 0.6.0", "thiserror", "zstd", ] [[package]] name = "solana-address-lookup-table-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df996750c5a514d36b8aa35f63661ae743c52a95960c9cec4600a45d181f46c7" +checksum = "de353d486f6e4a20cd163fc0c8391d01ff52e0ce504dbce7a45433362218b6d7" dependencies = [ "bincode", "bytemuck", @@ -5517,9 +5255,9 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a03d21338c579b621b26cb3c8ef05a417d3852891cef46312cb4df00574b8371" +checksum = "96c4d210c247714a742fa27629c30c63eefccb3fa7565168649dd58c275cb0cc" dependencies = [ "borsh", "futures 0.3.25", @@ -5534,9 +5272,9 @@ dependencies = [ [[package]] name = "solana-banks-interface" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b83bf0d8b1cac6f7f82d872f660e5b1a54c1c8698d4706972237391fc7eff2" +checksum = "bce2b9e85d389592a02fd061966b548488f2cadc03efca029551365d2d92fa14" dependencies = [ "serde", "solana-sdk", @@ -5545,9 +5283,9 @@ dependencies = [ [[package]] name = "solana-banks-server" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c6d523f852b125d700e797d6a9517adf36c867369311fef1cf6b343e2fa797e" +checksum = "80855bd840b4255224b84641ef89762ec886968af43f617e1a22c20d906ce1c0" dependencies = [ "bincode", "crossbeam-channel", @@ -5565,9 +5303,9 @@ dependencies = [ [[package]] name = "solana-bloom" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbb00c4c9b32ac0ec7cb73f8d8aee2fb42b9f3c170b5721de60ba1c9544a56de" +checksum = "30f7f54103cf16ea0731149e345bdd8ad1677c3b802747d7406f3e7fdb5884bb" dependencies = [ "bv", "fnv", @@ -5584,9 +5322,9 @@ dependencies = [ [[package]] name = "solana-bpf-loader-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "197e44180b0b5fdba6814a03d8ee3692325b579465286389bc85f693f507b403" +checksum = "685347b658b1dfb5adf9f42007c4608a4d1954b8b9e36dd1035fd8fcb0918c8b" dependencies = [ "bincode", "byteorder", @@ -5603,9 +5341,9 @@ dependencies = [ [[package]] name = "solana-bucket-map" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8161bbbdaf7f0c21e2af497e436851c2a10ff17721ef1b6b53dc0b2a83883abe" +checksum = "ae7219df17935400ead19e838b0a3c583dd7735745c52fca77f7966d39d41100" dependencies = [ "log 0.4.17", "memmap2", @@ -5618,9 +5356,9 @@ dependencies = [ [[package]] name = "solana-clap-utils" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f01fb8496fdd7f6c5994182b55b7d3a29b94a0ff09ce25fe6e810743996914a" +checksum = "30c261007a3f9424c7793d9a23e478c615f31ebc24e3ba5e52904575db36b865" dependencies = [ "chrono", "clap 2.34.0", @@ -5636,9 +5374,9 @@ dependencies = [ [[package]] name = "solana-cli-config" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dc0c843ad3db6f791b8279aeae0d61f0151709d574edde56d17fa0f7f2230d5" +checksum = "86c13afaa04bef4814c6eac7b48c47118d31ecce3dc03a609e0405a42fbddc12" dependencies = [ "dirs-next", "lazy_static", @@ -5652,9 +5390,9 @@ dependencies = [ [[package]] name = "solana-client" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67dd2fd7ba13f301d953073463a479890f21d930819794d7a9e80ace61dc8904" +checksum = "0e803c468b3609af59298721f3a66ad145fa68416bfa420775f190ed9cfc6355" dependencies = [ "async-mutex", "async-trait", @@ -5669,7 +5407,7 @@ dependencies = [ "futures-util", "indexmap", "indicatif", - "itertools 0.10.5", + "itertools", "jsonrpc-core 18.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static", "log 0.4.17", @@ -5695,7 +5433,7 @@ dependencies = [ "solana-transaction-status", "solana-version", "solana-vote-program", - "spl-token-2022", + "spl-token-2022 0.6.0", "thiserror", "tokio", "tokio-stream", @@ -5706,9 +5444,9 @@ dependencies = [ [[package]] name = "solana-compute-budget-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f2de1835ca9bb54d759f42bcbafe4db251bd211217c5f7d4d164ea21e6e9b14" +checksum = "47c9af546a45bb12d281bc714a688a104d3d9bfe4a0472bd249a5ebacb658f3d" dependencies = [ "solana-program-runtime", "solana-sdk", @@ -5716,9 +5454,9 @@ dependencies = [ [[package]] name = "solana-config-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdfe7c2946d9f552cd91fffb8a991eb40465f70586d5fb71f9a49dc0cd296f5" +checksum = "877de8a7d14e47e948f969277396b759e5361de662fa404980df9fd69d562964" dependencies = [ "bincode", "chrono", @@ -5730,9 +5468,9 @@ dependencies = [ [[package]] name = "solana-entry" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b856f8b351ba69de50d11f0c27b725abd6d4cbc51ccd9e142f848f18fd51639" +checksum = "20a163a063a5f171477fb4bc7bebbaf94e14d2dac39fbdbe7f028eb9cea54a32" dependencies = [ "bincode", "crossbeam-channel", @@ -5753,9 +5491,9 @@ dependencies = [ [[package]] name = "solana-faucet" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce450d5c9114569329f0e6900a53be424f77ba07ed932b5d57a3bfb55afefe41" +checksum = "1d202bbd0e7cbea5e291692efbc7b633b4d6d0f2de5aa0e466d6fa7bf40fd98b" dependencies = [ "bincode", "byteorder", @@ -5777,9 +5515,9 @@ dependencies = [ [[package]] name = "solana-frozen-abi" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a73da3a286cf0d1ab25d669c17a3c2b5fe1334f8262b9673cb22912d92a94b14" +checksum = "f53e63c8f2aac07bc21167e7ede9b9d010ae25523fff5c01b171d9bab9a5a394" dependencies = [ "ahash", "blake3", @@ -5811,21 +5549,21 @@ dependencies = [ [[package]] name = "solana-frozen-abi-macro" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c88a0446927b49aee9b40ec1c6a96be562a9de543a0c58483a8520f99f454f36" +checksum = "daeaaa2713c06a2fe4bcdcfe7e1af55ee8a89c4d6693860b4041997af667207a" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustc_version 0.4.0", "syn 1.0.105", ] [[package]] name = "solana-gossip" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5f0834f5698c2d343364c7737ba204a9d2dae0363b161172f603dd59dc1e011" +checksum = "5e46887acca45ea75f4996b7411d98ffe55ac047d3150c7c3337681a810e8cd6" dependencies = [ "bincode", "bv", @@ -5833,7 +5571,7 @@ dependencies = [ "crossbeam-channel", "flate2 1.0.25", "indexmap", - "itertools 0.10.5", + "itertools", "log 0.4.17", "lru", "matches", @@ -5868,9 +5606,9 @@ dependencies = [ [[package]] name = "solana-ledger" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9965a8d801c1e69f8ad6220391691158f9dda0f969a14f84503deef7a96a7144" +checksum = "67468004fa190feea7980bc809fe5957e113bdafb2853b0190d32d51f578ca9d" dependencies = [ "assert_matches", "bincode", @@ -5882,7 +5620,7 @@ dependencies = [ "dashmap", "fs_extra", "futures 0.3.25", - "itertools 0.10.5", + "itertools", "lazy_static", "libc", "log 0.4.17", @@ -5917,7 +5655,7 @@ dependencies = [ "solana-transaction-status", "solana-vote-program", "spl-token", - "spl-token-2022", + "spl-token-2022 0.6.0", "static_assertions", "tempfile", "thiserror", @@ -5928,9 +5666,9 @@ dependencies = [ [[package]] name = "solana-logger" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48ec3aec81a83a876c68b6225d7eaf465b97e2d88ff33b2426e77ba08eded7ce" +checksum = "2b502866be84a799633c0744e1d72b819a256337149e9fb6c7eee4db84ec63f5" dependencies = [ "env_logger 0.9.3", "lazy_static", @@ -5939,9 +5677,9 @@ dependencies = [ [[package]] name = "solana-measure" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cecc0ddf9b0db68e2e92664b6e0432acf9d1739b3a6bc76a466c910d88d0ba98" +checksum = "098178fabb0f0be17ed45ca52aea2754e49d4c41a443be5f98e1bce99b5c12bb" dependencies = [ "log 0.4.17", "solana-sdk", @@ -5949,9 +5687,9 @@ dependencies = [ [[package]] name = "solana-merkle-tree" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65d285004a0724449e3e93892eb38dd8f58c397971058ab82ad169545bcaa4da" +checksum = "13c52e5ba4967a069a89fd1dcb605e819deabe7ebdd915601b94a0f79c339947" dependencies = [ "fast-math", "matches", @@ -5960,9 +5698,9 @@ dependencies = [ [[package]] name = "solana-metrics" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "684c01d65b3b5a546afaff2fd83e9117d0842a1e805a47acba26b461a8b26a4b" +checksum = "01dcd00c029063c09f15a1e2632570f5a549052cb3647db3bb06c2062e8351c4" dependencies = [ "crossbeam-channel", "gethostname", @@ -5974,9 +5712,9 @@ dependencies = [ [[package]] name = "solana-net-utils" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc95e2746f871dc2fa7e115a05158148b1522e9c1c99f3e7e3cc02f68dad8a19" +checksum = "088b41440725aab4858d7e614fe4bb2c930ea60bba494485ed7640ed2b908724" dependencies = [ "bincode", "clap 3.2.23", @@ -5996,9 +5734,9 @@ dependencies = [ [[package]] name = "solana-perf" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94c36a9572ac81be290f006a09aa53d14ce5fb8634345e7bc4fc3c89c0596bfe" +checksum = "7e9460658e4e92257ead496f8f3e36d8ec6778e09b476b7be6a518121bf0bd74" dependencies = [ "ahash", "bincode", @@ -6023,9 +5761,9 @@ dependencies = [ [[package]] name = "solana-poh" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abbb5548f0c4ada36f76e54da817b279682a074fadecdd6012d1624293072ce9" +checksum = "4dfb9c48b90258c0954d149592943e92fc2370b94425066a73240f1badd8aa61" dependencies = [ "core_affinity", "crossbeam-channel", @@ -6042,9 +5780,9 @@ dependencies = [ [[package]] name = "solana-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927d3d7e49093e601811a89ede4a9698059fb819871b3eba88a6cb0c964040fe" +checksum = "d66c02ad6002fbe7903ec96edd16352fe7964d3ee43b02053112f5304529849f" dependencies = [ "base64 0.13.1", "bincode", @@ -6060,7 +5798,7 @@ dependencies = [ "console_log", "curve25519-dalek", "getrandom 0.2.8", - "itertools 0.10.5", + "itertools", "js-sys", "lazy_static", "libc", @@ -6091,15 +5829,15 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ddadda3f8b3944188ca93988033cbe5decf569271b5fcc0cd9338282115a47d" +checksum = "7d57bc75db0cbfb8e0620cef48b4de3388ed1ea5fbdcc68769da0c2b1ccf69bc" dependencies = [ "base64 0.13.1", "bincode", "eager", "enum-iterator", - "itertools 0.10.5", + "itertools", "libc", "libloading", "log 0.4.17", @@ -6118,9 +5856,9 @@ dependencies = [ [[package]] name = "solana-program-test" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "417a2ce701c6c65593a1ae4d654998a7aef9ab69abc7087dc2b999d42eff14da" +checksum = "c0c4b86a72a48ebb66b2182a692b449d8590cab3eb9626a1967cc704aeb488c4" dependencies = [ "assert_matches", "async-trait", @@ -6143,9 +5881,9 @@ dependencies = [ [[package]] name = "solana-rayon-threadlimit" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd7d70fdf385e1b67d8d43a7d2c5db60e0dc667de4cfee1471cead6563e6878" +checksum = "b2093a3edf87c3753e9548ac00d01a03da479f7fd7859f2d375528d543ecd101" dependencies = [ "lazy_static", "num_cpus", @@ -6153,9 +5891,9 @@ dependencies = [ [[package]] name = "solana-remote-wallet" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b5ebbd2a1790e6cd1b594027bdb75da17b410958773fc0f521ff3ee20791dfa" +checksum = "1844aed08fd8fc006732cc84fef8f4e0188d52188d7cdc859a5893553063b197" dependencies = [ "console", "dialoguer", @@ -6172,16 +5910,16 @@ dependencies = [ [[package]] name = "solana-rpc" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "869c584a2d04193f3a9bfc2a3117a2123a3a5f6a9f3eb510736279e0bdefaea9" +checksum = "e102d22a5d825c4a7f15511cc88379c52f55546bfbe4e1071d7dce3d07c1bc24" dependencies = [ "base64 0.13.1", "bincode", "bs58 0.4.0", "crossbeam-channel", "dashmap", - "itertools 0.10.5", + "itertools", "jsonrpc-core 18.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client", "jsonrpc-derive", @@ -6216,7 +5954,7 @@ dependencies = [ "solana-version", "solana-vote-program", "spl-token", - "spl-token-2022", + "spl-token-2022 0.6.0", "stream-cancel", "thiserror", "tokio", @@ -6225,9 +5963,9 @@ dependencies = [ [[package]] name = "solana-runtime" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9bc515c9119a108e67aacb4b8241bddf5fdcaea9a404cfdca75b69418d9be04" +checksum = "3460b7a188de4b92ce5379e82ff370139cc0174c210df849e4126e701ff6885c" dependencies = [ "arrayref", "bincode", @@ -6243,9 +5981,10 @@ dependencies = [ "fnv", "im", "index_list", - "itertools 0.10.5", + "itertools", "lazy_static", "log 0.4.17", + "lru", "lz4", "memmap2", "num-derive", @@ -6285,9 +6024,9 @@ dependencies = [ [[package]] name = "solana-sdk" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c925686af7b3235245997acdac126e53c78bab8b924b11434ca5ec45259114d" +checksum = "60cbad77fa09d23fa5e05029dec6c88e4b784be76cf6ae390f82cc04b8089e73" dependencies = [ "assert_matches", "base64 0.13.1", @@ -6304,7 +6043,7 @@ dependencies = [ "ed25519-dalek-bip32", "generic-array 0.14.6", "hmac 0.12.1", - "itertools 0.10.5", + "itertools", "js-sys", "lazy_static", "libsecp256k1", @@ -6336,13 +6075,13 @@ dependencies = [ [[package]] name = "solana-sdk-macro" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f511aecadeab3ebc0db10e78d9e7b571dffe1744c0003d6602f537581c3448cf" +checksum = "b73f54502e7d537472bf393ffce0c252c55b534f16797029a1614d79ec0209c9" dependencies = [ "bs58 0.4.0", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustversion", "syn 1.0.105", ] @@ -6355,9 +6094,9 @@ checksum = "7e0461f3afb29d8591300b3dd09b5472b3772d65688a2826ad960b8c0d5fa605" [[package]] name = "solana-send-transaction-service" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4caef6a83ebb24b78b19f5a894d6ab10c196322217ccceeec5d4fd2b594b36d" +checksum = "7b4db241054803501f57820c467b712556722ff2248e58e22b5728f773bd4fdd" dependencies = [ "crossbeam-channel", "log 0.4.17", @@ -6370,9 +6109,9 @@ dependencies = [ [[package]] name = "solana-stake-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c794a81a68d12192fc08064431b32a0bc9976c7df67c6921fda99604d7bea6e" +checksum = "780cfa177de42c88a523acd3368cf16852bc1b0c4a9e7f3c893382dd4c9c10cb" dependencies = [ "bincode", "log 0.4.17", @@ -6393,9 +6132,9 @@ dependencies = [ [[package]] name = "solana-storage-bigtable" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054a84a2304588bc15d0765ac86d20ee38b5a866e05d76cdfd6d6a95cbc62372" +checksum = "a05caf459a2279d2c22bb0a11d190c7b10d78b8186e2559d5dc335e0357379ee" dependencies = [ "backoff", "bincode", @@ -6427,9 +6166,9 @@ dependencies = [ [[package]] name = "solana-storage-proto" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d51ddec84ea16dde3ebaa64dc8920ac3bc7647c34ca2b25bc53a38bad39ca6c" +checksum = "3186e8259702bf02d3acc4276bf6ee62565c23d19a9bc22d1c36907721719bff" dependencies = [ "bincode", "bs58 0.4.0", @@ -6444,15 +6183,15 @@ dependencies = [ [[package]] name = "solana-streamer" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "971e56ca8c6bcd2f36992dd04b6bf65f0786bba55e458bdaa42ddc9c948f39dd" +checksum = "1b7834c7b6281d1e9f6d8207d544da0095b7e562a95b99ecbb7461408cec56eb" dependencies = [ "crossbeam-channel", "futures-util", "histogram", "indexmap", - "itertools 0.10.5", + "itertools", "libc", "log 0.4.17", "nix", @@ -6473,9 +6212,9 @@ dependencies = [ [[package]] name = "solana-sys-tuner" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375a4cbf29903cfd0a8e7c9393424937655780e583dc14dcb1ac7ace536f706a" +checksum = "81c94e46d8caceaaeb7e00ae19c9cf4f15ea03192f0748adfda7c454a418ec9d" dependencies = [ "clap 2.34.0", "libc", @@ -6490,9 +6229,9 @@ dependencies = [ [[package]] name = "solana-transaction-status" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58138ee0d2c3f0b3be7e7d8a5bfafdd3fafe66e108b8934169b8b7ecfe8ac60e" +checksum = "feacea79beaefa2aec4ea02bd56573845bcf2a480858f7d666077138928fc259" dependencies = [ "Inflector", "base64 0.13.1", @@ -6513,15 +6252,15 @@ dependencies = [ "spl-associated-token-account", "spl-memo", "spl-token", - "spl-token-2022", + "spl-token-2022 0.6.0", "thiserror", ] [[package]] name = "solana-version" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d976c2590fb565b2e07ff3659deb94774f3a7edf90ddcaa62078164740b8fee5" +checksum = "2301b32765f9c37786b1d76b46c0d21be9475ad39d2f0e0494cb9cfe06182149" dependencies = [ "log 0.4.17", "rustc_version 0.4.0", @@ -6535,9 +6274,9 @@ dependencies = [ [[package]] name = "solana-vote-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc47706ca644433d7681f3fe3e0b30094260065ae86a53ae4f92078a7cd4bf4" +checksum = "fa94c3c98a33f9825c83ea3d68db39fcbfa94b66772d9a8eb9e16e711966b453" dependencies = [ "bincode", "log 0.4.17", @@ -6556,9 +6295,9 @@ dependencies = [ [[package]] name = "solana-zk-token-proof-program" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7704396dcd9338e6ac72137908ad5781edd023767d6e6d6b0a68938b8d86fb5" +checksum = "c7ebd4f7b2ed789d3c122b40e6590c0fcdb34d1029a6eb7ebb463e96beb5db35" dependencies = [ "bytemuck", "getrandom 0.1.16", @@ -6571,9 +6310,9 @@ dependencies = [ [[package]] name = "solana-zk-token-sdk" -version = "1.14.10" +version = "1.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "facf969af237320649c2ea99be5f75e98cba9b6e3217d9ddc5cbf3497c0282f9" +checksum = "b28c5ec36aa1393174f7ea18c0cb809af82c10977bc5b2e1240a6b4b048b8f24" dependencies = [ "aes-gcm-siv", "arrayref", @@ -6584,7 +6323,7 @@ dependencies = [ "cipher 0.4.3", "curve25519-dalek", "getrandom 0.1.16", - "itertools 0.10.5", + "itertools", "lazy_static", "merlin", "num-derive", @@ -6652,7 +6391,7 @@ dependencies = [ "num-traits", "solana-program", "spl-token", - "spl-token-2022", + "spl-token-2022 0.5.0", "thiserror", ] @@ -6698,6 +6437,24 @@ dependencies = [ "thiserror", ] +[[package]] +name = "spl-token-2022" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67fcd758e8d22c5fce17315015f5ff319604d1a6e57a73c72795639dba898890" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-program", + "solana-zk-token-sdk", + "spl-memo", + "spl-token", + "thiserror", +] + [[package]] name = "static_assertions" version = "1.1.0" @@ -6743,8 +6500,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ "heck 0.4.0", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "rustversion", "syn 1.0.105", ] @@ -6808,7 +6565,9 @@ dependencies = [ [[package]] name = "switchboard-v2" -version = "0.1.17" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c5dc6a4b8c0d2e6c61db595a0f86f04f72205f515fcd51b9d05636f237953d4" dependencies = [ "anchor-lang", "anchor-spl", @@ -6842,8 +6601,19 @@ version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822" +dependencies = [ + "proc-macro2 1.0.56", + "quote 1.0.27", "unicode-ident", ] @@ -6859,8 +6629,8 @@ version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "unicode-xid 0.2.4", ] @@ -6919,8 +6689,8 @@ version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee42b4e559f17bce0385ebf511a7beb67d5cc33c12c96b7f4e9789919d9c10f" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -6987,8 +6757,8 @@ version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -7141,8 +6911,8 @@ version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -7356,9 +7126,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5bf5e9b9c0f7e0a7c027dcfaba7b2c60816c7049171f679d99ee2ff65d0de8c4" dependencies = [ "prettyplease", - "proc-macro2 1.0.47", + "proc-macro2 1.0.56", "prost-build", - "quote 1.0.21", + "quote 1.0.27", "syn 1.0.105", ] @@ -7432,8 +7202,8 @@ version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", ] @@ -7861,8 +7631,8 @@ dependencies = [ "bumpalo", "log 0.4.17", "once_cell", - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "wasm-bindgen-shared", ] @@ -7885,7 +7655,7 @@ version = "0.2.83" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" dependencies = [ - "quote 1.0.21", + "quote 1.0.27", "wasm-bindgen-macro-support", ] @@ -7895,8 +7665,8 @@ version = "0.2.83" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "wasm-bindgen-backend", "wasm-bindgen-shared", @@ -8197,12 +7967,6 @@ dependencies = [ "linked-hash-map", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "yasna" version = "0.5.0" @@ -8240,8 +8004,8 @@ version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44bf07cb3e50ea2003396695d58bf46bc9887a1f362260446fad6bc4e79bd36c" dependencies = [ - "proc-macro2 1.0.47", - "quote 1.0.21", + "proc-macro2 1.0.56", + "quote 1.0.27", "syn 1.0.105", "synstructure", ] diff --git a/Cargo.toml b/Cargo.toml index 0fdd5c78a..fadb9acce 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,6 @@ members = [ "bin/*", "programs/mango-v4", "lib/*", - "3rdparty/anchor/cli", ] [profile.release] @@ -12,8 +11,3 @@ overflow-checks = true [patch.crates-io] # for gzip encoded responses jsonrpc-core-client = { git = "https://github.com/ckamm/jsonrpc.git", branch = "ckamm/http-with-gzip" } -# these patch anchor to use solana 1.14.9 in order to fix dependency conflicts in switchboard-v2 -# downstream applications may need to copy these patches to their own workspace -anchor-spl = { path = "./3rdparty/anchor/spl/" } -anchor-lang = { path = "./3rdparty/anchor/lang/" } -switchboard-v2 = { path = "./3rdparty/switchboard-v2/rust/switchboard-v2/" } diff --git a/README.md b/README.md index 53ffd7209..30247439e 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,7 @@ See DEVELOPING.md - rust version 1.65.0 - solana-cli 1.14.9 +- anchor-cli 0.27.0 - npm 8.1.2 - node v16.13.1 @@ -43,16 +44,7 @@ Consider setting the git option `submodule.recurse=true`. ### Release -Here are steps followed while performing a program deployment to mainnet-beta - -- review diff of last deployed tag to mainnet-beta, e.g. https://github.com/blockworks-foundation/mango-v4/compare/program-v0.4.0..dev, pay special attention to account layout changes, backward compatibility of newly introduced account fields, etc. -- deploy to mainnet-beta -- update changelog with deploy timestamp and tx -- add a git tag e.g. `program-v0.0.1`, should match the version the program has -- reset `main` to currently deployed tag -- notify other contributors for bringing in changes from new release by merging `main` into their branch, e.g. `ts-client` and `deploy-mm` -- notify other contributors for appropriately handling offchain services e.g. scrapers, market makers, etc. -- bump program version in `Cargo.toml` on dev branch for next release +For program deployment, see RELEASING.md. Here are steps followed while performing a npm package release note: the UI currently uses code directly from github, pointing to the ts-client branch diff --git a/RELEASING.md b/RELEASING.md index 46ebbb72b..8d8f7587c 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -23,7 +23,7 @@ - Do a verifiable build - cargo run -p anchor-cli -- build --verifiable --solana-version 1.14.13 -- --features enable-gpl + anchor build --verifiable --solana-version 1.14.13 -- --features enable-gpl (or wait for github to finish and create the release) @@ -45,13 +45,13 @@ - Create IDL buffer - cargo run -p anchor-cli -- idl write-buffer --provider.cluster $RPC_URL --provider.wallet $KEY --filepath target/idl/mango_v4_no_docs.json 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg + anchor idl write-buffer --provider.cluster $RPC_URL --provider.wallet $KEY --filepath target/idl/mango_v4_no_docs.json 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg Save the returned address as $IDL_BUFFER - Set IDL buffer authority - cargo run -p anchor-cli -- idl set-authority --provider.cluster $RPC_URL --provider.wallet $KEY --program-id 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg --new-authority FP4PxqHTVzeG2c6eZd7974F9WvKUSdBeduUK3rjYyvBw $IDL_BUFFER + anchor idl set-authority --provider.cluster $RPC_URL --provider.wallet $KEY --program-id 4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg --new-authority FP4PxqHTVzeG2c6eZd7974F9WvKUSdBeduUK3rjYyvBw $IDL_BUFFER - Make a gist for the proposal description, ideally based on previous upgrade proposals diff --git a/bin/cli/Cargo.toml b/bin/cli/Cargo.toml index bda05793a..2c01128e6 100644 --- a/bin/cli/Cargo.toml +++ b/bin/cli/Cargo.toml @@ -8,9 +8,9 @@ name = "cli" path = "src/main.rs" [dependencies] -anchor-client = { path = "../../3rdparty/anchor/client" } -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-spl = { path = "../../3rdparty/anchor/spl" } +anchor-client = "0.27.0" +anchor-lang = "0.27.0" +anchor-spl = "0.27.0" anyhow = "1.0" clap = { version = "3.1.8", features = ["derive", "env"] } dotenv = "0.15.0" diff --git a/bin/keeper/Cargo.toml b/bin/keeper/Cargo.toml index 7a260a365..52a2b3a05 100644 --- a/bin/keeper/Cargo.toml +++ b/bin/keeper/Cargo.toml @@ -8,9 +8,9 @@ name = "keeper" path = "src/main.rs" [dependencies] -anchor-client = { path = "../../3rdparty/anchor/client" } -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-spl = { path = "../../3rdparty/anchor/spl" } +anchor-client = "0.27.0" +anchor-lang = "0.27.0" +anchor-spl = "0.27.0" anyhow = "1.0" clap = { version = "3.1.8", features = ["derive", "env"] } dotenv = "0.15.0" diff --git a/bin/liquidator/Cargo.toml b/bin/liquidator/Cargo.toml index f1a7143cc..1b197ae0e 100644 --- a/bin/liquidator/Cargo.toml +++ b/bin/liquidator/Cargo.toml @@ -8,8 +8,8 @@ name = "liquidator" path = "src/main.rs" [dependencies] -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-client = { path = "../../3rdparty/anchor/client" } +anchor-lang = "0.27.0" +anchor-client = "0.27.0" anyhow = "1.0" arrayref = "0.3.6" async-channel = "1.6" diff --git a/bin/settler/Cargo.toml b/bin/settler/Cargo.toml index 3ef221d02..08bfe8f9b 100644 --- a/bin/settler/Cargo.toml +++ b/bin/settler/Cargo.toml @@ -8,8 +8,8 @@ name = "settler" path = "src/main.rs" [dependencies] -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-client = { path = "../../3rdparty/anchor/client" } +anchor-lang = "0.27.0" +anchor-client = "0.27.0" anyhow = "1.0" arrayref = "0.3.6" async-channel = "1.6" diff --git a/lib/client/Cargo.toml b/lib/client/Cargo.toml index e0301a566..d2ecea297 100644 --- a/lib/client/Cargo.toml +++ b/lib/client/Cargo.toml @@ -7,9 +7,9 @@ edition = "2021" doctest = false [dependencies] -anchor-client = { path = "../../3rdparty/anchor/client" } -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-spl = { path = "../../3rdparty/anchor/spl" } +anchor-client = "0.27.0" +anchor-lang = "0.27.0" +anchor-spl = "0.27.0" anyhow = "1.0" async-channel = "1.6" async-once-cell = { version = "0.4.2", features = ["unpin"] } diff --git a/lib/client/src/context.rs b/lib/client/src/context.rs index 83c9bf0ca..e120af999 100644 --- a/lib/client/src/context.rs +++ b/lib/client/src/context.rs @@ -355,7 +355,8 @@ impl MangoGroupContext { } fn from_serum_style_pubkey(d: [u64; 4]) -> Pubkey { - Pubkey::new(bytemuck::cast_slice(&d as &[_])) + let b: [u8; 32] = bytemuck::cast(d); + Pubkey::from(b) } async fn fetch_raw_account(rpc: &RpcClientAsync, address: Pubkey) -> Result { diff --git a/mango_v4.json b/mango_v4.json index eee850320..edd9a58fe 100644 --- a/mango_v4.json +++ b/mango_v4.json @@ -1,5 +1,5 @@ { - "version": "0.15.0", + "version": "0.16.0", "name": "mango_v4", "instructions": [ { @@ -100,7 +100,10 @@ { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -183,7 +186,11 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault", + "admin" + ] }, { "name": "admin", @@ -240,7 +247,11 @@ { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin", + "insurance_vault" + ] }, { "name": "admin", @@ -271,7 +282,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -609,7 +623,10 @@ { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -774,7 +791,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -789,7 +809,11 @@ { "name": "existingBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "bank", @@ -852,7 +876,11 @@ { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "payer", @@ -892,7 +920,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -902,7 +933,10 @@ { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "dustVault", @@ -933,7 +967,11 @@ { "name": "mintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "oracle", + "group" + ] }, { "name": "oracle", @@ -1039,7 +1077,11 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1087,7 +1129,11 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1121,7 +1167,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "admin", @@ -1147,7 +1196,11 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1183,7 +1236,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1193,12 +1249,18 @@ { "name": "daoAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoOracle", @@ -1208,7 +1270,10 @@ { "name": "feesBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "feesOracle", @@ -1229,7 +1294,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "oracle", @@ -1292,7 +1360,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1302,7 +1373,10 @@ { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -1323,7 +1397,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1333,7 +1410,10 @@ { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -1356,7 +1436,11 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1366,7 +1450,12 @@ { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1416,12 +1505,20 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1471,7 +1568,11 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1481,7 +1582,12 @@ { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1630,7 +1736,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -1657,7 +1766,10 @@ { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1725,12 +1837,18 @@ { "name": "quoteBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "payer", @@ -1770,7 +1888,10 @@ { "name": "market", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -1794,7 +1915,10 @@ { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1804,12 +1928,18 @@ { "name": "serumMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "indexReservation", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -1835,7 +1965,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1845,7 +1978,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -1910,7 +2048,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1920,7 +2061,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -1956,7 +2102,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1971,7 +2120,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2027,6 +2181,9 @@ "isSigner": false, "docs": [ "The bank that pays for the order, if necessary" + ], + "relations": [ + "group" ] }, { @@ -2100,7 +2257,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2115,7 +2275,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2167,7 +2332,10 @@ { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2182,7 +2350,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2233,7 +2406,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2248,7 +2424,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2281,7 +2462,10 @@ { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2291,7 +2475,10 @@ { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2324,7 +2511,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2339,7 +2529,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2372,7 +2567,10 @@ { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2382,7 +2580,10 @@ { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2430,7 +2631,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "openOrders", @@ -2440,7 +2644,12 @@ { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2485,7 +2694,10 @@ { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2495,7 +2707,10 @@ { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2526,7 +2741,10 @@ { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2536,7 +2754,10 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2562,12 +2783,18 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2577,12 +2804,18 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2620,7 +2853,10 @@ { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2630,7 +2866,10 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2661,7 +2900,10 @@ { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2671,7 +2913,10 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2695,12 +2940,18 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2710,12 +2961,18 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2753,7 +3010,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -2948,7 +3208,10 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3149,7 +3412,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3159,7 +3425,13 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue" + ] }, { "name": "bids", @@ -3200,7 +3472,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3210,7 +3485,10 @@ { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -3226,7 +3504,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3236,7 +3517,14 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -3316,7 +3604,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3326,7 +3617,14 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -3414,7 +3712,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3424,7 +3725,12 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3455,7 +3761,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3465,7 +3774,12 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3496,7 +3810,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3506,7 +3823,12 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3537,7 +3859,10 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3547,7 +3872,12 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3586,7 +3916,11 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "event_queue" + ] }, { "name": "eventQueue", @@ -3612,7 +3946,13 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "oracle" + ] }, { "name": "bids", @@ -3643,7 +3983,10 @@ { "name": "settler", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settlerOwner", @@ -3653,17 +3996,27 @@ { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3673,7 +4026,10 @@ { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -3694,17 +4050,27 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3725,12 +4091,19 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3740,7 +4113,10 @@ { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -3766,7 +4142,11 @@ { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -3776,7 +4156,10 @@ { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -3786,12 +4169,18 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -3826,12 +4215,20 @@ { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3857,12 +4254,18 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -3872,12 +4275,19 @@ { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -3887,7 +4297,10 @@ { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -3923,7 +4336,10 @@ { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3949,7 +4365,10 @@ { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3991,7 +4410,10 @@ { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] diff --git a/programs/mango-v4/Cargo.toml b/programs/mango-v4/Cargo.toml index 203183779..5fa521276 100644 --- a/programs/mango-v4/Cargo.toml +++ b/programs/mango-v4/Cargo.toml @@ -23,8 +23,8 @@ enable-gpl = [] [dependencies] # todo: when to fix, when to use caret? need a regular chore to bump dependencies # note: possibly need init-if-needed feature -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-spl = { path = "../../3rdparty/anchor/spl" } +anchor-lang = "0.27.0" +anchor-spl = "0.27.0" arrayref = "0.3.6" bincode = "1.3.3" borsh = { version = "0.9.3", features = ["const-generics"] } diff --git a/programs/mango-v4/src/serum3_cpi.rs b/programs/mango-v4/src/serum3_cpi.rs index f0e55ca05..8244f5d7c 100644 --- a/programs/mango-v4/src/serum3_cpi.rs +++ b/programs/mango-v4/src/serum3_cpi.rs @@ -124,7 +124,8 @@ pub fn load_open_orders_bytes(bytes: &[u8]) -> Result<&serum_dex::state::OpenOrd } pub fn pubkey_from_u64_array(d: [u64; 4]) -> Pubkey { - Pubkey::new(bytemuck::cast_slice(&d as &[_])) + let b: [u8; 32] = bytemuck::cast(d); + Pubkey::from(b) } pub struct InitOpenOrders<'info> { diff --git a/programs/mango-v4/src/state/bank.rs b/programs/mango-v4/src/state/bank.rs index d63fad615..05d4a4158 100644 --- a/programs/mango-v4/src/state/bank.rs +++ b/programs/mango-v4/src/state/bank.rs @@ -21,7 +21,7 @@ pub const MINIMUM_MAX_RATE: I80F48 = I80F48::from_bits(I80F48::ONE.to_bits() / 2 #[derive(Derivative)] #[derivative(Debug)] -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] pub struct Bank { // ABI: Clients rely on this being at offset 8 pub group: Pubkey, diff --git a/programs/mango-v4/src/state/group.rs b/programs/mango-v4/src/state/group.rs index fd6163ebd..3508c1481 100644 --- a/programs/mango-v4/src/state/group.rs +++ b/programs/mango-v4/src/state/group.rs @@ -26,7 +26,7 @@ pub const PERP_SETTLE_TOKEN_INDEX: TokenIndex = 0; /// The token index used in AccountBuybackFeesWithMngo to exchange for MNGO pub const FEE_BUYBACK_QUOTE_TOKEN_INDEX: TokenIndex = 0; -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] #[derive(Debug)] pub struct Group { // ABI: Clients rely on this being at offset 8 diff --git a/programs/mango-v4/src/state/mango_account.rs b/programs/mango-v4/src/state/mango_account.rs index 3edd1d98d..6b2a2b0ac 100644 --- a/programs/mango-v4/src/state/mango_account.rs +++ b/programs/mango-v4/src/state/mango_account.rs @@ -325,9 +325,7 @@ impl Owner for MangoAccountFixed { } impl Discriminator for MangoAccountFixed { - fn discriminator() -> [u8; 8] { - MangoAccount::discriminator() - } + const DISCRIMINATOR: [u8; 8] = MangoAccount::DISCRIMINATOR; } impl anchor_lang::ZeroCopy for MangoAccountFixed {} diff --git a/programs/mango-v4/src/state/mango_account_components.rs b/programs/mango-v4/src/state/mango_account_components.rs index cbccb5b14..31b1ed2ac 100644 --- a/programs/mango-v4/src/state/mango_account_components.rs +++ b/programs/mango-v4/src/state/mango_account_components.rs @@ -12,7 +12,7 @@ use crate::state::*; pub const FREE_ORDER_SLOT: PerpMarketIndex = PerpMarketIndex::MAX; #[zero_copy] -#[derive(AnchorDeserialize, AnchorSerialize, Derivative, bytemuck::Pod, bytemuck::Zeroable)] +#[derive(AnchorDeserialize, AnchorSerialize, Derivative, bytemuck::Pod)] #[derivative(Debug)] pub struct TokenPosition { // TODO: Why did we have deposits and borrows as two different values @@ -102,7 +102,7 @@ impl TokenPosition { } #[zero_copy] -#[derive(AnchorSerialize, AnchorDeserialize, Derivative, bytemuck::Pod, bytemuck::Zeroable)] +#[derive(AnchorSerialize, AnchorDeserialize, Derivative, bytemuck::Pod)] #[derivative(Debug)] pub struct Serum3Orders { pub open_orders: Pubkey, @@ -158,7 +158,7 @@ impl Default for Serum3Orders { } #[zero_copy] -#[derive(AnchorSerialize, AnchorDeserialize, Derivative, bytemuck::Pod, bytemuck::Zeroable)] +#[derive(AnchorSerialize, AnchorDeserialize, Derivative, bytemuck::Pod)] #[derivative(Debug)] pub struct PerpPosition { pub market_index: PerpMarketIndex, @@ -782,7 +782,7 @@ impl PerpPosition { } #[zero_copy] -#[derive(AnchorSerialize, AnchorDeserialize, Debug, bytemuck::Pod, bytemuck::Zeroable)] +#[derive(AnchorSerialize, AnchorDeserialize, Debug, bytemuck::Pod)] pub struct PerpOpenOrder { pub side_and_tree: u8, // SideAndOrderTree -- enums aren't POD pub padding1: [u8; 1], diff --git a/programs/mango-v4/src/state/mint_info.rs b/programs/mango-v4/src/state/mint_info.rs index fdc5b8e48..c32f7947d 100644 --- a/programs/mango-v4/src/state/mint_info.rs +++ b/programs/mango-v4/src/state/mint_info.rs @@ -12,7 +12,7 @@ pub const MAX_BANKS: usize = 6; // the accounts that are relevant for this mint. The idea is that clients // can load this account to figure out which address maps to use when calling // instructions that need banks/oracles for all active positions. -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] #[derive(Debug)] pub struct MintInfo { // ABI: Clients rely on this being at offset 8 diff --git a/programs/mango-v4/src/state/oracle.rs b/programs/mango-v4/src/state/oracle.rs index dc209afd7..dde179807 100644 --- a/programs/mango-v4/src/state/oracle.rs +++ b/programs/mango-v4/src/state/oracle.rs @@ -57,7 +57,7 @@ pub mod switchboard_v2_mainnet_oracle { } #[zero_copy] -#[derive(AnchorDeserialize, AnchorSerialize, Debug, bytemuck::Pod, bytemuck::Zeroable)] +#[derive(AnchorDeserialize, AnchorSerialize, Debug, bytemuck::Pod)] pub struct OracleConfig { pub conf_filter: I80F48, pub max_staleness_slots: i64, @@ -97,7 +97,7 @@ pub struct OracleState { pub oracle_type: OracleType, } -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] pub struct StubOracle { // ABI: Clients rely on this being at offset 8 pub group: Pubkey, diff --git a/programs/mango-v4/src/state/orderbook/bookside.rs b/programs/mango-v4/src/state/orderbook/bookside.rs index af0ed939d..c7a84e470 100644 --- a/programs/mango-v4/src/state/orderbook/bookside.rs +++ b/programs/mango-v4/src/state/orderbook/bookside.rs @@ -27,7 +27,7 @@ pub struct BookSideOrderHandle { pub order_tree: BookSideOrderTree, } -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] pub struct BookSide { pub roots: [OrderTreeRoot; 2], pub reserved_roots: [OrderTreeRoot; 4], diff --git a/programs/mango-v4/src/state/orderbook/queue.rs b/programs/mango-v4/src/state/orderbook/queue.rs index 675d8a187..454aa58c3 100644 --- a/programs/mango-v4/src/state/orderbook/queue.rs +++ b/programs/mango-v4/src/state/orderbook/queue.rs @@ -21,7 +21,7 @@ pub trait QueueHeader: bytemuck::Pod { fn decr_event_id(&mut self, n: u64); } -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] pub struct EventQueue { pub header: EventQueueHeader, pub buf: [AnyEvent; MAX_NUM_EVENTS as usize], diff --git a/programs/mango-v4/src/state/perp_market.rs b/programs/mango-v4/src/state/perp_market.rs index 701f88438..8faf5cbb2 100644 --- a/programs/mango-v4/src/state/perp_market.rs +++ b/programs/mango-v4/src/state/perp_market.rs @@ -15,7 +15,7 @@ use super::{orderbook, OracleConfig, OracleState, Orderbook, StablePriceModel, D pub type PerpMarketIndex = u16; -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] #[derive(Debug)] pub struct PerpMarket { // ABI: Clients rely on this being at offset 8 diff --git a/programs/mango-v4/src/state/serum3_market.rs b/programs/mango-v4/src/state/serum3_market.rs index c37e117d3..f72ca7554 100644 --- a/programs/mango-v4/src/state/serum3_market.rs +++ b/programs/mango-v4/src/state/serum3_market.rs @@ -6,7 +6,7 @@ use crate::state::*; pub type Serum3MarketIndex = u16; -#[account(zero_copy(safe_bytemuck_derives))] +#[account(zero_copy)] #[derive(Debug)] pub struct Serum3Market { // ABI: Clients rely on this being at offset 8 diff --git a/programs/margin-trade/Cargo.toml b/programs/margin-trade/Cargo.toml index 6f14e09e3..520aa8c3e 100644 --- a/programs/margin-trade/Cargo.toml +++ b/programs/margin-trade/Cargo.toml @@ -18,6 +18,6 @@ default = [] test-bpf = [] [dependencies] -anchor-lang = { path = "../../3rdparty/anchor/lang" } -anchor-spl = { path = "../../3rdparty/anchor/spl" } +anchor-lang = "0.27.0" +anchor-spl = "0.27.0" solana-program = "~1.14.9" diff --git a/release-to-devnet.sh b/release-to-devnet.sh index 1a2f63689..b28821bb6 100755 --- a/release-to-devnet.sh +++ b/release-to-devnet.sh @@ -6,7 +6,7 @@ WALLET_WITH_FUNDS=~/.config/solana/mango-mainnet-1.json PROGRAM_ID=4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg # build program, -cargo run -p anchor-cli -- build -- --features enable-gpl +anchor build -- --features enable-gpl # patch types, which we want in rust, but anchor client doesn't support ./idl-fixup.sh @@ -21,5 +21,5 @@ solana --url https://mango.devnet.rpcpool.com program deploy --program-id $PROGR -k $WALLET_WITH_FUNDS target/deploy/mango_v4.so --skip-fee-check # publish idl -cargo run -p anchor-cli -- idl upgrade --provider.cluster https://mango.devnet.rpcpool.com --provider.wallet $WALLET_WITH_FUNDS \ +anchor idl upgrade --provider.cluster https://mango.devnet.rpcpool.com --provider.wallet $WALLET_WITH_FUNDS \ --filepath target/idl/mango_v4_no_docs.json $PROGRAM_ID diff --git a/run-anchor-tests.sh b/run-anchor-tests.sh index c0971d022..88f873de0 100755 --- a/run-anchor-tests.sh +++ b/run-anchor-tests.sh @@ -3,6 +3,6 @@ # WALLET_WITH_FUNDS=~/.config/solana/mango-devnet.json # PROGRAM_ID=4MangoMjqJ2firMokCjjGgoK8d4MXcrgL7XJaL3w6fVg -cargo run -p anchor-cli -- build -- --features enable-gpl +anchor build -- --features enable-gpl ./idl-fixup.sh -RUST_BACKTRACE=full cargo run -p anchor-cli -- test --skip-build +RUST_BACKTRACE=full anchor test --skip-build diff --git a/ts/client/src/mango_v4.ts b/ts/client/src/mango_v4.ts index c283c090c..7e47a6f0c 100644 --- a/ts/client/src/mango_v4.ts +++ b/ts/client/src/mango_v4.ts @@ -1,5 +1,5 @@ export type MangoV4 = { - "version": "0.15.0", + "version": "0.16.0", "name": "mango_v4", "instructions": [ { @@ -100,7 +100,10 @@ export type MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -183,7 +186,11 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault", + "admin" + ] }, { "name": "admin", @@ -240,7 +247,11 @@ export type MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin", + "insurance_vault" + ] }, { "name": "admin", @@ -271,7 +282,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -609,7 +623,10 @@ export type MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -774,7 +791,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -789,7 +809,11 @@ export type MangoV4 = { { "name": "existingBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "bank", @@ -852,7 +876,11 @@ export type MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "payer", @@ -892,7 +920,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -902,7 +933,10 @@ export type MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "dustVault", @@ -933,7 +967,11 @@ export type MangoV4 = { { "name": "mintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "oracle", + "group" + ] }, { "name": "oracle", @@ -1039,7 +1077,11 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1087,7 +1129,11 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1121,7 +1167,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "admin", @@ -1147,7 +1196,11 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1183,7 +1236,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1193,12 +1249,18 @@ export type MangoV4 = { { "name": "daoAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoOracle", @@ -1208,7 +1270,10 @@ export type MangoV4 = { { "name": "feesBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "feesOracle", @@ -1229,7 +1294,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "oracle", @@ -1292,7 +1360,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1302,7 +1373,10 @@ export type MangoV4 = { { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -1323,7 +1397,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1333,7 +1410,10 @@ export type MangoV4 = { { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -1356,7 +1436,11 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1366,7 +1450,12 @@ export type MangoV4 = { { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1416,12 +1505,20 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1471,7 +1568,11 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -1481,7 +1582,12 @@ export type MangoV4 = { { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -1630,7 +1736,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -1657,7 +1766,10 @@ export type MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1725,12 +1837,18 @@ export type MangoV4 = { { "name": "quoteBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "payer", @@ -1770,7 +1888,10 @@ export type MangoV4 = { { "name": "market", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -1794,7 +1915,10 @@ export type MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -1804,12 +1928,18 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "indexReservation", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -1835,7 +1965,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1845,7 +1978,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -1910,7 +2048,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1920,7 +2061,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -1956,7 +2102,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -1971,7 +2120,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2027,6 +2181,9 @@ export type MangoV4 = { "isSigner": false, "docs": [ "The bank that pays for the order, if necessary" + ], + "relations": [ + "group" ] }, { @@ -2100,7 +2257,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2115,7 +2275,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2167,7 +2332,10 @@ export type MangoV4 = { { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2182,7 +2350,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2233,7 +2406,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2248,7 +2424,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2281,7 +2462,10 @@ export type MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2291,7 +2475,10 @@ export type MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2324,7 +2511,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -2339,7 +2529,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2372,7 +2567,10 @@ export type MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2382,7 +2580,10 @@ export type MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2430,7 +2631,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "openOrders", @@ -2440,7 +2644,12 @@ export type MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -2485,7 +2694,10 @@ export type MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2495,7 +2707,10 @@ export type MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -2526,7 +2741,10 @@ export type MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2536,7 +2754,10 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2562,12 +2783,18 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2577,12 +2804,18 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2620,7 +2853,10 @@ export type MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2630,7 +2866,10 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2661,7 +2900,10 @@ export type MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2671,7 +2913,10 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -2695,12 +2940,18 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -2710,12 +2961,18 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -2753,7 +3010,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -2948,7 +3208,10 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3149,7 +3412,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3159,7 +3425,13 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue" + ] }, { "name": "bids", @@ -3200,7 +3472,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3210,7 +3485,10 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -3226,7 +3504,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3236,7 +3517,14 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -3316,7 +3604,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3326,7 +3617,14 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -3414,7 +3712,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3424,7 +3725,12 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3455,7 +3761,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3465,7 +3774,12 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3496,7 +3810,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3506,7 +3823,12 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3537,7 +3859,10 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -3547,7 +3872,12 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3586,7 +3916,11 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "event_queue" + ] }, { "name": "eventQueue", @@ -3612,7 +3946,13 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "oracle" + ] }, { "name": "bids", @@ -3643,7 +3983,10 @@ export type MangoV4 = { { "name": "settler", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settlerOwner", @@ -3653,17 +3996,27 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3673,7 +4026,10 @@ export type MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -3694,17 +4050,27 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3725,12 +4091,19 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -3740,7 +4113,10 @@ export type MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -3766,7 +4142,11 @@ export type MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -3776,7 +4156,10 @@ export type MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -3786,12 +4169,18 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -3826,12 +4215,20 @@ export type MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -3857,12 +4254,18 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -3872,12 +4275,19 @@ export type MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -3887,7 +4297,10 @@ export type MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -3923,7 +4336,10 @@ export type MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3949,7 +4365,10 @@ export type MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -3991,7 +4410,10 @@ export type MangoV4 = { { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -9091,7 +9513,7 @@ export type MangoV4 = { }; export const IDL: MangoV4 = { - "version": "0.15.0", + "version": "0.16.0", "name": "mango_v4", "instructions": [ { @@ -9192,7 +9614,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -9275,7 +9700,11 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault", + "admin" + ] }, { "name": "admin", @@ -9332,7 +9761,11 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin", + "insurance_vault" + ] }, { "name": "admin", @@ -9363,7 +9796,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -9701,7 +10137,10 @@ export const IDL: MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -9866,7 +10305,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -9881,7 +10323,11 @@ export const IDL: MangoV4 = { { "name": "existingBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "bank", @@ -9944,7 +10390,11 @@ export const IDL: MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "mint" + ] }, { "name": "payer", @@ -9984,7 +10434,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -9994,7 +10447,10 @@ export const IDL: MangoV4 = { { "name": "mintInfo", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "dustVault", @@ -10025,7 +10481,11 @@ export const IDL: MangoV4 = { { "name": "mintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "oracle", + "group" + ] }, { "name": "oracle", @@ -10131,7 +10591,11 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -10179,7 +10643,11 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -10213,7 +10681,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "admin", @@ -10239,7 +10710,11 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -10275,7 +10750,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -10285,12 +10763,18 @@ export const IDL: MangoV4 = { { "name": "daoAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "mngoOracle", @@ -10300,7 +10784,10 @@ export const IDL: MangoV4 = { { "name": "feesBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "feesOracle", @@ -10321,7 +10808,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "oracle", @@ -10384,7 +10874,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -10394,7 +10887,10 @@ export const IDL: MangoV4 = { { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -10415,7 +10911,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -10425,7 +10924,10 @@ export const IDL: MangoV4 = { { "name": "oracle", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -10448,7 +10950,11 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -10458,7 +10964,12 @@ export const IDL: MangoV4 = { { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -10508,12 +11019,20 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -10563,7 +11082,11 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "owner" + ] }, { "name": "owner", @@ -10573,7 +11096,12 @@ export const IDL: MangoV4 = { { "name": "bank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "vault", + "oracle" + ] }, { "name": "vault", @@ -10722,7 +11250,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -10749,7 +11280,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -10817,12 +11351,18 @@ export const IDL: MangoV4 = { { "name": "quoteBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseBank", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "payer", @@ -10862,7 +11402,10 @@ export const IDL: MangoV4 = { { "name": "market", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -10886,7 +11429,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -10896,12 +11442,18 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "indexReservation", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "solDestination", @@ -10927,7 +11479,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -10937,7 +11492,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11002,7 +11562,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11012,7 +11575,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11048,7 +11616,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11063,7 +11634,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11119,6 +11695,9 @@ export const IDL: MangoV4 = { "isSigner": false, "docs": [ "The bank that pays for the order, if necessary" + ], + "relations": [ + "group" ] }, { @@ -11192,7 +11771,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11207,7 +11789,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11259,7 +11846,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11274,7 +11864,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11325,7 +11920,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11340,7 +11938,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11373,7 +11976,10 @@ export const IDL: MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -11383,7 +11989,10 @@ export const IDL: MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -11416,7 +12025,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -11431,7 +12043,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11464,7 +12081,10 @@ export const IDL: MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -11474,7 +12094,10 @@ export const IDL: MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -11522,7 +12145,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "openOrders", @@ -11532,7 +12158,12 @@ export const IDL: MangoV4 = { { "name": "serumMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "serum_program", + "serum_market_external" + ] }, { "name": "serumProgram", @@ -11577,7 +12208,10 @@ export const IDL: MangoV4 = { { "name": "quoteBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -11587,7 +12221,10 @@ export const IDL: MangoV4 = { { "name": "baseBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "baseVault", @@ -11618,7 +12255,10 @@ export const IDL: MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -11628,7 +12268,10 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -11654,12 +12297,18 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -11669,12 +12318,18 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -11712,7 +12367,10 @@ export const IDL: MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -11722,7 +12380,10 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -11753,7 +12414,10 @@ export const IDL: MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -11763,7 +12427,10 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [ @@ -11787,12 +12454,18 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -11802,12 +12475,18 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liabMintInfo", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "quoteVault", @@ -11845,7 +12524,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -12040,7 +12722,10 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -12241,7 +12926,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -12251,7 +12939,13 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue" + ] }, { "name": "bids", @@ -12292,7 +12986,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12302,7 +12999,10 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] @@ -12318,7 +13018,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12328,7 +13031,14 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -12408,7 +13118,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12418,7 +13131,14 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "event_queue", + "oracle" + ] }, { "name": "bids", @@ -12506,7 +13226,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12516,7 +13239,12 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -12547,7 +13275,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12557,7 +13288,12 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -12588,7 +13324,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12598,7 +13337,12 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -12629,7 +13373,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "owner", @@ -12639,7 +13386,12 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -12678,7 +13430,11 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "event_queue" + ] }, { "name": "eventQueue", @@ -12704,7 +13460,13 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks", + "oracle" + ] }, { "name": "bids", @@ -12735,7 +13497,10 @@ export const IDL: MangoV4 = { { "name": "settler", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settlerOwner", @@ -12745,17 +13510,27 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -12765,7 +13540,10 @@ export const IDL: MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -12786,17 +13564,27 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "accountA", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "accountB", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -12817,12 +13605,19 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "oracle", @@ -12832,7 +13627,10 @@ export const IDL: MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleOracle", @@ -12858,7 +13656,11 @@ export const IDL: MangoV4 = { { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -12868,7 +13670,10 @@ export const IDL: MangoV4 = { { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -12878,12 +13683,18 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -12918,12 +13729,20 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "bids", + "asks" + ] }, { "name": "bids", @@ -12949,12 +13768,18 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "insurance_vault" + ] }, { "name": "liqor", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "liqorOwner", @@ -12964,12 +13789,19 @@ export const IDL: MangoV4 = { { "name": "liqee", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "perpMarket", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group", + "oracle" + ] }, { "name": "oracle", @@ -12979,7 +13811,10 @@ export const IDL: MangoV4 = { { "name": "settleBank", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] }, { "name": "settleVault", @@ -13015,7 +13850,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": true, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -13041,7 +13879,10 @@ export const IDL: MangoV4 = { { "name": "group", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "admin" + ] }, { "name": "admin", @@ -13083,7 +13924,10 @@ export const IDL: MangoV4 = { { "name": "account", "isMut": false, - "isSigner": false + "isSigner": false, + "relations": [ + "group" + ] } ], "args": [] diff --git a/update-local-idl.sh b/update-local-idl.sh index 017d79c09..03559df5d 100755 --- a/update-local-idl.sh +++ b/update-local-idl.sh @@ -3,7 +3,7 @@ set -e pipefail # build program, -cargo run -p anchor-cli -- build -- --features enable-gpl +anchor build -- --features enable-gpl # patch types, which we want in rust, but anchor client doesn't support ./idl-fixup.sh