From e8454e17e0ba34e249ca3b5187115c2f25d5b850 Mon Sep 17 00:00:00 2001 From: Samuel Vanderwaal Date: Tue, 11 Oct 2022 17:44:43 -0800 Subject: [PATCH 1/5] chore: update auction house deps --- auction-house/program/Cargo.lock | 1540 +++++++++++++---- auction-house/program/Cargo.toml | 32 +- auction-house/program/src/utils.rs | 4 +- .../program/tests/create_auction_house.rs | 4 +- auction-house/program/tests/delegate.rs | 2 +- auction-house/program/tests/execute_sale.rs | 5 +- auction-house/program/tests/utils/helpers.rs | 11 +- .../program/tests/utils/setup_functions.rs | 10 +- 8 files changed, 1251 insertions(+), 357 deletions(-) diff --git a/auction-house/program/Cargo.lock b/auction-house/program/Cargo.lock index 9355e930bd..1d3f8f2a92 100644 --- a/auction-house/program/Cargo.lock +++ b/auction-house/program/Cargo.lock @@ -13,19 +13,46 @@ dependencies = [ ] [[package]] -name = "addr2line" -version = "0.17.0" +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aead" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ - "gimli", + "generic-array", ] [[package]] -name = "adler" -version = "1.0.2" +name = "aes" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" +dependencies = [ + "cfg-if", + "cipher 0.3.0", + "cpufeatures", + "opaque-debug", +] + +[[package]] +name = "aes-gcm-siv" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589c637f0e68c877bbd59a4599bbe849cac8e5f3e4b5a3ebae8f528cd218dcdc" +dependencies = [ + "aead", + "aes", + "cipher 0.3.0", + "ctr", + "polyval", + "subtle", + "zeroize", +] [[package]] name = "ahash" @@ -53,11 +80,26 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + [[package]] name = "anchor-attribute-access-control" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b75d05b6b4ac9d95bb6e3b786b27d3a708c4c5a87c92ffaa25bbe9ae4c5d91" +checksum = "70f6ee9518f50ff4d434471ccf569186022bdd5ef65a21d14da3ea5231af944f" dependencies = [ "anchor-syn", "anyhow", @@ -69,9 +111,9 @@ dependencies = [ [[package]] name = "anchor-attribute-account" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "485351a6d8157750d10d88c8e256f1bf8339262b2220ae9125aed3471309b5de" +checksum = "32c92bcf5388b52676d990f85bbfd838a8f5672393135063a50dc79b2b837c79" dependencies = [ "anchor-syn", "anyhow", @@ -84,9 +126,9 @@ dependencies = [ [[package]] name = "anchor-attribute-constant" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc632c540913dd051a78b00587cc47f57013d303163ddfaf4fa18717f7ccc1e0" +checksum = "0844974ac35e8ced62056b0d63777ebcdc5807438b8b189c881e2b647450b70a" dependencies = [ "anchor-syn", "proc-macro2 1.0.37", @@ -95,9 +137,9 @@ dependencies = [ [[package]] name = "anchor-attribute-error" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b5bd1dcfa7f3bc22dacef233d70a9e0bee269c4ac484510662f257cba2353a1" +checksum = "0f7467345e67a6f1d4b862b9763a4160ad89d18c247b8c902807768f7b6e23df" dependencies = [ "anchor-syn", "proc-macro2 1.0.37", @@ -107,9 +149,9 @@ dependencies = [ [[package]] name = "anchor-attribute-event" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c6f9e6ce551ac9a177a45c99a65699a860c9e95fac68675138af1246e2591b0" +checksum = "8774e4c1ac71f71a5aea7e4932fb69c30e3b8155c4fa59fd69401195434528a9" dependencies = [ "anchor-syn", "anyhow", @@ -120,13 +162,13 @@ dependencies = [ [[package]] name = "anchor-attribute-interface" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d104aa17418cb329ed7418b227e083d5f326a27f26ce98f5d92e33da62a5f459" +checksum = "90eeb6e1c80f9f94fcef93a52813f6472186200e275e83cb3fac92b801de92f7" dependencies = [ "anchor-syn", "anyhow", - "heck", + "heck 0.3.3", "proc-macro2 1.0.37", "quote 1.0.18", "syn 1.0.91", @@ -134,9 +176,9 @@ dependencies = [ [[package]] name = "anchor-attribute-program" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6831b920b173c004ddf7ae1167d1d25e9f002ffcb1773bbc5c7ce532a4441e1" +checksum = "ac515a7a5a4fea7fc768b1cec40ddb948e148ea657637c75f94f283212326cb9" dependencies = [ "anchor-syn", "anyhow", @@ -147,9 +189,9 @@ dependencies = [ [[package]] name = "anchor-attribute-state" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde147b10c71d95dc679785db0b5f3abac0091f789167aa62ac0135e2f54e8b9" +checksum = "43dc667b62ff71450f19dcfcc37b0c408fd4ddd89e8650368c2b0984b110603f" dependencies = [ "anchor-syn", "anyhow", @@ -160,9 +202,9 @@ dependencies = [ [[package]] name = "anchor-client" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb1dfd40bbeeb17ff748a0eb9df2d58c70f0e3ac4e11dac08228d3c99ab68976" +checksum = "ee0e630f9310a0134c92df4458890a0f9c5b662d69c305690af1c17f5cd0b3ba" dependencies = [ "anchor-lang", "anyhow", @@ -177,9 +219,9 @@ dependencies = [ [[package]] name = "anchor-derive-accounts" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cde98a0e1a56046b040ff591dfda391f88917af2b6487d02b45093c05be3514" +checksum = "7354d583a06701d24800a8ec4c2b0491f62581a331af349205e23421e0b56643" dependencies = [ "anchor-syn", "anyhow", @@ -190,9 +232,9 @@ dependencies = [ [[package]] name = "anchor-lang" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a85dd2c5e29e20c7f4701a43724d6cd5406d0ee5694705522e43da0f26542a84" +checksum = "ff5f57ec5e12fa6874b27f3d5c1f6f44302d3ad86c1266197ff7611bf6f5d251" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", @@ -214,9 +256,9 @@ dependencies = [ [[package]] name = "anchor-spl" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0188c33b4a3c124c4e593f2b440415aaea70a7650fac6ba0772395385d71c003" +checksum = "d65904c3106851f6d1bb87d504044764819d69c51d2b4346d59d399d8afa7d18" dependencies = [ "anchor-lang", "solana-program", @@ -226,19 +268,19 @@ dependencies = [ [[package]] name = "anchor-syn" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03549dc2eae0b20beba6333b14520e511822a6321cdb1760f841064a69347316" +checksum = "55aa1e680d9471342122ed5b6bc13bf5da473b0f7e4677d41a6954e5cc8ad155" dependencies = [ "anyhow", "bs58 0.3.1", - "heck", + "heck 0.3.3", "proc-macro2 1.0.37", "proc-macro2-diagnostics", "quote 1.0.18", "serde", "serde_json", - "sha2", + "sha2 0.9.9", "syn 1.0.91", "thiserror", ] @@ -276,12 +318,74 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" +[[package]] +name = "asn1-rs" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf6690c370453db30743b373a60ba498fc0d6d83b11f4abfd87a84a075db5dd4" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time 0.3.15", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" +dependencies = [ + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" +dependencies = [ + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", +] + [[package]] name = "assert_matches" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" +[[package]] +name = "async-compression" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" +dependencies = [ + "brotli", + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "async-mutex" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e" +dependencies = [ + "event-listener", +] + [[package]] name = "async-trait" version = "0.1.53" @@ -310,27 +414,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" -[[package]] -name = "backtrace" -version = "0.3.64" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e121dee8023ce33ab248d9ce1493df03c3b38a659b240096fcbd7048ff9c31f" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide 0.4.4", - "object", - "rustc-demangle", -] - -[[package]] -name = "base32" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" - [[package]] name = "base64" version = "0.12.3" @@ -343,6 +426,12 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +[[package]] +name = "base64ct" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea2b2456fd614d856680dcd9fcc660a51a820fa09daef2e49772b56a193c8474" + [[package]] name = "bincode" version = "1.3.3" @@ -358,6 +447,15 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitmaps" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" +dependencies = [ + "typenum", +] + [[package]] name = "blake3" version = "1.3.1" @@ -404,7 +502,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "15bf3650200d8bffa99015595e10f1fbd17de07abbc25bb067da79e769939bfa" dependencies = [ "borsh-derive", - "hashbrown", + "hashbrown 0.11.2", ] [[package]] @@ -442,6 +540,27 @@ dependencies = [ "syn 1.0.91", ] +[[package]] +name = "brotli" +version = "3.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + [[package]] name = "bs58" version = "0.3.1" @@ -559,7 +678,7 @@ dependencies = [ "num-integer", "num-traits", "serde", - "time", + "time 0.1.43", "winapi", ] @@ -572,6 +691,25 @@ dependencies = [ "chrono", ] +[[package]] +name = "cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +dependencies = [ + "generic-array", +] + +[[package]] +name = "cipher" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1873270f8f7942c191139cb8a40fd228da6c3fd2fc376d7e92d47aa14aeb59e" +dependencies = [ + "crypto-common", + "inout", +] + [[package]] name = "clap" version = "2.34.0" @@ -635,12 +773,34 @@ dependencies = [ "web-sys", ] +[[package]] +name = "const-oid" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4c78c047431fee22c1a7bb92e00ad095a02a983affe4d8a72e2a2c62c1b94f3" + [[package]] name = "constant_time_eq" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" + [[package]] name = "cpufeatures" version = "0.2.2" @@ -731,34 +891,24 @@ dependencies = [ ] [[package]] -name = "crypto-mac" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bcd97a54c7ca5ce2f6eb16f6bede5b0ab5f0055fedc17d2f0b4466e21671ca" -dependencies = [ - "generic-array", - "subtle", -] - -[[package]] -name = "crypto-mac" -version = "0.11.1" +name = "ctr" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" dependencies = [ - "generic-array", - "subtle", + "cipher 0.3.0", ] [[package]] name = "curve25519-dalek" -version = "3.2.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61" +checksum = "90f9d052967f590a76e62eb387bd0bbb1b000182c3cefe5364db6b7211651bc0" dependencies = [ "byteorder", "digest 0.9.0", "rand_core 0.5.1", + "serde", "subtle", "zeroize", ] @@ -775,22 +925,47 @@ dependencies = [ ] [[package]] -name = "derivation-path" -version = "0.1.3" +name = "data-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" + +[[package]] +name = "der" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193388a8c8c75a490b604ff61775e236541b8975e98e5ca1f6ea97d122b7e2db" +checksum = "6919815d73839e7ad218de758883aae3a257ba6759ce7a9992501efbb53d705c" dependencies = [ - "failure", + "const-oid", ] +[[package]] +name = "der-parser" +version = "8.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42d4bc9b0db0a0df9ae64634ac5bdefb7afcb534e182275ca0beadbe486701c1" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint 0.4.3", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "derivation-path" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e5c37193a1db1d8ed868c03ec7b152175f26160a5b740e5e484143877e0adf0" + [[package]] name = "dialoguer" -version = "0.9.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61579ada4ec0c6031cfac3f86fdba0d195a7ebeb5e36693bd53cb5999a25beeb" +checksum = "a92e7e37ecef6857fdc0c0c5d42fd5b0938e46590c2183cc92dd310a6d078eb1" dependencies = [ "console", - "lazy_static", "tempfile", "zeroize", ] @@ -845,6 +1020,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "displaydoc" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +dependencies = [ + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", +] + [[package]] name = "dlopen" version = "0.1.8" @@ -887,21 +1073,20 @@ dependencies = [ "ed25519", "rand 0.7.3", "serde", - "sha2", + "sha2 0.9.9", "zeroize", ] [[package]] name = "ed25519-dalek-bip32" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057f328f31294b5ab432e6c39642f54afd1531677d6d4ba2905932844cc242f3" +checksum = "9d2be62a4061b872c8c0873ee4fc6f101ce7b889d039f019c5fa2af471a59908" dependencies = [ "derivation-path", "ed25519-dalek", - "failure", - "hmac 0.9.0", - "sha2", + "hmac 0.12.1", + "sha2 0.10.5", ] [[package]] @@ -937,13 +1122,33 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enum-iterator" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4eeac5c5edb79e4e39fe8439ef35207780a11f69c52cbe424ce3dfad4cb78de6" +dependencies = [ + "enum-iterator-derive", +] + +[[package]] +name = "enum-iterator-derive" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c134c37760b27a871ba422106eedbb8247da973a09e82558bf26d619c882b159" +dependencies = [ + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", +] + [[package]] name = "enum-ordinalize" version = "3.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2170fc0efee383079a8bdd05d6ea2a184d2a0f07a1c1dcabdb2fd5e9f24bc36c" dependencies = [ - "num-bigint", + "num-bigint 0.4.3", "num-traits", "proc-macro2 1.0.37", "quote 1.0.18", @@ -951,6 +1156,18 @@ dependencies = [ "syn 1.0.91", ] +[[package]] +name = "enum_dispatch" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eb359f1476bf611266ac1f5355bc14aeca37b299d0ebccc038ee7058891c9cb" +dependencies = [ + "once_cell", + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", +] + [[package]] name = "env_logger" version = "0.9.0" @@ -986,26 +1203,10 @@ dependencies = [ ] [[package]] -name = "failure" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" -dependencies = [ - "backtrace", - "failure_derive", -] - -[[package]] -name = "failure_derive" -version = "0.1.8" +name = "event-listener" +version = "2.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" -dependencies = [ - "proc-macro2 1.0.37", - "quote 1.0.18", - "syn 1.0.91", - "synstructure", -] +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "fastrand" @@ -1043,7 +1244,7 @@ dependencies = [ "cfg-if", "crc32fast", "libc", - "miniz_oxide 0.5.1", + "miniz_oxide", ] [[package]] @@ -1062,12 +1263,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "fs_extra" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" - [[package]] name = "futures" version = "0.3.21" @@ -1157,6 +1352,15 @@ dependencies = [ "slab", ] +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + [[package]] name = "generic-array" version = "0.14.5" @@ -1202,12 +1406,6 @@ dependencies = [ "wasi 0.10.2+wasi-snapshot-preview1", ] -[[package]] -name = "gimli" -version = "0.26.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4" - [[package]] name = "goblin" version = "0.4.3" @@ -1256,6 +1454,15 @@ dependencies = [ "ahash", ] +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash", +] + [[package]] name = "heck" version = "0.3.3" @@ -1265,6 +1472,12 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "heck" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" + [[package]] name = "hermit-abi" version = "0.1.19" @@ -1275,15 +1488,10 @@ dependencies = [ ] [[package]] -name = "hidapi" -version = "1.4.1" +name = "histogram" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b1717343691998deb81766bfcd1dce6df0d5d6c37070b5a3de2bb6d39f7822" -dependencies = [ - "cc", - "libc", - "pkg-config", -] +checksum = "12cb882ccb290b8646e554b157ab0b71e64e8d5bef775cd66b6531e52d302669" [[package]] name = "hmac" @@ -1291,28 +1499,17 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" dependencies = [ - "crypto-mac 0.8.0", + "crypto-mac", "digest 0.9.0", ] [[package]] name = "hmac" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deae6d9dbb35ec2c502d62b8f7b1c000a0822c3b0794ba36b3149c0a1c840dff" -dependencies = [ - "crypto-mac 0.9.1", - "digest 0.9.0", -] - -[[package]] -name = "hmac" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "crypto-mac 0.11.1", - "digest 0.9.0", + "digest 0.10.3", ] [[package]] @@ -1414,6 +1611,22 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "im" +version = "15.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9" +dependencies = [ + "bitmaps", + "rand_core 0.6.3", + "rand_xoshiro", + "rayon", + "serde", + "sized-chunks", + "typenum", + "version_check", +] + [[package]] name = "index_list" version = "0.2.7" @@ -1427,7 +1640,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.11.2", ] [[package]] @@ -1442,6 +1655,15 @@ dependencies = [ "regex", ] +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "generic-array", +] + [[package]] name = "instant" version = "0.1.12" @@ -1519,9 +1741,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.123" +version = "0.2.135" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb691a747a7ab48abc15c5b42066eaafde10dc427e3b6ee2a1cf43db04c763bd" +checksum = "68783febc7782c6c5cb401fbda4de5a9898be1762314da0bb2c10ced61f18b0c" [[package]] name = "libloading" @@ -1548,7 +1770,7 @@ dependencies = [ "libsecp256k1-gen-genmult", "rand 0.7.3", "serde", - "sha2", + "sha2 0.9.9", "typenum", ] @@ -1606,6 +1828,35 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "lru" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" +dependencies = [ + "hashbrown 0.12.3", +] + +[[package]] +name = "lz4" +version = "1.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9e2dd86df36ce760a60f6ff6ad526f7ba1f14ba0356f8254fb6905e6494df1" +dependencies = [ + "libc", + "lz4-sys", +] + +[[package]] +name = "lz4-sys" +version = "1.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57d27b317e207b10f69f5e75494119e391a96f48861ae870d1da6edac98ca900" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "matches" version = "0.1.9" @@ -1636,6 +1887,18 @@ dependencies = [ "autocfg", ] +[[package]] +name = "merlin" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" +dependencies = [ + "byteorder", + "keccak", + "rand_core 0.6.3", + "zeroize", +] + [[package]] name = "mime" version = "0.3.16" @@ -1643,14 +1906,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] -name = "miniz_oxide" -version = "0.4.4" +name = "minimal-lexical" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" -dependencies = [ - "adler", - "autocfg", -] +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" @@ -1683,6 +1942,27 @@ dependencies = [ "winapi", ] +[[package]] +name = "modular-bitfield" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +dependencies = [ + "modular-bitfield-impl", + "static_assertions", +] + +[[package]] +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2 1.0.37", + "quote 1.0.18", + "syn 1.0.91", +] + [[package]] name = "mpl-auction-house" version = "1.2.4" @@ -1706,13 +1986,13 @@ dependencies = [ [[package]] name = "mpl-testing-utils" -version = "0.0.2" +version = "0.1.1" dependencies = [ "anchor-client", "borsh", "mpl-token-metadata", - "mpl-token-vault", - "num", + "mpl-token-vault 0.2.0", + "num 0.4.0", "num-derive", "num-traits", "rand 0.8.5", @@ -1727,13 +2007,13 @@ dependencies = [ [[package]] name = "mpl-token-metadata" -version = "1.2.10" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "741990cd07cb31d009a345806f30ace8eab99c063cd9440eba8d3df7be2a6988" +checksum = "e719d7e0b5a9d97c7fd4d6f52ebfc32f1e3942e068173e47355f8c275656488a" dependencies = [ "arrayref", "borsh", - "mpl-token-vault", + "mpl-token-vault 0.1.0", "num-derive", "num-traits", "shank", @@ -1757,6 +2037,21 @@ dependencies = [ "thiserror", ] +[[package]] +name = "mpl-token-vault" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32f25a291240116c8fa8867b083f9ab07f664a902c868256b8f81d8ab87ecc61" +dependencies = [ + "borsh", + "num-derive", + "num-traits", + "shank", + "solana-program", + "spl-token", + "thiserror", +] + [[package]] name = "nix" version = "0.23.1" @@ -1770,6 +2065,16 @@ dependencies = [ "memoffset", ] +[[package]] +name = "nom" +version = "7.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" +dependencies = [ + "memchr", + "minimal-lexical", +] + [[package]] name = "ntapi" version = "0.3.7" @@ -1779,17 +2084,42 @@ dependencies = [ "winapi", ] +[[package]] +name = "num" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36" +dependencies = [ + "num-bigint 0.2.6", + "num-complex 0.2.4", + "num-integer", + "num-iter", + "num-rational 0.2.4", + "num-traits", +] + [[package]] name = "num" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606" dependencies = [ - "num-bigint", - "num-complex", + "num-bigint 0.4.3", + "num-complex 0.4.0", "num-integer", "num-iter", - "num-rational", + "num-rational 0.4.0", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" +dependencies = [ + "autocfg", + "num-integer", "num-traits", ] @@ -1804,6 +2134,16 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-complex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95" +dependencies = [ + "autocfg", + "num-traits", +] + [[package]] name = "num-complex" version = "0.4.0" @@ -1845,6 +2185,18 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-rational" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef" +dependencies = [ + "autocfg", + "num-bigint 0.2.6", + "num-integer", + "num-traits", +] + [[package]] name = "num-rational" version = "0.4.0" @@ -1852,7 +2204,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a" dependencies = [ "autocfg", - "num-bigint", + "num-bigint 0.4.3", "num-integer", "num-traits", ] @@ -1897,6 +2249,15 @@ dependencies = [ "syn 1.0.91", ] +[[package]] +name = "num_threads" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" +dependencies = [ + "libc", +] + [[package]] name = "number_prefix" version = "0.4.0" @@ -1904,12 +2265,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] -name = "object" -version = "0.27.1" +name = "oid-registry" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ac1d3f9a1d3616fd9a60c8d74296f22406a238b6a72f5cc1e6f314df4ffbf9" +checksum = "7d4bda43fd1b844cbc6e6e54b5444e2b1bc7838bce59ad205902cccbb26d6761" dependencies = [ - "memchr", + "asn1-rs", ] [[package]] @@ -1924,6 +2285,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + [[package]] name = "opentelemetry" version = "0.16.0" @@ -1943,9 +2310,9 @@ dependencies = [ [[package]] name = "ouroboros" -version = "0.13.0" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f357ef82d1b4db66fbed0b8d542cbd3c22d0bf5b393b3c257b9ba4568e70c9c3" +checksum = "71643f290d126e18ac2598876d01e1d57aed164afc78fdb6e2a0c6589a1f6662" dependencies = [ "aliasable", "ouroboros_macro", @@ -1954,9 +2321,9 @@ dependencies = [ [[package]] name = "ouroboros_macro" -version = "0.13.0" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44a0b52c2cbaef7dffa5fec1a43274afe8bd2a644fa9fc50a9ef4ff0269b1257" +checksum = "ed9a247206016d424fe8497bc611e510887af5c261fbbf977877c4bb55ca4d82" dependencies = [ "Inflector", "proc-macro-error", @@ -1973,7 +2340,17 @@ checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", "lock_api", - "parking_lot_core", + "parking_lot_core 0.8.5", +] + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core 0.9.3", ] [[package]] @@ -1990,22 +2367,44 @@ dependencies = [ "winapi", ] +[[package]] +name = "parking_lot_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-sys", +] + [[package]] name = "pbkdf2" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd" dependencies = [ - "crypto-mac 0.8.0", + "crypto-mac", ] [[package]] name = "pbkdf2" -version = "0.9.0" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271779f35b581956db91a3e55737327a03aa051e90b1c47aeb189508533adfd7" +dependencies = [ + "digest 0.10.3", +] + +[[package]] +name = "pem" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05894bce6a1ba4be299d0c5f29563e08af2bc18bb7d48313113bed71e904739" +checksum = "03c64931a1a212348ec4f3b4362585eca7159d0d09cbdf4a7f74f02173596fd4" dependencies = [ - "crypto-mac 0.11.1", + "base64 0.13.0", ] [[package]] @@ -2014,6 +2413,15 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" +[[package]] +name = "percentage" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fd23b938276f14057220b707937bcb42fa76dda7560e57a2da30cb52d557937" +dependencies = [ + "num 0.2.1", +] + [[package]] name = "pin-project" version = "1.0.10" @@ -2046,6 +2454,17 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "pkcs8" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cabda3fb821068a9a4fab19a683eac3af12edf0f34b94a8be53c4972b8149d0" +dependencies = [ + "der", + "spki", + "zeroize", +] + [[package]] name = "pkg-config" version = "0.3.25" @@ -2058,6 +2477,18 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" +[[package]] +name = "polyval" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] + [[package]] name = "ppv-lite86" version = "0.2.16" @@ -2147,6 +2578,59 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "quinn" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b435e71d9bfa0d8889927231970c51fb89c58fa63bffcab117c9c7a41e5ef8f" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "fxhash", + "quinn-proto", + "quinn-udp", + "rustls", + "thiserror", + "tokio", + "tracing", + "webpki", +] + +[[package]] +name = "quinn-proto" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fce546b9688f767a57530652488420d419a8b1f44a478b451c3d1ab6d992a55" +dependencies = [ + "bytes", + "fxhash", + "rand 0.8.5", + "ring", + "rustls", + "rustls-native-certs", + "rustls-pemfile 0.2.1", + "slab", + "thiserror", + "tinyvec", + "tracing", + "webpki", +] + +[[package]] +name = "quinn-udp" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f832d8958db3e84d2ec93b5eb2272b45aa23cf7f8fe6e79f578896f4e6c231b" +dependencies = [ + "futures-util", + "libc", + "quinn-proto", + "socket2", + "tokio", + "tracing", +] + [[package]] name = "quote" version = "0.6.13" @@ -2246,6 +2730,15 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rand_xoshiro" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +dependencies = [ + "rand_core 0.6.3", +] + [[package]] name = "rayon" version = "1.5.1" @@ -2271,6 +2764,18 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "rcgen" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" +dependencies = [ + "pem", + "ring", + "time 0.3.15", + "yasna", +] + [[package]] name = "redox_syscall" version = "0.2.13" @@ -2323,6 +2828,7 @@ version = "0.11.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46a1f7aa4f35e5e8b4160449f51afc758f0ce6454315a9fa7d0d113e958c41eb" dependencies = [ + "async-compression", "base64 0.13.0", "bytes", "encoding_rs", @@ -2341,12 +2847,13 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls", - "rustls-pemfile", + "rustls-pemfile 0.3.0", "serde", "serde_json", "serde_urlencoded", "tokio", "tokio-rustls", + "tokio-util 0.6.9", "url", "wasm-bindgen", "wasm-bindgen-futures", @@ -2372,11 +2879,13 @@ dependencies = [ [[package]] name = "rpassword" -version = "5.0.1" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb" +checksum = "2bf099a1888612545b683d2661a1940089f6c2e5a8e38979b2159da876bfd956" dependencies = [ "libc", + "serde", + "serde_json", "winapi", ] @@ -2401,6 +2910,15 @@ dependencies = [ "semver", ] +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + [[package]] name = "rustls" version = "0.20.4" @@ -2413,6 +2931,27 @@ dependencies = [ "webpki", ] +[[package]] +name = "rustls-native-certs" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" +dependencies = [ + "openssl-probe", + "rustls-pemfile 1.0.1", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9" +dependencies = [ + "base64 0.13.0", +] + [[package]] name = "rustls-pemfile" version = "0.3.0" @@ -2422,6 +2961,15 @@ dependencies = [ "base64 0.13.0", ] +[[package]] +name = "rustls-pemfile" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0864aeff53f8c05aa08d86e5ef839d3dfcf07aeba2db32f12db0ef716e87bd55" +dependencies = [ + "base64 0.13.0", +] + [[package]] name = "rustversion" version = "1.0.6" @@ -2443,6 +2991,16 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "schannel" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" +dependencies = [ + "lazy_static", + "windows-sys", +] + [[package]] name = "scopeguard" version = "1.1.0" @@ -2479,6 +3037,29 @@ dependencies = [ "untrusted", ] +[[package]] +name = "security-framework" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c" +dependencies = [ + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "semver" version = "1.0.7" @@ -2551,15 +3132,13 @@ dependencies = [ [[package]] name = "sha-1" -version = "0.9.8" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" +checksum = "028f48d513f9678cda28f6e4064755b3fbb2af6acd672f2c209b62323f7aea0f" dependencies = [ - "block-buffer 0.9.0", "cfg-if", "cpufeatures", - "digest 0.9.0", - "opaque-debug", + "digest 0.10.3", ] [[package]] @@ -2575,6 +3154,17 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "sha2" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9db03534dff993187064c4e0c05a5708d2a9728ace9a8959b77bedf415dac5" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.3", +] + [[package]] name = "sha3" version = "0.9.1" @@ -2587,20 +3177,30 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "sha3" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaedf34ed289ea47c2b741bb72e5357a209512d67bcd4bda44359e5bf0470f56" +dependencies = [ + "digest 0.10.3", + "keccak", +] + [[package]] name = "shank" -version = "0.0.2" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9cfd616747d1ce69f15e62ea30589e393115e4b884d7c1cbceb751b8753e95d" +checksum = "b54c657cbe18aaff6d5042a4d48f643fdd2a826dfc7161de98ee28e5bd7e85e0" dependencies = [ "shank_macro", ] [[package]] name = "shank_macro" -version = "0.0.2" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a27d3b536acc60a3ff359181d3a912d10b91539f85909447ca7d33ea0a91d56" +checksum = "1b43a02ae007b64b177f4dbb21d322f276458e4860f9fefbd8b9b791c21644ab" dependencies = [ "proc-macro2 1.0.37", "quote 1.0.18", @@ -2610,9 +3210,9 @@ dependencies = [ [[package]] name = "shank_macro_impl" -version = "0.0.2" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7466a15559fd11aeb5fe12a700923f75bb4eaa7bc90962f2bd822708698ab5d" +checksum = "4d36cdf68202db080a13ef0300c369fc691695265e3d0ab0fa08d4734b0cfb66" dependencies = [ "anyhow", "proc-macro2 1.0.37", @@ -2654,6 +3254,16 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f054c6c1a6e95179d6f23ed974060dcefb2d9388bb7256900badad682c499de4" +[[package]] +name = "sized-chunks" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" +dependencies = [ + "bitmaps", + "typenum", +] + [[package]] name = "slab" version = "0.4.6" @@ -2678,12 +3288,12 @@ dependencies = [ [[package]] name = "solana-account-decoder" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a7760e28434b32eeaabd2fb57688d2a6d7bd58de2bde82607f57162ecbbb1c7" +checksum = "9d59ce383cb83639d5a08805f3f55201aa95b5b92fbd38075fd7745bf91dc983" dependencies = [ "Inflector", - "base64 0.12.3", + "base64 0.13.0", "bincode", "bs58 0.4.0", "bv", @@ -2695,15 +3305,16 @@ dependencies = [ "solana-sdk", "solana-vote-program", "spl-token", + "spl-token-2022", "thiserror", "zstd", ] [[package]] name = "solana-address-lookup-table-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9508c839fd7cce94b21678ad28a6529cec2ea08acaa3514554ad99b564eed2f9" +checksum = "e288d49ed08c0f86d776d6e3525f4e7bd96ca5e25d5b2e583c51077a714c893b" dependencies = [ "bincode", "bytemuck", @@ -2714,6 +3325,7 @@ dependencies = [ "serde", "solana-frozen-abi", "solana-frozen-abi-macro", + "solana-program", "solana-program-runtime", "solana-sdk", "thiserror", @@ -2721,9 +3333,9 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b02cda34ec70e84a9cf6636d8a2529531fb8cca75d31e6ebf0947662f7ee9b12" +checksum = "b3fc8b239ad2fdedb1dc523e972de8c4185f61cf4f0ce027be858e5f897a7491" dependencies = [ "borsh", "futures", @@ -2738,9 +3350,9 @@ dependencies = [ [[package]] name = "solana-banks-interface" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2fac396ff86d7c8b5a3d086c4884c9b365440857933f6557114cc5d640eb4f9" +checksum = "c382dcc2eefc480815493881e764650e02a618cb9793000a801092520ccdd766" dependencies = [ "serde", "solana-sdk", @@ -2749,13 +3361,15 @@ dependencies = [ [[package]] name = "solana-banks-server" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9fc996ae6c27db5af34b8144102ea2e6efbdd973c201fc08a917550ef74e50" +checksum = "7e447f295b60a05406bf9f17feb0167defca98323dcbf6c082d67c9d7888c117" dependencies = [ "bincode", + "crossbeam-channel", "futures", "solana-banks-interface", + "solana-client", "solana-runtime", "solana-sdk", "solana-send-transaction-service", @@ -2765,30 +3379,11 @@ dependencies = [ "tokio-stream", ] -[[package]] -name = "solana-bloom" -version = "1.9.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d16ac280328dabe13f77fc15be1e8e3c719a01ae90309e9f31df6dc24011af2" -dependencies = [ - "bv", - "fnv", - "log", - "rand 0.7.3", - "rayon", - "rustc_version", - "serde", - "serde_derive", - "solana-frozen-abi", - "solana-frozen-abi-macro", - "solana-sdk", -] - [[package]] name = "solana-bpf-loader-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fb1e3df53df7bacecd261c0cdf0b1c6f4a84a724a1312d216ca3ee796c119b8" +checksum = "c45bb606cb1614ebdc4b164fe894a1d29ac6b41bb965919692c42ba4b398cee6" dependencies = [ "bincode", "byteorder", @@ -2798,22 +3393,21 @@ dependencies = [ "solana-metrics", "solana-program-runtime", "solana-sdk", + "solana-zk-token-sdk 1.10.34", "solana_rbpf", "thiserror", ] [[package]] name = "solana-bucket-map" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a97c11377eb1059d3fdddd02ad0fe0c480434f1df812f6b5d16ae7087af44a0" +checksum = "55225f8bf152c97377d4e8cbb9e3d6a51fbe50fc875e7e6c64793e294a30ccc0" dependencies = [ - "fs_extra", "log", "memmap2", + "modular-bitfield", "rand 0.7.3", - "rayon", - "solana-logger", "solana-measure", "solana-sdk", "tempfile", @@ -2821,9 +3415,9 @@ dependencies = [ [[package]] name = "solana-clap-utils" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ec52a2bede69e10bb0583a55cce3945ab39c76415cc673069cbb2d2a60ee0ba" +checksum = "c7b79ccbafa22fb42d04cc59b32093ff9c43205724fe3d7f89ecc27824833fbc" dependencies = [ "chrono", "clap", @@ -2839,33 +3433,51 @@ dependencies = [ [[package]] name = "solana-cli-config" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76c1cdf42c00a375d8353ce013bc96697f45a2cee0c5473aec0c7ce5ff38478e" +checksum = "b759f7b9fef53608fe883cd63feb32c01ce70ea8788ba72be66d553f3f61a415" dependencies = [ "dirs-next", "lazy_static", "serde", "serde_derive", "serde_yaml", + "solana-clap-utils", + "solana-sdk", "url", ] [[package]] name = "solana-client" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6d0e50ba77919abd70de4bc935749a5d6dea4490e212f5f5959d827fc2d43e" +checksum = "d9e8f702f2fd857b9e37af9de21d335af43335416c8c5dbe0710fccd00b1c3bd" dependencies = [ + "async-mutex", + "async-trait", "base64 0.13.0", "bincode", "bs58 0.4.0", + "bytes", "clap", + "crossbeam-channel", + "enum_dispatch", + "futures", + "futures-util", + "indexmap", "indicatif", + "itertools", "jsonrpc-core", + "lazy_static", "log", + "lru", + "quinn", + "quinn-proto", + "rand 0.7.3", + "rand_chacha 0.2.2", "rayon", "reqwest", + "rustls", "semver", "serde", "serde_derive", @@ -2874,22 +3486,27 @@ dependencies = [ "solana-clap-utils", "solana-faucet", "solana-measure", + "solana-metrics", "solana-net-utils", "solana-sdk", + "solana-streamer", "solana-transaction-status", "solana-version", "solana-vote-program", + "spl-token-2022", "thiserror", "tokio", + "tokio-stream", + "tokio-tungstenite", "tungstenite", "url", ] [[package]] name = "solana-compute-budget-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe51d03e2899e00b8c32c6bd9930fc105be88b04243aa2d398b9825c9b09f34b" +checksum = "f1404708102bd4a69bfcd8fd36b1c8f60ad978fe133b86eb568f16e51c83f0e1" dependencies = [ "solana-program-runtime", "solana-sdk", @@ -2897,9 +3514,9 @@ dependencies = [ [[package]] name = "solana-config-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "416632936e7ac85e3a24925299e8c8ebc89ed190e090348e99a7158fb84551ff" +checksum = "07542a24bdedf4c3031801ce0b3782cf790a825db97538062acef6717ba4be2c" dependencies = [ "bincode", "chrono", @@ -2911,13 +3528,14 @@ dependencies = [ [[package]] name = "solana-faucet" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ec717a20cd39a67b7e5ad2990be23c28eb08cb1dd40ee1591538420171d353e" +checksum = "31c773aee679b10b7223262265e13830f59ea8844818a2bdd7bf3d08eea06f68" dependencies = [ "bincode", "byteorder", "clap", + "crossbeam-channel", "log", "serde", "serde_derive", @@ -2934,29 +3552,31 @@ dependencies = [ [[package]] name = "solana-frozen-abi" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e30fc7f860ff75b2916735189534c5353db8d84953af7842f8dd9a6982dbcaaf" +checksum = "82e98bd52827bff5f57c7dad4a42163bceba92b8a330fde2edb000976146ca26" dependencies = [ "bs58 0.4.0", "bv", "generic-array", + "im", + "lazy_static", "log", "memmap2", "rustc_version", "serde", + "serde_bytes", "serde_derive", - "sha2", + "sha2 0.10.5", "solana-frozen-abi-macro", - "solana-logger", "thiserror", ] [[package]] name = "solana-frozen-abi-macro" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e0c0121908ff5df45308b11eef48f696876064884d6aa12b70424dae7459d6" +checksum = "b45334ad9c4abcc2946c4de684616bb155d5b9c4705d22de9b7fb17a902bcc58" dependencies = [ "proc-macro2 1.0.37", "quote 1.0.18", @@ -2966,9 +3586,9 @@ dependencies = [ [[package]] name = "solana-logger" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd76a790f207ea9b523fb051c9d446e424e2e0b9fd539bb76c3ea797abf8ea5" +checksum = "e152dd8a83f444d101605fbd29beec3182b6e666c8c9bbd344a43d8b28b0e47f" dependencies = [ "env_logger", "lazy_static", @@ -2977,9 +3597,9 @@ dependencies = [ [[package]] name = "solana-measure" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "405913a0367af42c58b34266d04cd8d3653f07e7ad95015e598aebdd84066169" +checksum = "2351e8ac2d724b8f84ba88d2f3c846f196a507162840fad6b562d53485aa9a58" dependencies = [ "log", "solana-sdk", @@ -2987,11 +3607,11 @@ dependencies = [ [[package]] name = "solana-metrics" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c4fd520d3360d0e8c90930da09512c5e896754c66faa05763b0ca516bf6a28c" +checksum = "5643ed8dd7fa76f269c39e17aaccaae6393b2f9e2eae4f75fe05922fece3331a" dependencies = [ - "env_logger", + "crossbeam-channel", "gethostname", "lazy_static", "log", @@ -3001,12 +3621,13 @@ dependencies = [ [[package]] name = "solana-net-utils" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca9ca350c274800cef7043bca93134c85dd615d7be4aebd5fab6ec9475ddfbe1" +checksum = "c27db447c84cedf6aad1dbc735ea845d6828aba580ac7190d6351f3a92b2e1b6" dependencies = [ "bincode", "clap", + "crossbeam-channel", "log", "nix", "rand 0.7.3", @@ -3022,9 +3643,9 @@ dependencies = [ [[package]] name = "solana-perf" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b922eca19a4d76a7181b1c72da6ea96a8bf0e4b36476155aa6cb826db0b8280" +checksum = "383c1bebdc50c0d2aa284e23ec3c8237c6df6d6a9ce6dbaea75e4be693cfee13" dependencies = [ "ahash", "bincode", @@ -3041,8 +3662,6 @@ dependencies = [ "rand 0.7.3", "rayon", "serde", - "solana-bloom", - "solana-logger", "solana-metrics", "solana-rayon-threadlimit", "solana-sdk", @@ -3051,9 +3670,9 @@ dependencies = [ [[package]] name = "solana-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64c86be9edb9a0cb3fc44f776c6bef21d19bc5f69b0f83b3999d0d9d103e1c61" +checksum = "ee21d6a0e27792587baf99e024938bc63d8ec7652ef0abfadb85814d616d8862" dependencies = [ "base64 0.13.0", "bincode", @@ -3075,18 +3694,17 @@ dependencies = [ "log", "num-derive", "num-traits", - "parking_lot", + "parking_lot 0.12.1", "rand 0.7.3", "rustc_version", "rustversion", "serde", "serde_bytes", "serde_derive", - "sha2", - "sha3", + "sha2 0.10.5", + "sha3 0.10.4", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-sdk-macro", "thiserror", "wasm-bindgen", @@ -3094,12 +3712,13 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b54e692cc189e105f30875b2ac4279da1ffccef8fb138e55e7339a94c1e9e5" +checksum = "72877543165c1b8618989a5ae97c47dd318554404ae667ee7cefa540bef93d49" dependencies = [ "base64 0.13.0", "bincode", + "enum-iterator", "itertools", "libc", "libloading", @@ -3110,7 +3729,6 @@ dependencies = [ "serde", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-measure", "solana-sdk", "thiserror", @@ -3118,12 +3736,12 @@ dependencies = [ [[package]] name = "solana-program-test" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4342cdd61b179a74df61f9055b4e870959966a2207f50e9584d60f9c43b74a4" +checksum = "2d835e8b6dbcc1fab4bf297d0068edac0a9b604b91f311396e90c2f1afbbdc85" dependencies = [ "async-trait", - "base64 0.12.3", + "base64 0.13.0", "bincode", "chrono-humanize", "log", @@ -3142,9 +3760,9 @@ dependencies = [ [[package]] name = "solana-rayon-threadlimit" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c481ccd3319d37ebe6ba72c8b097247c8387912f8615702daf58919c0f86a2f9" +checksum = "ecdd8e58d4a190a8ee865329f5b86e28e161873cac3db578c894172f433522fe" dependencies = [ "lazy_static", "num_cpus", @@ -3152,18 +3770,16 @@ dependencies = [ [[package]] name = "solana-remote-wallet" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26069e2c4c679817db11a1598f9bc400c273632f9e353449ee02bba125d6a3b7" +checksum = "03ba16d22f11a6d5007ee3fc012865986ce0c9047856fb773b58d2b2886b3cdb" dependencies = [ - "base32", "console", "dialoguer", - "hidapi", "log", "num-derive", "num-traits", - "parking_lot", + "parking_lot 0.12.1", "qstring", "semver", "solana-sdk", @@ -3173,9 +3789,9 @@ dependencies = [ [[package]] name = "solana-runtime" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18bbc5aee342aeb48d03600b07b7908090376a8a66ecd6d0d2195818273cb088" +checksum = "5f1121f0559aaa0f9e202395a96c258da1c2318b9ae2d7edcfbbbab29fc77262" dependencies = [ "arrayref", "bincode", @@ -3189,10 +3805,12 @@ dependencies = [ "dir-diff", "flate2", "fnv", + "im", "index_list", "itertools", "lazy_static", "log", + "lz4", "memmap2", "num-derive", "num-traits", @@ -3205,13 +3823,11 @@ dependencies = [ "serde", "serde_derive", "solana-address-lookup-table-program", - "solana-bloom", "solana-bucket-map", "solana-compute-budget-program", "solana-config-program", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-measure", "solana-metrics", "solana-program-runtime", @@ -3219,6 +3835,10 @@ dependencies = [ "solana-sdk", "solana-stake-program", "solana-vote-program", + "solana-zk-token-proof-program", + "solana-zk-token-sdk 1.10.34", + "strum", + "strum_macros", "symlink", "tar", "tempfile", @@ -3228,9 +3848,9 @@ dependencies = [ [[package]] name = "solana-sdk" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1dc0a8e4f1dede7f0f91879a67459723e30c39018c34a1fdc30da2c4cd292fa" +checksum = "5e1865a804a5cb0870cef475c621ea6e28ea361ea6428541a3fa56131c2618f0" dependencies = [ "assert_matches", "base64 0.13.0", @@ -3242,11 +3862,11 @@ dependencies = [ "byteorder", "chrono", "derivation-path", - "digest 0.9.0", + "digest 0.10.3", "ed25519-dalek", "ed25519-dalek-bip32", "generic-array", - "hmac 0.11.0", + "hmac 0.12.1", "itertools", "js-sys", "lazy_static", @@ -3255,7 +3875,7 @@ dependencies = [ "memmap2", "num-derive", "num-traits", - "pbkdf2 0.9.0", + "pbkdf2 0.10.1", "qstring", "rand 0.7.3", "rand_chacha 0.2.2", @@ -3265,8 +3885,8 @@ dependencies = [ "serde_bytes", "serde_derive", "serde_json", - "sha2", - "sha3", + "sha2 0.10.5", + "sha3 0.10.4", "solana-frozen-abi", "solana-frozen-abi-macro", "solana-logger", @@ -3279,9 +3899,9 @@ dependencies = [ [[package]] name = "solana-sdk-macro" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17d66726cf3324c91601f047d34b7f9d9bf26982775f0f673655bb55df00ec87" +checksum = "79cbfc2108bbe9f02851efc7b09f11b1eb9d9331eedbdf015b8815c9adf3b7aa" dependencies = [ "bs58 0.4.0", "proc-macro2 1.0.37", @@ -3292,12 +3912,14 @@ dependencies = [ [[package]] name = "solana-send-transaction-service" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdee500d68920df86128854a52816afd59d137ed5d4c59979d6fa6b36ef670dd" +checksum = "3334f6112d604c3de9730e8cc7935c05a759eabb3f39c2ef90e1e6f82bf9760f" dependencies = [ + "crossbeam-channel", "log", - "solana-logger", + "solana-client", + "solana-measure", "solana-metrics", "solana-runtime", "solana-sdk", @@ -3305,9 +3927,9 @@ dependencies = [ [[package]] name = "solana-stake-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af6311ce5695dbc1a6cdcbffb13f1f3a0b2ccfd08442352cb487d7bf52c99b17" +checksum = "6270ec01d96cd5396dc6576ec9bc588a377ec31528997562a345cbf4e2321369" dependencies = [ "bincode", "log", @@ -3326,15 +3948,45 @@ dependencies = [ "thiserror", ] +[[package]] +name = "solana-streamer" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3897750f1ed02de72bfc2696b0a2123b8f6ff7ab28436a363492b153404d6c6a" +dependencies = [ + "crossbeam-channel", + "futures-util", + "histogram", + "indexmap", + "itertools", + "libc", + "log", + "nix", + "pem", + "percentage", + "pkcs8", + "quinn", + "rand 0.7.3", + "rcgen", + "rustls", + "solana-metrics", + "solana-perf", + "solana-sdk", + "thiserror", + "tokio", + "x509-parser", +] + [[package]] name = "solana-transaction-status" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b284ee14652a807ca6e4546257688bad2e771ea0f81ce31bc9e4d3757513ea6" +checksum = "12f05d50c02df3bbde97962aebe51e749218b732a36cebc2e1dd95b887b3e937" dependencies = [ "Inflector", - "base64 0.12.3", + "base64 0.13.0", "bincode", + "borsh", "bs58 0.4.0", "lazy_static", "log", @@ -3350,17 +4002,19 @@ dependencies = [ "spl-associated-token-account", "spl-memo", "spl-token", + "spl-token-2022", "thiserror", ] [[package]] name = "solana-version" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5126f48ec74bef527b640b17843e35d7fbe89de9592d4b1afda94b08ae18540a" +checksum = "1546721c034a8bfddb357d3ef87dc35845a8eef5922b0d912103b86adb88c2b0" dependencies = [ "log", "rustc_version", + "semver", "serde", "serde_derive", "solana-frozen-abi", @@ -3370,9 +4024,9 @@ dependencies = [ [[package]] name = "solana-vote-program" -version = "1.9.28" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "554d67ee6ef9b559fe14d339baec35cf465ecc0f47bbd2622a03a0169c00b0eb" +checksum = "91a788d387a2daadf1e5f2278e62a1303b3901145ec000ae8483ad6d8aa9830e" dependencies = [ "bincode", "log", @@ -3383,13 +4037,87 @@ dependencies = [ "serde_derive", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-metrics", "solana-program-runtime", "solana-sdk", "thiserror", ] +[[package]] +name = "solana-zk-token-proof-program" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15a628c868557c5b546fc75d4418201ec14b9530d90d967faac5b5826761ac7f" +dependencies = [ + "bytemuck", + "getrandom 0.1.16", + "num-derive", + "num-traits", + "solana-program-runtime", + "solana-sdk", + "solana-zk-token-sdk 1.10.34", +] + +[[package]] +name = "solana-zk-token-sdk" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74b149253f9ed1afb68b3161b53b62b637d0dd7a3b328dffdc8bb5878d48358e" +dependencies = [ + "aes-gcm-siv", + "arrayref", + "base64 0.13.0", + "bincode", + "bytemuck", + "byteorder", + "cipher 0.3.0", + "curve25519-dalek", + "getrandom 0.1.16", + "lazy_static", + "merlin", + "num-derive", + "num-traits", + "rand 0.7.3", + "serde", + "serde_json", + "sha3 0.9.1", + "solana-program", + "solana-sdk", + "subtle", + "thiserror", + "zeroize", +] + +[[package]] +name = "solana-zk-token-sdk" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d84ccefe3a0f9d27e50e50755e17bb5928d8f4fd53a33ccb844497f1259ce261" +dependencies = [ + "aes-gcm-siv", + "arrayref", + "base64 0.13.0", + "bincode", + "bytemuck", + "byteorder", + "cipher 0.4.3", + "curve25519-dalek", + "getrandom 0.1.16", + "lazy_static", + "merlin", + "num-derive", + "num-traits", + "rand 0.7.3", + "serde", + "serde_json", + "sha3 0.9.1", + "solana-program", + "solana-sdk", + "subtle", + "thiserror", + "zeroize", +] + [[package]] name = "solana_rbpf" version = "0.2.24" @@ -3406,7 +4134,7 @@ dependencies = [ "rustc-demangle", "scroll", "thiserror", - "time", + "time 0.1.43", ] [[package]] @@ -3415,12 +4143,23 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spki" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d01ac02a6ccf3e07db148d2be087da624fea0221a16152ed01f0496a6b0a27" +dependencies = [ + "base64ct", + "der", +] + [[package]] name = "spl-associated-token-account" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "393e2240d521c3dd770806bff25c2c00d761ac962be106e14e22dd912007f428" +checksum = "2b013067447a1396303ddfc294f36e3d260a32f8a16c501c295bcdc7de39b490" dependencies = [ + "borsh", "solana-program", "spl-token", ] @@ -3436,15 +4175,34 @@ dependencies = [ [[package]] name = "spl-token" -version = "3.2.0" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d05653bed5932064a287340dbc8a3cb298ee717e5c7ec3353d7cdb9f8fb7e1" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-program", + "thiserror", +] + +[[package]] +name = "spl-token-2022" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93bfdd5bd7c869cb565c7d7635c4fafe189b988a0bdef81063cd9585c6b8dc01" +checksum = "fce48c69350134e8678de5c0956a531b7de586b28eebdddc03211ceec0660983" dependencies = [ "arrayref", + "bytemuck", "num-derive", "num-traits", "num_enum", "solana-program", + "solana-zk-token-sdk 0.8.1", + "spl-memo", + "spl-token", "thiserror", ] @@ -3466,6 +4224,28 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck 0.4.0", + "proc-macro2 1.0.37", + "quote 1.0.18", + "rustversion", + "syn 1.0.91", +] + [[package]] name = "subtle" version = "2.4.1" @@ -3639,6 +4419,24 @@ dependencies = [ "winapi", ] +[[package]] +name = "time" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d634a985c4d4238ec39cacaed2e7ae552fbd3c476b552c1deac3021b7d7eaf0c" +dependencies = [ + "itoa", + "libc", + "num_threads", + "time-macros", +] + +[[package]] +name = "time-macros" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792" + [[package]] name = "tiny-bip39" version = "0.8.2" @@ -3651,7 +4449,7 @@ dependencies = [ "pbkdf2 0.4.0", "rand 0.7.3", "rustc-hash", - "sha2", + "sha2 0.9.9", "thiserror", "unicode-normalization", "wasm-bindgen", @@ -3686,7 +4484,7 @@ dependencies = [ "mio", "num_cpus", "once_cell", - "parking_lot", + "parking_lot 0.11.2", "pin-project-lite", "signal-hook-registry", "tokio-macros", @@ -3742,6 +4540,22 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-tungstenite" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181" +dependencies = [ + "futures-util", + "log", + "rustls", + "tokio", + "tokio-rustls", + "tungstenite", + "webpki", + "webpki-roots", +] + [[package]] name = "tokio-util" version = "0.6.9" @@ -3851,9 +4665,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "tungstenite" -version = "0.16.0" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ad3713a14ae247f22a728a0456a545df14acf3867f905adff84be99e23b3ad1" +checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" dependencies = [ "base64 0.13.0", "byteorder", @@ -3916,6 +4730,16 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" +[[package]] +name = "universal-hash" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" +dependencies = [ + "generic-array", + "subtle", +] + [[package]] name = "unreachable" version = "1.0.0" @@ -4142,6 +4966,49 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-sys" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" +dependencies = [ + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_msvc" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" + +[[package]] +name = "windows_i686_gnu" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" + +[[package]] +name = "windows_i686_msvc" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" + [[package]] name = "winreg" version = "0.10.1" @@ -4151,6 +5018,24 @@ dependencies = [ "winapi", ] +[[package]] +name = "x509-parser" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" +dependencies = [ + "asn1-rs", + "base64 0.13.0", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror", + "time 0.3.15", +] + [[package]] name = "xattr" version = "0.2.2" @@ -4175,11 +5060,20 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +[[package]] +name = "yasna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346d34a236c9d3e5f3b9b74563f238f955bbd05fa0b8b4efa53c130c43982f4c" +dependencies = [ + "time 0.3.15", +] + [[package]] name = "zeroize" -version = "1.5.4" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb5728b8afd3f280a869ce1d4c554ffaed35f45c231fc41bfbd0381bef50317" +checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd" dependencies = [ "zeroize_derive", ] @@ -4198,18 +5092,18 @@ dependencies = [ [[package]] name = "zstd" -version = "0.9.2+zstd.1.5.1" +version = "0.11.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2390ea1bf6c038c39674f22d95f0564725fc06034a47129179810b2fc58caa54" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "4.1.3+zstd.1.5.1" +version = "5.0.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e99d81b99fb3c2c2c794e3fe56c305c63d5173a16a46b5850b07c935ffc7db79" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" dependencies = [ "libc", "zstd-sys", @@ -4217,9 +5111,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "1.6.2+zstd.1.5.1" +version = "2.0.1+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2daf2f248d9ea44454bfcb2516534e8b8ad2fc91bf818a1885495fc42bc8ac9f" +checksum = "9fd07cbbc53846d9145dbffdf6dd09a7a0aa52be46741825f5c97bdd4f73f12b" dependencies = [ "cc", "libc", diff --git a/auction-house/program/Cargo.toml b/auction-house/program/Cargo.toml index 43aa3070cb..f3a65ccfe9 100644 --- a/auction-house/program/Cargo.toml +++ b/auction-house/program/Cargo.toml @@ -21,24 +21,24 @@ cpi = ["no-entrypoint"] default = [] [dependencies] -solana-program = "~1.9.28" -anchor-lang = "~0.24.2" -anchor-spl = "~0.24.2" -spl-token = { version = "~3.2", features = ["no-entrypoint"] } -spl-associated-token-account = {version = "~1.0.3", features = ["no-entrypoint"]} -mpl-token-metadata = { version="~1.2.7", features = [ "no-entrypoint" ] } -thiserror = "~1.0" -arrayref = "~0.3.6" +solana-program = "1.10" +anchor-lang = "0.25.0" +anchor-spl = "0.25.0" +spl-token = { version = "3.2", features = ["no-entrypoint"] } +spl-associated-token-account = {version = "1.0.5", features = ["no-entrypoint"]} +mpl-token-metadata = { version="1.4", features = [ "no-entrypoint" ] } +thiserror = "1.0" +arrayref = "0.3.6" [dev-dependencies] -anchor-client = "~0.24.2" -shellexpand = "~2.1.0" -serde_json = "~1.0" -solana-program = "~1.9.28" -mpl-testing-utils= {path="../../core/rust/testing-utils" } -solana-program-test = "~1.9.28" -solana-sdk = "~1.9.28" -env_logger="~0.9.0" +anchor-client = "0.25.0" +shellexpand = "2.1.0" +serde_json = "1.0" +solana-program = "1.10" +mpl-testing-utils= { path="../../core/rust/testing-utils" } +solana-program-test = "1.10" +solana-sdk = "1.10" +env_logger="0.9.0" [profile.release] overflow-checks = true # Enable integer overflow checks. diff --git a/auction-house/program/src/utils.rs b/auction-house/program/src/utils.rs index 700356db7c..d546a63bf6 100644 --- a/auction-house/program/src/utils.rs +++ b/auction-house/program/src/utils.rs @@ -15,7 +15,7 @@ use anchor_lang::{ }; use anchor_spl::token::{Mint, Token, TokenAccount}; use arrayref::array_ref; -use mpl_token_metadata::state::Metadata; +use mpl_token_metadata::state::{Metadata, TokenMetadataAccount}; use spl_associated_token_account::get_associated_token_address; use spl_token::{instruction::initialize_account2, state::Account as SplAccount}; use std::{convert::TryInto, slice::Iter}; @@ -49,7 +49,7 @@ pub fn make_ata<'a>( }; invoke_signed( - &spl_associated_token_account::create_associated_token_account( + &spl_associated_token_account::instruction::create_associated_token_account( fee_payer.key, wallet.key, mint.key, diff --git a/auction-house/program/tests/create_auction_house.rs b/auction-house/program/tests/create_auction_house.rs index 3c274d3201..d9ef2366ff 100644 --- a/auction-house/program/tests/create_auction_house.rs +++ b/auction-house/program/tests/create_auction_house.rs @@ -11,7 +11,7 @@ use mpl_testing_utils::{ use solana_program_test::*; use solana_sdk::{ instruction::InstructionError, signature::Keypair, signer::Signer, - transaction::TransactionError, transport::TransportError, + transaction::TransactionError, }; use common::*; @@ -179,7 +179,7 @@ async fn init_native_success_reinitialize_fail() { .await .unwrap_err(); match hacked_auction_house { - TransportError::TransactionError(TransactionError::InstructionError( + BanksClientError::TransactionError(TransactionError::InstructionError( 0, InstructionError::Custom(0), )) => (), diff --git a/auction-house/program/tests/delegate.rs b/auction-house/program/tests/delegate.rs index e1ae3b932e..427268d417 100644 --- a/auction-house/program/tests/delegate.rs +++ b/auction-house/program/tests/delegate.rs @@ -178,7 +178,7 @@ async fn incorrect_auctioneer_pda_fails() { assert_transport_error!( err, - TransportError::TransactionError(TransactionError::InstructionError(0, _)) + BanksClientError::TransactionError(TransactionError::InstructionError(0, _)) ); } diff --git a/auction-house/program/tests/execute_sale.rs b/auction-house/program/tests/execute_sale.rs index ead5a9f3bf..e74c59b106 100644 --- a/auction-house/program/tests/execute_sale.rs +++ b/auction-house/program/tests/execute_sale.rs @@ -34,7 +34,6 @@ use solana_program::program_pack::Pack; use solana_sdk::{ signature::Keypair, transaction::{Transaction, TransactionError}, - transport::TransportError, }; use spl_associated_token_account::get_associated_token_address; use spl_token::state::Account; @@ -321,7 +320,7 @@ async fn execute_sale_wrong_token_account_owner_success() { println!("{:?}", err); match err { - TransportError::TransactionError(TransactionError::InstructionError( + BanksClientError::TransactionError(TransactionError::InstructionError( 0, InstructionError::Custom(6000), )) => (), @@ -3101,7 +3100,7 @@ async fn execute_sale_partial_order_fail_price_mismatch() { context.last_blockhash, ); - let error: TransportError = context + let error: BanksClientError = context .banks_client .process_transaction(tx) .await diff --git a/auction-house/program/tests/utils/helpers.rs b/auction-house/program/tests/utils/helpers.rs index aa4f7aec86..00f8c411ef 100644 --- a/auction-house/program/tests/utils/helpers.rs +++ b/auction-house/program/tests/utils/helpers.rs @@ -7,7 +7,8 @@ use mpl_auction_house::{ }; use mpl_testing_utils::assert_error; use solana_program::instruction::InstructionError; -use solana_sdk::{transaction::TransactionError, transport::TransportError}; +use solana_program_test::BanksClientError; +use solana_sdk::transaction::TransactionError; pub fn default_scopes() -> Vec { vec![ @@ -81,9 +82,9 @@ pub fn find_noncanonical_auction_house_treasury_address( /// The below is a workaround to make it even less likely. /// Tests are still brittle, but fail much less often which is the best we can do for now aside /// from disabling the problematic tests in CI entirely. -pub fn assert_error_ignoring_io_error_in_ci(error: &TransportError, error_code: u32) { +pub fn assert_error_ignoring_io_error_in_ci(error: &BanksClientError, error_code: u32) { match error { - TransportError::IoError(err) if env::var("CI").is_ok() => { + BanksClientError::Io(err) if env::var("CI").is_ok() => { match err.kind() { std::io::ErrorKind::Other if &err.to_string() == "the request exceeded its deadline" => @@ -104,11 +105,11 @@ pub fn assert_error_ignoring_io_error_in_ci(error: &TransportError, error_code: } /// See `assert_error_ignoring_io_error_in_ci` for more details regarding this workaround -pub fn unwrap_ignoring_io_error_in_ci(result: Result<(), TransportError>) { +pub fn unwrap_ignoring_io_error_in_ci(result: Result<(), BanksClientError>) { match result { Ok(()) => (), Err(error) => match error { - TransportError::IoError(err) if env::var("CI").is_ok() => match err.kind() { + BanksClientError::Io(err) if env::var("CI").is_ok() => match err.kind() { std::io::ErrorKind::Other if &err.to_string() == "the request exceeded its deadline" => { diff --git a/auction-house/program/tests/utils/setup_functions.rs b/auction-house/program/tests/utils/setup_functions.rs index 77cde2987d..e64bc9e4f3 100644 --- a/auction-house/program/tests/utils/setup_functions.rs +++ b/auction-house/program/tests/utils/setup_functions.rs @@ -23,7 +23,7 @@ use std::result::Result as StdResult; use mpl_token_metadata::pda::find_metadata_account; use solana_program_test::*; -use solana_sdk::{instruction::Instruction, transaction::Transaction, transport::TransportError}; +use solana_sdk::{instruction::Instruction, transaction::Transaction}; use spl_associated_token_account::get_associated_token_address; pub fn auction_house_program_test() -> ProgramTest { @@ -49,7 +49,7 @@ pub async fn create_auction_house( seller_fee_basis_points: u16, requires_sign_off: bool, can_change_sale_price: bool, -) -> StdResult { +) -> StdResult { let accounts = mpl_auction_house::accounts::CreateAuctionHouse { treasury_mint: *t_mint_key, payer: payer_wallet.pubkey(), @@ -1085,7 +1085,7 @@ pub async fn delegate_auctioneer( auctioneer_authority: Pubkey, ah_auctioneer_pda: Pubkey, scopes: Vec, -) -> StdResult<(), TransportError> { +) -> StdResult<(), BanksClientError> { let accounts = mpl_auction_house::accounts::DelegateAuctioneer { auction_house, authority: authority.pubkey(), @@ -1237,7 +1237,7 @@ pub fn auctioneer_withdraw( pub async fn existing_auction_house_test_context( context: &mut ProgramTestContext, -) -> StdResult<(AuctionHouse, Pubkey, Keypair), TransportError> { +) -> StdResult<(AuctionHouse, Pubkey, Keypair), BanksClientError> { let twd_key = context.payer.pubkey(); let fwd_key = context.payer.pubkey(); let t_mint_key = spl_token::native_mint::id(); @@ -1280,6 +1280,6 @@ pub async fn existing_auction_house_test_context( .expect("account empty"); let auction_house_data = AuctionHouse::try_deserialize(&mut auction_house_acc.data.as_ref()) - .map_err(|e| TransportError::IoError(io::Error::new(io::ErrorKind::InvalidData, e)))?; + .map_err(|e| BanksClientError::Io(io::Error::new(io::ErrorKind::InvalidData, e)))?; Ok((auction_house_data, auction_house_address, authority)) } From 751b68010448471aa714007c055a0e404f0ead50 Mon Sep 17 00:00:00 2001 From: Samuel Vanderwaal Date: Tue, 11 Oct 2022 17:50:14 -0800 Subject: [PATCH 2/5] chore: update auctioneer deps --- auctioneer/program/Cargo.lock | 1445 +++++++++++++---- auctioneer/program/Cargo.toml | 28 +- .../program/tests/utils/setup_functions.rs | 11 +- 3 files changed, 1160 insertions(+), 324 deletions(-) diff --git a/auctioneer/program/Cargo.lock b/auctioneer/program/Cargo.lock index 1c686c454b..fa5b177650 100644 --- a/auctioneer/program/Cargo.lock +++ b/auctioneer/program/Cargo.lock @@ -13,19 +13,46 @@ dependencies = [ ] [[package]] -name = "addr2line" -version = "0.17.0" +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aead" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ - "gimli", + "generic-array", ] [[package]] -name = "adler" -version = "1.0.2" +name = "aes" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" +dependencies = [ + "cfg-if", + "cipher 0.3.0", + "cpufeatures", + "opaque-debug", +] + +[[package]] +name = "aes-gcm-siv" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589c637f0e68c877bbd59a4599bbe849cac8e5f3e4b5a3ebae8f528cd218dcdc" +dependencies = [ + "aead", + "aes", + "cipher 0.3.0", + "ctr", + "polyval", + "subtle", + "zeroize", +] [[package]] name = "ahash" @@ -53,11 +80,26 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + [[package]] name = "anchor-attribute-access-control" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b75d05b6b4ac9d95bb6e3b786b27d3a708c4c5a87c92ffaa25bbe9ae4c5d91" +checksum = "70f6ee9518f50ff4d434471ccf569186022bdd5ef65a21d14da3ea5231af944f" dependencies = [ "anchor-syn", "anyhow", @@ -69,9 +111,9 @@ dependencies = [ [[package]] name = "anchor-attribute-account" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "485351a6d8157750d10d88c8e256f1bf8339262b2220ae9125aed3471309b5de" +checksum = "32c92bcf5388b52676d990f85bbfd838a8f5672393135063a50dc79b2b837c79" dependencies = [ "anchor-syn", "anyhow", @@ -84,9 +126,9 @@ dependencies = [ [[package]] name = "anchor-attribute-constant" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc632c540913dd051a78b00587cc47f57013d303163ddfaf4fa18717f7ccc1e0" +checksum = "0844974ac35e8ced62056b0d63777ebcdc5807438b8b189c881e2b647450b70a" dependencies = [ "anchor-syn", "proc-macro2 1.0.43", @@ -95,9 +137,9 @@ dependencies = [ [[package]] name = "anchor-attribute-error" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b5bd1dcfa7f3bc22dacef233d70a9e0bee269c4ac484510662f257cba2353a1" +checksum = "0f7467345e67a6f1d4b862b9763a4160ad89d18c247b8c902807768f7b6e23df" dependencies = [ "anchor-syn", "proc-macro2 1.0.43", @@ -107,9 +149,9 @@ dependencies = [ [[package]] name = "anchor-attribute-event" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c6f9e6ce551ac9a177a45c99a65699a860c9e95fac68675138af1246e2591b0" +checksum = "8774e4c1ac71f71a5aea7e4932fb69c30e3b8155c4fa59fd69401195434528a9" dependencies = [ "anchor-syn", "anyhow", @@ -120,13 +162,13 @@ dependencies = [ [[package]] name = "anchor-attribute-interface" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d104aa17418cb329ed7418b227e083d5f326a27f26ce98f5d92e33da62a5f459" +checksum = "90eeb6e1c80f9f94fcef93a52813f6472186200e275e83cb3fac92b801de92f7" dependencies = [ "anchor-syn", "anyhow", - "heck", + "heck 0.3.3", "proc-macro2 1.0.43", "quote 1.0.21", "syn 1.0.100", @@ -134,9 +176,9 @@ dependencies = [ [[package]] name = "anchor-attribute-program" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6831b920b173c004ddf7ae1167d1d25e9f002ffcb1773bbc5c7ce532a4441e1" +checksum = "ac515a7a5a4fea7fc768b1cec40ddb948e148ea657637c75f94f283212326cb9" dependencies = [ "anchor-syn", "anyhow", @@ -147,9 +189,9 @@ dependencies = [ [[package]] name = "anchor-attribute-state" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde147b10c71d95dc679785db0b5f3abac0091f789167aa62ac0135e2f54e8b9" +checksum = "43dc667b62ff71450f19dcfcc37b0c408fd4ddd89e8650368c2b0984b110603f" dependencies = [ "anchor-syn", "anyhow", @@ -160,9 +202,9 @@ dependencies = [ [[package]] name = "anchor-client" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb1dfd40bbeeb17ff748a0eb9df2d58c70f0e3ac4e11dac08228d3c99ab68976" +checksum = "ee0e630f9310a0134c92df4458890a0f9c5b662d69c305690af1c17f5cd0b3ba" dependencies = [ "anchor-lang", "anyhow", @@ -177,9 +219,9 @@ dependencies = [ [[package]] name = "anchor-derive-accounts" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cde98a0e1a56046b040ff591dfda391f88917af2b6487d02b45093c05be3514" +checksum = "7354d583a06701d24800a8ec4c2b0491f62581a331af349205e23421e0b56643" dependencies = [ "anchor-syn", "anyhow", @@ -190,9 +232,9 @@ dependencies = [ [[package]] name = "anchor-lang" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a85dd2c5e29e20c7f4701a43724d6cd5406d0ee5694705522e43da0f26542a84" +checksum = "ff5f57ec5e12fa6874b27f3d5c1f6f44302d3ad86c1266197ff7611bf6f5d251" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", @@ -214,9 +256,9 @@ dependencies = [ [[package]] name = "anchor-spl" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0188c33b4a3c124c4e593f2b440415aaea70a7650fac6ba0772395385d71c003" +checksum = "d65904c3106851f6d1bb87d504044764819d69c51d2b4346d59d399d8afa7d18" dependencies = [ "anchor-lang", "solana-program", @@ -226,19 +268,19 @@ dependencies = [ [[package]] name = "anchor-syn" -version = "0.24.2" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03549dc2eae0b20beba6333b14520e511822a6321cdb1760f841064a69347316" +checksum = "55aa1e680d9471342122ed5b6bc13bf5da473b0f7e4677d41a6954e5cc8ad155" dependencies = [ "anyhow", "bs58 0.3.1", - "heck", + "heck 0.3.3", "proc-macro2 1.0.43", "proc-macro2-diagnostics", "quote 1.0.21", "serde", "serde_json", - "sha2", + "sha2 0.9.9", "syn 1.0.100", "thiserror", ] @@ -285,12 +327,74 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" +[[package]] +name = "asn1-rs" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf6690c370453db30743b373a60ba498fc0d6d83b11f4abfd87a84a075db5dd4" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time 0.3.15", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" +dependencies = [ + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" +dependencies = [ + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", +] + [[package]] name = "assert_matches" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" +[[package]] +name = "async-compression" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" +dependencies = [ + "brotli", + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "async-mutex" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e" +dependencies = [ + "event-listener", +] + [[package]] name = "async-trait" version = "0.1.57" @@ -319,27 +423,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" -[[package]] -name = "backtrace" -version = "0.3.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "base32" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" - [[package]] name = "base64" version = "0.12.3" @@ -352,6 +435,12 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +[[package]] +name = "base64ct" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea2b2456fd614d856680dcd9fcc660a51a820fa09daef2e49772b56a193c8474" + [[package]] name = "bincode" version = "1.3.3" @@ -367,6 +456,15 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitmaps" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" +dependencies = [ + "typenum", +] + [[package]] name = "blake3" version = "1.3.1" @@ -451,6 +549,27 @@ dependencies = [ "syn 1.0.100", ] +[[package]] +name = "brotli" +version = "3.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + [[package]] name = "bs58" version = "0.3.1" @@ -568,7 +687,7 @@ dependencies = [ "num-integer", "num-traits", "serde", - "time", + "time 0.1.44", "wasm-bindgen", "winapi", ] @@ -582,6 +701,25 @@ dependencies = [ "chrono", ] +[[package]] +name = "cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +dependencies = [ + "generic-array", +] + +[[package]] +name = "cipher" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1873270f8f7942c191139cb8a40fd228da6c3fd2fc376d7e92d47aa14aeb59e" +dependencies = [ + "crypto-common", + "inout", +] + [[package]] name = "clap" version = "2.34.0" @@ -644,12 +782,28 @@ dependencies = [ "web-sys", ] +[[package]] +name = "const-oid" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4c78c047431fee22c1a7bb92e00ad095a02a983affe4d8a72e2a2c62c1b94f3" + [[package]] name = "constant_time_eq" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" version = "0.8.3" @@ -746,23 +900,12 @@ dependencies = [ ] [[package]] -name = "crypto-mac" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bcd97a54c7ca5ce2f6eb16f6bede5b0ab5f0055fedc17d2f0b4466e21671ca" -dependencies = [ - "generic-array", - "subtle", -] - -[[package]] -name = "crypto-mac" -version = "0.11.1" +name = "ctr" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" dependencies = [ - "generic-array", - "subtle", + "cipher 0.3.0", ] [[package]] @@ -774,6 +917,7 @@ dependencies = [ "byteorder", "digest 0.9.0", "rand_core 0.5.1", + "serde", "subtle", "zeroize", ] @@ -790,22 +934,47 @@ dependencies = [ ] [[package]] -name = "derivation-path" -version = "0.1.3" +name = "data-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" + +[[package]] +name = "der" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193388a8c8c75a490b604ff61775e236541b8975e98e5ca1f6ea97d122b7e2db" +checksum = "6919815d73839e7ad218de758883aae3a257ba6759ce7a9992501efbb53d705c" dependencies = [ - "failure", + "const-oid", ] +[[package]] +name = "der-parser" +version = "8.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42d4bc9b0db0a0df9ae64634ac5bdefb7afcb534e182275ca0beadbe486701c1" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint 0.4.3", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "derivation-path" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e5c37193a1db1d8ed868c03ec7b152175f26160a5b740e5e484143877e0adf0" + [[package]] name = "dialoguer" -version = "0.9.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61579ada4ec0c6031cfac3f86fdba0d195a7ebeb5e36693bd53cb5999a25beeb" +checksum = "a92e7e37ecef6857fdc0c0c5d42fd5b0938e46590c2183cc92dd310a6d078eb1" dependencies = [ "console", - "lazy_static", "tempfile", "zeroize", ] @@ -880,6 +1049,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "displaydoc" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +dependencies = [ + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", +] + [[package]] name = "dlopen" version = "0.1.8" @@ -922,21 +1102,20 @@ dependencies = [ "ed25519", "rand 0.7.3", "serde", - "sha2", + "sha2 0.9.9", "zeroize", ] [[package]] name = "ed25519-dalek-bip32" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057f328f31294b5ab432e6c39642f54afd1531677d6d4ba2905932844cc242f3" +checksum = "9d2be62a4061b872c8c0873ee4fc6f101ce7b889d039f019c5fa2af471a59908" dependencies = [ "derivation-path", "ed25519-dalek", - "failure", - "hmac 0.9.0", - "sha2", + "hmac 0.12.1", + "sha2 0.10.6", ] [[package]] @@ -972,13 +1151,33 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enum-iterator" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4eeac5c5edb79e4e39fe8439ef35207780a11f69c52cbe424ce3dfad4cb78de6" +dependencies = [ + "enum-iterator-derive", +] + +[[package]] +name = "enum-iterator-derive" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c134c37760b27a871ba422106eedbb8247da973a09e82558bf26d619c882b159" +dependencies = [ + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", +] + [[package]] name = "enum-ordinalize" version = "3.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2170fc0efee383079a8bdd05d6ea2a184d2a0f07a1c1dcabdb2fd5e9f24bc36c" dependencies = [ - "num-bigint", + "num-bigint 0.4.3", "num-traits", "proc-macro2 1.0.43", "quote 1.0.21", @@ -986,6 +1185,18 @@ dependencies = [ "syn 1.0.100", ] +[[package]] +name = "enum_dispatch" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eb359f1476bf611266ac1f5355bc14aeca37b299d0ebccc038ee7058891c9cb" +dependencies = [ + "once_cell", + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", +] + [[package]] name = "env_logger" version = "0.9.1" @@ -1000,26 +1211,10 @@ dependencies = [ ] [[package]] -name = "failure" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" -dependencies = [ - "backtrace", - "failure_derive", -] - -[[package]] -name = "failure_derive" -version = "0.1.8" +name = "event-listener" +version = "2.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" -dependencies = [ - "proc-macro2 1.0.43", - "quote 1.0.21", - "syn 1.0.100", - "synstructure", -] +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "fastrand" @@ -1073,12 +1268,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "fs_extra" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" - [[package]] name = "futures" version = "0.3.24" @@ -1168,6 +1357,15 @@ dependencies = [ "slab", ] +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + [[package]] name = "generic-array" version = "0.14.6" @@ -1213,12 +1411,6 @@ dependencies = [ "wasi 0.11.0+wasi-snapshot-preview1", ] -[[package]] -name = "gimli" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" - [[package]] name = "goblin" version = "0.4.3" @@ -1272,6 +1464,9 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash", +] [[package]] name = "heck" @@ -1282,6 +1477,12 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "heck" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" + [[package]] name = "hermit-abi" version = "0.1.19" @@ -1292,15 +1493,10 @@ dependencies = [ ] [[package]] -name = "hidapi" -version = "1.4.2" +name = "histogram" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d26e1151deaab68f34fbfd16d491a2a0170cf98d69d3efa23873b567a4199e1" -dependencies = [ - "cc", - "libc", - "pkg-config", -] +checksum = "12cb882ccb290b8646e554b157ab0b71e64e8d5bef775cd66b6531e52d302669" [[package]] name = "hmac" @@ -1308,28 +1504,17 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" dependencies = [ - "crypto-mac 0.8.0", + "crypto-mac", "digest 0.9.0", ] [[package]] name = "hmac" -version = "0.9.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deae6d9dbb35ec2c502d62b8f7b1c000a0822c3b0794ba36b3149c0a1c840dff" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "crypto-mac 0.9.1", - "digest 0.9.0", -] - -[[package]] -name = "hmac" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" -dependencies = [ - "crypto-mac 0.11.1", - "digest 0.9.0", + "digest 0.10.5", ] [[package]] @@ -1444,6 +1629,22 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "im" +version = "15.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9" +dependencies = [ + "bitmaps", + "rand_core 0.6.4", + "rand_xoshiro", + "rayon", + "serde", + "sized-chunks", + "typenum", + "version_check", +] + [[package]] name = "index_list" version = "0.2.7" @@ -1472,6 +1673,15 @@ dependencies = [ "regex", ] +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "generic-array", +] + [[package]] name = "instant" version = "0.1.12" @@ -1578,7 +1788,7 @@ dependencies = [ "libsecp256k1-gen-genmult", "rand 0.7.3", "serde", - "sha2", + "sha2 0.9.9", "typenum", ] @@ -1636,6 +1846,35 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "lru" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" +dependencies = [ + "hashbrown 0.12.3", +] + +[[package]] +name = "lz4" +version = "1.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9e2dd86df36ce760a60f6ff6ad526f7ba1f14ba0356f8254fb6905e6494df1" +dependencies = [ + "libc", + "lz4-sys", +] + +[[package]] +name = "lz4-sys" +version = "1.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57d27b317e207b10f69f5e75494119e391a96f48861ae870d1da6edac98ca900" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "memchr" version = "2.5.0" @@ -1660,12 +1899,30 @@ dependencies = [ "autocfg", ] +[[package]] +name = "merlin" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" +dependencies = [ + "byteorder", + "keccak", + "rand_core 0.6.4", + "zeroize", +] + [[package]] name = "mime" version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + [[package]] name = "miniz_oxide" version = "0.5.4" @@ -1697,6 +1954,27 @@ dependencies = [ "winapi", ] +[[package]] +name = "modular-bitfield" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +dependencies = [ + "modular-bitfield-impl", + "static_assertions", +] + +[[package]] +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2 1.0.43", + "quote 1.0.21", + "syn 1.0.100", +] + [[package]] name = "mpl-auction-house" version = "1.2.4" @@ -1733,13 +2011,13 @@ dependencies = [ [[package]] name = "mpl-testing-utils" -version = "0.0.2" +version = "0.1.1" dependencies = [ "anchor-client", "borsh", "mpl-token-metadata", - "mpl-token-vault", - "num", + "mpl-token-vault 0.2.0", + "num 0.4.0", "num-derive", "num-traits", "rand 0.8.5", @@ -1754,13 +2032,13 @@ dependencies = [ [[package]] name = "mpl-token-metadata" -version = "1.2.10" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "741990cd07cb31d009a345806f30ace8eab99c063cd9440eba8d3df7be2a6988" +checksum = "e719d7e0b5a9d97c7fd4d6f52ebfc32f1e3942e068173e47355f8c275656488a" dependencies = [ "arrayref", "borsh", - "mpl-token-vault", + "mpl-token-vault 0.1.0", "num-derive", "num-traits", "shank", @@ -1772,9 +2050,23 @@ dependencies = [ [[package]] name = "mpl-token-vault" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36789b99869391fcc1041509729db1183d2abb0ffe62b165fadd9fffba391fde" +checksum = "7ade4ef15bc06a6033076c4ff28cba9b42521df5ec61211d6f419415ace2746a" +dependencies = [ + "borsh", + "num-derive", + "num-traits", + "solana-program", + "spl-token", + "thiserror", +] + +[[package]] +name = "mpl-token-vault" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32f25a291240116c8fa8867b083f9ab07f664a902c868256b8f81d8ab87ecc61" dependencies = [ "borsh", "num-derive", @@ -1798,6 +2090,16 @@ dependencies = [ "memoffset", ] +[[package]] +name = "nom" +version = "7.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" +dependencies = [ + "memchr", + "minimal-lexical", +] + [[package]] name = "ntapi" version = "0.3.7" @@ -1807,17 +2109,42 @@ dependencies = [ "winapi", ] +[[package]] +name = "num" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36" +dependencies = [ + "num-bigint 0.2.6", + "num-complex 0.2.4", + "num-integer", + "num-iter", + "num-rational 0.2.4", + "num-traits", +] + [[package]] name = "num" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606" dependencies = [ - "num-bigint", - "num-complex", + "num-bigint 0.4.3", + "num-complex 0.4.2", "num-integer", "num-iter", - "num-rational", + "num-rational 0.4.1", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" +dependencies = [ + "autocfg", + "num-integer", "num-traits", ] @@ -1832,6 +2159,16 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-complex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95" +dependencies = [ + "autocfg", + "num-traits", +] + [[package]] name = "num-complex" version = "0.4.2" @@ -1873,6 +2210,18 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-rational" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef" +dependencies = [ + "autocfg", + "num-bigint 0.2.6", + "num-integer", + "num-traits", +] + [[package]] name = "num-rational" version = "0.4.1" @@ -1880,7 +2229,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" dependencies = [ "autocfg", - "num-bigint", + "num-bigint 0.4.3", "num-integer", "num-traits", ] @@ -1925,6 +2274,15 @@ dependencies = [ "syn 1.0.100", ] +[[package]] +name = "num_threads" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" +dependencies = [ + "libc", +] + [[package]] name = "number_prefix" version = "0.4.0" @@ -1932,12 +2290,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] -name = "object" -version = "0.29.0" +name = "oid-registry" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" +checksum = "7d4bda43fd1b844cbc6e6e54b5444e2b1bc7838bce59ad205902cccbb26d6761" dependencies = [ - "memchr", + "asn1-rs", ] [[package]] @@ -1952,6 +2310,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + [[package]] name = "opentelemetry" version = "0.16.0" @@ -1971,9 +2335,9 @@ dependencies = [ [[package]] name = "ouroboros" -version = "0.13.0" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f357ef82d1b4db66fbed0b8d542cbd3c22d0bf5b393b3c257b9ba4568e70c9c3" +checksum = "71643f290d126e18ac2598876d01e1d57aed164afc78fdb6e2a0c6589a1f6662" dependencies = [ "aliasable", "ouroboros_macro", @@ -1982,9 +2346,9 @@ dependencies = [ [[package]] name = "ouroboros_macro" -version = "0.13.0" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44a0b52c2cbaef7dffa5fec1a43274afe8bd2a644fa9fc50a9ef4ff0269b1257" +checksum = "ed9a247206016d424fe8497bc611e510887af5c261fbbf977877c4bb55ca4d82" dependencies = [ "Inflector", "proc-macro-error", @@ -2001,7 +2365,17 @@ checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", "lock_api", - "parking_lot_core", + "parking_lot_core 0.8.5", +] + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core 0.9.3", ] [[package]] @@ -2018,22 +2392,44 @@ dependencies = [ "winapi", ] +[[package]] +name = "parking_lot_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-sys", +] + [[package]] name = "pbkdf2" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd" dependencies = [ - "crypto-mac 0.8.0", + "crypto-mac", ] [[package]] name = "pbkdf2" -version = "0.9.0" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271779f35b581956db91a3e55737327a03aa051e90b1c47aeb189508533adfd7" +dependencies = [ + "digest 0.10.5", +] + +[[package]] +name = "pem" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05894bce6a1ba4be299d0c5f29563e08af2bc18bb7d48313113bed71e904739" +checksum = "03c64931a1a212348ec4f3b4362585eca7159d0d09cbdf4a7f74f02173596fd4" dependencies = [ - "crypto-mac 0.11.1", + "base64 0.13.0", ] [[package]] @@ -2042,6 +2438,15 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" +[[package]] +name = "percentage" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fd23b938276f14057220b707937bcb42fa76dda7560e57a2da30cb52d557937" +dependencies = [ + "num 0.2.1", +] + [[package]] name = "pin-project" version = "1.0.12" @@ -2074,6 +2479,17 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "pkcs8" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cabda3fb821068a9a4fab19a683eac3af12edf0f34b94a8be53c4972b8149d0" +dependencies = [ + "der", + "spki", + "zeroize", +] + [[package]] name = "pkg-config" version = "0.3.25" @@ -2086,6 +2502,18 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" +[[package]] +name = "polyval" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] + [[package]] name = "ppv-lite86" version = "0.2.16" @@ -2176,6 +2604,59 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "quinn" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b435e71d9bfa0d8889927231970c51fb89c58fa63bffcab117c9c7a41e5ef8f" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "fxhash", + "quinn-proto", + "quinn-udp", + "rustls", + "thiserror", + "tokio", + "tracing", + "webpki", +] + +[[package]] +name = "quinn-proto" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fce546b9688f767a57530652488420d419a8b1f44a478b451c3d1ab6d992a55" +dependencies = [ + "bytes", + "fxhash", + "rand 0.8.5", + "ring", + "rustls", + "rustls-native-certs", + "rustls-pemfile 0.2.1", + "slab", + "thiserror", + "tinyvec", + "tracing", + "webpki", +] + +[[package]] +name = "quinn-udp" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f832d8958db3e84d2ec93b5eb2272b45aa23cf7f8fe6e79f578896f4e6c231b" +dependencies = [ + "futures-util", + "libc", + "quinn-proto", + "socket2", + "tokio", + "tracing", +] + [[package]] name = "quote" version = "0.6.13" @@ -2275,6 +2756,15 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rand_xoshiro" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +dependencies = [ + "rand_core 0.6.4", +] + [[package]] name = "rayon" version = "1.5.3" @@ -2299,6 +2789,18 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "rcgen" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" +dependencies = [ + "pem", + "ring", + "time 0.3.15", + "yasna", +] + [[package]] name = "redox_syscall" version = "0.2.16" @@ -2351,6 +2853,7 @@ version = "0.11.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "431949c384f4e2ae07605ccaa56d1d9d2ecdb5cadd4f9577ccfab29f2e5149fc" dependencies = [ + "async-compression", "base64 0.13.0", "bytes", "encoding_rs", @@ -2369,12 +2872,13 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls", - "rustls-pemfile", + "rustls-pemfile 1.0.1", "serde", "serde_json", "serde_urlencoded", "tokio", "tokio-rustls", + "tokio-util 0.7.2", "tower-service", "url", "wasm-bindgen", @@ -2401,11 +2905,13 @@ dependencies = [ [[package]] name = "rpassword" -version = "5.0.1" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb" +checksum = "2bf099a1888612545b683d2661a1940089f6c2e5a8e38979b2159da876bfd956" dependencies = [ "libc", + "serde", + "serde_json", "winapi", ] @@ -2430,6 +2936,15 @@ dependencies = [ "semver", ] +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + [[package]] name = "rustls" version = "0.20.6" @@ -2442,6 +2957,27 @@ dependencies = [ "webpki", ] +[[package]] +name = "rustls-native-certs" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" +dependencies = [ + "openssl-probe", + "rustls-pemfile 1.0.1", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9" +dependencies = [ + "base64 0.13.0", +] + [[package]] name = "rustls-pemfile" version = "1.0.1" @@ -2472,6 +3008,16 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "schannel" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" +dependencies = [ + "lazy_static", + "windows-sys", +] + [[package]] name = "scopeguard" version = "1.1.0" @@ -2508,6 +3054,29 @@ dependencies = [ "untrusted", ] +[[package]] +name = "security-framework" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c" +dependencies = [ + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "semver" version = "1.0.14" @@ -2580,15 +3149,13 @@ dependencies = [ [[package]] name = "sha-1" -version = "0.9.8" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" +checksum = "028f48d513f9678cda28f6e4064755b3fbb2af6acd672f2c209b62323f7aea0f" dependencies = [ - "block-buffer 0.9.0", "cfg-if", "cpufeatures", - "digest 0.9.0", - "opaque-debug", + "digest 0.10.5", ] [[package]] @@ -2604,6 +3171,17 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "sha2" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.5", +] + [[package]] name = "sha3" version = "0.9.1" @@ -2616,6 +3194,16 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "sha3" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2904bea16a1ae962b483322a1c7b81d976029203aea1f461e51cd7705db7ba9" +dependencies = [ + "digest 0.10.5", + "keccak", +] + [[package]] name = "shank" version = "0.0.9" @@ -2683,6 +3271,16 @@ version = "1.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "deb766570a2825fa972bceff0d195727876a9cdf2460ab2e52d455dc2de47fd9" +[[package]] +name = "sized-chunks" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" +dependencies = [ + "bitmaps", + "typenum", +] + [[package]] name = "slab" version = "0.4.7" @@ -2710,12 +3308,12 @@ dependencies = [ [[package]] name = "solana-account-decoder" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58af714929674f4169ead69f746f590dbcf4d58cff217059454aa6b1f67888fb" +checksum = "9d59ce383cb83639d5a08805f3f55201aa95b5b92fbd38075fd7745bf91dc983" dependencies = [ "Inflector", - "base64 0.12.3", + "base64 0.13.0", "bincode", "bs58 0.4.0", "bv", @@ -2727,15 +3325,16 @@ dependencies = [ "solana-sdk", "solana-vote-program", "spl-token", + "spl-token-2022", "thiserror", "zstd", ] [[package]] name = "solana-address-lookup-table-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dbb6239bc1d892cd84ed2f6005e5263701f60ab90662401766beabee605f824" +checksum = "e288d49ed08c0f86d776d6e3525f4e7bd96ca5e25d5b2e583c51077a714c893b" dependencies = [ "bincode", "bytemuck", @@ -2746,6 +3345,7 @@ dependencies = [ "serde", "solana-frozen-abi", "solana-frozen-abi-macro", + "solana-program", "solana-program-runtime", "solana-sdk", "thiserror", @@ -2753,9 +3353,9 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cb5cd2b94c2f69f6f1e7196ca9e40dcdbe3d03d481cf1a25ced9f66ae01261" +checksum = "b3fc8b239ad2fdedb1dc523e972de8c4185f61cf4f0ce027be858e5f897a7491" dependencies = [ "borsh", "futures", @@ -2770,9 +3370,9 @@ dependencies = [ [[package]] name = "solana-banks-interface" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9066cc8cc3f358c1708aed8aafd362023008fceee7ce81f3a7389a5f3d934bca" +checksum = "c382dcc2eefc480815493881e764650e02a618cb9793000a801092520ccdd766" dependencies = [ "serde", "solana-sdk", @@ -2781,13 +3381,15 @@ dependencies = [ [[package]] name = "solana-banks-server" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b0408d2b64e622dd3049f61db2f5f710a5af786b33130dc4fce3748421eac4" +checksum = "7e447f295b60a05406bf9f17feb0167defca98323dcbf6c082d67c9d7888c117" dependencies = [ "bincode", + "crossbeam-channel", "futures", "solana-banks-interface", + "solana-client", "solana-runtime", "solana-sdk", "solana-send-transaction-service", @@ -2797,30 +3399,11 @@ dependencies = [ "tokio-stream", ] -[[package]] -name = "solana-bloom" -version = "1.9.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f54f09b054e371a7baa2dd2fba062d7d3ef11168b1147c6d03d65318f647f1ce" -dependencies = [ - "bv", - "fnv", - "log", - "rand 0.7.3", - "rayon", - "rustc_version", - "serde", - "serde_derive", - "solana-frozen-abi", - "solana-frozen-abi-macro", - "solana-sdk", -] - [[package]] name = "solana-bpf-loader-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54cc916788e21b79b142c98362bcc406bf76297f54975b53821e34789154d0e8" +checksum = "c45bb606cb1614ebdc4b164fe894a1d29ac6b41bb965919692c42ba4b398cee6" dependencies = [ "bincode", "byteorder", @@ -2830,22 +3413,21 @@ dependencies = [ "solana-metrics", "solana-program-runtime", "solana-sdk", + "solana-zk-token-sdk 1.10.34", "solana_rbpf", "thiserror", ] [[package]] name = "solana-bucket-map" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9247b06b46f7567e69b61c1e34b077a9a88ee8dd9fe14414cb75ff007ec7b2" +checksum = "55225f8bf152c97377d4e8cbb9e3d6a51fbe50fc875e7e6c64793e294a30ccc0" dependencies = [ - "fs_extra", "log", "memmap2", + "modular-bitfield", "rand 0.7.3", - "rayon", - "solana-logger", "solana-measure", "solana-sdk", "tempfile", @@ -2853,9 +3435,9 @@ dependencies = [ [[package]] name = "solana-clap-utils" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c127c7eadd27ba24ad924355cf5db1ea5224e685caee950f02afa36036b6e01" +checksum = "c7b79ccbafa22fb42d04cc59b32093ff9c43205724fe3d7f89ecc27824833fbc" dependencies = [ "chrono", "clap", @@ -2871,33 +3453,51 @@ dependencies = [ [[package]] name = "solana-cli-config" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fdf509d5f3c475401bd38b92d493597dcf28988ca0db34cf53b805f4a9fe663" +checksum = "b759f7b9fef53608fe883cd63feb32c01ce70ea8788ba72be66d553f3f61a415" dependencies = [ "dirs-next", "lazy_static", "serde", "serde_derive", "serde_yaml", + "solana-clap-utils", + "solana-sdk", "url", ] [[package]] name = "solana-client" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d750bbe7a0aaa58931a6e3e29fc05c37c3b0ff359e660fa2487758312a6d27" +checksum = "d9e8f702f2fd857b9e37af9de21d335af43335416c8c5dbe0710fccd00b1c3bd" dependencies = [ + "async-mutex", + "async-trait", "base64 0.13.0", "bincode", "bs58 0.4.0", + "bytes", "clap", + "crossbeam-channel", + "enum_dispatch", + "futures", + "futures-util", + "indexmap", "indicatif", + "itertools", "jsonrpc-core", + "lazy_static", "log", + "lru", + "quinn", + "quinn-proto", + "rand 0.7.3", + "rand_chacha 0.2.2", "rayon", "reqwest", + "rustls", "semver", "serde", "serde_derive", @@ -2906,22 +3506,27 @@ dependencies = [ "solana-clap-utils", "solana-faucet", "solana-measure", + "solana-metrics", "solana-net-utils", "solana-sdk", + "solana-streamer", "solana-transaction-status", "solana-version", "solana-vote-program", + "spl-token-2022", "thiserror", "tokio", + "tokio-stream", + "tokio-tungstenite", "tungstenite", "url", ] [[package]] name = "solana-compute-budget-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c56cb979223df10c8f59d3baed67c10dc33282721871e7c0dbd7a15e4c7fd41" +checksum = "f1404708102bd4a69bfcd8fd36b1c8f60ad978fe133b86eb568f16e51c83f0e1" dependencies = [ "solana-program-runtime", "solana-sdk", @@ -2929,9 +3534,9 @@ dependencies = [ [[package]] name = "solana-config-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f153fd92602ffd6941cb20ba59ed0a70401c0810c18c1cc3b09b4aca87b555cf" +checksum = "07542a24bdedf4c3031801ce0b3782cf790a825db97538062acef6717ba4be2c" dependencies = [ "bincode", "chrono", @@ -2943,13 +3548,14 @@ dependencies = [ [[package]] name = "solana-faucet" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfe5f0c2364a97ff75ef95654077fc908a0d623a064b11b5728871e57adf1814" +checksum = "31c773aee679b10b7223262265e13830f59ea8844818a2bdd7bf3d08eea06f68" dependencies = [ "bincode", "byteorder", "clap", + "crossbeam-channel", "log", "serde", "serde_derive", @@ -2966,29 +3572,31 @@ dependencies = [ [[package]] name = "solana-frozen-abi" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d4fcb89eb3d0f30bd4b4a31ad1825c9d95cd638509acead00969d7601713288" +checksum = "82e98bd52827bff5f57c7dad4a42163bceba92b8a330fde2edb000976146ca26" dependencies = [ "bs58 0.4.0", "bv", "generic-array", + "im", + "lazy_static", "log", "memmap2", "rustc_version", "serde", + "serde_bytes", "serde_derive", - "sha2", + "sha2 0.10.6", "solana-frozen-abi-macro", - "solana-logger", "thiserror", ] [[package]] name = "solana-frozen-abi-macro" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d63ab101db88ecccd8da34065b9097b88367e0744fdfd05cb7de87b4ede3717f" +checksum = "b45334ad9c4abcc2946c4de684616bb155d5b9c4705d22de9b7fb17a902bcc58" dependencies = [ "proc-macro2 1.0.43", "quote 1.0.21", @@ -2998,9 +3606,9 @@ dependencies = [ [[package]] name = "solana-logger" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1805d52fc8277a84c4803c7850c8f41471b57fb0dec7750338955ad6e43e2" +checksum = "e152dd8a83f444d101605fbd29beec3182b6e666c8c9bbd344a43d8b28b0e47f" dependencies = [ "env_logger", "lazy_static", @@ -3009,9 +3617,9 @@ dependencies = [ [[package]] name = "solana-measure" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a23ebcaacf30eef5093caac882b812b102e477e8dca326bd4ec058a7258203d9" +checksum = "2351e8ac2d724b8f84ba88d2f3c846f196a507162840fad6b562d53485aa9a58" dependencies = [ "log", "solana-sdk", @@ -3019,11 +3627,11 @@ dependencies = [ [[package]] name = "solana-metrics" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96ade4cd1025dec8452198645aaa9215e01527a7fd981c0f9e838af3c73cc322" +checksum = "5643ed8dd7fa76f269c39e17aaccaae6393b2f9e2eae4f75fe05922fece3331a" dependencies = [ - "env_logger", + "crossbeam-channel", "gethostname", "lazy_static", "log", @@ -3033,12 +3641,13 @@ dependencies = [ [[package]] name = "solana-net-utils" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8aa4fe2bc5449cecf84128d109166164a186a23744bacf574e324baa47c58a03" +checksum = "c27db447c84cedf6aad1dbc735ea845d6828aba580ac7190d6351f3a92b2e1b6" dependencies = [ "bincode", "clap", + "crossbeam-channel", "log", "nix", "rand 0.7.3", @@ -3054,9 +3663,9 @@ dependencies = [ [[package]] name = "solana-perf" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a484044f9a725f03580f9c37df15b3068c06da19c256db6afabe225fc1aeed" +checksum = "383c1bebdc50c0d2aa284e23ec3c8237c6df6d6a9ce6dbaea75e4be693cfee13" dependencies = [ "ahash", "bincode", @@ -3073,8 +3682,6 @@ dependencies = [ "rand 0.7.3", "rayon", "serde", - "solana-bloom", - "solana-logger", "solana-metrics", "solana-rayon-threadlimit", "solana-sdk", @@ -3083,9 +3690,9 @@ dependencies = [ [[package]] name = "solana-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5deafc4902425d40197f74166640300dd20b078e4ffd518c1bb56ceb7e01680" +checksum = "ee21d6a0e27792587baf99e024938bc63d8ec7652ef0abfadb85814d616d8862" dependencies = [ "base64 0.13.0", "bincode", @@ -3107,18 +3714,17 @@ dependencies = [ "log", "num-derive", "num-traits", - "parking_lot", + "parking_lot 0.12.1", "rand 0.7.3", "rustc_version", "rustversion", "serde", "serde_bytes", "serde_derive", - "sha2", - "sha3", + "sha2 0.10.6", + "sha3 0.10.5", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-sdk-macro", "thiserror", "wasm-bindgen", @@ -3126,12 +3732,13 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8c19e461c990bf2976097a8fe1cdf8cbdded1cd73d15153abf495919529b403" +checksum = "72877543165c1b8618989a5ae97c47dd318554404ae667ee7cefa540bef93d49" dependencies = [ "base64 0.13.0", "bincode", + "enum-iterator", "itertools", "libc", "libloading", @@ -3142,7 +3749,6 @@ dependencies = [ "serde", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-measure", "solana-sdk", "thiserror", @@ -3150,12 +3756,12 @@ dependencies = [ [[package]] name = "solana-program-test" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68d944137ef6ff8b2a2cddffc81153c874947e4f38b8f134a2330565cb664903" +checksum = "2d835e8b6dbcc1fab4bf297d0068edac0a9b604b91f311396e90c2f1afbbdc85" dependencies = [ "async-trait", - "base64 0.12.3", + "base64 0.13.0", "bincode", "chrono-humanize", "log", @@ -3174,9 +3780,9 @@ dependencies = [ [[package]] name = "solana-rayon-threadlimit" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "813c5ee551922504721e365fc1d3dd47370c179aea338f2aeddac0b8f60db6a8" +checksum = "ecdd8e58d4a190a8ee865329f5b86e28e161873cac3db578c894172f433522fe" dependencies = [ "lazy_static", "num_cpus", @@ -3184,18 +3790,16 @@ dependencies = [ [[package]] name = "solana-remote-wallet" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f285064f51bad825e71c59eeab5442c2e782fd4c32b6accbfe45a883b531c69a" +checksum = "03ba16d22f11a6d5007ee3fc012865986ce0c9047856fb773b58d2b2886b3cdb" dependencies = [ - "base32", "console", "dialoguer", - "hidapi", "log", "num-derive", "num-traits", - "parking_lot", + "parking_lot 0.12.1", "qstring", "semver", "solana-sdk", @@ -3205,9 +3809,9 @@ dependencies = [ [[package]] name = "solana-runtime" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "866eab25b383c30211ada934966fc8a68404022407aeaa514ca1db68143f2bc4" +checksum = "5f1121f0559aaa0f9e202395a96c258da1c2318b9ae2d7edcfbbbab29fc77262" dependencies = [ "arrayref", "bincode", @@ -3221,10 +3825,12 @@ dependencies = [ "dir-diff", "flate2", "fnv", + "im", "index_list", "itertools", "lazy_static", "log", + "lz4", "memmap2", "num-derive", "num-traits", @@ -3237,13 +3843,11 @@ dependencies = [ "serde", "serde_derive", "solana-address-lookup-table-program", - "solana-bloom", "solana-bucket-map", "solana-compute-budget-program", "solana-config-program", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-measure", "solana-metrics", "solana-program-runtime", @@ -3251,6 +3855,10 @@ dependencies = [ "solana-sdk", "solana-stake-program", "solana-vote-program", + "solana-zk-token-proof-program", + "solana-zk-token-sdk 1.10.34", + "strum", + "strum_macros", "symlink", "tar", "tempfile", @@ -3260,9 +3868,9 @@ dependencies = [ [[package]] name = "solana-sdk" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fee70c58dad3bb6554412017cb1b55a6a66b7b6362122d7e426c7375cc19a066" +checksum = "5e1865a804a5cb0870cef475c621ea6e28ea361ea6428541a3fa56131c2618f0" dependencies = [ "assert_matches", "base64 0.13.0", @@ -3274,11 +3882,11 @@ dependencies = [ "byteorder", "chrono", "derivation-path", - "digest 0.9.0", + "digest 0.10.5", "ed25519-dalek", "ed25519-dalek-bip32", "generic-array", - "hmac 0.11.0", + "hmac 0.12.1", "itertools", "js-sys", "lazy_static", @@ -3287,7 +3895,7 @@ dependencies = [ "memmap2", "num-derive", "num-traits", - "pbkdf2 0.9.0", + "pbkdf2 0.10.1", "qstring", "rand 0.7.3", "rand_chacha 0.2.2", @@ -3297,8 +3905,8 @@ dependencies = [ "serde_bytes", "serde_derive", "serde_json", - "sha2", - "sha3", + "sha2 0.10.6", + "sha3 0.10.5", "solana-frozen-abi", "solana-frozen-abi-macro", "solana-logger", @@ -3311,9 +3919,9 @@ dependencies = [ [[package]] name = "solana-sdk-macro" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db4c93bd43c91290ad54fe6ff86179a859954f196507c4789a4876d38a62f17" +checksum = "79cbfc2108bbe9f02851efc7b09f11b1eb9d9331eedbdf015b8815c9adf3b7aa" dependencies = [ "bs58 0.4.0", "proc-macro2 1.0.43", @@ -3324,12 +3932,14 @@ dependencies = [ [[package]] name = "solana-send-transaction-service" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c0010ad47a78558184d19902e06c18477ffc4c8a6bb41ced891bdf5e7b13491" +checksum = "3334f6112d604c3de9730e8cc7935c05a759eabb3f39c2ef90e1e6f82bf9760f" dependencies = [ + "crossbeam-channel", "log", - "solana-logger", + "solana-client", + "solana-measure", "solana-metrics", "solana-runtime", "solana-sdk", @@ -3337,9 +3947,9 @@ dependencies = [ [[package]] name = "solana-stake-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a1b6053c5b70d2f5762772a850149d3dad0c33714a6bc76e82d7dc12e9d9e8e" +checksum = "6270ec01d96cd5396dc6576ec9bc588a377ec31528997562a345cbf4e2321369" dependencies = [ "bincode", "log", @@ -3358,15 +3968,45 @@ dependencies = [ "thiserror", ] +[[package]] +name = "solana-streamer" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3897750f1ed02de72bfc2696b0a2123b8f6ff7ab28436a363492b153404d6c6a" +dependencies = [ + "crossbeam-channel", + "futures-util", + "histogram", + "indexmap", + "itertools", + "libc", + "log", + "nix", + "pem", + "percentage", + "pkcs8", + "quinn", + "rand 0.7.3", + "rcgen", + "rustls", + "solana-metrics", + "solana-perf", + "solana-sdk", + "thiserror", + "tokio", + "x509-parser", +] + [[package]] name = "solana-transaction-status" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd8ccc04259f162e4a692e7fbd8f57344c4ac3ad6e01b213d5630bf72fd53d11" +checksum = "12f05d50c02df3bbde97962aebe51e749218b732a36cebc2e1dd95b887b3e937" dependencies = [ "Inflector", - "base64 0.12.3", + "base64 0.13.0", "bincode", + "borsh", "bs58 0.4.0", "lazy_static", "log", @@ -3382,17 +4022,19 @@ dependencies = [ "spl-associated-token-account", "spl-memo", "spl-token", + "spl-token-2022", "thiserror", ] [[package]] name = "solana-version" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c3609ec652314f0ea308ea754f1afe66acd65d2443c67c669125df093db82f0" +checksum = "1546721c034a8bfddb357d3ef87dc35845a8eef5922b0d912103b86adb88c2b0" dependencies = [ "log", "rustc_version", + "semver", "serde", "serde_derive", "solana-frozen-abi", @@ -3402,9 +4044,9 @@ dependencies = [ [[package]] name = "solana-vote-program" -version = "1.9.29" +version = "1.10.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f67d16c4b8b195d4cbfc73c05516ba16de7fdcff19a502ddc4e6254611928c8d" +checksum = "91a788d387a2daadf1e5f2278e62a1303b3901145ec000ae8483ad6d8aa9830e" dependencies = [ "bincode", "log", @@ -3415,13 +4057,87 @@ dependencies = [ "serde_derive", "solana-frozen-abi", "solana-frozen-abi-macro", - "solana-logger", "solana-metrics", "solana-program-runtime", "solana-sdk", "thiserror", ] +[[package]] +name = "solana-zk-token-proof-program" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15a628c868557c5b546fc75d4418201ec14b9530d90d967faac5b5826761ac7f" +dependencies = [ + "bytemuck", + "getrandom 0.1.16", + "num-derive", + "num-traits", + "solana-program-runtime", + "solana-sdk", + "solana-zk-token-sdk 1.10.34", +] + +[[package]] +name = "solana-zk-token-sdk" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74b149253f9ed1afb68b3161b53b62b637d0dd7a3b328dffdc8bb5878d48358e" +dependencies = [ + "aes-gcm-siv", + "arrayref", + "base64 0.13.0", + "bincode", + "bytemuck", + "byteorder", + "cipher 0.3.0", + "curve25519-dalek", + "getrandom 0.1.16", + "lazy_static", + "merlin", + "num-derive", + "num-traits", + "rand 0.7.3", + "serde", + "serde_json", + "sha3 0.9.1", + "solana-program", + "solana-sdk", + "subtle", + "thiserror", + "zeroize", +] + +[[package]] +name = "solana-zk-token-sdk" +version = "1.10.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d84ccefe3a0f9d27e50e50755e17bb5928d8f4fd53a33ccb844497f1259ce261" +dependencies = [ + "aes-gcm-siv", + "arrayref", + "base64 0.13.0", + "bincode", + "bytemuck", + "byteorder", + "cipher 0.4.3", + "curve25519-dalek", + "getrandom 0.1.16", + "lazy_static", + "merlin", + "num-derive", + "num-traits", + "rand 0.7.3", + "serde", + "serde_json", + "sha3 0.9.1", + "solana-program", + "solana-sdk", + "subtle", + "thiserror", + "zeroize", +] + [[package]] name = "solana_rbpf" version = "0.2.24" @@ -3438,7 +4154,7 @@ dependencies = [ "rustc-demangle", "scroll", "thiserror", - "time", + "time 0.1.44", ] [[package]] @@ -3447,12 +4163,23 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spki" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d01ac02a6ccf3e07db148d2be087da624fea0221a16152ed01f0496a6b0a27" +dependencies = [ + "base64ct", + "der", +] + [[package]] name = "spl-associated-token-account" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "393e2240d521c3dd770806bff25c2c00d761ac962be106e14e22dd912007f428" +checksum = "2b013067447a1396303ddfc294f36e3d260a32f8a16c501c295bcdc7de39b490" dependencies = [ + "borsh", "solana-program", "spl-token", ] @@ -3468,15 +4195,34 @@ dependencies = [ [[package]] name = "spl-token" -version = "3.2.0" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d05653bed5932064a287340dbc8a3cb298ee717e5c7ec3353d7cdb9f8fb7e1" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-program", + "thiserror", +] + +[[package]] +name = "spl-token-2022" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93bfdd5bd7c869cb565c7d7635c4fafe189b988a0bdef81063cd9585c6b8dc01" +checksum = "fce48c69350134e8678de5c0956a531b7de586b28eebdddc03211ceec0660983" dependencies = [ "arrayref", + "bytemuck", "num-derive", "num-traits", "num_enum", "solana-program", + "solana-zk-token-sdk 0.8.1", + "spl-memo", + "spl-token", "thiserror", ] @@ -3498,6 +4244,28 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck 0.4.0", + "proc-macro2 1.0.43", + "quote 1.0.21", + "rustversion", + "syn 1.0.100", +] + [[package]] name = "subtle" version = "2.4.1" @@ -3672,6 +4440,24 @@ dependencies = [ "winapi", ] +[[package]] +name = "time" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d634a985c4d4238ec39cacaed2e7ae552fbd3c476b552c1deac3021b7d7eaf0c" +dependencies = [ + "itoa", + "libc", + "num_threads", + "time-macros", +] + +[[package]] +name = "time-macros" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792" + [[package]] name = "tiny-bip39" version = "0.8.2" @@ -3684,7 +4470,7 @@ dependencies = [ "pbkdf2 0.4.0", "rand 0.7.3", "rustc-hash", - "sha2", + "sha2 0.9.9", "thiserror", "unicode-normalization", "wasm-bindgen", @@ -3719,7 +4505,7 @@ dependencies = [ "mio", "num_cpus", "once_cell", - "parking_lot", + "parking_lot 0.11.2", "pin-project-lite", "signal-hook-registry", "tokio-macros", @@ -3775,6 +4561,22 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-tungstenite" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181" +dependencies = [ + "futures-util", + "log", + "rustls", + "tokio", + "tokio-rustls", + "tungstenite", + "webpki", + "webpki-roots", +] + [[package]] name = "tokio-util" version = "0.6.10" @@ -3884,9 +4686,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "tungstenite" -version = "0.16.0" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ad3713a14ae247f22a728a0456a545df14acf3867f905adff84be99e23b3ad1" +checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" dependencies = [ "base64 0.13.0", "byteorder", @@ -3955,6 +4757,16 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +[[package]] +name = "universal-hash" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" +dependencies = [ + "generic-array", + "subtle", +] + [[package]] name = "unreachable" version = "1.0.0" @@ -4238,6 +5050,24 @@ dependencies = [ "winapi", ] +[[package]] +name = "x509-parser" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" +dependencies = [ + "asn1-rs", + "base64 0.13.0", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror", + "time 0.3.15", +] + [[package]] name = "xattr" version = "0.2.3" @@ -4262,6 +5092,15 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +[[package]] +name = "yasna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346d34a236c9d3e5f3b9b74563f238f955bbd05fa0b8b4efa53c130c43982f4c" +dependencies = [ + "time 0.3.15", +] + [[package]] name = "zeroize" version = "1.3.0" @@ -4285,18 +5124,18 @@ dependencies = [ [[package]] name = "zstd" -version = "0.9.2+zstd.1.5.1" +version = "0.11.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2390ea1bf6c038c39674f22d95f0564725fc06034a47129179810b2fc58caa54" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "4.1.3+zstd.1.5.1" +version = "5.0.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e99d81b99fb3c2c2c794e3fe56c305c63d5173a16a46b5850b07c935ffc7db79" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" dependencies = [ "libc", "zstd-sys", @@ -4304,9 +5143,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "1.6.2+zstd.1.5.1" +version = "2.0.1+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2daf2f248d9ea44454bfcb2516534e8b8ad2fc91bf818a1885495fc42bc8ac9f" +checksum = "9fd07cbbc53846d9145dbffdf6dd09a7a0aa52be46741825f5c97bdd4f73f12b" dependencies = [ "cc", "libc", diff --git a/auctioneer/program/Cargo.toml b/auctioneer/program/Cargo.toml index 2c98501156..1f6a4753be 100644 --- a/auctioneer/program/Cargo.toml +++ b/auctioneer/program/Cargo.toml @@ -21,20 +21,20 @@ cpi = ["no-entrypoint"] default = [] [dependencies] -solana-program = "~1.9.15" -anchor-lang = "~0.24.2" -anchor-spl = "~0.24.2" +solana-program = "1.10" +anchor-lang = "0.25.0" +anchor-spl = "0.25.0" mpl-auction-house = { path = "../../auction-house/program", version = "1.2.4", features = ["cpi", "no-entrypoint"]} [dev-dependencies] -anchor-client = "~0.24.2" -shellexpand = "~2.1.0" -serde_json = "~1.0" -solana-program = "~1.9.15" -mpl-testing-utils= {path="../../core/rust/testing-utils", version="0.0.2"} -solana-program-test = "~1.9.15" -solana-sdk = "~1.9.15" -env_logger="~0.9.0" -spl-associated-token-account = {version = "~1.0.3", features = ["no-entrypoint"]} -mpl-token-metadata = { version="~1.2.7", features = [ "no-entrypoint" ] } -spl-token = { version = "~3.2", features = ["no-entrypoint"] } \ No newline at end of file +anchor-client = "0.25.0" +shellexpand = "2.1.0" +serde_json = "1.0" +solana-program = "1.10" +mpl-testing-utils= {path="../../core/rust/testing-utils", version="0.1"} +solana-program-test = "1.10" +solana-sdk = "1.10" +env_logger="0.9.0" +spl-associated-token-account = {version = "1.0.5", features = ["no-entrypoint"]} +mpl-token-metadata = { version="1.4", features = [ "no-entrypoint" ] } +spl-token = { version = "3.2", features = ["no-entrypoint"] } \ No newline at end of file diff --git a/auctioneer/program/tests/utils/setup_functions.rs b/auctioneer/program/tests/utils/setup_functions.rs index 6041561a41..d43b894841 100644 --- a/auctioneer/program/tests/utils/setup_functions.rs +++ b/auctioneer/program/tests/utils/setup_functions.rs @@ -21,10 +21,7 @@ use std::result::Result as StdResult; use mpl_token_metadata::pda::find_metadata_account; use solana_program_test::*; -use solana_sdk::{ - clock::UnixTimestamp, instruction::Instruction, transaction::Transaction, - transport::TransportError, -}; +use solana_sdk::{clock::UnixTimestamp, instruction::Instruction, transaction::Transaction}; use spl_associated_token_account::get_associated_token_address; use crate::utils::helpers::default_scopes; @@ -52,7 +49,7 @@ pub async fn create_auction_house( seller_fee_basis_points: u16, requires_sign_off: bool, can_change_sale_price: bool, -) -> StdResult { +) -> StdResult { let create_accounts = mpl_auction_house::accounts::CreateAuctionHouse { treasury_mint: *t_mint_key, payer: payer_wallet.pubkey(), @@ -639,7 +636,7 @@ pub fn withdraw( pub async fn existing_auction_house_test_context( context: &mut ProgramTestContext, -) -> StdResult<(AuctionHouse, Pubkey, Keypair), TransportError> { +) -> StdResult<(AuctionHouse, Pubkey, Keypair), BanksClientError> { let twd_key = context.payer.pubkey(); let fwd_key = context.payer.pubkey(); let t_mint_key = spl_token::native_mint::id(); @@ -682,6 +679,6 @@ pub async fn existing_auction_house_test_context( .expect("account empty"); let auction_house_data = AuctionHouse::try_deserialize(&mut auction_house_acc.data.as_ref()) - .map_err(|e| TransportError::IoError(io::Error::new(io::ErrorKind::InvalidData, e)))?; + .map_err(|e| BanksClientError::Io(io::Error::new(io::ErrorKind::InvalidData, e)))?; Ok((auction_house_data, auction_house_address, authority)) } From 26b383b2648b1dff179e4ff607a901a21c17eee1 Mon Sep 17 00:00:00 2001 From: Samuel Vanderwaal Date: Tue, 11 Oct 2022 17:56:35 -0800 Subject: [PATCH 3/5] chore: update idls --- auction-house/js/idl/auction_house.json | 1030 ++++++++++++++++++----- auctioneer/js/idl/auctioneer.json | 445 ++++++++-- 2 files changed, 1195 insertions(+), 280 deletions(-) diff --git a/auction-house/js/idl/auction_house.json b/auction-house/js/idl/auction_house.json index 8a337628fd..c56bbdf9cd 100644 --- a/auction-house/js/idl/auction_house.json +++ b/auction-house/js/idl/auction_house.json @@ -4,26 +4,41 @@ "instructions": [ { "name": "withdrawFromFee", + "docs": [ + "Withdraw `amount` from the Auction House Fee Account to a provided destination account." + ], "accounts": [ { "name": "authority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "Authority key for the Auction House." + ] }, { "name": "feeWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Account that pays for fees if the marketplace executes sales." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouse", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "systemProgram", @@ -40,31 +55,49 @@ }, { "name": "withdrawFromTreasury", + "docs": [ + "Withdraw `amount` from the Auction House Treasury Account to a provided destination account." + ], "accounts": [ { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Treasury mint account, either native SOL mint or a SPL token mint." + ] }, { "name": "authority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "Authority key for the Auction House." + ] }, { "name": "treasuryWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SOL or SPL token account to receive Auction House fees. If treasury mint is native this will be the same as the `treasury_withdrawl_destination_owner`." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury PDA account." + ] }, { "name": "auctionHouse", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "tokenProgram", @@ -86,46 +119,73 @@ }, { "name": "updateAuctionHouse", + "docs": [ + "Update Auction House values such as seller fee basis points, update authority, treasury account, etc." + ], "accounts": [ { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Treasury mint account, either native SOL mint or a SPL token mint." + ] }, { "name": "payer", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "Key paying SOL fees for setting up the Auction House." + ] }, { "name": "authority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "Authority key for the Auction House." + ] }, { "name": "newAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "New authority key for the Auction House." + ] }, { "name": "feeWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Account that pays for fees if the marketplace executes sales." + ] }, { "name": "treasuryWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SOL or SPL token account to receive Auction House fees. If treasury mint is native this will be the same as the `treasury_withdrawl_destination_owner`." + ] }, { "name": "treasuryWithdrawalDestinationOwner", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Owner of the `treasury_withdrawal_destination` account or the same address if the `treasury_mint` is native." + ] }, { "name": "auctionHouse", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "tokenProgram", @@ -171,16 +231,25 @@ }, { "name": "createAuctionHouse", + "docs": [ + "Create a new Auction House instance." + ], "accounts": [ { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Treasury mint account, either native SOL mint or a SPL token mint." + ] }, { "name": "payer", "isMut": true, - "isSigner": true + "isSigner": true, + "docs": [ + "Key paying SOL fees for setting up the Auction House." + ] }, { "name": "authority", @@ -190,32 +259,50 @@ { "name": "feeWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Account that pays for fees if the marketplace executes sales." + ] }, { "name": "treasuryWithdrawalDestination", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SOL or SPL token account to receive Auction House fees. If treasury mint is native this will be the same as the `treasury_withdrawl_destination_owner`." + ] }, { "name": "treasuryWithdrawalDestinationOwner", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Owner of the `treasury_withdrawal_destination` account or the same address if the `treasury_mint` is native." + ] }, { "name": "auctionHouse", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury PDA account." + ] }, { "name": "tokenProgram", @@ -267,61 +354,97 @@ }, { "name": "buy", + "docs": [ + "Create a private buy bid by creating a `buyer_trade_state` account and an `escrow_payment` account and funding the escrow with the necessary SOL or SPL token amount." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "tokenAccount", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account metadata." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA." + ] }, { "name": "tokenProgram", @@ -364,37 +487,58 @@ { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "tokenAccount", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account metadata." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "authority", @@ -404,22 +548,34 @@ { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA." + ] }, { "name": "ahAuctioneerPda", @@ -463,6 +619,9 @@ }, { "name": "publicBuy", + "docs": [ + "Create a public buy bid by creating a `public_buyer_trade_state` account and an `escrow_payment` account and funding the escrow with the necessary SOL or SPL token amount." + ], "accounts": [ { "name": "wallet", @@ -556,6 +715,9 @@ }, { "name": "auctioneerPublicBuy", + "docs": [ + "Create a public buy bid by creating a `public_buyer_trade_state` account and an `escrow_payment` account and funding the escrow with the necessary SOL or SPL token amount." + ], "accounts": [ { "name": "wallet", @@ -600,7 +762,10 @@ { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", @@ -620,7 +785,10 @@ { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -659,41 +827,65 @@ }, { "name": "cancel", + "docs": [ + "Cancel a bid or ask by revoking the token delegate, transferring all lamports from the trade state account to the fee payer, and setting the trade state account data to zero so it can be garbage collected." + ], "accounts": [ { "name": "wallet", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing the token of the sale to be canceled." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account of SPL token." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "tradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Trade state PDA account representing the bid or ask to be canceled." + ] }, { "name": "tokenProgram", @@ -714,51 +906,81 @@ }, { "name": "auctioneerCancel", + "docs": [ + "Cancel, but with an auctioneer" + ], "accounts": [ { "name": "wallet", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing the token of the sale to be canceled." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account of SPL token." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "tradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Trade state PDA account representing the bid or ask to be canceled." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -779,46 +1001,73 @@ }, { "name": "deposit", + "docs": [ + "Deposit `amount` into the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "tokenProgram", @@ -849,56 +1098,89 @@ }, { "name": "auctioneerDeposit", + "docs": [ + "Deposit `amount` into the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -933,82 +1215,130 @@ { "name": "buyer", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer user wallet account." + ] }, { "name": "seller", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller user wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Token account where the SPL token is stored." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account for the SPL token." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury mint account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account." + ] }, { "name": "sellerPaymentReceiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller SOL or SPL account to receive payment at." + ] }, { "name": "buyerReceiptTokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer SPL token account to receive purchased item at." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA account encoding the buy order." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "tokenProgram", @@ -1065,82 +1395,130 @@ { "name": "buyer", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer user wallet account." + ] }, { "name": "seller", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller user wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Token account where the SPL token is stored." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account for the SPL token." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury mint account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account." + ] }, { "name": "sellerPaymentReceiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller SOL or SPL account to receive payment at." + ] }, { "name": "buyerReceiptTokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer SPL token account to receive purchased item at." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA account encoding the buy order." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "tokenProgram", @@ -1209,92 +1587,146 @@ { "name": "buyer", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer user wallet account." + ] }, { "name": "seller", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller user wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Token account where the SPL token is stored." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account for the SPL token." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury mint account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account." + ] }, { "name": "sellerPaymentReceiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller SOL or SPL account to receive payment at." + ] }, { "name": "buyerReceiptTokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer SPL token account to receive purchased item at." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA account encoding the buy order." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -1351,92 +1783,146 @@ { "name": "buyer", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer user wallet account." + ] }, { "name": "seller", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller user wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Token account where the SPL token is stored." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account for the SPL token." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury mint account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account." + ] }, { "name": "sellerPaymentReceiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller SOL or SPL account to receive payment at." + ] }, { "name": "buyerReceiptTokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer SPL token account to receive purchased item at." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA account encoding the buy order." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -1505,42 +1991,66 @@ { "name": "wallet", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing token for sale." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeSellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "tokenProgram", @@ -1592,52 +2102,82 @@ { "name": "wallet", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing token for sale." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House authority account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeSellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "programAsSigner", @@ -1681,41 +2221,65 @@ }, { "name": "withdraw", + "docs": [ + "Withdraw `amount` from the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "receiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account or native SOL account to transfer funds to. If the account is a native SOL account, this is the same as the wallet address." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "tokenProgram", @@ -1751,51 +2315,81 @@ }, { "name": "auctioneerWithdraw", + "docs": [ + "Withdraw `amount` from the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "receiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account or native SOL account to transfer funds to. If the account is a native SOL account, this is the same as the wallet address." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -1831,21 +2425,33 @@ }, { "name": "closeEscrowAccount", + "docs": [ + "Close the escrow account of the user." + ], "accounts": [ { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "systemProgram", @@ -1876,12 +2482,18 @@ { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer authority - the program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "systemProgram", @@ -1916,12 +2528,18 @@ { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer authority - typically a PDA of the Auctioneer program running this action." + ] }, { "name": "ahAuctioneerPda", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "systemProgram", @@ -1942,6 +2560,9 @@ }, { "name": "printListingReceipt", + "docs": [ + "Create a listing receipt by creating a `listing_receipt` account." + ], "accounts": [ { "name": "receipt", @@ -1978,6 +2599,9 @@ }, { "name": "cancelListingReceipt", + "docs": [ + "Cancel an active listing receipt by setting the `canceled_at` field to the current time." + ], "accounts": [ { "name": "receipt", @@ -1999,6 +2623,9 @@ }, { "name": "printBidReceipt", + "docs": [ + "Create a bid receipt by creating a `bid_receipt` account." + ], "accounts": [ { "name": "receipt", @@ -2035,6 +2662,9 @@ }, { "name": "cancelBidReceipt", + "docs": [ + "Cancel an active bid receipt by setting the `canceled_at` field to the current time." + ], "accounts": [ { "name": "receipt", @@ -2056,6 +2686,9 @@ }, { "name": "printPurchaseReceipt", + "docs": [ + "Create a purchase receipt by creating a `purchase_receipt` account." + ], "accounts": [ { "name": "purchaseReceipt", @@ -2104,6 +2737,9 @@ "accounts": [ { "name": "BidReceipt", + "docs": [ + "Receipt for a bid transaction." + ], "type": { "kind": "struct", "fields": [ @@ -2170,6 +2806,9 @@ }, { "name": "ListingReceipt", + "docs": [ + "Receipt for a listing transaction." + ], "type": { "kind": "struct", "fields": [ @@ -2230,6 +2869,9 @@ }, { "name": "PurchaseReceipt", + "docs": [ + "Receipt for a purchase transaction." + ], "type": { "kind": "struct", "fields": [ @@ -2692,7 +3334,7 @@ "metadata": { "address": "hausS13jsjafwWwGqZTUQRmWyvyxn9EQpqMwV1PBBmk", "origin": "anchor", - "binaryVersion": "0.24.2", - "libVersion": "~0.24.2" + "binaryVersion": "0.25.0", + "libVersion": "0.25.0" } } \ No newline at end of file diff --git a/auctioneer/js/idl/auctioneer.json b/auctioneer/js/idl/auctioneer.json index 47984ce239..e474031f2e 100644 --- a/auctioneer/js/idl/auctioneer.json +++ b/auctioneer/js/idl/auctioneer.json @@ -4,21 +4,33 @@ "instructions": [ { "name": "authorize", + "docs": [ + "Authorize the Auctioneer to manage an Auction House." + ], "accounts": [ { "name": "wallet", "isMut": true, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctioneerAuthority", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "systemProgram", @@ -30,56 +42,89 @@ }, { "name": "withdraw", + "docs": [ + "Withdraw `amount` from the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program" + ] }, { "name": "wallet", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "receiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account or native SOL account to transfer funds to. If the account is a native SOL account, this is the same as the wallet address." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -119,61 +164,97 @@ }, { "name": "deposit", + "docs": [ + "Deposit `amount` into the escrow payment account for your specific wallet." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program" + ] }, { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -208,66 +289,105 @@ }, { "name": "cancel", + "docs": [ + "Cancel a bid or ask by revoking the token delegate, transferring all lamports from the trade state account to the fee payer, and setting the trade state account data to zero so it can be garbage collected." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program" + ] }, { "name": "listingConfig", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The Listing Config used for listing settings" + ] }, { "name": "seller", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The seller of the NFT" + ] }, { "name": "wallet", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing the token of the sale to be canceled." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account of SPL token." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "tradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Trade state PDA account representing the bid or ask to be canceled." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -292,106 +412,169 @@ }, { "name": "executeSale", + "docs": [ + "Execute sale between provided buyer and seller trade state accounts transferring funds to seller wallet and token to buyer wallet." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program" + ] }, { "name": "listingConfig", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The Listing Config used for listing settings" + ] }, { "name": "buyer", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer user wallet account." + ] }, { "name": "seller", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller user wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Token account where the SPL token is stored." + ] }, { "name": "tokenMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Token mint account for the SPL token." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House treasury mint account." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account." + ] }, { "name": "sellerPaymentReceiptAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller SOL or SPL account to receive payment at." + ] }, { "name": "buyerReceiptTokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer SPL token account to receive purchased item at." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "auctionHouseTreasury", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA account encoding the buy order." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -448,66 +631,105 @@ }, { "name": "sell", + "docs": [ + "Create a sell bid by creating a `seller_trade_state` account and approving the program as the token delegate." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program used for CPI call" + ] }, { "name": "listingConfig", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The Listing Config used for listing settings" + ] }, { "name": "wallet", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User wallet account." + ] }, { "name": "tokenAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account containing token for sale." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Metaplex metadata account decorating SPL mint account." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "sellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Seller trade state PDA account encoding the sell order." + ] }, { "name": "freeSellerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Free seller trade state PDA account encoding a free sell order." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "programAsSigner", @@ -597,86 +819,137 @@ }, { "name": "buy", + "docs": [ + "Create a private buy bid by creating a `buyer_trade_state` account and an `escrow_payment` account and funding the escrow with the necessary SOL or SPL token amount." + ], "accounts": [ { "name": "auctionHouseProgram", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House Program" + ] }, { "name": "listingConfig", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "The Listing Config used for listing settings" + ] }, { "name": "seller", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The seller of the NFT" + ] }, { "name": "wallet", "isMut": false, - "isSigner": true + "isSigner": true, + "docs": [ + "User wallet account." + ] }, { "name": "paymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "User SOL or SPL account to transfer funds from." + ] }, { "name": "transferAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account transfer authority." + ] }, { "name": "treasuryMint", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance treasury mint account." + ] }, { "name": "tokenAccount", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account." + ] }, { "name": "metadata", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "SPL token account metadata." + ] }, { "name": "escrowPaymentAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer escrow payment account PDA." + ] }, { "name": "authority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance authority account." + ] }, { "name": "auctionHouse", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance PDA account." + ] }, { "name": "auctionHouseFeeAccount", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Auction House instance fee account." + ] }, { "name": "buyerTradeState", "isMut": true, - "isSigner": false + "isSigner": false, + "docs": [ + "Buyer trade state PDA." + ] }, { "name": "auctioneerAuthority", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer program PDA running this auction." + ] }, { "name": "ahAuctioneerPda", "isMut": false, - "isSigner": false + "isSigner": false, + "docs": [ + "The auctioneer PDA owned by Auction House storing scopes." + ] }, { "name": "tokenProgram", @@ -878,7 +1151,7 @@ "metadata": { "address": "neer8g6yJq2mQM6KbnViEDAD4gr3gRZyMMf4F2p3MEh", "origin": "anchor", - "binaryVersion": "0.24.2", - "libVersion": "~0.24.2" + "binaryVersion": "0.25.0", + "libVersion": "0.25.0" } } \ No newline at end of file From abddbb5dfe34dad9e34e6d9cc97e7c2502df885a Mon Sep 17 00:00:00 2001 From: blockiosaurus Date: Thu, 13 Oct 2022 15:43:26 -0400 Subject: [PATCH 4/5] (cargo-release) version 1.3.1 --- auction-house/program/Cargo.lock | 2 +- auction-house/program/Cargo.toml | 2 +- auctioneer/program/Cargo.lock | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/auction-house/program/Cargo.lock b/auction-house/program/Cargo.lock index cb212dd95f..639389da96 100644 --- a/auction-house/program/Cargo.lock +++ b/auction-house/program/Cargo.lock @@ -1965,7 +1965,7 @@ dependencies = [ [[package]] name = "mpl-auction-house" -version = "1.3.0" +version = "1.3.1" dependencies = [ "anchor-client", "anchor-lang", diff --git a/auction-house/program/Cargo.toml b/auction-house/program/Cargo.toml index 8e84c0bfaf..815969a60c 100644 --- a/auction-house/program/Cargo.toml +++ b/auction-house/program/Cargo.toml @@ -1,7 +1,7 @@ [workspace] [package] name = "mpl-auction-house" -version = "1.3.0" +version = "1.3.1" edition = "2021" description = "Decentralized Sales Protocol for Solana Tokens" authors = ["Metaplex Developers "] diff --git a/auctioneer/program/Cargo.lock b/auctioneer/program/Cargo.lock index fa5b177650..05aaa672a1 100644 --- a/auctioneer/program/Cargo.lock +++ b/auctioneer/program/Cargo.lock @@ -1977,7 +1977,7 @@ dependencies = [ [[package]] name = "mpl-auction-house" -version = "1.2.4" +version = "1.3.0" dependencies = [ "anchor-lang", "anchor-spl", From 94cf1049fe30e8c4e43ba6f1e332b4e6d17db061 Mon Sep 17 00:00:00 2001 From: blockiosaurus Date: Wed, 9 Nov 2022 16:16:53 -0500 Subject: [PATCH 5/5] Adding saturation to hydra. --- hydra/js/README.md | 2 +- hydra/js/idl/hydra.json | 53 +++++++++ hydra/js/src/generated/accounts/Fanout.ts | 10 ++ .../accounts/FanoutMembershipVoucher.ts | 15 +++ hydra/js/src/generated/errors/index.ts | 42 +++++++ hydra/js/src/generated/instructions/index.ts | 1 + .../instructions/processSetSaturation.ts | 104 ++++++++++++++++++ hydra/program/src/error.rs | 6 + hydra/program/src/lib.rs | 7 ++ .../processors/distribute/wallet_member.rs | 1 + hydra/program/src/processors/mod.rs | 2 + .../src/processors/set_saturation/mod.rs | 1 + .../set_saturation/process_set_saturation.rs | 39 +++++++ hydra/program/src/state.rs | 5 +- hydra/program/src/utils/logic/calculation.rs | 22 ++++ hydra/program/src/utils/logic/distribution.rs | 9 ++ hydra/program/src/utils/validation/mod.rs | 7 ++ 17 files changed, 324 insertions(+), 2 deletions(-) create mode 100644 hydra/js/src/generated/instructions/processSetSaturation.ts create mode 100644 hydra/program/src/processors/set_saturation/mod.rs create mode 100644 hydra/program/src/processors/set_saturation/process_set_saturation.rs diff --git a/hydra/js/README.md b/hydra/js/README.md index e8cdb858f0..4571abe168 100644 --- a/hydra/js/README.md +++ b/hydra/js/README.md @@ -12,7 +12,7 @@ Find the In order to update the generated SDK when the rust contract was updated please run: ``` -yarn gen:api +yarn api:gen ``` and then update the wrapper code and tests. diff --git a/hydra/js/idl/hydra.json b/hydra/js/idl/hydra.json index b75d879ad7..b44ac78627 100644 --- a/hydra/js/idl/hydra.json +++ b/hydra/js/idl/hydra.json @@ -701,6 +701,37 @@ } ], "args": [] + }, + { + "name": "processSetSaturation", + "accounts": [ + { + "name": "authority", + "isMut": false, + "isSigner": true + }, + { + "name": "member", + "isMut": false, + "isSigner": false + }, + { + "name": "fanout", + "isMut": true, + "isSigner": false + }, + { + "name": "membershipAccount", + "isMut": true, + "isSigner": false + } + ], + "args": [ + { + "name": "saturationLimit", + "type": "u64" + } + ] } ], "accounts": [ @@ -766,6 +797,14 @@ "type": { "option": "u64" } + }, + { + "name": "saturated", + "type": "bool" + }, + { + "name": "saturatedMember", + "type": "publicKey" } ] } @@ -830,6 +869,10 @@ { "name": "shares", "type": "u64" + }, + { + "name": "saturationLimit", + "type": "u64" } ] } @@ -1033,6 +1076,16 @@ "code": 6024, "name": "InvalidCloseAccountDestination", "msg": "Sending Sol to a SPL token destination will render the sol unusable" + }, + { + "code": 6025, + "name": "SaturationNotSupported", + "msg": "Saturation not supported on this membership model" + }, + { + "code": 6026, + "name": "SaturatedMember", + "msg": "Unable to distribute shares with member at saturation limit. Redistribute shares to proceed." } ], "metadata": { diff --git a/hydra/js/src/generated/accounts/Fanout.ts b/hydra/js/src/generated/accounts/Fanout.ts index b97fedfeb5..0209677dd1 100644 --- a/hydra/js/src/generated/accounts/Fanout.ts +++ b/hydra/js/src/generated/accounts/Fanout.ts @@ -29,6 +29,8 @@ export type FanoutArgs = { membershipModel: MembershipModel; membershipMint: beet.COption; totalStakedShares: beet.COption; + saturated: boolean; + saturatedMember: web3.PublicKey; }; const fanoutDiscriminator = [164, 101, 210, 92, 222, 14, 75, 156]; @@ -54,6 +56,8 @@ export class Fanout implements FanoutArgs { readonly membershipModel: MembershipModel, readonly membershipMint: beet.COption, readonly totalStakedShares: beet.COption, + readonly saturated: boolean, + readonly saturatedMember: web3.PublicKey, ) {} /** @@ -74,6 +78,8 @@ export class Fanout implements FanoutArgs { args.membershipModel, args.membershipMint, args.totalStakedShares, + args.saturated, + args.saturatedMember, ); } @@ -221,6 +227,8 @@ export class Fanout implements FanoutArgs { membershipModel: 'MembershipModel.' + MembershipModel[this.membershipModel], membershipMint: this.membershipMint, totalStakedShares: this.totalStakedShares, + saturated: this.saturated, + saturatedMember: this.saturatedMember.toBase58(), }; } } @@ -250,6 +258,8 @@ export const fanoutBeet = new beet.FixableBeetStruct< ['membershipModel', membershipModelBeet], ['membershipMint', beet.coption(beetSolana.publicKey)], ['totalStakedShares', beet.coption(beet.u64)], + ['saturated', beet.bool], + ['saturatedMember', beetSolana.publicKey], ], Fanout.fromArgs, 'Fanout', diff --git a/hydra/js/src/generated/accounts/FanoutMembershipVoucher.ts b/hydra/js/src/generated/accounts/FanoutMembershipVoucher.ts index 40e67ddbda..d00ba97d73 100644 --- a/hydra/js/src/generated/accounts/FanoutMembershipVoucher.ts +++ b/hydra/js/src/generated/accounts/FanoutMembershipVoucher.ts @@ -21,6 +21,7 @@ export type FanoutMembershipVoucherArgs = { bumpSeed: number; membershipKey: web3.PublicKey; shares: beet.bignum; + saturationLimit: beet.bignum; }; const fanoutMembershipVoucherDiscriminator = [185, 62, 74, 60, 105, 158, 178, 125]; @@ -39,6 +40,7 @@ export class FanoutMembershipVoucher implements FanoutMembershipVoucherArgs { readonly bumpSeed: number, readonly membershipKey: web3.PublicKey, readonly shares: beet.bignum, + readonly saturationLimit: beet.bignum, ) {} /** @@ -52,6 +54,7 @@ export class FanoutMembershipVoucher implements FanoutMembershipVoucherArgs { args.bumpSeed, args.membershipKey, args.shares, + args.saturationLimit, ); } @@ -176,6 +179,17 @@ export class FanoutMembershipVoucher implements FanoutMembershipVoucherArgs { } return x; })(), + saturationLimit: (() => { + const x = <{ toNumber: () => number }>this.saturationLimit; + if (typeof x.toNumber === 'function') { + try { + return x.toNumber(); + } catch (_) { + return x; + } + } + return x; + })(), }; } } @@ -198,6 +212,7 @@ export const fanoutMembershipVoucherBeet = new beet.BeetStruct< ['bumpSeed', beet.u8], ['membershipKey', beetSolana.publicKey], ['shares', beet.u64], + ['saturationLimit', beet.u64], ], FanoutMembershipVoucher.fromArgs, 'FanoutMembershipVoucher', diff --git a/hydra/js/src/generated/errors/index.ts b/hydra/js/src/generated/errors/index.ts index d7647eb288..1754c437ea 100644 --- a/hydra/js/src/generated/errors/index.ts +++ b/hydra/js/src/generated/errors/index.ts @@ -528,6 +528,48 @@ createErrorFromNameLookup.set( () => new InvalidCloseAccountDestinationError(), ); +/** + * SaturationNotSupported: 'Saturation not supported on this membership model' + * + * @category Errors + * @category generated + */ +export class SaturationNotSupportedError extends Error { + readonly code: number = 0x1789; + readonly name: string = 'SaturationNotSupported'; + constructor() { + super('Saturation not supported on this membership model'); + if (typeof Error.captureStackTrace === 'function') { + Error.captureStackTrace(this, SaturationNotSupportedError); + } + } +} + +createErrorFromCodeLookup.set(0x1789, () => new SaturationNotSupportedError()); +createErrorFromNameLookup.set('SaturationNotSupported', () => new SaturationNotSupportedError()); + +/** + * SaturatedMember: 'Unable to distribute shares with member at saturation limit. Redistribute shares to proceed.' + * + * @category Errors + * @category generated + */ +export class SaturatedMemberError extends Error { + readonly code: number = 0x178a; + readonly name: string = 'SaturatedMember'; + constructor() { + super( + 'Unable to distribute shares with member at saturation limit. Redistribute shares to proceed.', + ); + if (typeof Error.captureStackTrace === 'function') { + Error.captureStackTrace(this, SaturatedMemberError); + } + } +} + +createErrorFromCodeLookup.set(0x178a, () => new SaturatedMemberError()); +createErrorFromNameLookup.set('SaturatedMember', () => new SaturatedMemberError()); + /** * Attempts to resolve a custom program error from the provided error code. * @category Errors diff --git a/hydra/js/src/generated/instructions/index.ts b/hydra/js/src/generated/instructions/index.ts index b8acf5f9bd..1b8d119102 100644 --- a/hydra/js/src/generated/instructions/index.ts +++ b/hydra/js/src/generated/instructions/index.ts @@ -7,6 +7,7 @@ export * from './processInit'; export * from './processInitForMint'; export * from './processRemoveMember'; export * from './processSetForTokenMemberStake'; +export * from './processSetSaturation'; export * from './processSetTokenMemberStake'; export * from './processSignMetadata'; export * from './processTransferShares'; diff --git a/hydra/js/src/generated/instructions/processSetSaturation.ts b/hydra/js/src/generated/instructions/processSetSaturation.ts new file mode 100644 index 0000000000..32dca2b6bc --- /dev/null +++ b/hydra/js/src/generated/instructions/processSetSaturation.ts @@ -0,0 +1,104 @@ +/** + * This code was GENERATED using the solita package. + * Please DO NOT EDIT THIS FILE, instead rerun solita to update it or write a wrapper to add functionality. + * + * See: https://github.com/metaplex-foundation/solita + */ + +import * as beet from '@metaplex-foundation/beet'; +import * as web3 from '@solana/web3.js'; + +/** + * @category Instructions + * @category ProcessSetSaturation + * @category generated + */ +export type ProcessSetSaturationInstructionArgs = { + saturationLimit: beet.bignum; +}; +/** + * @category Instructions + * @category ProcessSetSaturation + * @category generated + */ +export const processSetSaturationStruct = new beet.BeetArgsStruct< + ProcessSetSaturationInstructionArgs & { + instructionDiscriminator: number[] /* size: 8 */; + } +>( + [ + ['instructionDiscriminator', beet.uniformFixedSizeArray(beet.u8, 8)], + ['saturationLimit', beet.u64], + ], + 'ProcessSetSaturationInstructionArgs', +); +/** + * Accounts required by the _processSetSaturation_ instruction + * + * @property [**signer**] authority + * @property [] member + * @property [_writable_] fanout + * @property [_writable_] membershipAccount + * @category Instructions + * @category ProcessSetSaturation + * @category generated + */ +export type ProcessSetSaturationInstructionAccounts = { + authority: web3.PublicKey; + member: web3.PublicKey; + fanout: web3.PublicKey; + membershipAccount: web3.PublicKey; +}; + +export const processSetSaturationInstructionDiscriminator = [36, 113, 187, 145, 92, 204, 116, 202]; + +/** + * Creates a _ProcessSetSaturation_ instruction. + * + * @param accounts that will be accessed while the instruction is processed + * @param args to provide as instruction data to the program + * + * @category Instructions + * @category ProcessSetSaturation + * @category generated + */ +export function createProcessSetSaturationInstruction( + accounts: ProcessSetSaturationInstructionAccounts, + args: ProcessSetSaturationInstructionArgs, +) { + const { authority, member, fanout, membershipAccount } = accounts; + + const [data] = processSetSaturationStruct.serialize({ + instructionDiscriminator: processSetSaturationInstructionDiscriminator, + ...args, + }); + const keys: web3.AccountMeta[] = [ + { + pubkey: authority, + isWritable: false, + isSigner: true, + }, + { + pubkey: member, + isWritable: false, + isSigner: false, + }, + { + pubkey: fanout, + isWritable: true, + isSigner: false, + }, + { + pubkey: membershipAccount, + isWritable: true, + isSigner: false, + }, + ]; + + const ix = new web3.TransactionInstruction({ + programId: new web3.PublicKey('hyDQ4Nz1eYyegS6JfenyKwKzYxRsCWCriYSAjtzP4Vg'), + keys, + data, + }); + return ix; +} diff --git a/hydra/program/src/error.rs b/hydra/program/src/error.rs index 3d30d1b5db..08ea4c44ba 100644 --- a/hydra/program/src/error.rs +++ b/hydra/program/src/error.rs @@ -94,4 +94,10 @@ pub enum HydraError { #[msg("Sending Sol to a SPL token destination will render the sol unusable")] InvalidCloseAccountDestination, + + #[msg("Saturation not supported on this membership model")] + SaturationNotSupported, + + #[msg("Unable to distribute shares with member at saturation limit. Redistribute shares to proceed.")] + SaturatedMember, } diff --git a/hydra/program/src/lib.rs b/hydra/program/src/lib.rs index a3a5b9fe91..1e6e149d67 100644 --- a/hydra/program/src/lib.rs +++ b/hydra/program/src/lib.rs @@ -91,4 +91,11 @@ pub mod hydra { pub fn process_remove_member(ctx: Context) -> Result<()> { remove_member(ctx) } + + pub fn process_set_saturation( + ctx: Context, + saturation_limit: u64, + ) -> Result<()> { + set_saturation(ctx, saturation_limit) + } } diff --git a/hydra/program/src/processors/distribute/wallet_member.rs b/hydra/program/src/processors/distribute/wallet_member.rs index 6930270c63..c645e62a91 100644 --- a/hydra/program/src/processors/distribute/wallet_member.rs +++ b/hydra/program/src/processors/distribute/wallet_member.rs @@ -59,6 +59,7 @@ pub fn distribute_for_wallet( assert_owned_by(&member.to_account_info(), &System::id())?; assert_membership_model(fanout, MembershipModel::Wallet)?; assert_shares_distributed(fanout)?; + assert_no_saturation(fanout)?; if distribute_for_mint { let membership_key = &ctx.accounts.member.key().clone(); let member = ctx.accounts.member.to_owned(); diff --git a/hydra/program/src/processors/mod.rs b/hydra/program/src/processors/mod.rs index e6f9edfa3d..cde52b6192 100644 --- a/hydra/program/src/processors/mod.rs +++ b/hydra/program/src/processors/mod.rs @@ -2,6 +2,7 @@ pub mod add_member; pub mod distribute; pub mod init; pub mod remove_member; +pub mod set_saturation; pub mod signing; pub mod stake; pub mod transfer_shares; @@ -16,6 +17,7 @@ pub use self::init::init_for_mint::*; pub use self::init::init_parent::*; pub use self::remove_member::process_remove_member::*; pub use self::remove_member::process_remove_member::*; +pub use self::set_saturation::process_set_saturation::*; pub use self::signing::sign_metadata::*; pub use self::stake::set::*; pub use self::stake::set_for::*; diff --git a/hydra/program/src/processors/set_saturation/mod.rs b/hydra/program/src/processors/set_saturation/mod.rs new file mode 100644 index 0000000000..aab89004f5 --- /dev/null +++ b/hydra/program/src/processors/set_saturation/mod.rs @@ -0,0 +1 @@ +pub mod process_set_saturation; diff --git a/hydra/program/src/processors/set_saturation/process_set_saturation.rs b/hydra/program/src/processors/set_saturation/process_set_saturation.rs new file mode 100644 index 0000000000..9386e08d19 --- /dev/null +++ b/hydra/program/src/processors/set_saturation/process_set_saturation.rs @@ -0,0 +1,39 @@ +use crate::error::HydraError; +use crate::state::{Fanout, FanoutMembershipVoucher, MembershipModel}; +use anchor_lang::prelude::*; + +#[derive(Accounts)] +#[instruction(saturation_limit: u64)] +pub struct SetSaturation<'info> { + pub authority: Signer<'info>, + /// CHECK: Native Account + pub member: UncheckedAccount<'info>, + #[account( + mut, + seeds = [b"fanout-config", fanout.name.as_bytes()], + has_one = authority, + bump = fanout.bump_seed, + )] + pub fanout: Account<'info, Fanout>, + #[account( + mut, + seeds = [b"fanout-membership", fanout.key().as_ref(), member.key().as_ref()], + bump, + has_one = fanout, + )] + pub membership_account: Account<'info, FanoutMembershipVoucher>, +} + +pub fn set_saturation(ctx: Context, saturation_limit: u64) -> Result<()> { + let fanout = &mut ctx.accounts.fanout; + + if fanout.membership_model != MembershipModel::Wallet { + return Err(HydraError::SaturationNotSupported.into()); + } + + let voucher = &mut ctx.accounts.membership_account; + + voucher.saturation_limit = saturation_limit; + + Ok(()) +} diff --git a/hydra/program/src/state.rs b/hydra/program/src/state.rs index 0aa3965c7f..34f7705e20 100644 --- a/hydra/program/src/state.rs +++ b/hydra/program/src/state.rs @@ -32,6 +32,8 @@ pub struct Fanout { pub membership_model: MembershipModel, //1 pub membership_mint: Option, //32 pub total_staked_shares: Option, //4 + pub saturated: bool, //1 + pub saturated_member: Pubkey, //32 } #[account] @@ -46,7 +48,7 @@ pub struct FanoutMint { // +50 padding } -pub const FANOUT_MEMBERSHIP_VOUCHER_SIZE: usize = 32 + 8 + 8 + 1 + 32 + 8 + 64; +pub const FANOUT_MEMBERSHIP_VOUCHER_SIZE: usize = 32 + 8 + 8 + 1 + 32 + 8 + 8 + 56; #[account] #[derive(Default, Debug)] pub struct FanoutMembershipVoucher { @@ -56,6 +58,7 @@ pub struct FanoutMembershipVoucher { pub bump_seed: u8, pub membership_key: Pubkey, pub shares: u64, + pub saturation_limit: u64, } pub const FANOUT_MINT_MEMBERSHIP_VOUCHER_SIZE: usize = 32 + 32 + 8 + 1 + 32; diff --git a/hydra/program/src/utils/logic/calculation.rs b/hydra/program/src/utils/logic/calculation.rs index bcd8aaaac2..a9b040a7dc 100644 --- a/hydra/program/src/utils/logic/calculation.rs +++ b/hydra/program/src/utils/logic/calculation.rs @@ -23,6 +23,28 @@ pub fn calculate_dist_amount( Ok(dist_amount as u64) } +pub fn check_saturation( + total_inflow: u64, + saturation_limit: u64, + dist_amount: u64, +) -> Result<(bool, u64)> { + if (saturation_limit != 0) + && (total_inflow + .checked_add(dist_amount) + .ok_or(HydraError::NumericalOverflow)? + > saturation_limit) + { + Ok(( + true, + saturation_limit + .checked_sub(total_inflow) + .ok_or(HydraError::NumericalOverflow)?, + )) + } else { + Ok((false, dist_amount)) + } +} + pub fn update_fanout_for_add(fanout: &mut Account, shares: u64) -> Result<()> { let less_shares = fanout .total_available_shares diff --git a/hydra/program/src/utils/logic/distribution.rs b/hydra/program/src/utils/logic/distribution.rs index dc79d83644..040a0678c3 100644 --- a/hydra/program/src/utils/logic/distribution.rs +++ b/hydra/program/src/utils/logic/distribution.rs @@ -25,6 +25,15 @@ pub fn distribute_native<'info>( let inflow_diff = calculate_inflow_change(fanout.total_inflow, membership_voucher.last_inflow)?; let shares = membership_voucher.shares as u64; let dif_dist = calculate_dist_amount(shares, inflow_diff, total_shares)?; + let (saturated, dif_dist) = check_saturation( + fanout.total_inflow, + membership_voucher.saturation_limit, + dif_dist, + )?; + fanout.saturated = saturated; + if saturated { + fanout.saturated_member = membership_voucher.key(); + } update_snapshot(fanout, membership_voucher, dif_dist)?; membership_voucher.total_inflow = membership_voucher .total_inflow diff --git a/hydra/program/src/utils/validation/mod.rs b/hydra/program/src/utils/validation/mod.rs index 319b94d634..e2b99b0c16 100644 --- a/hydra/program/src/utils/validation/mod.rs +++ b/hydra/program/src/utils/validation/mod.rs @@ -132,6 +132,13 @@ pub fn assert_owned_by_one(account: &AccountInfo, owners: Vec<&Pubkey>) -> Resul Err(HydraError::IncorrectOwner.into()) } +pub fn assert_no_saturation(fanout: &Account) -> Result<()> { + if fanout.saturated { + return Err(HydraError::SaturatedMember.into()); + } + Ok(()) +} + #[cfg(test)] mod tests { // Note this useful idiom: importing names from outer (for mod tests) scope.