diff --git a/README.md b/README.md index ada77097..12356bc3 100644 --- a/README.md +++ b/README.md @@ -16,11 +16,11 @@ ## Getting Started -The packages below can be use to interact with Token Metadata program. +The packages below can be used to interact with Token Metadata program. ### TypeScript ```sh -npm install @metaplex-foundation/mpl-token-metadata@alpha +npm install @metaplex-foundation/mpl-token-metadata ``` [See typedoc documentation](https://mpl-token-metadata-js-docs.vercel.app/). @@ -30,13 +30,13 @@ npm install @metaplex-foundation/mpl-token-metadata@alpha cargo add mpl-token-metadata ``` -[See crate documentation](https://docs.rs/mpl-token-metadata/1.13.1/mpl_token_metadata/). +[See crate documentation](https://docs.rs/mpl-token-metadata/1.13.3/mpl_token_metadata/). ## Building From the root directory of the repository: -- Install the required packges: +- Install the required packages: ```sh pnpm install ``` @@ -50,7 +50,7 @@ This will create the program binary at `/programs/.bin` ## Testing -Token Metadata includes two set of tests: BPF and TypeScript. +Token Metadata includes two sets of tests: BPF and TypeScript. ### BPF @@ -80,7 +80,7 @@ pnpm build && pnpm test ## Documentation -Full documentation for Token Metadata can be found [here](https://docs.metaplex.com/programs/token-metadata/). +Full documentation for Token Metadata can be found here [developers.metaplex.com/token-metadata](https://developers.metaplex.com/token-metadata). ## Security diff --git a/idls/token_metadata.json b/idls/token_metadata.json index 4b5e9675..ca6206d6 100644 --- a/idls/token_metadata.json +++ b/idls/token_metadata.json @@ -7731,7 +7731,7 @@ "metadata": { "origin": "shank", "address": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s", - "binaryVersion": "0.2.0", - "libVersion": "0.2.0" + "binaryVersion": "0.4.2", + "libVersion": "0.4.2" } -} +} \ No newline at end of file diff --git a/programs/token-metadata/Cargo.lock b/programs/token-metadata/Cargo.lock index 7bbf9421..e11b48b2 100644 --- a/programs/token-metadata/Cargo.lock +++ b/programs/token-metadata/Cargo.lock @@ -12,12 +12,27 @@ dependencies = [ "regex", ] +[[package]] +name = "addr2line" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" +dependencies = [ + "gimli", +] + [[package]] name = "adler" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + [[package]] name = "aead" version = "0.4.3" @@ -178,7 +193,7 @@ dependencies = [ "derivative", "digest 0.10.7", "itertools", - "num-bigint 0.4.3", + "num-bigint 0.4.4", "num-traits", "paste", "rustc_version", @@ -191,7 +206,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" dependencies = [ - "quote 1.0.32", + "quote", "syn 1.0.109", ] @@ -201,10 +216,10 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" dependencies = [ - "num-bigint 0.4.3", + "num-bigint 0.4.4", "num-traits", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -230,7 +245,7 @@ dependencies = [ "ark-serialize-derive", "ark-std", "digest 0.10.7", - "num-bigint 0.4.3", + "num-bigint 0.4.4", ] [[package]] @@ -239,8 +254,8 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -254,12 +269,6 @@ dependencies = [ "rand 0.8.5", ] -[[package]] -name = "array-bytes" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ad284aeb45c13f2fb4f084de4a420ebf447423bdf9386c0540ce33cb3ef4b8c" - [[package]] name = "arrayref" version = "0.3.7" @@ -291,7 +300,7 @@ dependencies = [ "num-traits", "rusticata-macros", "thiserror", - "time 0.3.25", + "time", ] [[package]] @@ -300,8 +309,8 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", "synstructure", ] @@ -312,8 +321,8 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -336,9 +345,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.3.15" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" +checksum = "fec134f64e2bc57411226dfc4e52dec859ddfc7e711fc5e07b612584f000e4aa" dependencies = [ "brotli", "flate2", @@ -363,8 +372,8 @@ version = "0.1.73" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -385,6 +394,21 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +[[package]] +name = "backtrace" +version = "0.3.73" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide 0.7.1", + "object", + "rustc-demangle", +] + [[package]] name = "base64" version = "0.12.3" @@ -399,9 +423,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.2" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" [[package]] name = "base64ct" @@ -429,6 +453,9 @@ name = "bitflags" version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" +dependencies = [ + "serde", +] [[package]] name = "bitmaps" @@ -441,9 +468,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.4.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "199c42ab6972d92c9f8995f086273d25c42fc0f7b2a1fcefba465c1352d25ba5" +checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52" dependencies = [ "arrayref", "arrayvec", @@ -507,7 +534,7 @@ dependencies = [ "borsh-derive-internal 0.9.3", "borsh-schema-derive-internal 0.9.3", "proc-macro-crate 0.1.5", - "proc-macro2 1.0.66", + "proc-macro2", "syn 1.0.109", ] @@ -520,7 +547,7 @@ dependencies = [ "borsh-derive-internal 0.10.3", "borsh-schema-derive-internal 0.10.3", "proc-macro-crate 0.1.5", - "proc-macro2 1.0.66", + "proc-macro2", "syn 1.0.109", ] @@ -530,8 +557,8 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -541,8 +568,8 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afb438156919598d2c7bad7e1c0adf3d26ed3840dbc010db1a882a65583ca2fb" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -552,8 +579,8 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -563,16 +590,16 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "634205cc43f74a1b9046ef87c4540ebda95696ec0f315024860cad7c5b0f5ccd" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] [[package]] name = "brotli" -version = "3.3.4" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -581,9 +608,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.3.4" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b6561fd3f895a11e8f72af2cb7d22e08366bebc2b6b57f7744c4bda27034744" +checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -613,9 +640,9 @@ dependencies = [ [[package]] name = "bytemuck" -version = "1.13.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" +checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" dependencies = [ "bytemuck_derive", ] @@ -626,8 +653,8 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -639,9 +666,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.4.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" +checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" [[package]] name = "bzip2" @@ -676,12 +703,13 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.82" +version = "1.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01" +checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" dependencies = [ "jobserver", "libc", + "shlex", ] [[package]] @@ -692,18 +720,17 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.26" +version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "serde", - "time 0.1.45", "wasm-bindgen", - "winapi", + "windows-targets 0.52.6", ] [[package]] @@ -985,8 +1012,8 @@ checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" dependencies = [ "fnv", "ident_case", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "strsim 0.10.0", "syn 1.0.109", ] @@ -999,8 +1026,8 @@ checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "strsim 0.10.0", "syn 2.0.28", ] @@ -1012,7 +1039,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" dependencies = [ "darling_core 0.13.4", - "quote 1.0.32", + "quote", "syn 1.0.109", ] @@ -1023,7 +1050,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core 0.20.3", - "quote 1.0.32", + "quote", "syn 2.0.28", ] @@ -1062,7 +1089,7 @@ dependencies = [ "asn1-rs", "displaydoc", "nom", - "num-bigint 0.4.3", + "num-bigint 0.4.4", "num-traits", "rusticata-macros", ] @@ -1085,8 +1112,8 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -1137,32 +1164,32 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] [[package]] -name = "dlopen" -version = "0.1.8" +name = "dlopen2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e80ad39f814a9abe68583cd50a2d45c8a67561c3361ab8da240587dda80937" +checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa" dependencies = [ - "dlopen_derive", - "lazy_static", + "dlopen2_derive", "libc", + "once_cell", "winapi", ] [[package]] -name = "dlopen_derive" -version = "0.1.4" +name = "dlopen2_derive" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f236d9e1b1fbd81cea0f9cbdc8dcc7e8ebcd80e6659cd7cb2ad5f6c05946c581" +checksum = "a6cbae11b3de8fce2a456e8ea3dada226b35fe791f0dc1d360c0941f0bb681f3" dependencies = [ - "libc", - "quote 0.6.13", - "syn 0.15.44", + "proc-macro2", + "quote", + "syn 2.0.28", ] [[package]] @@ -1213,8 +1240,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "079044df30bb07de7d846d41a184c4b00e66ebdac93ee459253474f3a47e50ae" dependencies = [ "enum-ordinalize", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -1254,8 +1281,8 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eecf8589574ce9b895052fa12d69af7a233f99e6107f5cb8dd1044f2a17bfdcb" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -1265,10 +1292,10 @@ version = "3.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4f76552f53cefc9a7f64987c3701b99d982f7690606fd67de1d09712fbf52f1" dependencies = [ - "num-bigint 0.4.3", + "num-bigint 0.4.4", "num-traits", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -1293,23 +1320,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" -dependencies = [ - "errno-dragonfly", - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "errno-dragonfly" -version = "0.1.2" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ - "cc", "libc", + "windows-sys 0.52.0", ] [[package]] @@ -1320,9 +1336,9 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "fastrand" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "feature-probe" @@ -1338,18 +1354,18 @@ checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.3.5", + "redox_syscall", "windows-sys 0.48.0", ] [[package]] name = "flate2" -version = "1.0.26" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743" +checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -1360,13 +1376,22 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "form_urlencoded" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ "percent-encoding", ] +[[package]] +name = "fs-err" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" +dependencies = [ + "autocfg", +] + [[package]] name = "futures" version = "0.3.28" @@ -1421,8 +1446,8 @@ version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -1503,6 +1528,12 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "gimli" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" + [[package]] name = "goblin" version = "0.5.4" @@ -1571,9 +1602,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.0" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" [[package]] name = "heck" @@ -1689,7 +1720,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.4.9", "tokio", "tower-service", "tracing", @@ -1698,10 +1729,11 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.23.2" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ + "futures-util", "http", "hyper", "rustls", @@ -1740,9 +1772,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -1782,19 +1814,19 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.0.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", - "hashbrown 0.14.0", + "hashbrown 0.14.5", ] [[package]] name = "indicatif" -version = "0.17.6" +version = "0.17.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730" +checksum = "763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3" dependencies = [ "console", "instant", @@ -1835,9 +1867,9 @@ checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "jobserver" -version = "0.1.26" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" dependencies = [ "libc", ] @@ -1883,9 +1915,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.147" +version = "0.2.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" [[package]] name = "libsecp256k1" @@ -1935,11 +1967,22 @@ dependencies = [ "libsecp256k1-core", ] +[[package]] +name = "light-poseidon" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5b439809cdfc0d86ecc7317f1724df13dfa665df48991b79e90e689411451f7" +dependencies = [ + "ark-bn254", + "ark-ff", + "thiserror", +] + [[package]] name = "linux-raw-sys" -version = "0.4.5" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lock_api" @@ -1988,9 +2031,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.5.0" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memmap2" @@ -2053,25 +2096,23 @@ dependencies = [ ] [[package]] -name = "mio" -version = "0.7.14" +name = "miniz_oxide" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" dependencies = [ - "libc", - "log", - "miow", - "ntapi", - "winapi", + "adler2", ] [[package]] -name = "miow" -version = "0.3.7" +name = "mio" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ - "winapi", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.48.0", ] [[package]] @@ -2090,57 +2131,37 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] [[package]] name = "mpl-token-auth-rules" -version = "1.4.3-beta.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81a34d740606a10a9dac7507d0c9025d72e0ce311c68ae85b6634982cf69a9c6" +checksum = "8637dd3d13d045a43a2410dbb57f0257d506838aa71461faf0eaf2806e6d5071" dependencies = [ - "borsh 0.9.3", + "borsh 0.10.3", "bytemuck", "mpl-token-metadata-context-derive 0.2.1", - "num-derive", + "num-derive 0.3.3", "num-traits", "rmp-serde", "serde", - "shank 0.0.11", + "shank 0.3.0", "solana-program", "solana-zk-token-sdk", "thiserror", ] -[[package]] -name = "mpl-token-metadata" -version = "1.13.2-beta.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b6cb247b58f6969d1c97288a5c859f571cdb730904aca99194708e9c21a2d13" -dependencies = [ - "arrayref", - "borsh 0.9.3", - "mpl-token-auth-rules", - "mpl-token-metadata-context-derive 1.13.2-beta.1", - "mpl-utils 0.2.0", - "num-derive", - "num-traits", - "shank 0.0.11", - "solana-program", - "spl-associated-token-account 2.0.0", - "spl-token 4.0.0", - "thiserror", -] - [[package]] name = "mpl-token-metadata-context-derive" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12989bc45715b0ee91944855130131479f9c772e198a910c3eb0ea327d5bffc3" dependencies = [ - "quote 1.0.32", + "quote", "syn 1.0.109", ] @@ -2148,55 +2169,32 @@ dependencies = [ name = "mpl-token-metadata-context-derive" version = "0.3.0" dependencies = [ - "quote 1.0.32", - "syn 1.0.109", -] - -[[package]] -name = "mpl-token-metadata-context-derive" -version = "1.13.2-beta.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcfabf632a87e1611d79bf93b9871f8ffefa8a854a351a989c0c026513f6a40c" -dependencies = [ - "quote 1.0.32", + "quote", "syn 1.0.109", ] [[package]] name = "mpl-utils" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "822133b6cba8f9a43e5e0e189813be63dd795858f54155c729833be472ffdb51" -dependencies = [ - "arrayref", - "borsh 0.9.3", - "solana-program", - "spl-token 3.5.0", -] - -[[package]] -name = "mpl-utils" -version = "0.3.1" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f2e4f92aec317d5853c0cc4c03c55f5178511c45bb3dbb441aea63117bf3dc9" +checksum = "8ee1b830bfd014504a11b2234e2e7d6af535adda601f224cd519b923f593c91b" dependencies = [ "arrayref", "solana-program", - "spl-token-2022 0.6.1", + "spl-token-2022 0.7.0", ] [[package]] name = "nix" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ "bitflags 1.3.2", "cfg-if", "libc", "memoffset 0.7.1", "pin-utils", - "static_assertions", ] [[package]] @@ -2209,15 +2207,6 @@ dependencies = [ "minimal-lexical", ] -[[package]] -name = "ntapi" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" -dependencies = [ - "winapi", -] - [[package]] name = "num" version = "0.2.1" @@ -2245,9 +2234,9 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" dependencies = [ "autocfg", "num-integer", @@ -2270,11 +2259,22 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "num-integer" version = "0.1.45" @@ -2345,6 +2345,15 @@ dependencies = [ "num_enum_derive 0.6.1", ] +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive 0.7.3", +] + [[package]] name = "num_enum_derive" version = "0.5.11" @@ -2352,8 +2361,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ "proc-macro-crate 1.3.1", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -2364,8 +2373,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ "proc-macro-crate 1.3.1", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate 1.3.1", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -2375,6 +2396,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" +[[package]] +name = "object" +version = "0.36.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" +dependencies = [ + "memchr", +] + [[package]] name = "oid-registry" version = "0.6.1" @@ -2445,22 +2475,11 @@ checksum = "5f7d21ccd03305a674437ee1248f3ab5d4b1db095cf1caf49f1713ddf61956b7" dependencies = [ "Inflector", "proc-macro-error", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.6", -] - [[package]] name = "parking_lot" version = "0.12.1" @@ -2468,21 +2487,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ "lock_api", - "parking_lot_core 0.9.8", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" -dependencies = [ - "cfg-if", - "instant", - "libc", - "redox_syscall 0.2.16", - "smallvec", - "winapi", + "parking_lot_core", ] [[package]] @@ -2493,7 +2498,7 @@ checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.3.5", + "redox_syscall", "smallvec", "windows-targets 0.48.1", ] @@ -2533,9 +2538,9 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "percentage" @@ -2561,8 +2566,8 @@ version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -2651,8 +2656,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", "version_check", ] @@ -2663,25 +2668,16 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "version_check", ] [[package]] name = "proc-macro2" -version = "0.4.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" -dependencies = [ - "unicode-xid 0.1.0", -] - -[[package]] -name = "proc-macro2" -version = "1.0.66" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -2695,11 +2691,22 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "qualifier_attr" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e2e25ee72f5b24d773cae88422baddefff7714f97aab68d96fe2b6fc4a28fb2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "quinn" -version = "0.9.4" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e8b432585672228923edbbf64b8b12c14e1112f62e88737655b4a083dbcd78e" +checksum = "8cc2c5017e4b43d5995dcea317bc46c1e09404c0a9664d2908f7f02dfe943d75" dependencies = [ "bytes", "pin-project-lite", @@ -2710,18 +2717,17 @@ dependencies = [ "thiserror", "tokio", "tracing", - "webpki", ] [[package]] name = "quinn-proto" -version = "0.9.4" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31999cfc7927c4e212e60fd50934ab40e8e8bfd2d493d6095d2d306bc0764d9" +checksum = "141bf7dfde2fbc246bfd3fe12f2455aa24b0fbd9af535d8c86c7bd1381ff2b1a" dependencies = [ "bytes", "rand 0.8.5", - "ring", + "ring 0.16.20", "rustc-hash", "rustls", "rustls-native-certs", @@ -2729,29 +2735,19 @@ dependencies = [ "thiserror", "tinyvec", "tracing", - "webpki", ] [[package]] name = "quinn-udp" -version = "0.3.2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4" +checksum = "055b4e778e8feb9f93c4e439f71dc2156ef13360b432b799e179a8c4cdf0b1d7" dependencies = [ + "bytes", "libc", - "quinn-proto", - "socket2", + "socket2 0.5.7", "tracing", - "windows-sys 0.42.0", -] - -[[package]] -name = "quote" -version = "0.6.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" -dependencies = [ - "proc-macro2 0.4.30", + "windows-sys 0.48.0", ] [[package]] @@ -2760,7 +2756,7 @@ version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965" dependencies = [ - "proc-macro2 1.0.66", + "proc-macro2", ] [[package]] @@ -2872,20 +2868,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" dependencies = [ "pem", - "ring", - "time 0.3.25", + "ring 0.16.20", + "time", "yasna", ] -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.3.5" @@ -2897,9 +2884,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.9.3" +version = "1.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a" +checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" dependencies = [ "aho-corasick", "memchr", @@ -2909,9 +2896,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" dependencies = [ "aho-corasick", "memchr", @@ -2920,18 +2907,18 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.7.4" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "reqwest" -version = "0.11.17" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13293b639a097af28fc8a90f22add145a9c954e49d77da06263d58cf44d5fb91" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "async-compression", - "base64 0.21.2", + "base64 0.21.7", "bytes", "encoding_rs", "futures-core", @@ -2953,6 +2940,8 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", + "sync_wrapper", + "system-configuration", "tokio", "tokio-rustls", "tokio-util 0.7.2", @@ -2961,7 +2950,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", + "webpki-roots 0.25.4", "winreg", ] @@ -2974,12 +2963,27 @@ dependencies = [ "cc", "libc", "once_cell", - "spin", - "untrusted", + "spin 0.5.2", + "untrusted 0.7.1", "web-sys", "winapi", ] +[[package]] +name = "ring" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.10", + "libc", + "spin 0.9.8", + "untrusted 0.9.0", + "windows-sys 0.52.0", +] + [[package]] name = "rmp" version = "0.8.12" @@ -3002,21 +3006,6 @@ dependencies = [ "serde", ] -[[package]] -name = "rooster" -version = "0.1.0" -source = "git+https://github.com/metaplex-foundation/rooster#e424745fd5abfe1442fd37f3814d1f908302499d" -dependencies = [ - "borsh 0.9.3", - "mpl-token-metadata", - "mpl-utils 0.3.1", - "num-derive", - "num-traits", - "shank 0.0.10", - "solana-program", - "thiserror", -] - [[package]] name = "rpassword" version = "7.2.0" @@ -3040,9 +3029,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -3070,27 +3059,27 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.8" +version = "0.38.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f" +checksum = "3f55e80d50763938498dd5ebb18647174e0c76dc38c5505294bb224624f30f36" dependencies = [ "bitflags 2.4.0", "errno", "libc", "linux-raw-sys", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "rustls" -version = "0.20.8" +version = "0.21.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", - "ring", + "ring 0.17.8", + "rustls-webpki", "sct", - "webpki", ] [[package]] @@ -3111,7 +3100,17 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ - "base64 0.21.2", + "base64 0.21.7", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring 0.17.8", + "untrusted 0.9.0", ] [[package]] @@ -3165,8 +3164,8 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1db149f81d46d2deba7cd3c50772474707729550221e69588478ebf9ada425ae" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -3176,8 +3175,8 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" dependencies = [ - "ring", - "untrusted", + "ring 0.16.20", + "untrusted 0.7.1", ] [[package]] @@ -3205,15 +3204,15 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.18" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.183" +version = "1.0.193" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c" +checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" dependencies = [ "serde_derive", ] @@ -3229,20 +3228,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.183" +version = "1.0.193" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816" +checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] [[package]] name = "serde_json" -version = "1.0.104" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c" +checksum = "cb0652c533506ad7a2e353cce269330d6afd8bdfb6d75e0ace5b35aacbd7b9e9" dependencies = [ "itoa", "ryu", @@ -3288,8 +3287,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" dependencies = [ "darling 0.13.4", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -3300,16 +3299,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f" dependencies = [ "darling 0.20.3", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] [[package]] -name = "sha-1" -version = "0.10.1" +name = "sha1" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", "cpufeatures", @@ -3364,116 +3363,94 @@ dependencies = [ [[package]] name = "shank" -version = "0.0.10" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90b0d7b8998cc311310854451e7f5903cf3a151ca93ef6aa2b8b6c369a037b21" +checksum = "57c9395612d493b69a522725eef78a095f199d43eeb847f4a4b77ec0cacab535" dependencies = [ - "shank_macro 0.0.10", + "shank_macro 0.3.0", ] [[package]] name = "shank" -version = "0.0.11" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b63e565b5e95ad88ab38f312e89444c749360641c509ef2de0093b49f55974a5" +checksum = "23d894855493d4ce613b25550fe1ed1c62d0af5486b984579ba55e3f8c9631d5" dependencies = [ - "shank_macro 0.0.11", + "shank_macro 0.4.2", ] [[package]] -name = "shank" -version = "0.2.1" +name = "shank_macro" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bc647510fc0d94a936f7367a9e3e30edbefd410068747ce4d4084b19b5fdbab" +checksum = "8abef069c02e15f62233679b1e71f3152fac10f90b3ff89ebbad6a25b7497754" dependencies = [ - "shank_macro 0.2.1", -] - -[[package]] -name = "shank_macro" -version = "0.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a37d6cf5df84eb622cb6fc74071d5d773c6a23b9ec55691db7b6a8c2286926" -dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", - "shank_macro_impl 0.0.10", - "syn 1.0.109", -] - -[[package]] -name = "shank_macro" -version = "0.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63927d22a1e8b74bda98cc6e151fcdf178b7abb0dc6c4f81e0bbf5ffe2fc4ec8" -dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", - "shank_macro_impl 0.0.11", + "proc-macro2", + "quote", + "shank_macro_impl 0.3.0", + "shank_render 0.3.0", "syn 1.0.109", ] [[package]] name = "shank_macro" -version = "0.2.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa9ec31d18dcca23f2270ccf69766a99156792da3aed050dc5713af0e778b4f2" +checksum = "a9bf2645f8eebde043da69200195058e7b59806705104f908a31d05ca82844ce" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", - "shank_macro_impl 0.2.1", - "shank_render", + "proc-macro2", + "quote", + "shank_macro_impl 0.4.2", + "shank_render 0.4.2", "syn 1.0.109", ] [[package]] name = "shank_macro_impl" -version = "0.0.10" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1314ff5d5a3dffd9b93de1463e2b6afc2350f17596d7d9b3fe0924c9edd250df" +checksum = "64d3d92bfcc6e08f882f2264d774d1a2f46dc36122adc1b76416ba6405a29a9c" dependencies = [ "anyhow", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "serde", "syn 1.0.109", ] [[package]] name = "shank_macro_impl" -version = "0.0.11" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ce03403df682f80f4dc1efafa87a4d0cb89b03726d0565e6364bdca5b9a441" +checksum = "93d0593f48acb0a722906416b1f6b8926f6571eb9af16d566a7c65427f269f50" dependencies = [ "anyhow", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "serde", "syn 1.0.109", ] [[package]] -name = "shank_macro_impl" -version = "0.2.1" +name = "shank_render" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccaeb1359cf545507b5d18a637cc5cf192c7dcc8c737dff466013ca2d9e792c7" +checksum = "5a2ea9c6dd95ea311b3b81e63cf4e9c808ed04b098819e6d2c4b1a467d587203" dependencies = [ - "anyhow", - "proc-macro2 1.0.66", - "quote 1.0.32", - "serde", - "syn 1.0.109", + "proc-macro2", + "quote", + "shank_macro_impl 0.3.0", ] [[package]] name = "shank_render" -version = "0.2.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e63f0b763c4c767dfb462a884d5f5b9b99fdd0a214c910d95792eb02a13b3d69" +checksum = "121175ba61809189f888dc5822ebfd30fa0d91e1e1f61d25a4d40b0847b3075e" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", - "shank_macro_impl 0.2.1", + "proc-macro2", + "quote", + "shank_macro_impl 0.4.2", ] [[package]] @@ -3491,6 +3468,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "signal-hook-registry" version = "1.4.1" @@ -3506,6 +3489,12 @@ version = "1.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + [[package]] name = "sized-chunks" version = "0.6.5" @@ -3541,14 +3530,24 @@ dependencies = [ "winapi", ] +[[package]] +name = "socket2" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + [[package]] name = "solana-account-decoder" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af3fd71c1b3a1bd76840b627a85e0580dc85a5db59259d6f2129eb4bea8ff628" +checksum = "8ec4cebccef07b65c46854b62237a29e7ccc92ef21ef1c90be346f9de0c4e7a4" dependencies = [ "Inflector", - "base64 0.21.2", + "base64 0.21.7", "bincode", "bs58", "bv", @@ -3556,25 +3555,84 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "solana-address-lookup-table-program", "solana-config-program", "solana-sdk", - "spl-token 3.5.0", - "spl-token-2022 0.6.1", + "spl-token 4.0.0", + "spl-token-2022 0.9.0", + "spl-token-metadata-interface", "thiserror", "zstd", ] +[[package]] +name = "solana-accounts-db" +version = "1.17.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71fff07461e365d6323beacfa7e82b71dd6a0d18dee91a4faff7e2a0541dcd9e" +dependencies = [ + "arrayref", + "bincode", + "blake3", + "bv", + "bytemuck", + "byteorder", + "bzip2", + "crossbeam-channel", + "dashmap", + "flate2", + "fnv", + "fs-err", + "im", + "index_list", + "itertools", + "lazy_static", + "log", + "lz4", + "memmap2", + "modular-bitfield", + "num-derive 0.3.3", + "num-traits", + "num_cpus", + "num_enum 0.6.1", + "ouroboros", + "percentage", + "qualifier_attr", + "rand 0.8.5", + "rayon", + "regex", + "rustc_version", + "serde", + "serde_derive", + "solana-bucket-map", + "solana-config-program", + "solana-frozen-abi", + "solana-frozen-abi-macro", + "solana-measure", + "solana-metrics", + "solana-program-runtime", + "solana-rayon-threadlimit", + "solana-sdk", + "solana-stake-program", + "solana-system-program", + "solana-vote-program", + "static_assertions", + "strum", + "strum_macros", + "tar", + "tempfile", + "thiserror", +] + [[package]] name = "solana-address-lookup-table-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147c6ac17124380edf2e5a505da0e2c22ad300c3b532cad4497a6da3a9bc54dc" +checksum = "7d0ebaf28eb93ea5f82f25cb60825cac98b52a4d002b194bfb05e0e990d8a33b" dependencies = [ "bincode", "bytemuck", "log", - "num-derive", + "num-derive 0.3.3", "num-traits", "rustc_version", "serde", @@ -3588,9 +3646,9 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c065226230d17f5e333e6ad60db639c4d3d716ca1b2c8b2d8e8e8412f943709" +checksum = "33a49b62d7984a96c44d81af7b8d563c5b0c0552a4a9e889da2e68e6893844fa" dependencies = [ "borsh 0.10.3", "futures", @@ -3605,9 +3663,9 @@ dependencies = [ [[package]] name = "solana-banks-interface" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1093af4fc53baf6a051bbce55f02da8b19d333fe594c79217ee8f5df79cd1161" +checksum = "8d919eb463a457e22f7c7268dd3935a71d922f7888da6304d01949094db42a04" dependencies = [ "serde", "solana-sdk", @@ -3616,13 +3674,14 @@ dependencies = [ [[package]] name = "solana-banks-server" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79583c0841f867d1968ef41564c8a0f4cbc1d9e6616f2d4a26a61ed953b1c00" +checksum = "1eac4815309121b0bdd313a4ce8d104d1ca59badfd5b2056ccc005f7c46484ac" dependencies = [ "bincode", "crossbeam-channel", "futures", + "solana-accounts-db", "solana-banks-interface", "solana-client", "solana-runtime", @@ -3635,15 +3694,15 @@ dependencies = [ [[package]] name = "solana-bpf-loader-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31028b291651242916318f5fb277387ac2ac822ec397af9e739909fd8183ad0a" +checksum = "af5bf2cf0981fc14ccf1044190bd767846b28f381c8e7349a5ca2e000b3821da" dependencies = [ "bincode", "byteorder", "libsecp256k1", "log", - "rand 0.7.3", + "scopeguard", "solana-measure", "solana-program-runtime", "solana-sdk", @@ -3654,16 +3713,17 @@ dependencies = [ [[package]] name = "solana-bucket-map" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db635df62e3f1e3b6661ea1e93dbb14e6ef2ddd86ccac72a7842bb594e399f4c" +checksum = "9557b479aa7993ac88c4b57e603afbe34a90ff660c126d8a24368616f42150fa" dependencies = [ "bv", + "bytemuck", "log", "memmap2", "modular-bitfield", "num_enum 0.6.1", - "rand 0.7.3", + "rand 0.8.5", "solana-measure", "solana-sdk", "tempfile", @@ -3671,14 +3731,13 @@ dependencies = [ [[package]] name = "solana-clap-utils" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce466531351ab81e9931122bd779369af20f4816f2706b4af47c3ea989de5447" +checksum = "089f1edd0e325e5664f33b11df131ff47ed93cd74d75a2d434c8b7f9e976267a" dependencies = [ "chrono", "clap 2.34.0", "rpassword", - "solana-perf", "solana-remote-wallet", "solana-sdk", "thiserror", @@ -3689,19 +3748,19 @@ dependencies = [ [[package]] name = "solana-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59d5c898cc260d747f1fafc38faf3005b94737c660047381236b57448a008b10" +checksum = "6d4eb6c673b6a8768ba687d620d02ec544d86525ce6d7e3858e9730463ed41b4" dependencies = [ "async-trait", "bincode", + "dashmap", "futures", "futures-util", - "indexmap 1.9.3", + "indexmap 2.5.0", "indicatif", "log", "quinn", - "rand 0.7.3", "rayon", "solana-connection-cache", "solana-measure", @@ -3722,9 +3781,9 @@ dependencies = [ [[package]] name = "solana-compute-budget-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98312eeab2d9879bcac78cce213fe65a9d929df6d541c0dcd0ef918968ea2cca" +checksum = "c1ca488b19059e0d2069e2788e3d5bc17c75056bed21cae2c11e44cd57423706" dependencies = [ "solana-program-runtime", "solana-sdk", @@ -3732,9 +3791,9 @@ dependencies = [ [[package]] name = "solana-config-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaee2ae2c20c8f4d1f4a71fdef18b846ed526a62f3960c1dd397e3214a5c3636" +checksum = "98d262cd78922735637ef0ccf179e43bc0acd430f9004cd7e987e95d04b44f47" dependencies = [ "bincode", "chrono", @@ -3746,16 +3805,17 @@ dependencies = [ [[package]] name = "solana-connection-cache" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbb3a18a36fe35598469fbfd3909fcdee3790225367d4a1b6ac3bb77d333cc72" +checksum = "84f1aa4f1d78bdf5f76f4f351d05c0b861025c8b4e46503d8c2aa8d97a7139d4" dependencies = [ "async-trait", "bincode", + "crossbeam-channel", "futures-util", - "indexmap 1.9.3", + "indexmap 2.5.0", "log", - "rand 0.7.3", + "rand 0.8.5", "rayon", "rcgen", "solana-measure", @@ -3765,11 +3825,35 @@ dependencies = [ "tokio", ] +[[package]] +name = "solana-cost-model" +version = "1.17.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7679c9ce9ce65e987babf77dbd53db878b473ea170ea89a9a234c31e6b2a2af" +dependencies = [ + "lazy_static", + "log", + "rustc_version", + "solana-address-lookup-table-program", + "solana-bpf-loader-program", + "solana-compute-budget-program", + "solana-config-program", + "solana-frozen-abi", + "solana-frozen-abi-macro", + "solana-loader-v4-program", + "solana-metrics", + "solana-program-runtime", + "solana-sdk", + "solana-stake-program", + "solana-system-program", + "solana-vote-program", +] + [[package]] name = "solana-frozen-abi" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c99cfa99557c93f82428f19629d7aa0bb069a740f5caf0ae0654853e9930cd4c" +checksum = "92dc68e28d42991c6579079f9be29e2e30fb20474cbcd7be1d97e052081c8050" dependencies = [ "ahash 0.8.3", "blake3", @@ -3780,13 +3864,10 @@ dependencies = [ "cc", "either", "generic-array", - "getrandom 0.1.16", "im", "lazy_static", "log", "memmap2", - "once_cell", - "rand_core 0.6.4", "rustc_version", "serde", "serde_bytes", @@ -3800,24 +3881,23 @@ dependencies = [ [[package]] name = "solana-frozen-abi-macro" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f9a943b7e086970c1f131c82bed6788b788b49c6b3579388f4989cfcfb47db" +checksum = "999084a6d587bc79a059eb4c34c2e1419913612bb6224bb95660567c0f12449d" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "rustc_version", "syn 2.0.28", ] [[package]] name = "solana-loader-v4-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a41c7ce3e3a4a64c8a27aea05e8661a1d1f7c1d78d0d8d676223b714180752" +checksum = "7b53c047467e01a5593461fd6a16587bf04c536627093995a6dffccf7b6253fe" dependencies = [ "log", - "rand 0.7.3", "solana-measure", "solana-program-runtime", "solana-sdk", @@ -3826,9 +3906,9 @@ dependencies = [ [[package]] name = "solana-logger" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc71a75f90306445902cd0fb1082761bcf5a5b244738e557edfd6ca75f94019a" +checksum = "84a56a1696678acd5237565c3092354c923f84dc1fbcd9b824c91fbfefc10740" dependencies = [ "env_logger", "lazy_static", @@ -3837,9 +3917,9 @@ dependencies = [ [[package]] name = "solana-measure" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2426169e601a2bb12b966b076d5fc33943227e555abb36216f7bf20584cde8e7" +checksum = "cad3ae58ed767c409a792b045b4580c96b658b1672f4389f4dca7ca6a124693c" dependencies = [ "log", "solana-sdk", @@ -3847,9 +3927,9 @@ dependencies = [ [[package]] name = "solana-metrics" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88eab2455a9c2ecf436a503fdc15c64bf8079dbb18f55172b88bcf3b9a3b0a56" +checksum = "9b6764575759cf274c7579df7d3b8c45d4859706c9da4a1964110ab6e622c5e9" dependencies = [ "crossbeam-channel", "gethostname", @@ -3857,23 +3937,24 @@ dependencies = [ "log", "reqwest", "solana-sdk", + "thiserror", ] [[package]] name = "solana-net-utils" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6bb6bbfc5b19829d0ae30cb77f6942600ddf013b3ea9529c50ca61a18cedd59" +checksum = "8570303599bc8c05b66550b919344dfde14dc79b17fa0c1d743a9c6dd7bac040" dependencies = [ "bincode", "clap 3.2.25", "crossbeam-channel", "log", "nix", - "rand 0.7.3", + "rand 0.8.5", "serde", "serde_derive", - "socket2", + "socket2 0.5.7", "solana-logger", "solana-sdk", "solana-version", @@ -3883,25 +3964,27 @@ dependencies = [ [[package]] name = "solana-perf" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d981579ffa092782bc6deb4510106ce230a0c8074c932bb2564d5e1d9cbe72b" +checksum = "68c658d1eff3672cb97c3501b9838fe1afdcac65d456c3e74b4c46f5245c8b05" dependencies = [ "ahash 0.8.3", "bincode", "bv", "caps", "curve25519-dalek", - "dlopen", - "dlopen_derive", + "dlopen2", "fnv", "lazy_static", "libc", "log", "nix", - "rand 0.7.3", + "rand 0.8.5", "rayon", + "rustc_version", "serde", + "solana-frozen-abi", + "solana-frozen-abi-macro", "solana-metrics", "solana-rayon-threadlimit", "solana-sdk", @@ -3910,18 +3993,17 @@ dependencies = [ [[package]] name = "solana-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f0785c04ca7709464aa99e3e960a5c09e2318da8658833d410e157b3292a69" +checksum = "5e9aa19fa728ed701584c398607f26c773ede20e1c38e4a6c3ae79ed56521374" dependencies = [ "ark-bn254", "ark-ec", "ark-ff", "ark-serialize", - "array-bytes", - "base64 0.21.2", + "base64 0.21.7", "bincode", - "bitflags 1.3.2", + "bitflags 2.4.0", "blake3", "borsh 0.10.3", "borsh 0.9.3", @@ -3938,14 +4020,14 @@ dependencies = [ "lazy_static", "libc", "libsecp256k1", + "light-poseidon", "log", "memoffset 0.9.0", - "num-bigint 0.4.3", - "num-derive", + "num-bigint 0.4.4", + "num-derive 0.3.3", "num-traits", - "parking_lot 0.12.1", - "rand 0.7.3", - "rand_chacha 0.2.2", + "parking_lot", + "rand 0.8.5", "rustc_version", "rustversion", "serde", @@ -3965,21 +4047,21 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a76c947ee87c148f646f961d67580402fbe69825e017053fc3cd271afb3eefe" +checksum = "27f91b73c2c061b3e5f85345879a932460ff946ab363eb25166b751944e6f6dc" dependencies = [ - "base64 0.21.2", + "base64 0.21.7", "bincode", "eager", "enum-iterator", "itertools", "libc", "log", - "num-derive", + "num-derive 0.3.3", "num-traits", "percentage", - "rand 0.7.3", + "rand 0.8.5", "rustc_version", "serde", "solana-frozen-abi", @@ -3993,18 +4075,19 @@ dependencies = [ [[package]] name = "solana-program-test" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "333ec33b37d85f48669b3d1f9c68a4b8fcfefe906ed7262c7ed90aa565cd175b" +checksum = "47ad93e67774839b04b191f1e7a54b91ecec2169e07b343480528ec1619b30b5" dependencies = [ "assert_matches", "async-trait", - "base64 0.21.2", + "base64 0.21.7", "bincode", "chrono-humanize", "crossbeam-channel", "log", "serde", + "solana-accounts-db", "solana-banks-client", "solana-banks-interface", "solana-banks-server", @@ -4014,15 +4097,16 @@ dependencies = [ "solana-runtime", "solana-sdk", "solana-vote-program", + "test-case", "thiserror", "tokio", ] [[package]] name = "solana-pubsub-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89db8eabe8a22f565a8c26449a65dc80acd9ae5332a2008649c464e75714039" +checksum = "78b3939e4174d01c3bd9ef1385122de065e11fc6d660649388fae61effc2e0fa" dependencies = [ "crossbeam-channel", "futures-util", @@ -4045,9 +4129,9 @@ dependencies = [ [[package]] name = "solana-quic-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a944cbeec6904d1023186dd9387f3f498b369c54f2bb7e55e2d76ab6a069bf" +checksum = "fdd2ba399377ec18fe9bd45cb290bb92668df8adba1f884d4b6adab8e0c27ed5" dependencies = [ "async-mutex", "async-trait", @@ -4057,7 +4141,6 @@ dependencies = [ "log", "quinn", "quinn-proto", - "quinn-udp", "rcgen", "rustls", "solana-connection-cache", @@ -4073,9 +4156,9 @@ dependencies = [ [[package]] name = "solana-rayon-threadlimit" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c699b849a013036f6bda8219ecb2803708df2a829042ae909ceb939c77b44970" +checksum = "ada8292386cdf61aff5f9d00670abeefa3310b391f1a50c760c34c1ea52ea1a1" dependencies = [ "lazy_static", "num_cpus", @@ -4083,16 +4166,16 @@ dependencies = [ [[package]] name = "solana-remote-wallet" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "056e7531f56893258151396b97a0da757f4deea55192c08df9c62cb62b82e957" +checksum = "ad77919e1081817f5b38b29ac74d93348aa653b5f987ee53d281fba206b7bd26" dependencies = [ "console", "dialoguer", "log", - "num-derive", + "num-derive 0.3.3", "num-traits", - "parking_lot 0.12.1", + "parking_lot", "qstring", "semver", "solana-sdk", @@ -4102,12 +4185,12 @@ dependencies = [ [[package]] name = "solana-rpc-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d904dc51c52242b2e9e14b927af70ea04f0f74c99fa5db42981598885061b6" +checksum = "f681deb63fe05f365dddb4c3d2f596cf2cc54a81d6fb24746503c284b35266f8" dependencies = [ "async-trait", - "base64 0.21.2", + "base64 0.21.7", "bincode", "bs58", "indicatif", @@ -4128,11 +4211,11 @@ dependencies = [ [[package]] name = "solana-rpc-client-api" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bdf329e0d27ecbbfb73e5a060a23e9f9a26619b5ed56f673465342da1609e7c" +checksum = "be2823b1ffc18604c8f0ef6c6a4da24e4da6f420aea09f5afe57f6594044ebb8" dependencies = [ - "base64 0.21.2", + "base64 0.21.7", "bs58", "jsonrpc-core", "reqwest", @@ -4144,15 +4227,15 @@ dependencies = [ "solana-sdk", "solana-transaction-status", "solana-version", - "spl-token-2022 0.6.1", + "spl-token-2022 0.9.0", "thiserror", ] [[package]] name = "solana-rpc-client-nonce-utils" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf7e472d24e18f6d8e7e2dd7b5c71c02b0768898bad4cf4465542bdca91be9a" +checksum = "fc934849ef622beff13951b9a49a350e9d9d30a80dfa5f98043b516a08dfe64a" dependencies = [ "clap 2.34.0", "solana-clap-utils", @@ -4163,11 +4246,12 @@ dependencies = [ [[package]] name = "solana-runtime" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9517d0900bd0e71a5748674820724b605f30cbe5b8d38ed83b520dddd0177b54" +checksum = "cb58543ad33a22a0fed338bb8be4f1479b418e45410df82d132f33752a69772e" dependencies = [ "arrayref", + "base64 0.21.7", "bincode", "blake3", "bv", @@ -4179,6 +4263,7 @@ dependencies = [ "dir-diff", "flate2", "fnv", + "fs-err", "im", "index_list", "itertools", @@ -4188,24 +4273,28 @@ dependencies = [ "lz4", "memmap2", "modular-bitfield", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_cpus", "num_enum 0.6.1", - "once_cell", "ouroboros", "percentage", - "rand 0.7.3", + "qualifier_attr", + "rand 0.8.5", "rayon", "regex", "rustc_version", "serde", "serde_derive", + "serde_json", + "siphasher", + "solana-accounts-db", "solana-address-lookup-table-program", "solana-bpf-loader-program", "solana-bucket-map", "solana-compute-budget-program", "solana-config-program", + "solana-cost-model", "solana-frozen-abi", "solana-frozen-abi-macro", "solana-loader-v4-program", @@ -4217,6 +4306,8 @@ dependencies = [ "solana-sdk", "solana-stake-program", "solana-system-program", + "solana-version", + "solana-vote", "solana-vote-program", "solana-zk-token-proof-program", "solana-zk-token-sdk", @@ -4232,14 +4323,14 @@ dependencies = [ [[package]] name = "solana-sdk" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01ba95264245a5e9597362e4e6e3a50b538fbe5aaaf017af665a49b541beb25" +checksum = "774c2379f8aaa8b5877029410dacd4e663d167cb93b09b2f3c2647c63df4f2eb" dependencies = [ "assert_matches", - "base64 0.21.2", + "base64 0.21.7", "bincode", - "bitflags 1.3.2", + "bitflags 2.4.0", "borsh 0.10.3", "bs58", "bytemuck", @@ -4257,13 +4348,14 @@ dependencies = [ "libsecp256k1", "log", "memmap2", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.6.1", "pbkdf2 0.11.0", "qstring", + "qualifier_attr", "rand 0.7.3", - "rand_chacha 0.2.2", + "rand 0.8.5", "rustc_version", "rustversion", "serde", @@ -4285,22 +4377,22 @@ dependencies = [ [[package]] name = "solana-sdk-macro" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f0d5ec9d1e765173704cbe8ea7d8c8d69a9f879d7e71ae7deb0632f9f0ee429" +checksum = "015ca49e4cec213f034468b5d1fd2faea554be32e2144c90c409304121d781e6" dependencies = [ "bs58", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "rustversion", "syn 2.0.28", ] [[package]] name = "solana-send-transaction-service" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5baf132146882c71da736b4b3efa16cd04464ceaae5d9234bd28bbd622bbc97" +checksum = "9710d22eb1f8bf560cb370918353d5f372de3fc0873f6a8bd9a250da70f7e6f3" dependencies = [ "crossbeam-channel", "log", @@ -4314,9 +4406,9 @@ dependencies = [ [[package]] name = "solana-stake-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6601e81f96bb9444c8690b4889a38ae4b8f60f5239207ed71605b234e36a9527" +checksum = "60645be3f700b26842c93ed65f79fc669f9c962557d74176cb7964fbb9bc4621" dependencies = [ "bincode", "log", @@ -4329,16 +4421,16 @@ dependencies = [ [[package]] name = "solana-streamer" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7889fb97171c64e06ec4f0efd236aca6873254888a6bf51bb4292e1436b3fdb1" +checksum = "af376501d990f281b9249c5072ceef73bd5fc10700e877b27c1737b14cf447a2" dependencies = [ "async-channel", "bytes", "crossbeam-channel", "futures-util", "histogram", - "indexmap 1.9.3", + "indexmap 2.5.0", "itertools", "libc", "log", @@ -4348,8 +4440,7 @@ dependencies = [ "pkcs8", "quinn", "quinn-proto", - "quinn-udp", - "rand 0.7.3", + "rand 0.8.5", "rcgen", "rustls", "solana-metrics", @@ -4362,9 +4453,9 @@ dependencies = [ [[package]] name = "solana-system-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e517487a4115b233260d83fbabf6df6c0b86d5a1f905f06b2498d7987ff0ee68" +checksum = "4897a1d38807d984febe64598ffef47afe97e5b608b0ac01e930f497f596ce3d" dependencies = [ "bincode", "log", @@ -4376,9 +4467,9 @@ dependencies = [ [[package]] name = "solana-thin-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fa94bf1d27b4b4d9c593843f365d635bd276925fa61a7cedbe6bb816225128d" +checksum = "749ba2ec60049a0c855fd971757465b82f5b99962f0c106f3bf83db2e8265637" dependencies = [ "bincode", "log", @@ -4391,17 +4482,16 @@ dependencies = [ [[package]] name = "solana-tpu-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2ab6dbd623ec97b471b490f741795559a48299af860b9cab4c7ccd2c916d0fd" +checksum = "8aa49abe807db6f2a4e6ff5e5ade1835940f1ee311bbb94bfd9d05abf959ea62" dependencies = [ "async-trait", "bincode", "futures-util", - "indexmap 1.9.3", + "indexmap 2.5.0", "indicatif", "log", - "rand 0.7.3", "rayon", "solana-connection-cache", "solana-measure", @@ -4416,14 +4506,14 @@ dependencies = [ [[package]] name = "solana-transaction-status" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95e5aba173da8ee65e38e4ac55390eaccebff160117e919a73e1d28085e8a203" +checksum = "884c541fae17c7cd3dd851f9e05a5adf3afd1b18122839fb4a3604feb4129386" dependencies = [ "Inflector", - "base64 0.21.2", + "base64 0.21.7", "bincode", - "borsh 0.9.3", + "borsh 0.10.3", "bs58", "lazy_static", "log", @@ -4431,20 +4521,19 @@ dependencies = [ "serde_derive", "serde_json", "solana-account-decoder", - "solana-address-lookup-table-program", "solana-sdk", - "spl-associated-token-account 1.1.3", - "spl-memo", - "spl-token 3.5.0", - "spl-token-2022 0.6.1", + "spl-associated-token-account 2.2.0", + "spl-memo 4.0.0", + "spl-token 4.0.0", + "spl-token-2022 0.9.0", "thiserror", ] [[package]] name = "solana-udp-client" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "265ce6ae58aacdb5e04a9a579afefc3d0bb61c7c5a00df2dcde2315ace0031e5" +checksum = "dfa91410ff195d0b7a4e46f4cef9cf3699961ee02654fe0ca590c01958ca59fe" dependencies = [ "async-trait", "solana-connection-cache", @@ -4457,9 +4546,9 @@ dependencies = [ [[package]] name = "solana-version" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "192ed87b9562c2a15015f51ff5de560b59fa2cd244d2bb0146524af0a693a3b1" +checksum = "45ced655d4e15fe1d52b4ecfb93c656dab933b2fd414a6879981e0ab1c854010" dependencies = [ "log", "rustc_version", @@ -4471,15 +4560,34 @@ dependencies = [ "solana-sdk", ] +[[package]] +name = "solana-vote" +version = "1.17.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41720ee9147d00c9ea258db109af3c6a687b900aa33ba0031215346886602586" +dependencies = [ + "crossbeam-channel", + "itertools", + "log", + "rustc_version", + "serde", + "serde_derive", + "solana-frozen-abi", + "solana-frozen-abi-macro", + "solana-sdk", + "solana-vote-program", + "thiserror", +] + [[package]] name = "solana-vote-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1910068b362f9b57748e6a0310b178b6c2dc377f3ba9489fd7d66d994ed7ca36" +checksum = "aa36601af633b2854b2e38ceb7604f50f7e5739a150d57865ebb6e586ed142f6" dependencies = [ "bincode", "log", - "num-derive", + "num-derive 0.3.3", "num-traits", "rustc_version", "serde", @@ -4495,13 +4603,12 @@ dependencies = [ [[package]] name = "solana-zk-token-proof-program" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4830b0ee93e17800f1b82acacf2c4df28e9feb4d29c2153c6723789f2d3c54e9" +checksum = "36b04f55d4a40bcb04a65b7c76d4c23261a1f24cde782e355c2b4729c0bd2b5e" dependencies = [ "bytemuck", - "getrandom 0.1.16", - "num-derive", + "num-derive 0.3.3", "num-traits", "solana-program-runtime", "solana-sdk", @@ -4510,12 +4617,12 @@ dependencies = [ [[package]] name = "solana-zk-token-sdk" -version = "1.16.8" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e2822252ffc52c7415fcd0c468fa3c13cbc50bd181087d366fe511d891445cd" +checksum = "40f5be2f291d3a1692fc878dc98a841032df7672ba0878bbef43677e705b19cd" dependencies = [ "aes-gcm-siv", - "base64 0.21.2", + "base64 0.21.7", "bincode", "bytemuck", "byteorder", @@ -4524,7 +4631,7 @@ dependencies = [ "itertools", "lazy_static", "merlin", - "num-derive", + "num-derive 0.3.3", "num-traits", "rand 0.7.3", "serde", @@ -4539,9 +4646,9 @@ dependencies = [ [[package]] name = "solana_rbpf" -version = "0.6.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3082ec3a1d4ef7879eb5b84916d5acde057abd59733eec3647e0ab8885283ef" +checksum = "103318aa365ff7caa8cf534f2246b5eb7e5b34668736d52b1266b143f7a21196" dependencies = [ "byteorder", "combine", @@ -4562,6 +4669,12 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + [[package]] name = "spki" version = "0.5.4" @@ -4580,7 +4693,7 @@ checksum = "978dba3bcbe88d0c2c58366c254d9ea41c5f73357e72fc0bdee4d6b5fc99c8f4" dependencies = [ "assert_matches", "borsh 0.9.3", - "num-derive", + "num-derive 0.3.3", "num-traits", "solana-program", "spl-token 3.5.0", @@ -4590,17 +4703,17 @@ dependencies = [ [[package]] name = "spl-associated-token-account" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02693d7b36cea2b45318b87f22406909879226963296f31f4ebb0fc7f6e1aeb3" +checksum = "385e31c29981488f2820b2022d8e731aae3b02e6e18e2fd854e4c9a94dc44fc3" dependencies = [ "assert_matches", "borsh 0.10.3", - "num-derive", + "num-derive 0.4.2", "num-traits", "solana-program", "spl-token 4.0.0", - "spl-token-2022 0.7.0", + "spl-token-2022 0.9.0", "thiserror", ] @@ -4621,7 +4734,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4fa8f409b5c5e0ac571df17c981ae1424b204743daa4428430627d38717caf5" dependencies = [ - "quote 1.0.32", + "quote", "spl-discriminator-syn", "syn 2.0.28", ] @@ -4632,8 +4745,8 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21968d7da2f0a624c509f24580c3fee70b364a6886d90709e679e64f572eca2f" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "solana-program", "syn 2.0.28", "thiserror", @@ -4648,16 +4761,51 @@ dependencies = [ "solana-program", ] +[[package]] +name = "spl-memo" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f180b03318c3dbab3ef4e1e4d46d5211ae3c780940dd0a28695aba4b59a75a" +dependencies = [ + "solana-program", +] + +[[package]] +name = "spl-pod" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2881dddfca792737c0706fa0175345ab282b1b0879c7d877bad129645737c079" +dependencies = [ + "borsh 0.10.3", + "bytemuck", + "solana-program", + "solana-zk-token-sdk", + "spl-program-error 0.3.0", +] + [[package]] name = "spl-program-error" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af92f74cd3b0fdfda59fef4b571a92123e4df0f67cc43f73163975d31118ef82" dependencies = [ - "num-derive", + "num-derive 0.3.3", + "num-traits", + "solana-program", + "spl-program-error-derive 0.2.0", + "thiserror", +] + +[[package]] +name = "spl-program-error" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "249e0318493b6bcf27ae9902600566c689b7dfba9f1bdff5893e92253374e78c" +dependencies = [ + "num-derive 0.4.2", "num-traits", "solana-program", - "spl-program-error-derive", + "spl-program-error-derive 0.3.2", "thiserror", ] @@ -4667,8 +4815,20 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "173f3cc506847882189b3a5b67299f617fed2f9730f122dd197b82e1e213dee5" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "spl-program-error-derive" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1845dfe71fd68f70382232742e758557afe973ae19e6c06807b2c30f5d5cb474" +dependencies = [ + "proc-macro2", + "quote", + "sha2 0.10.7", "syn 2.0.28", ] @@ -4681,8 +4841,22 @@ dependencies = [ "bytemuck", "solana-program", "spl-discriminator", - "spl-program-error", - "spl-type-length-value", + "spl-program-error 0.2.0", + "spl-type-length-value 0.2.0", +] + +[[package]] +name = "spl-tlv-account-resolution" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "062e148d3eab7b165582757453632ffeef490c02c86a48bfdb4988f63eefb3b9" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error 0.3.0", + "spl-type-length-value 0.3.0", ] [[package]] @@ -4693,7 +4867,7 @@ checksum = "8e85e168a785e82564160dcb87b2a8e04cee9bfd1f4d488c729d53d6a4bd300d" dependencies = [ "arrayref", "bytemuck", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.5.11", "solana-program", @@ -4708,7 +4882,7 @@ checksum = "08459ba1b8f7c1020b4582c4edf0f5c7511a5e099a7a97570c9698d4f2337060" dependencies = [ "arrayref", "bytemuck", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.6.1", "solana-program", @@ -4723,12 +4897,12 @@ checksum = "0043b590232c400bad5ee9eb983ced003d15163c4c5d56b090ac6d9a57457b47" dependencies = [ "arrayref", "bytemuck", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.5.11", "solana-program", "solana-zk-token-sdk", - "spl-memo", + "spl-memo 3.0.1", "spl-token 3.5.0", "thiserror", ] @@ -4741,17 +4915,53 @@ checksum = "b24ac5786a3fefbf59f5606312c61abf87b23154e7a717e5d18216fbea4711db" dependencies = [ "arrayref", "bytemuck", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.6.1", "solana-program", "solana-zk-token-sdk", - "spl-memo", + "spl-memo 3.0.1", "spl-token 4.0.0", - "spl-transfer-hook-interface", + "spl-transfer-hook-interface 0.1.0", "thiserror", ] +[[package]] +name = "spl-token-2022" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4abf34a65ba420584a0c35f3903f8d727d1f13ababbdc3f714c6b065a686e86" +dependencies = [ + "arrayref", + "bytemuck", + "num-derive 0.4.2", + "num-traits", + "num_enum 0.7.3", + "solana-program", + "solana-zk-token-sdk", + "spl-memo 4.0.0", + "spl-pod", + "spl-token 4.0.0", + "spl-token-metadata-interface", + "spl-transfer-hook-interface 0.3.0", + "spl-type-length-value 0.3.0", + "thiserror", +] + +[[package]] +name = "spl-token-metadata-interface" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c16ce3ba6979645fb7627aa1e435576172dd63088dc7848cb09aa331fa1fe4f" +dependencies = [ + "borsh 0.10.3", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error 0.3.0", + "spl-type-length-value 0.3.0", +] + [[package]] name = "spl-transfer-hook-interface" version = "0.1.0" @@ -4760,16 +4970,32 @@ checksum = "4a2326852adf88716fbac7f54cd6ee2c8a0b5a14ede24db3b4519c4ff13df04b" dependencies = [ "arrayref", "bytemuck", - "num-derive", + "num-derive 0.3.3", "num-traits", "num_enum 0.6.1", "solana-program", "spl-discriminator", - "spl-tlv-account-resolution", - "spl-type-length-value", + "spl-tlv-account-resolution 0.2.0", + "spl-type-length-value 0.2.0", "thiserror", ] +[[package]] +name = "spl-transfer-hook-interface" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "051d31803f873cabe71aec3c1b849f35248beae5d19a347d93a5c9cccc5d5a9b" +dependencies = [ + "arrayref", + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error 0.3.0", + "spl-tlv-account-resolution 0.4.0", + "spl-type-length-value 0.3.0", +] + [[package]] name = "spl-type-length-value" version = "0.2.0" @@ -4779,7 +5005,20 @@ dependencies = [ "bytemuck", "solana-program", "spl-discriminator", - "spl-program-error", + "spl-program-error 0.2.0", +] + +[[package]] +name = "spl-type-length-value" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a468e6f6371f9c69aae760186ea9f1a01c2908351b06a5e0026d21cfc4d7ecac" +dependencies = [ + "bytemuck", + "solana-program", + "spl-discriminator", + "spl-pod", + "spl-program-error 0.3.0", ] [[package]] @@ -4816,8 +5055,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ "heck", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "rustversion", "syn 1.0.109", ] @@ -4834,25 +5073,14 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7973cce6668464ea31f176d85b13c7ab3bba2cb3b77a2ed26abd7801688010a" -[[package]] -name = "syn" -version = "0.15.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" -dependencies = [ - "proc-macro2 0.4.30", - "quote 0.6.13", - "unicode-xid 0.1.0", -] - [[package]] name = "syn" version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "unicode-ident", ] @@ -4862,21 +5090,48 @@ version = "2.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "unicode-ident", ] +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + [[package]] name = "synstructure" version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", - "unicode-xid 0.2.4", + "unicode-xid", +] + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", ] [[package]] @@ -4920,22 +5175,21 @@ version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee42b4e559f17bce0385ebf511a7beb67d5cc33c12c96b7f4e9789919d9c10f" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 1.0.109", ] [[package]] name = "tempfile" -version = "3.7.1" +version = "3.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651" +checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", "fastrand", - "redox_syscall 0.3.5", "rustix", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -4947,6 +5201,39 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "test-case" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb2550dd13afcd286853192af8601920d959b14c401fcece38071d53bf0768a8" +dependencies = [ + "test-case-macros", +] + +[[package]] +name = "test-case-core" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcb7fd841cd518e279be3d5a3eb0636409487998a4aff22f3de87b81e88384f" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "test-case-macros" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", + "test-case-core", +] + [[package]] name = "textwrap" version = "0.11.0" @@ -4964,21 +5251,21 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.44" +version = "1.0.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90" +checksum = "6e3de26b0965292219b4287ff031fcba86837900fe9cd2b34ea8ad893c0953d2" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.44" +version = "1.0.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96" +checksum = "268026685b2be38d7103e9e507c938a1fcb3d7e6eb15e87870b617bf37b6d581" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -4992,17 +5279,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "time" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a" -dependencies = [ - "libc", - "wasi 0.10.0+wasi-snapshot-preview1", - "winapi", -] - [[package]] name = "time" version = "0.3.25" @@ -5071,65 +5347,62 @@ version = "1.13.3" dependencies = [ "arrayref", "async-trait", - "borsh 0.9.3", + "borsh 0.10.3", "mpl-token-auth-rules", "mpl-token-metadata-context-derive 0.3.0", - "mpl-utils 0.3.1", - "num-derive", + "mpl-utils", + "num-derive 0.3.3", "num-traits", "rmp-serde", - "rooster", "serde", "serde_with 1.14.0", - "shank 0.2.1", + "shank 0.4.2", "solana-program", "solana-program-test", "solana-sdk", "spl-associated-token-account 1.1.3", - "spl-token 3.5.0", + "spl-token 4.0.0", "thiserror", ] [[package]] name = "tokio" -version = "1.14.1" +version = "1.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d0183f6f6001549ab68f8c7585093bb732beefbcf6d23a10b9b95c73a1dd49" +checksum = "eb2caba9f80616f438e09748d5acda951967e1ea58508ef53d9c6402485a46df" dependencies = [ - "autocfg", + "backtrace", "bytes", "libc", - "memchr", "mio", "num_cpus", - "once_cell", - "parking_lot 0.11.2", + "parking_lot", "pin-project-lite", "signal-hook-registry", + "socket2 0.5.7", "tokio-macros", - "winapi", + "windows-sys 0.48.0", ] [[package]] name = "tokio-macros" -version = "1.8.2" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", - "syn 1.0.109", + "proc-macro2", + "quote", + "syn 2.0.28", ] [[package]] name = "tokio-rustls" -version = "0.23.4" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ "rustls", "tokio", - "webpki", ] [[package]] @@ -5150,9 +5423,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.12" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb52b74f05dbf495a8fba459fdc331812b96aa086d9eb78101fa0d4569c3313" +checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" dependencies = [ "futures-core", "pin-project-lite", @@ -5161,9 +5434,9 @@ dependencies = [ [[package]] name = "tokio-tungstenite" -version = "0.17.2" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181" +checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" dependencies = [ "futures-util", "log", @@ -5171,8 +5444,7 @@ dependencies = [ "tokio", "tokio-rustls", "tungstenite", - "webpki", - "webpki-roots", + "webpki-roots 0.25.4", ] [[package]] @@ -5225,7 +5497,7 @@ version = "0.19.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.5.0", "toml_datetime", "winnow", ] @@ -5255,8 +5527,8 @@ version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] @@ -5302,24 +5574,23 @@ checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "tungstenite" -version = "0.17.3" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" +checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" dependencies = [ - "base64 0.13.1", "byteorder", "bytes", + "data-encoding", "http", "httparse", "log", "rand 0.8.5", "rustls", - "sha-1", + "sha1", "thiserror", "url", "utf-8", - "webpki", - "webpki-roots", + "webpki-roots 0.24.0", ] [[package]] @@ -5355,12 +5626,6 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" -[[package]] -name = "unicode-xid" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" - [[package]] name = "unicode-xid" version = "0.2.4" @@ -5392,6 +5657,12 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + [[package]] name = "uriparse" version = "0.6.4" @@ -5404,9 +5675,9 @@ dependencies = [ [[package]] name = "url" -version = "2.4.0" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", @@ -5468,12 +5739,6 @@ version = "0.9.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" -[[package]] -name = "wasi" -version = "0.10.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -5499,8 +5764,8 @@ dependencies = [ "bumpalo", "log", "once_cell", - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", "wasm-bindgen-shared", ] @@ -5523,7 +5788,7 @@ version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ - "quote 1.0.32", + "quote", "wasm-bindgen-macro-support", ] @@ -5533,8 +5798,8 @@ version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", "wasm-bindgen-backend", "wasm-bindgen-shared", @@ -5557,23 +5822,19 @@ dependencies = [ ] [[package]] -name = "webpki" -version = "0.22.0" +name = "webpki-roots" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" +checksum = "b291546d5d9d1eab74f069c77749f2cb8504a12caa20f0f2de93ddbf6f411888" dependencies = [ - "ring", - "untrusted", + "rustls-webpki", ] [[package]] name = "webpki-roots" -version = "0.22.6" +version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" -dependencies = [ - "webpki", -] +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "winapi" @@ -5615,21 +5876,6 @@ dependencies = [ "windows-targets 0.48.1", ] -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-sys" version = "0.45.0" @@ -5648,6 +5894,15 @@ dependencies = [ "windows-targets 0.48.1", ] +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-targets" version = "0.42.2" @@ -5678,6 +5933,22 @@ dependencies = [ "windows_x86_64_msvc 0.48.0", ] +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -5690,6 +5961,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -5702,6 +5979,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -5714,6 +5997,18 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -5726,6 +6021,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -5738,6 +6039,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -5750,6 +6057,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -5762,6 +6075,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + [[package]] name = "winnow" version = "0.5.10" @@ -5773,11 +6092,12 @@ dependencies = [ [[package]] name = "winreg" -version = "0.10.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "winapi", + "cfg-if", + "windows-sys 0.48.0", ] [[package]] @@ -5795,7 +6115,7 @@ dependencies = [ "oid-registry", "rusticata-macros", "thiserror", - "time 0.3.25", + "time", ] [[package]] @@ -5813,7 +6133,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd" dependencies = [ - "time 0.3.25", + "time", ] [[package]] @@ -5831,8 +6151,8 @@ version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ - "proc-macro2 1.0.66", - "quote 1.0.32", + "proc-macro2", + "quote", "syn 2.0.28", ] diff --git a/programs/token-metadata/program/Cargo.toml b/programs/token-metadata/program/Cargo.toml index 3d85d386..8f4c2784 100644 --- a/programs/token-metadata/program/Cargo.toml +++ b/programs/token-metadata/program/Cargo.toml @@ -1,41 +1,44 @@ [package] -name = "token_metadata" -version = "1.13.3" -description = "Metaplex Metadata" authors = ["Metaplex Developers "] -repository = "https://github.com/metaplex-foundation/metaplex-program-library" -license-file = "../../../LICENSE" +description = "Metaplex Metadata" edition = "2021" +license-file = "../../../LICENSE" +name = "token_metadata" readme = "README.md" +repository = "https://github.com/metaplex-foundation/metaplex-program-library" +version = "1.13.3" [features] no-entrypoint = [] -test-bpf = [] serde-feature = ["serde", "serde_with"] +test-bpf = [] [dependencies] arrayref = "0.3.6" -borsh = "0.9.3" -mpl-token-auth-rules = { version = "=1.4.3-beta.1", features = ["no-entrypoint"] } +borsh = "0.10.3" +mpl-token-auth-rules = { version = "=1.5.1", features = [ + "no-entrypoint", +] } mpl-token-metadata-context-derive = { version = "0.3.0", path = "../macro" } mpl-utils = { version = "0.3.1" } num-derive = "0.3" num-traits = "0.2" serde = { version = "1.0.149", optional = true } serde_with = { version = "1.14.0", optional = true } -shank = "0.2.0" -solana-program = ">= 1.14.13, < 1.17" +shank = "0.4.2" +solana-program = "~1.17" +spl-associated-token-account = { version = ">= 1.1.3, < 3.0", features = [ + "no-entrypoint", +] } spl-token = { version = ">= 3.5.0, < 5.0", features = ["no-entrypoint"] } -spl-associated-token-account = { version = ">= 1.1.3, < 3.0", features = ["no-entrypoint"] } thiserror = "1.0" [dev-dependencies] async-trait = "0.1.64" rmp-serde = "1.1.1" -rooster = { git = "https://github.com/metaplex-foundation/rooster", features = ["no-entrypoint"] } serde = { version = "1.0.147", features = ["derive"] } -solana-program-test = ">= 1.14.13, < 1.17" -solana-sdk = ">= 1.14.13, < 1.17" +solana-program-test = "~1.17" +solana-sdk = "~1.17" [lib] crate-type = ["cdylib", "lib"] diff --git a/programs/token-metadata/program/src/state/edition.rs b/programs/token-metadata/program/src/state/edition.rs index 53b0f005..beb9a2d6 100644 --- a/programs/token-metadata/program/src/state/edition.rs +++ b/programs/token-metadata/program/src/state/edition.rs @@ -41,7 +41,15 @@ impl TokenMetadataAccount for Edition { } fn size() -> usize { - MAX_EDITION_LEN + 0 + } + + fn pad_length(buf: &mut Vec) -> Result<(), MetadataError> { + let padding_length = MAX_EDITION_LEN + .checked_sub(buf.len()) + .ok_or(MetadataError::NumericalOverflowError)?; + buf.extend(vec![0; padding_length]); + Ok(()) } } diff --git a/programs/token-metadata/program/src/state/master_edition.rs b/programs/token-metadata/program/src/state/master_edition.rs index 0a516f22..17015bda 100644 --- a/programs/token-metadata/program/src/state/master_edition.rs +++ b/programs/token-metadata/program/src/state/master_edition.rs @@ -88,7 +88,15 @@ impl TokenMetadataAccount for MasterEditionV2 { } fn size() -> usize { - MAX_MASTER_EDITION_LEN + 0 + } + + fn pad_length(buf: &mut Vec) -> Result<(), MetadataError> { + let padding_length = MAX_MASTER_EDITION_LEN + .checked_sub(buf.len()) + .ok_or(MetadataError::NumericalOverflowError)?; + buf.extend(vec![0; padding_length]); + Ok(()) } } @@ -148,7 +156,15 @@ impl TokenMetadataAccount for MasterEditionV1 { } fn size() -> usize { - MAX_MASTER_EDITION_LEN + 0 + } + + fn pad_length(buf: &mut Vec) -> Result<(), MetadataError> { + let padding_length = MAX_MASTER_EDITION_LEN + .checked_sub(buf.len()) + .ok_or(MetadataError::NumericalOverflowError)?; + buf.extend(vec![0; padding_length]); + Ok(()) } } diff --git a/programs/token-metadata/program/src/state/metadata.rs b/programs/token-metadata/program/src/state/metadata.rs index 7757b3c9..bab54d43 100644 --- a/programs/token-metadata/program/src/state/metadata.rs +++ b/programs/token-metadata/program/src/state/metadata.rs @@ -14,7 +14,7 @@ pub const MAX_SYMBOL_LENGTH: usize = 10; pub const MAX_URI_LENGTH: usize = 200; -pub const MAX_METADATA_LEN: usize = 1 // key +pub const MAX_METADATA_LEN: usize = 1 // key + 32 // update auth pubkey + 32 // mint pubkey + MAX_DATA_SIZE @@ -335,7 +335,15 @@ impl TokenMetadataAccount for Metadata { } fn size() -> usize { - MAX_METADATA_LEN + 0 + } + + fn pad_length(buf: &mut Vec) -> Result<(), MetadataError> { + let padding_length = MAX_METADATA_LEN + .checked_sub(buf.len()) + .ok_or(MetadataError::NumericalOverflowError)?; + buf.extend(vec![0; padding_length]); + Ok(()) } } @@ -347,6 +355,15 @@ impl borsh::de::BorshDeserialize for Metadata { let md = meta_deser_unchecked(buf)?; Ok(md) } + + fn deserialize_reader( + reader: &mut R, + ) -> ::core::result::Result { + let mut buf = Vec::new(); + reader.read_to_end(&mut buf)?; + let mut buf_slice = &buf[..]; + ::deserialize(&mut buf_slice) + } } #[repr(C)] @@ -484,7 +501,7 @@ mod tests { } #[test] - fn fail_to_deserialize_metadata_with_wrong_size() { + fn successfully_deserialize_metadata_with_different_size() { let expected_metadata = expected_pesky_metadata(); let mut buf = Vec::new(); @@ -507,10 +524,9 @@ mod tests { 1_000_000_000, ); - // `from_account_info` should not succeed because this account is not owned - // by `token-metadata` program. - let error = Metadata::from_account_info(&account_info).unwrap_err(); - assert_eq!(error, MetadataError::DataTypeMismatch.into()); + let md = Metadata::from_account_info(&account_info).unwrap(); + assert_eq!(md.key, Key::MetadataV1); + assert_eq!(md, expected_metadata); } #[test] diff --git a/programs/token-metadata/program/src/utils/fee.rs b/programs/token-metadata/program/src/utils/fee.rs index 2e823dfa..64f15a8d 100644 --- a/programs/token-metadata/program/src/utils/fee.rs +++ b/programs/token-metadata/program/src/utils/fee.rs @@ -3,7 +3,7 @@ use solana_program::{ sysvar::Sysvar, }; -use crate::state::{fee::CREATE_FEE, Metadata, TokenMetadataAccount, METADATA_FEE_FLAG_INDEX}; +use crate::state::{fee::CREATE_FEE, MAX_METADATA_LEN, METADATA_FEE_FLAG_INDEX}; #[repr(C)] #[derive(Debug, Clone, Copy)] @@ -16,7 +16,7 @@ pub(crate) fn levy(args: LevyArgs) -> ProgramResult { // Fund metadata account with rent + Metaplex fee. let rent = Rent::get()?; - let fee = CREATE_FEE + rent.minimum_balance(Metadata::size()); + let fee = CREATE_FEE + rent.minimum_balance(MAX_METADATA_LEN); invoke( &solana_program::system_instruction::transfer( diff --git a/programs/token-metadata/program/src/utils/mod.rs b/programs/token-metadata/program/src/utils/mod.rs index fbfb3aa2..48e98156 100644 --- a/programs/token-metadata/program/src/utils/mod.rs +++ b/programs/token-metadata/program/src/utils/mod.rs @@ -38,7 +38,7 @@ use crate::{ error::MetadataError, state::{ Edition, Key, MasterEditionV2, Metadata, TokenMetadataAccount, TokenStandard, - MAX_NAME_LENGTH, MAX_SYMBOL_LENGTH, MAX_URI_LENGTH, + MAX_METADATA_LEN, MAX_NAME_LENGTH, MAX_SYMBOL_LENGTH, MAX_URI_LENGTH, }, }; @@ -199,7 +199,7 @@ pub(crate) fn close_program_account<'a>( let rent_lamports = match key { // Metadata accounts could have fees stored, so we only want to withdraw // the actual rent lamport amount. - Key::MetadataV1 => rent.minimum_balance(Metadata::size()), + Key::MetadataV1 => rent.minimum_balance(MAX_METADATA_LEN), // Other accounts the rent is just the current lamport balance. _ => account_info.lamports(), }; @@ -313,7 +313,7 @@ mod tests { let corrupted_data = pesky_data(); let metadata: Metadata = - try_from_slice_checked(corrupted_data, Key::MetadataV1, MAX_METADATA_LEN).unwrap(); + try_from_slice_checked(corrupted_data, Key::MetadataV1, 0).unwrap(); assert_eq!(metadata, expected_metadata); }