diff --git a/Cargo.lock b/Cargo.lock index 589274f56..d20fe32b2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -65,9 +65,9 @@ dependencies = [ [[package]] name = "agave-banking-stage-ingress-types" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a44744c491f82d5dd11d71e6c07180d242bd265b423bd0ce6097b7a356c19b" +checksum = "7f8d959e452d466166619574afe6a0d8bd8053ff3affd38a43930ed75db3c054" dependencies = [ "crossbeam-channel", "solana-perf", @@ -75,37 +75,38 @@ dependencies = [ [[package]] name = "agave-feature-set" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2733340e0429d146d4b77d265ae80b22e253507b30a2257ff68eccb78eab210b" +checksum = "716de4309d921e2d0908d6bc601e82b2b15f3e77423aebd7f92f54c1ce93dffe" dependencies = [ "ahash 0.8.11", "solana-epoch-schedule", - "solana-hash 2.3.0", - "solana-pubkey 2.4.0", - "solana-sha256-hasher 2.2.1", + "solana-hash", + "solana-pubkey", + "solana-sha256-hasher", "solana-svm-feature-set", ] [[package]] name = "agave-geyser-plugin-interface" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d6fdfd3a221921780d57ed69e2959dc2d2d9ae342815ac663870f336e25eee4" +checksum = "7c493408d290da2d9f0a0e4bb116d4dda7611bd56a11add5ab638d13f04deb07" dependencies = [ "log", "solana-clock", - "solana-signature 2.3.0", + "solana-hash", + "solana-signature", "solana-transaction", "solana-transaction-status", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "agave-io-uring" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a65c957d4688df6415a054b8c3940dd75307e770a47c840ad6cfc7e82fa98054" +checksum = "9219619a76350eb16a77ec7fdd3c51298c9e8b9ae6615bf7729bcc97053d88da" dependencies = [ "io-uring", "libc", @@ -114,67 +115,168 @@ dependencies = [ "smallvec", ] +[[package]] +name = "agave-low-pass-filter" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4517c61eb94bcf0905a507f83521d9f5b94b8e5abcef985c10e0e20cd84f97e" + [[package]] name = "agave-precompiles" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba42f630a219a103926b63472fa8cef512cb578ad3be7975250af639c1bce2a7" +checksum = "b984ab75ac40e68a73c3bc953f732c1da1f08c71fa866454da3d41d44f739c41" dependencies = [ "agave-feature-set", "bincode", "digest 0.10.7", - "ed25519-dalek", + "ed25519-dalek 1.0.1", "libsecp256k1", "openssl", "sha3", "solana-ed25519-program", "solana-message", "solana-precompile-error", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-secp256k1-program", "solana-secp256r1-program", ] [[package]] name = "agave-reserved-account-keys" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "732a49e540c5b7b8d8943d50ad4b51b98ad9951494053b51fb909c140d3df8b1" +checksum = "d31eb6b96ba26b7af016232a31f40194309a81530c9695e7dd7967fe7edffd9f" dependencies = [ "agave-feature-set", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", +] + +[[package]] +name = "agave-syscalls" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eca001c34a043ceae1c069d72d5d7e8314f682d08224f6d09308e30de5f3a39" +dependencies = [ + "bincode", + "libsecp256k1", + "num-traits", + "solana-account", + "solana-account-info", + "solana-big-mod-exp", + "solana-blake3-hasher", + "solana-bn254", + "solana-clock", + "solana-cpi", + "solana-curve25519 3.0.7", + "solana-hash", + "solana-instruction", + "solana-keccak-hasher", + "solana-loader-v3-interface", + "solana-poseidon", + "solana-program-entrypoint", + "solana-program-runtime", + "solana-pubkey", + "solana-sbpf", + "solana-sdk-ids", + "solana-secp256k1-recover", + "solana-sha256-hasher", + "solana-stable-layout", + "solana-stake-interface", + "solana-svm-callback", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", + "solana-svm-type-overrides", + "solana-sysvar", + "solana-sysvar-id", + "solana-transaction-context", + "thiserror 2.0.17", ] [[package]] name = "agave-transaction-view" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79356209e3126f9a60af1b50690be8334336b4b9e52e9ccc87e775519d78f78" +checksum = "f4ef45a483432715c1b85f494ee2570f35ecf2ef25822fabe58425eaa5fc33ef" dependencies = [ - "solana-hash 2.3.0", + "solana-hash", "solana-message", "solana-packet", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-short-vec", - "solana-signature 2.3.0", + "solana-signature", "solana-svm-transaction", ] +[[package]] +name = "agave-verified-packet-receiver" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98a7f0c367c8177ab668e92586b1d2d1d9ec10021dfb1d07f81f9b14164f20c3" +dependencies = [ + "solana-perf", + "solana-streamer", +] + +[[package]] +name = "agave-votor" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a7702dfe26b755273da2fe08480bd61f9caf588f981d0bf207ec6a8f67083e7" +dependencies = [ + "anyhow", + "bincode", + "bs58", + "crossbeam-channel", + "dashmap", + "etcd-client", + "itertools 0.12.1", + "log", + "parking_lot 0.12.3", + "qualifier_attr", + "rayon", + "serde", + "serde_bytes", + "serde_derive", + "solana-accounts-db", + "solana-bloom", + "solana-clock", + "solana-entry", + "solana-epoch-schedule", + "solana-gossip", + "solana-hash", + "solana-keypair", + "solana-ledger", + "solana-logger", + "solana-measure", + "solana-metrics", + "solana-pubkey", + "solana-rpc", + "solana-runtime", + "solana-signature", + "solana-signer", + "solana-time-utils", + "solana-transaction", + "thiserror 2.0.17", +] + [[package]] name = "agave-xdp" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f0f6fb0b58d7cf96dff307abfee7f00cc777016712edfba0f3f77d396f8092" +checksum = "d56824267463ab3c42c8c4c68f78efdfdbe7a506a84c0956fb4a862a77810522" dependencies = [ "aya", "caps", "crossbeam-channel", "libc", "log", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] @@ -307,9 +409,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "aquamarine" @@ -554,9 +656,9 @@ dependencies = [ [[package]] name = "async-lock" -version = "3.4.0" +version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" dependencies = [ "event-listener 5.4.0", "event-listener-strategy", @@ -587,9 +689,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", @@ -727,6 +829,12 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + [[package]] name = "base64" version = "0.12.3" @@ -751,6 +859,12 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + [[package]] name = "bincode" version = "1.3.3" @@ -851,39 +965,16 @@ dependencies = [ "generic-array", ] -[[package]] -name = "borsh" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115e54d64eb62cdebad391c19efc9dce4981c690c85a33a12199d99bb9546fee" -dependencies = [ - "borsh-derive 0.10.4", - "hashbrown 0.13.2", -] - [[package]] name = "borsh" version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad8646f98db542e39fc66e68a20b2144f6a732636df7c2354e74645faaa433ce" dependencies = [ - "borsh-derive 1.5.7", + "borsh-derive", "cfg_aliases", ] -[[package]] -name = "borsh-derive" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "831213f80d9423998dd696e2c5345aba6be7a0bd8cd19e31c5243e13df1cef89" -dependencies = [ - "borsh-derive-internal", - "borsh-schema-derive-internal", - "proc-macro-crate 0.1.5", - "proc-macro2", - "syn 1.0.109", -] - [[package]] name = "borsh-derive" version = "1.5.7" @@ -897,28 +988,6 @@ dependencies = [ "syn 2.0.99", ] -[[package]] -name = "borsh-derive-internal" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65d6ba50644c98714aa2a70d13d7df3cd75cd2b523a2b452bf010443800976b3" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "borsh-schema-derive-internal" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "276691d96f063427be83e6692b86148e488ebba9f48f77788724ca027ba3b6d4" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "brotli" version = "7.0.0" @@ -1291,24 +1360,10 @@ dependencies = [ ] [[package]] -name = "console_error_panic_hook" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" -dependencies = [ - "cfg-if 1.0.0", - "wasm-bindgen", -] - -[[package]] -name = "console_log" -version = "0.2.2" +name = "const-oid" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89f72f65e8501878b8a004d5a1afb780987e2ce2b4532c562e367a72c57499f" -dependencies = [ - "log", - "web-sys", -] +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "constant_time_eq" @@ -1436,6 +1491,18 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.6" @@ -1563,6 +1630,16 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010" +[[package]] +name = "der" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" +dependencies = [ + "const-oid", + "zeroize", +] + [[package]] name = "der-parser" version = "8.2.0" @@ -1606,9 +1683,9 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510c292c8cf384b1a340b816a9a6cf2599eb8f566a44949024af88418000c50b" +checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" dependencies = [ "proc-macro2", "quote", @@ -1684,6 +1761,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", + "const-oid", "crypto-common", "subtle", ] @@ -1766,9 +1844,9 @@ checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "eager" @@ -1776,13 +1854,37 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "abe71d579d1812060163dff96056261deb5bf6729b100fa2e36a68b9649ba3d3" +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "signature 2.2.0", + "spki", +] + [[package]] name = "ed25519" version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" dependencies = [ - "signature", + "signature 1.6.4", +] + +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8", + "signature 2.2.0", ] [[package]] @@ -1792,21 +1894,36 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" dependencies = [ "curve25519-dalek 3.2.0", - "ed25519", + "ed25519 1.5.3", "rand 0.7.3", "serde", "sha2 0.9.9", "zeroize", ] +[[package]] +name = "ed25519-dalek" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" +dependencies = [ + "curve25519-dalek 4.1.3", + "ed25519 2.2.3", + "rand_core 0.6.4", + "serde", + "sha2 0.10.9", + "subtle", + "zeroize", +] + [[package]] name = "ed25519-dalek-bip32" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d2be62a4061b872c8c0873ee4fc6f101ce7b889d039f019c5fa2af471a59908" +checksum = "6b49a684b133c4980d7ee783936af771516011c8cd15f429dbda77245e282f03" dependencies = [ "derivation-path", - "ed25519-dalek", + "ed25519-dalek 2.2.0", "hmac 0.12.1", "sha2 0.10.9", ] @@ -1829,6 +1946,25 @@ version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pkcs8", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", +] + [[package]] name = "encode_unicode" version = "1.0.0" @@ -1887,19 +2023,6 @@ dependencies = [ "regex", ] -[[package]] -name = "env_logger" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" -dependencies = [ - "atty", - "humantime", - "log", - "regex", - "termcolor", -] - [[package]] name = "env_logger" version = "0.11.8" @@ -2011,6 +2134,16 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da" +[[package]] +name = "ff" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "fiat-crypto" version = "0.2.9" @@ -2237,6 +2370,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", + "zeroize", ] [[package]] @@ -2353,6 +2487,17 @@ dependencies = [ "spinning_top", ] +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "h2" version = "0.3.26" @@ -2368,7 +2513,7 @@ dependencies = [ "indexmap 2.10.0", "slab", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", "tracing", ] @@ -2675,7 +2820,7 @@ dependencies = [ "http 1.3.1", "hyper 1.6.0", "hyper-util", - "rustls 0.23.29", + "rustls 0.23.33", "rustls-pki-types", "tokio", "tokio-rustls 0.26.2", @@ -2977,14 +3122,14 @@ dependencies = [ [[package]] name = "indicatif" -version = "0.17.11" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" +checksum = "70a646d946d06bedbbc4cac4c218acf4bbf2d87757a784857025f4d447e4e1cd" dependencies = [ - "console 0.15.11", - "number_prefix", + "console 0.16.0", "portable-atomic", "unicode-width 0.2.0", + "unit-prefix", "web-time", ] @@ -3008,9 +3153,9 @@ dependencies = [ [[package]] name = "io-uring" -version = "0.7.8" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" +checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" dependencies = [ "bitflags 2.9.1", "cfg-if 1.0.0", @@ -3242,13 +3387,17 @@ dependencies = [ ] [[package]] -name = "kaigan" -version = "0.2.6" +name = "k256" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ba15de5aeb137f0f65aa3bf82187647f1285abfe5b20c80c2c37f7007ad519a" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ - "borsh 0.10.4", - "serde", + "cfg-if 1.0.0", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2 0.10.9", + "signature 2.2.0", ] [[package]] @@ -3293,9 +3442,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.174" +version = "0.2.177" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" [[package]] name = "libloading" @@ -3842,12 +3991,6 @@ dependencies = [ "syn 2.0.99", ] -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - [[package]] name = "object" version = "0.36.7" @@ -4075,7 +4218,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.12", + "thiserror 2.0.17", "ucd-trie", ] @@ -4155,6 +4298,16 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + [[package]] name = "pkg-config" version = "0.3.32" @@ -4453,9 +4606,9 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.1.1", - "rustls 0.23.29", + "rustls 0.23.33", "socket2 0.5.10", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", "tracing", "web-time", @@ -4474,11 +4627,11 @@ dependencies = [ "rand 0.9.1", "ring", "rustc-hash 2.1.1", - "rustls 0.23.29", + "rustls 0.23.33", "rustls-pki-types", "rustls-platform-verifier", "slab", - "thiserror 2.0.12", + "thiserror 2.0.17", "tinyvec", "tracing", "web-time", @@ -4789,9 +4942,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.22" +version = "0.12.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" +checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" dependencies = [ "async-compression", "base64 0.22.1", @@ -4810,7 +4963,7 @@ dependencies = [ "percent-encoding 2.3.1", "pin-project-lite", "quinn", - "rustls 0.23.29", + "rustls 0.23.33", "rustls-pki-types", "serde", "serde_json", @@ -4818,7 +4971,7 @@ dependencies = [ "sync_wrapper 1.0.2", "tokio", "tokio-rustls 0.26.2", - "tokio-util 0.7.15", + "tokio-util 0.7.16", "tower 0.5.2", "tower-http", "tower-service", @@ -4838,21 +4991,31 @@ dependencies = [ "anyhow", "async-trait", "http 1.3.1", - "reqwest 0.12.22", + "reqwest 0.12.24", "serde", "thiserror 1.0.69", "tower-service", ] [[package]] -name = "ring" -version = "0.17.13" +name = "rfc6979" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ac5d832aa16abd7d1def883a8545280c20a60f523a370aa3a9617c2b8550ee" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" dependencies = [ - "cc", - "cfg-if 1.0.0", - "getrandom 0.2.15", + "hmac 0.12.1", + "subtle", +] + +[[package]] +name = "ring" +version = "0.17.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ac5d832aa16abd7d1def883a8545280c20a60f523a370aa3a9617c2b8550ee" +dependencies = [ + "cc", + "cfg-if 1.0.0", + "getrandom 0.2.15", "libc", "untrusted", "windows-sys 0.52.0", @@ -4974,14 +5137,14 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.29" +version = "0.23.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2491382039b29b9b11ff08b76ff6c97cf287671dbb74f0be44bda389fffe9bd1" +checksum = "751e04a496ca00bb97a5e043158d23d66b5aabf2e1d5aa2a0aaebb1aafe6f82c" dependencies = [ "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.103.4", + "rustls-webpki 0.103.7", "subtle", "zeroize", ] @@ -5028,10 +5191,10 @@ dependencies = [ "jni", "log", "once_cell", - "rustls 0.23.29", + "rustls 0.23.33", "rustls-native-certs", "rustls-platform-verifier-android", - "rustls-webpki 0.103.4", + "rustls-webpki 0.103.7", "security-framework 3.2.0", "security-framework-sys", "webpki-root-certs", @@ -5056,9 +5219,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.4" +version = "0.103.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc" +checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf" dependencies = [ "ring", "rustls-pki-types", @@ -5171,6 +5334,20 @@ version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b07779b9b918cc05650cb30f404d4d7835d26df37c235eded8a6832e2fb82cca" +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", +] + [[package]] name = "security-framework" version = "2.11.1" @@ -5224,10 +5401,11 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -5249,11 +5427,20 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -5458,6 +5645,16 @@ version = "1.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", +] + [[package]] name = "simpl" version = "0.1.0" @@ -5488,12 +5685,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.9" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" [[package]] name = "smallvec" @@ -5554,27 +5748,27 @@ dependencies = [ [[package]] name = "solana-account" -version = "2.2.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f949fe4edaeaea78c844023bfc1c898e0b1f5a100f8a8d2d0f85d0a7b090258" +checksum = "39e5a5c395c41a30f0e36fa487b8cda3280f0d9e4c7b461c0881fa23564f4c28" dependencies = [ "bincode", "serde", "serde_bytes", "serde_derive", - "solana-account-info 2.3.0", + "solana-account-info", "solana-clock", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-instruction-error", + "solana-pubkey", + "solana-sdk-ids", "solana-sysvar", ] [[package]] name = "solana-account-decoder" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c212bf3e322fc62958d27e85e69ac035510500d1ddf97ecf2c266e63ce0e528" +checksum = "aea325d1a1bddb7234955601a4c8613ab869c7a47decc7ee6235ad38c7fd67a7" dependencies = [ "Inflector", "base64 0.22.1", @@ -5588,36 +5782,36 @@ dependencies = [ "solana-account-decoder-client-types", "solana-address-lookup-table-interface", "solana-clock", - "solana-config-program-client", + "solana-config-interface", "solana-epoch-schedule", "solana-fee-calculator", - "solana-instruction 2.3.0", + "solana-instruction", "solana-loader-v3-interface", "solana-nonce", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-slot-hashes", "solana-slot-history", "solana-stake-interface", "solana-sysvar", "solana-vote-interface", "spl-generic-token", - "spl-token", - "spl-token-2022 8.0.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", - "thiserror 2.0.12", + "spl-token-2022-interface 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "spl-token-group-interface", + "spl-token-interface", + "spl-token-metadata-interface", + "thiserror 2.0.17", "zstd", ] [[package]] name = "solana-account-decoder-client-types" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1792f77a96494c850cd124800fb271c705abe4835dc8c5d586d5e68870ad27d2" +checksum = "e2ad080c23d4a6ab04f27092172c7182cce3b395edde2c2a833cf7bc7b6a9070" dependencies = [ "base64 0.22.1", "bs58", @@ -5625,39 +5819,28 @@ dependencies = [ "serde_derive", "serde_json", "solana-account", - "solana-pubkey 2.4.0", + "solana-pubkey", "zstd", ] -[[package]] -name = "solana-account-info" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8f5152a288ef1912300fc6efa6c2d1f9bb55d9398eb6c72326360b8063987da" -dependencies = [ - "bincode", - "serde", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-pubkey 2.4.0", -] - [[package]] name = "solana-account-info" version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "82f4691b69b172c687d218dd2f1f23fc7ea5e9aa79df9ac26dab3d8dd829ce48" dependencies = [ - "solana-program-error 3.0.0", - "solana-program-memory 3.0.0", - "solana-pubkey 3.0.0", + "bincode", + "serde", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", ] [[package]] name = "solana-accounts-db" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91b21cfcd8654e561196d737c6396f9719438126684e91b856f301219f3f08c" +checksum = "b413b5f649919b63a9684320fb13b02c2c4f720ce50ce8df6d25e4f79044667b" dependencies = [ "agave-io-uring", "ahash 0.8.11", @@ -5672,6 +5855,7 @@ dependencies = [ "indexmap 2.10.0", "io-uring", "itertools 0.12.1", + "libc", "log", "lz4", "memmap2 0.9.7", @@ -5692,17 +5876,16 @@ dependencies = [ "solana-epoch-schedule", "solana-fee-calculator", "solana-genesis-config", - "solana-hash 2.3.0", + "solana-hash", "solana-lattice-hash", "solana-measure", "solana-message", "solana-metrics", "solana-nohash-hasher", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rayon-threadlimit", - "solana-rent-collector", "solana-reward-info", - "solana-sha256-hasher 2.2.1", + "solana-sha256-hasher", "solana-slot-hashes", "solana-svm-transaction", "solana-system-interface", @@ -5710,12 +5893,12 @@ dependencies = [ "solana-time-utils", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "spl-generic-token", "static_assertions", "tar", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] @@ -5724,47 +5907,40 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a7a457086457ea9db9a5199d719dc8734dc2d0342fad0d8f77633c31eb62f19" dependencies = [ - "borsh 1.5.7", + "borsh", "bytemuck", "bytemuck_derive", "curve25519-dalek 4.1.3", "five8", "five8_const", + "rand 0.8.5", "serde", "serde_derive", - "solana-atomic-u64 3.0.0", + "solana-atomic-u64", "solana-define-syscall 3.0.0", - "solana-program-error 3.0.0", - "solana-sanitize 3.0.0", - "solana-sha256-hasher 3.0.0", + "solana-program-error", + "solana-sanitize", + "solana-sha256-hasher", ] [[package]] name = "solana-address-lookup-table-interface" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1673f67efe870b64a65cb39e6194be5b26527691ce5922909939961a6e6b395" +checksum = "e2f56cac5e70517a2f27d05e5100b20de7182473ffd0035b23ea273307905987" dependencies = [ "bincode", "bytemuck", "serde", "serde_derive", "solana-clock", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-instruction-error", + "solana-pubkey", + "solana-sdk-ids", "solana-slot-hashes", ] -[[package]] -name = "solana-atomic-u64" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52e52720efe60465b052b9e7445a01c17550666beec855cce66f44766697bc2" -dependencies = [ - "parking_lot 0.12.3", -] - [[package]] name = "solana-atomic-u64" version = "3.0.0" @@ -5776,58 +5952,58 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70bdbf1c4bd667bae0cbb0ba2cbfd809ac89838e697215a6d21b4ee866aa0143" +checksum = "a4bf0c85997243934225ce839da2cc4f4b3771ea38e5df06cdebf71ee22a52dc" dependencies = [ - "borsh 1.5.7", + "borsh", "futures 0.3.31", "solana-account", "solana-banks-interface", "solana-clock", "solana-commitment-config", - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-pack", + "solana-pubkey", "solana-rent", - "solana-signature 2.3.0", + "solana-signature", "solana-sysvar", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "tarpc", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", "tokio-serde", ] [[package]] name = "solana-banks-interface" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92736b0f47f43386f50e168d229935d5e1dd0b4e1d49be468f0ca3d2d52df6d" +checksum = "3f5ab0fe0c7921f6c3afd7809b8703d8fcf027835f69eef3c74f93faa5510315" dependencies = [ "serde", "serde_derive", "solana-account", "solana-clock", "solana-commitment-config", - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-pubkey 2.4.0", - "solana-signature 2.3.0", + "solana-pubkey", + "solana-signature", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "tarpc", ] [[package]] name = "solana-banks-server" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd467bc04b69e703e26b9e93f20653d19ccb81ff014fcdb69c12a69aee19833" +checksum = "3e323060c3c0556e6a3394d39da881e28c490c89cd9879ab96366c524e2b0c0b" dependencies = [ "agave-feature-set", "bincode", @@ -5838,16 +6014,16 @@ dependencies = [ "solana-client", "solana-clock", "solana-commitment-config", - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime", "solana-runtime-transaction", "solana-send-transaction-service", - "solana-signature 2.3.0", + "solana-signature", "solana-svm", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "tarpc", "tokio", "tokio-serde", @@ -5855,76 +6031,65 @@ dependencies = [ [[package]] name = "solana-big-mod-exp" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75db7f2bbac3e62cfd139065d15bcda9e2428883ba61fc8d27ccb251081e7567" +checksum = "30c80fb6d791b3925d5ec4bf23a7c169ef5090c013059ec3ed7d0b2c04efa085" dependencies = [ "num-bigint 0.4.6", "num-traits", - "solana-define-syscall 2.3.0", + "solana-define-syscall 3.0.0", ] [[package]] name = "solana-bincode" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19a3787b8cf9c9fe3dd360800e8b70982b9e5a8af9e11c354b6665dd4a003adc" +checksum = "534a37aecd21986089224d0c01006a75b96ac6fb2f418c24edc15baf0d2a4c99" dependencies = [ "bincode", "serde", - "solana-instruction 2.3.0", + "solana-instruction-error", ] [[package]] name = "solana-blake3-hasher" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a0801e25a1b31a14494fc80882a036be0ffd290efc4c2d640bfcca120a4672" +checksum = "ffa2e3bdac3339c6d0423275e45dafc5ac25f4d43bf344d026a3cc9a85e244a6" dependencies = [ "blake3", - "solana-define-syscall 2.3.0", - "solana-hash 2.3.0", - "solana-sanitize 2.2.1", + "solana-define-syscall 3.0.0", + "solana-hash", ] [[package]] name = "solana-bloom" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f567a371909f669cde322649da30b5cf388690b3da5a13b958858cb431217b0" +checksum = "d71388cb6bf52e6f6b2fd5197c8d48d0bcabb784555def085feac8d5d37a9e38" dependencies = [ "bv", "fnv", "rand 0.8.5", "serde", "serde_derive", - "solana-sanitize 2.2.1", + "solana-sanitize", "solana-time-utils", ] [[package]] name = "solana-bn254" -version = "2.2.2" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4420f125118732833f36facf96a27e7b78314b2d642ba07fa9ffdacd8d79e243" +checksum = "aaeab9d08f3ac8ee52f31f3fb6470eaec5bce7accaef789c2ad315f224fd7eba" dependencies = [ "ark-bn254", "ark-ec", "ark-ff", "ark-serialize", "bytemuck", - "solana-define-syscall 2.3.0", - "thiserror 2.0.12", -] - -[[package]] -name = "solana-borsh" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718333bcd0a1a7aed6655aa66bef8d7fb047944922b2d3a18f49cbc13e73d004" -dependencies = [ - "borsh 0.10.4", - "borsh 1.5.7", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] @@ -5933,61 +6098,43 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc402b16657abbfa9991cd5cbfac5a11d809f7e7d28d3bb291baeb088b39060e" dependencies = [ - "borsh 1.5.7", + "borsh", ] [[package]] name = "solana-bpf-loader-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a33b37dd45d3e9cadb29e748d83b5eeaa322df59b14645787a55efe27e6b2a14" +checksum = "4d96a21a7271f0c59b9b28c3a5a08a8f78325231ed9d459c02f049b4c52adff2" dependencies = [ + "agave-syscalls", "bincode", - "libsecp256k1", - "num-traits", "qualifier_attr", - "scopeguard", "solana-account", - "solana-account-info 2.3.0", - "solana-big-mod-exp", "solana-bincode", - "solana-blake3-hasher", - "solana-bn254", "solana-clock", - "solana-cpi", - "solana-curve25519", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-keccak-hasher", + "solana-instruction", "solana-loader-v3-interface", "solana-loader-v4-interface", - "solana-log-collector", - "solana-measure", "solana-packet", - "solana-poseidon", "solana-program-entrypoint", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-sbpf", - "solana-sdk-ids 2.2.1", - "solana-secp256k1-recover", - "solana-sha256-hasher 2.2.1", - "solana-stable-layout", + "solana-sdk-ids", "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-type-overrides", "solana-system-interface", - "solana-sysvar", - "solana-sysvar-id 2.2.1", - "solana-timings", "solana-transaction-context", - "solana-type-overrides", - "thiserror 2.0.12", ] [[package]] name = "solana-bucket-map" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31dd17b809ceaff8a847a82fe2149a4509a7072e30757a5813d526fd46fe760c" +checksum = "3e5f4a8f66ce62f7ff979def1b048c19de18e7b5606844193bfda6d906d61456" dependencies = [ "bv", "bytemuck", @@ -5998,24 +6145,24 @@ dependencies = [ "rand 0.8.5", "solana-clock", "solana-measure", - "solana-pubkey 2.4.0", + "solana-pubkey", "tempfile", ] [[package]] name = "solana-builtins" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72254e1c55b25fa5a58af23fb7e4740ca757a293c898858b4a48bd2fa8042d84" +checksum = "1366152cef79982bec10c8848af28ecadedb45a0f95f9137cc84b39006b16c34" dependencies = [ "agave-feature-set", "solana-bpf-loader-program", "solana-compute-budget-program", - "solana-hash 2.3.0", + "solana-hash", "solana-loader-v4-program", "solana-program-runtime", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-stake-program", "solana-system-program", "solana-vote-program", @@ -6025,9 +6172,9 @@ dependencies = [ [[package]] name = "solana-builtins-default-costs" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d06100155db23ed947f105aa63d46458faa4a58e971b628c4e786509da6bbcd" +checksum = "d7547b04505cd465b6cc5436b7bfeed2c5f90133a4a81a9b6f945f40389f45e6" dependencies = [ "agave-feature-set", "ahash 0.8.11", @@ -6035,8 +6182,8 @@ dependencies = [ "solana-bpf-loader-program", "solana-compute-budget-program", "solana-loader-v4-program", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-stake-program", "solana-system-program", "solana-vote-program", @@ -6044,9 +6191,9 @@ dependencies = [ [[package]] name = "solana-clap-utils" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8068341b24e766677ac169b9b4402cab7de8ce61d200792897f0b283f0c42d70" +checksum = "79225d48c3c04236532019a090c2ea6e1427d296db4301575fb9461c0b87a8bb" dependencies = [ "chrono", "clap 2.34.0", @@ -6054,18 +6201,18 @@ dependencies = [ "solana-clock", "solana-cluster-type", "solana-commitment-config", - "solana-derivation-path 2.2.1", - "solana-hash 2.3.0", + "solana-derivation-path", + "solana-hash", "solana-keypair", "solana-message", "solana-native-token", "solana-presigner", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-remote-wallet", - "solana-seed-phrase 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "thiserror 2.0.12", + "solana-seed-phrase", + "solana-signature", + "solana-signer", + "thiserror 2.0.17", "tiny-bip39", "uriparse", "url 2.5.4", @@ -6073,9 +6220,9 @@ dependencies = [ [[package]] name = "solana-clap-v3-utils" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4db6a8a95cb7ced34573921ac26d2f7845eb8ac0b7237247ab8794f68869655" +checksum = "5b42be1cfe4a04da1781f594a10172d6af11fac6fd4dcd4f60c7de97ae3a06a1" dependencies = [ "chrono", "clap 3.2.25", @@ -6083,20 +6230,19 @@ dependencies = [ "solana-clock", "solana-cluster-type", "solana-commitment-config", - "solana-derivation-path 2.2.1", - "solana-hash 2.3.0", + "solana-derivation-path", + "solana-hash", "solana-keypair", "solana-message", "solana-native-token", "solana-presigner", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-remote-wallet", - "solana-seed-derivable 2.2.1", - "solana-seed-phrase 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "solana-zk-token-sdk", - "thiserror 2.0.12", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", + "thiserror 2.0.17", "tiny-bip39", "uriparse", "url 2.5.4", @@ -6104,9 +6250,9 @@ dependencies = [ [[package]] name = "solana-cli-config" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "699bfa7683c474146a90b18be7bc44ae466e0381a01361bec17e6acb95cc29be" +checksum = "a0d5e1c86134bec84f13390119fbf33d59fab935f5a402bf443a0df2ea06fef0" dependencies = [ "dirs-next", "serde", @@ -6119,16 +6265,16 @@ dependencies = [ [[package]] name = "solana-cli-output" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "471d71e21d187301a6b2506e952f46b538885cee4d0204b3f9adda183f310935" +checksum = "075fb39b96e2d19b3cb966b0881ce3f0edec655bbdaf970195ce1c4e5cc0de53" dependencies = [ "Inflector", "agave-reserved-account-keys", "base64 0.22.1", "chrono", "clap 2.34.0", - "console 0.15.11", + "console 0.16.0", "humantime", "indicatif", "pretty-hex", @@ -6142,29 +6288,28 @@ dependencies = [ "solana-cli-config", "solana-clock", "solana-epoch-info", - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-native-token", "solana-packet", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc-client-api", - "solana-sdk-ids 2.2.1", - "solana-signature 2.3.0", + "solana-sdk-ids", + "solana-signature", "solana-stake-interface", "solana-system-interface", - "solana-sysvar", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", + "solana-transaction-status-client-types", "solana-vote-program", - "spl-memo", + "spl-memo-interface", ] [[package]] name = "solana-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a13f3570a0639081ce8fc5d3920b093f807c5589d053f74436a6bc6407241d3" +checksum = "b17c4e94b0902099c0153268a854067e1fe4e459dc16f04f8f5f478e1677ad00" dependencies = [ "async-trait", "bincode", @@ -6181,81 +6326,81 @@ dependencies = [ "solana-commitment-config", "solana-connection-cache", "solana-epoch-info", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-measure", "solana-message", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-pubsub-client", "solana-quic-client", "solana-quic-definitions", "solana-rpc-client", "solana-rpc-client-api", "solana-rpc-client-nonce-utils", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-streamer", - "solana-thin-client", "solana-time-utils", "solana-tpu-client", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", + "solana-transaction-status-client-types", "solana-udp-client", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-client-traits" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83f0071874e629f29e0eb3dab8a863e98502ac7aba55b7e0df1803fc5cac72a7" +checksum = "08618ed587e128105510c54ae3e456b9a06d674d8640db75afe66dad65cb4e02" dependencies = [ "solana-account", "solana-commitment-config", "solana-epoch-info", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-message", - "solana-pubkey 2.4.0", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-signature", + "solana-signer", "solana-system-interface", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", ] [[package]] name = "solana-clock" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb482ab70fced82ad3d7d3d87be33d466a3498eb8aa856434ff3c0dfc2e2e31" +checksum = "fb62e9381182459a4520b5fe7fb22d423cae736239a6427fc398a88743d0ed59" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-sdk-macro", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", ] [[package]] name = "solana-cluster-type" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ace9fea2daa28354d107ea879cff107181d85cd4e0f78a2bedb10e1a428c97e" +checksum = "eb7692fa6bf10a1a86b450c4775526f56d7e0e2116a53313f2533b5694abea64" dependencies = [ "serde", "serde_derive", - "solana-hash 2.3.0", + "solana-hash", ] [[package]] name = "solana-commitment-config" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac49c4dde3edfa832de1697e9bcdb7c3b3f7cb7a1981b7c62526c8bb6700fb73" +checksum = "5fa5933a62dadb7d3ed35e6329de5cebb0678acc8f9cfdf413269084eeccc63f" dependencies = [ "serde", "serde_derive", @@ -6263,9 +6408,9 @@ dependencies = [ [[package]] name = "solana-compute-budget" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "920340599f6e67fe6a49188609105edf983195787489265c98ff50b41d6ce1b4" +checksum = "93e828825846ebc6d9d1b10f91b7d50cdd071e56579cf1dff91ee15a457104c7" dependencies = [ "solana-fee-structure", "solana-program-runtime", @@ -6273,65 +6418,67 @@ dependencies = [ [[package]] name = "solana-compute-budget-instruction" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be5c9ffd6dd67004bc93dfd2f613ccb01b95fd4e0ad037434558cfa0fe130a7" +checksum = "870173bd5426617b5dbd65d571ea9bd63ebe700b9b623ffe8a2fe1da6e5ddfe2" dependencies = [ "agave-feature-set", "log", - "solana-borsh 2.2.1", + "solana-borsh", "solana-builtins-default-costs", "solana-compute-budget", "solana-compute-budget-interface", - "solana-instruction 2.3.0", + "solana-instruction", "solana-packet", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-svm-transaction", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", ] [[package]] name = "solana-compute-budget-interface" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8432d2c4c22d0499aa06d62e4f7e333f81777b3d7c96050ae9e5cb71a8c3aee4" +checksum = "8292c436b269ad23cecc8b24f7da3ab07ca111661e25e00ce0e1d22771951ab9" dependencies = [ - "borsh 1.5.7", - "serde", - "serde_derive", - "solana-instruction 2.3.0", - "solana-sdk-ids 2.2.1", + "borsh", + "solana-instruction", + "solana-sdk-ids", ] [[package]] name = "solana-compute-budget-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdc0130c54e2b2acc3b943d4a1a789fb48c9f72af5c61f5dde393e1e50223013" +checksum = "03f5f8b9b3b4f77a2db4a3aabd42c0e2329f12be6327e9bfa176fc3b4952d3ec" dependencies = [ "solana-program-runtime", ] [[package]] -name = "solana-config-program-client" -version = "0.0.2" +name = "solana-config-interface" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53aceac36f105fd4922e29b4f0c1f785b69d7b3e7e387e384b8985c8e0c3595e" +checksum = "63e401ae56aed512821cc7a0adaa412ff97fecd2dff4602be7b1330d2daec0c4" dependencies = [ "bincode", - "borsh 0.10.4", - "kaigan", "serde", - "solana-program", + "serde_derive", + "solana-account", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-short-vec", + "solana-system-interface", ] [[package]] name = "solana-connection-cache" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a03d5dfebc114ca69f283cb0304bc8ae06ea727f1d1e1f2c5dbdb95c5dc7448" +checksum = "096024d743cc53f256790333a02f85d8083b9d63738e77c9b79302109e8d2035" dependencies = [ "async-trait", "bincode", @@ -6345,20 +6492,22 @@ dependencies = [ "solana-measure", "solana-metrics", "solana-time-utils", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-core" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaf1210d12c5a49cbc9c0e99cbb129d9428d55ad9e247d4bfd10b1bd9c176d4f" +checksum = "b10a4f818186abdbb0d8585614c8106d41c191603d834ed42bd4f9b932684f94" dependencies = [ "agave-banking-stage-ingress-types", "agave-feature-set", "agave-transaction-view", + "agave-verified-packet-receiver", + "agave-votor", "ahash 0.8.11", "anyhow", "arrayvec", @@ -6367,6 +6516,7 @@ dependencies = [ "base64 0.22.1", "bincode", "bs58", + "bytemuck", "bytes", "chrono", "conditional-mod", @@ -6380,6 +6530,7 @@ dependencies = [ "log", "lru", "min-max-heap", + "num_cpus", "num_enum", "prio-graph", "qualifier_attr", @@ -6388,7 +6539,7 @@ dependencies = [ "rand_chacha 0.3.1", "rayon", "rolling-file", - "rustls 0.23.29", + "rustls 0.23.33", "serde", "serde_bytes", "serde_derive", @@ -6401,6 +6552,7 @@ dependencies = [ "solana-builtins-default-costs", "solana-client", "solana-clock", + "solana-cluster-type", "solana-compute-budget", "solana-compute-budget-instruction", "solana-compute-budget-interface", @@ -6415,8 +6567,8 @@ dependencies = [ "solana-geyser-plugin-manager", "solana-gossip", "solana-hard-forks", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-ledger", "solana-loader-v3-interface", @@ -6431,7 +6583,7 @@ dependencies = [ "solana-perf", "solana-poh", "solana-poh-config", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-client", "solana-quic-definitions", "solana-rayon-threadlimit", @@ -6440,29 +6592,29 @@ dependencies = [ "solana-rpc-client-api", "solana-runtime", "solana-runtime-transaction", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", + "solana-sanitize", + "solana-sdk-ids", "solana-send-transaction-service", - "solana-sha256-hasher 2.2.1", + "solana-sha256-hasher", "solana-short-vec", "solana-shred-version", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-slot-hashes", "solana-slot-history", "solana-streamer", "solana-svm", + "solana-svm-timings", "solana-svm-transaction", "solana-system-interface", "solana-system-transaction", "solana-sysvar", "solana-time-utils", - "solana-timings", "solana-tls-utils", "solana-tpu-client", "solana-tpu-client-next", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", "solana-turbine", "solana-unified-scheduler-pool", @@ -6477,24 +6629,24 @@ dependencies = [ "sys-info", "sysctl", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.17", "tikv-jemallocator", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", "trees", ] [[package]] name = "solana-cost-model" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dda68d4f7efc466be40596287a34a16854afb6ea4e2ca1cd67a06ec40d09872" +checksum = "34359c7e4e496d2aaf26ba81b4412480ba60b0ff4a2513d94a5e17bfc90a839d" dependencies = [ "agave-feature-set", "ahash 0.8.11", "log", "solana-bincode", - "solana-borsh 2.2.1", + "solana-borsh", "solana-builtins-default-costs", "solana-clock", "solana-compute-budget", @@ -6503,26 +6655,26 @@ dependencies = [ "solana-fee-structure", "solana-metrics", "solana-packet", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime-transaction", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-svm-transaction", "solana-system-interface", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-vote-program", ] [[package]] name = "solana-cpi" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dc71126edddc2ba014622fc32d0f5e2e78ec6c5a1e0eb511b85618c09e9ea11" +checksum = "16238feb63d1cbdf915fb287f29ef7a7ebf81469bd6214f8b72a53866b593f8f" dependencies = [ - "solana-account-info 2.3.0", - "solana-define-syscall 2.3.0", - "solana-instruction 2.3.0", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", + "solana-account-info", + "solana-define-syscall 3.0.0", + "solana-instruction", + "solana-program-error", + "solana-pubkey", "solana-stable-layout", ] @@ -6537,16 +6689,21 @@ dependencies = [ "curve25519-dalek 4.1.3", "solana-define-syscall 2.3.0", "subtle", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] -name = "solana-decode-error" -version = "2.2.1" +name = "solana-curve25519" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a6a6383af236708048f8bd8d03db8ca4ff7baf4a48e5d580f4cce545925470" +checksum = "09b5a8c8d7017e6b16d7e97faabe10e1adb5b8dfe6b7bc223503041169837a3c" dependencies = [ - "num-traits", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "solana-define-syscall 3.0.0", + "subtle", + "thiserror 2.0.17", ] [[package]] @@ -6561,17 +6718,6 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9697086a4e102d28a156b8d6b521730335d6951bd39a5e766512bbe09007cee" -[[package]] -name = "solana-derivation-path" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "939756d798b25c5ec3cca10e06212bdca3b1443cb9bb740a38124f58b258737b" -dependencies = [ - "derivation-path", - "qstring", - "uriparse", -] - [[package]] name = "solana-derivation-path" version = "3.0.0" @@ -6585,50 +6731,47 @@ dependencies = [ [[package]] name = "solana-ed25519-program" -version = "2.2.3" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1feafa1691ea3ae588f99056f4bdd1293212c7ece28243d7da257c443e84753" +checksum = "e1419197f1c06abf760043f6d64ba9d79a03ad5a43f18c7586471937122094da" dependencies = [ "bytemuck", "bytemuck_derive", - "ed25519-dalek", - "solana-feature-set", - "solana-instruction 2.3.0", - "solana-precompile-error", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-sdk-ids", ] [[package]] name = "solana-entry" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc29231440db248d197bc50c9b19d743a66f5ba46f0508708bff5b2de049d72a" +checksum = "c86e1047385e633ca05e4e347eb9d06b06e7e444aa681ca8b8e485579a0cbe01" dependencies = [ "bincode", "crossbeam-channel", "dlopen2", "log", + "num_cpus", "rand 0.8.5", "rayon", "serde", - "solana-hash 2.3.0", + "solana-hash", "solana-measure", "solana-merkle-tree", "solana-metrics", "solana-packet", "solana-perf", - "solana-rayon-threadlimit", "solana-runtime-transaction", - "solana-sha256-hasher 2.2.1", + "solana-sha256-hasher", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", ] [[package]] name = "solana-epoch-info" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ef6f0b449290b0b9f32973eefd95af35b01c5c0c34c569f936c34c5b20d77b" +checksum = "f8a6b69bd71386f61344f2bcf0f527f5fd6dd3b22add5880e2e1bf1dd1fa8059" dependencies = [ "serde", "serde_derive", @@ -6636,68 +6779,78 @@ dependencies = [ [[package]] name = "solana-epoch-rewards" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b575d3dd323b9ea10bb6fe89bf6bf93e249b215ba8ed7f68f1a3633f384db7" +checksum = "b319a4ed70390af911090c020571f0ff1f4ec432522d05ab89f5c08080381995" dependencies = [ "serde", "serde_derive", - "solana-hash 2.3.0", - "solana-sdk-ids 2.2.1", + "solana-hash", + "solana-sdk-ids", "solana-sdk-macro", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", ] [[package]] name = "solana-epoch-rewards-hasher" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c5fd2662ae7574810904585fd443545ed2b568dbd304b25a31e79ccc76e81b" +checksum = "e507099d0c2c5d7870c9b1848281ea67bbeee80d171ca85003ee5767994c9c38" dependencies = [ "siphasher 0.3.11", - "solana-hash 2.3.0", - "solana-pubkey 2.4.0", + "solana-hash", + "solana-pubkey", ] [[package]] name = "solana-epoch-schedule" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fce071fbddecc55d727b1d7ed16a629afe4f6e4c217bc8d00af3b785f6f67ed" +checksum = "6e5481e72cc4d52c169db73e4c0cd16de8bc943078aac587ec4817a75cc6388f" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-sdk-macro", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", +] + +[[package]] +name = "solana-epoch-stake" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc6693d0ea833b880514b9b88d95afb80b42762dca98b0712465d1fcbbcb89e" +dependencies = [ + "solana-define-syscall 3.0.0", + "solana-pubkey", ] [[package]] name = "solana-example-mocks" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84461d56cbb8bb8d539347151e0525b53910102e4bced875d49d5139708e39d3" +checksum = "978855d164845c1b0235d4b4d101cadc55373fffaf0b5b6cfa2194d25b2ed658" dependencies = [ "serde", "serde_derive", "solana-address-lookup-table-interface", "solana-clock", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keccak-hasher", "solana-message", "solana-nonce", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", "solana-system-interface", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-faucet" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d1fdac8a04ac59537c62d2829da7edac5eae12c0e81237134fb5931af26e185" +checksum = "e9aea023a59d730f52def6d369aeb8a862e4612b812841fc5d5ad6962af2ab1a" dependencies = [ "bincode", "clap 2.34.0", @@ -6707,63 +6860,49 @@ dependencies = [ "serde_derive", "solana-clap-utils", "solana-cli-config", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-cli-output", + "solana-hash", + "solana-instruction", "solana-keypair", - "solana-logger 2.3.1", + "solana-logger", "solana-message", "solana-metrics", - "solana-native-token", "solana-packet", - "solana-pubkey 2.4.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-signer", "solana-system-interface", "solana-system-transaction", "solana-transaction", "solana-version", - "spl-memo", - "thiserror 2.0.12", + "spl-memo-interface", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-feature-gate-interface" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43f5c5382b449e8e4e3016fb05e418c53d57782d8b5c30aa372fc265654b956d" +checksum = "7347ab62e6d47a82e340c865133795b394feea7c2b2771d293f57691c6544c3f" dependencies = [ "bincode", "serde", "serde_derive", "solana-account", - "solana-account-info 2.3.0", - "solana-instruction 2.3.0", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-system-interface", ] -[[package]] -name = "solana-feature-set" -version = "2.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93b93971e289d6425f88e6e3cb6668c4b05df78b3c518c249be55ced8efd6b6d" -dependencies = [ - "ahash 0.8.11", - "lazy_static", - "solana-epoch-schedule", - "solana-hash 2.3.0", - "solana-pubkey 2.4.0", - "solana-sha256-hasher 2.2.1", -] - [[package]] name = "solana-fee" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e71d093270ecbeba22b88e4556c0c02705305c6ed1469d7a31f47f41e7efd827" +checksum = "6ab2d1b0f8c246263c366122916cb37d7c91d0bf3697e6d1368616effb501522" dependencies = [ "agave-feature-set", "solana-fee-structure", @@ -6772,9 +6911,9 @@ dependencies = [ [[package]] name = "solana-fee-calculator" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89bc408da0fb3812bc3008189d148b4d3e08252c79ad810b245482a3f70cd8d" +checksum = "2a73cc03ca4bed871ca174558108835f8323e85917bb38b9c81c7af2ab853efe" dependencies = [ "log", "serde", @@ -6783,21 +6922,19 @@ dependencies = [ [[package]] name = "solana-fee-structure" -version = "2.3.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33adf673581c38e810bf618f745bf31b683a0a4a4377682e6aaac5d9a058dd4e" +checksum = "5e2abdb1223eea8ec64136f39cb1ffcf257e00f915c957c35c0dd9e3f4e700b0" dependencies = [ "serde", "serde_derive", - "solana-message", - "solana-native-token", ] [[package]] name = "solana-genesis-config" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "968dabd2b92d57131473eddbd475339da530e14f54397386abf303de3a2595a2" +checksum = "749eccc960e85c9b33608450093d256006253e1cb436b8380e71777840a3f675" dependencies = [ "bincode", "chrono", @@ -6809,26 +6946,24 @@ dependencies = [ "solana-cluster-type", "solana-epoch-schedule", "solana-fee-calculator", - "solana-hash 2.3.0", + "solana-hash", "solana-inflation", "solana-keypair", - "solana-logger 2.3.1", - "solana-native-token", "solana-poh-config", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", - "solana-sha256-hasher 2.2.1", + "solana-sdk-ids", + "solana-sha256-hasher", "solana-shred-version", - "solana-signer 2.2.1", + "solana-signer", "solana-time-utils", ] [[package]] name = "solana-geyser-plugin-manager" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30cff15ec13620188559cd3c581cdabd9ee291ad8117d2cab11a9c27c7ca25cb" +checksum = "bada9b8b21afd58b1a6920718f3e94a0f164a2b5bc348ad1142a46618843cb2f" dependencies = [ "agave-geyser-plugin-interface", "bs58", @@ -6842,26 +6977,28 @@ dependencies = [ "solana-accounts-db", "solana-clock", "solana-entry", + "solana-hash", "solana-ledger", "solana-measure", "solana-metrics", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc", "solana-runtime", - "solana-signature 2.3.0", + "solana-signature", "solana-transaction", "solana-transaction-status", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-gossip" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23348a05bea638fd940d796f701fd994d71a52d77de10c767512544486fb93ad" +checksum = "e7b96b1561fbf7f11af734a0fea88b22c89f4e9b5612671fdb719824f193adb2" dependencies = [ "agave-feature-set", + "agave-low-pass-filter", "arrayvec", "assert_matches", "bincode", @@ -6882,34 +7019,36 @@ dependencies = [ "serde_bytes", "serde_derive", "siphasher 1.0.1", + "solana-account", "solana-bloom", "solana-clap-utils", "solana-client", "solana-clock", + "solana-cluster-type", "solana-connection-cache", "solana-entry", "solana-epoch-schedule", - "solana-hash 2.3.0", + "solana-hash", "solana-keypair", "solana-ledger", - "solana-logger 2.3.1", + "solana-logger", "solana-measure", "solana-metrics", "solana-native-token", "solana-net-utils", "solana-packet", "solana-perf", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-definitions", "solana-rayon-threadlimit", "solana-rpc-client", "solana-runtime", - "solana-sanitize 2.2.1", + "solana-sanitize", "solana-serde-varint", - "solana-sha256-hasher 2.2.1", + "solana-sha256-hasher", "solana-short-vec", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-streamer", "solana-time-utils", "solana-tpu-client", @@ -6918,14 +7057,14 @@ dependencies = [ "solana-vote", "solana-vote-program", "static_assertions", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-hard-forks" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c28371f878e2ead55611d8ba1b5fb879847156d04edea13693700ad1a28baf" +checksum = "0abacc4b66ce471f135f48f22facf75cbbb0f8a252fbe2c1e0aa59d5b203f519" dependencies = [ "serde", "serde_derive", @@ -6933,38 +7072,25 @@ dependencies = [ [[package]] name = "solana-hash" -version = "2.3.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b96e9f0300fa287b545613f007dfe20043d7812bee255f418c1eb649c93b63" +checksum = "8a063723b9e84c14d8c0d2cdf0268207dc7adecf546e31251f9e07c7b00b566c" dependencies = [ - "borsh 1.5.7", + "borsh", "bytemuck", "bytemuck_derive", "five8", - "js-sys", "serde", "serde_derive", - "solana-atomic-u64 2.2.1", - "solana-sanitize 2.2.1", - "wasm-bindgen", -] - -[[package]] -name = "solana-hash" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a063723b9e84c14d8c0d2cdf0268207dc7adecf546e31251f9e07c7b00b566c" -dependencies = [ - "five8", - "solana-atomic-u64 3.0.0", - "solana-sanitize 3.0.0", + "solana-atomic-u64", + "solana-sanitize", ] [[package]] name = "solana-inflation" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23eef6a09eb8e568ce6839573e4966850e85e9ce71e6ae1a6c930c1c43947de3" +checksum = "e92f37a14e7c660628752833250dd3dcd8e95309876aee751d7f8769a27947c6" dependencies = [ "serde", "serde_derive", @@ -6972,31 +7098,17 @@ dependencies = [ [[package]] name = "solana-instruction" -version = "2.3.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47298e2ce82876b64f71e9d13a46bc4b9056194e7f9937ad3084385befa50885" +checksum = "8df4e8fcba01d7efa647ed20a081c234475df5e11a93acb4393cc2c9a7b99bab" dependencies = [ "bincode", - "borsh 1.5.7", - "getrandom 0.2.15", - "js-sys", - "num-traits", + "borsh", "serde", "serde_derive", - "solana-define-syscall 2.3.0", - "solana-pubkey 2.4.0", - "wasm-bindgen", -] - -[[package]] -name = "solana-instruction" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df4e8fcba01d7efa647ed20a081c234475df5e11a93acb4393cc2c9a7b99bab" -dependencies = [ "solana-define-syscall 3.0.0", "solana-instruction-error", - "solana-pubkey 3.0.0", + "solana-pubkey", ] [[package]] @@ -7006,24 +7118,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1f0d483b8ae387178d9210e0575b666b05cdd4bd0f2f188128249f6e454d39d" dependencies = [ "num-traits", - "solana-program-error 3.0.0", -] - -[[package]] -name = "solana-instructions-sysvar" -version = "2.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0e85a6fad5c2d0c4f5b91d34b8ca47118fc593af706e523cdbedf846a954f57" -dependencies = [ - "bitflags 2.9.1", - "solana-account-info 2.3.0", - "solana-instruction 2.3.0", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", - "solana-serialize-utils 2.2.1", - "solana-sysvar-id 2.2.1", + "serde", + "serde_derive", + "solana-program-error", ] [[package]] @@ -7033,66 +7130,64 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ddf67876c541aa1e21ee1acae35c95c6fbc61119814bfef70579317a5e26955" dependencies = [ "bitflags 2.9.1", - "solana-account-info 3.0.0", - "solana-instruction 3.0.0", + "solana-account-info", + "solana-instruction", "solana-instruction-error", - "solana-program-error 3.0.0", - "solana-pubkey 3.0.0", - "solana-sanitize 3.0.0", - "solana-sdk-ids 3.0.0", - "solana-serialize-utils 3.0.0", - "solana-sysvar-id 3.0.0", + "solana-program-error", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-sysvar-id", ] [[package]] name = "solana-keccak-hasher" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7aeb957fbd42a451b99235df4942d96db7ef678e8d5061ef34c9b34cae12f79" +checksum = "57eebd3012946913c8c1b8b43cdf8a6249edb09c0b6be3604ae910332a3acd97" dependencies = [ "sha3", - "solana-define-syscall 2.3.0", - "solana-hash 2.3.0", - "solana-sanitize 2.2.1", + "solana-define-syscall 3.0.0", + "solana-hash", ] [[package]] name = "solana-keypair" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dbb7042c2e0c561afa07242b2099d55c57bd1b1da3b6476932197d84e15e3e4" +checksum = "80eaf45d386c94e59c0c2d3db4a76c05f90365394aa848edce5826d3f7e77fb3" dependencies = [ - "bs58", - "ed25519-dalek", + "ed25519-dalek 2.2.0", "ed25519-dalek-bip32", - "rand 0.7.3", - "solana-derivation-path 2.2.1", - "solana-pubkey 2.4.0", - "solana-seed-derivable 2.2.1", - "solana-seed-phrase 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "wasm-bindgen", + "five8", + "rand 0.8.5", + "solana-derivation-path", + "solana-pubkey", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", ] [[package]] name = "solana-last-restart-slot" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a6360ac2fdc72e7463565cd256eedcf10d7ef0c28a1249d261ec168c1b55cdd" +checksum = "dcda154ec827f5fc1e4da0af3417951b7e9b8157540f81f936c4a8b1156134d0" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-sdk-macro", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", ] [[package]] name = "solana-lattice-hash" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d68fe797e5626ac2acf330e294f659c236eb13cb98d58df0917ca5b681b9248b" +checksum = "8a432b56d7d40da7396f45cd5ec478a648a8bc23c958dfb374f748e672ce8d0a" dependencies = [ "base64 0.22.1", "blake3", @@ -7102,9 +7197,9 @@ dependencies = [ [[package]] name = "solana-ledger" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be3ea16644a28e4545987b97d765de33607304360d1414e89acb3f57c478c97d" +checksum = "ff9303d4f35627dbfb11667203e63eaaa8873c5eff8fc0bf34782644f26ea932" dependencies = [ "agave-feature-set", "agave-reserved-account-keys", @@ -7112,9 +7207,11 @@ dependencies = [ "assert_matches", "bincode", "bitflags 2.9.1", + "bytes", "bzip2", "chrono", "chrono-humanize", + "conditional-mod", "crossbeam-channel", "dashmap", "eager", @@ -7149,40 +7246,41 @@ dependencies = [ "solana-entry", "solana-epoch-schedule", "solana-genesis-config", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-measure", "solana-message", "solana-metrics", "solana-native-token", "solana-net-utils", + "solana-nohash-hasher", "solana-packet", "solana-perf", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rayon-threadlimit", "solana-runtime", "solana-runtime-transaction", - "solana-seed-derivable 2.2.1", - "solana-sha256-hasher 2.2.1", + "solana-seed-derivable", + "solana-sha256-hasher", "solana-shred-version", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-stake-interface", "solana-stake-program", "solana-storage-bigtable", "solana-storage-proto", "solana-streamer", "solana-svm", + "solana-svm-timings", "solana-svm-transaction", "solana-system-interface", "solana-system-transaction", "solana-time-utils", - "solana-timings", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", "solana-vote", "solana-vote-program", @@ -7191,7 +7289,7 @@ dependencies = [ "strum_macros 0.24.3", "tar", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", "tokio-stream", "trees", @@ -7199,93 +7297,71 @@ dependencies = [ [[package]] name = "solana-loader-v2-interface" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ab08006dad78ae7cd30df8eea0539e207d08d91eaefb3e1d49a446e1c49654" +checksum = "1e4a6f0ad4fd9c30679bfee2ce3ea6a449cac38049f210480b751f65676dfe82" dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] name = "solana-loader-v3-interface" -version = "5.0.0" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f7162a05b8b0773156b443bccd674ea78bb9aa406325b467ea78c06c99a63a2" +checksum = "dee44c9b1328c5c712c68966fb8de07b47f3e7bac006e74ddd1bb053d3e46e5d" dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", "solana-system-interface", ] [[package]] name = "solana-loader-v4-interface" -version = "2.2.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "706a777242f1f39a83e2a96a2a6cb034cb41169c6ecbee2cf09cb873d9659e7e" +checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", "solana-system-interface", ] [[package]] name = "solana-loader-v4-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa980c021f655b702c4282c10422ea0f7d10ee00347be45ad329d317a0af6f3" +checksum = "51d3f8156365529bff005cc211056a9634c2d5953d54279cc56364e48c0c9a7c" dependencies = [ "log", "qualifier_attr", "solana-account", "solana-bincode", "solana-bpf-loader-program", - "solana-instruction 2.3.0", + "solana-instruction", "solana-loader-v3-interface", "solana-loader-v4-interface", - "solana-log-collector", - "solana-measure", "solana-packet", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-sbpf", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-type-overrides", "solana-transaction-context", - "solana-type-overrides", -] - -[[package]] -name = "solana-log-collector" -version = "2.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "045fb9230cb591f1a0f548932ed0ebc246a83aad5cc5e63f24e3ebddd3cf2a54" -dependencies = [ - "log", -] - -[[package]] -name = "solana-logger" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8e777ec1afd733939b532a42492d888ec7c88d8b4127a5d867eb45c6eb5cd5" -dependencies = [ - "env_logger 0.9.3", - "lazy_static", - "libc", - "log", - "signal-hook", ] [[package]] @@ -7294,7 +7370,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef7421d1092680d72065edbf5c7605856719b021bf5f173656c71febcdd5d003" dependencies = [ - "env_logger 0.11.8", + "env_logger", "lazy_static", "libc", "log", @@ -7303,67 +7379,55 @@ dependencies = [ [[package]] name = "solana-measure" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17d033a8c8725e39998c51e36969fe079e8edb91a8019d3e941da9dc88c0ef3" +checksum = "b27e8b7a245e3baafbd36795debadeb650b166c5b3833670b063d8eb62df503f" [[package]] name = "solana-merkle-tree" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "110273c233259d002d49b4c0c0dc80b4959f1af7a076a714385022682fb1b48b" +checksum = "15c954f5e175dcc2582de1afa2f9de1c848f0a39a9af3da245e8a0ce7279c3f6" dependencies = [ "fast-math", - "solana-hash 2.3.0", - "solana-sha256-hasher 2.2.1", + "solana-hash", + "solana-sha256-hasher", ] [[package]] name = "solana-message" -version = "2.4.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1796aabce376ff74bf89b78d268fa5e683d7d7a96a0a4e4813ec34de49d5314b" +checksum = "2c33e9fa7871147ac3235a7320386afa2dc64bbb21ca3cf9d79a6f6827313176" dependencies = [ "bincode", "blake3", "lazy_static", "serde", "serde_derive", - "solana-bincode", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", + "solana-hash", + "solana-instruction", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", "solana-short-vec", - "solana-system-interface", - "solana-transaction-error 2.2.1", - "wasm-bindgen", + "solana-transaction-error", ] [[package]] name = "solana-metrics" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d41316e2545a117810f9507a382123a8af357a04e09adab189eead1fcc90c4b4" +checksum = "6715976cc61be1629a762cc9d5771b439e027b1276678554587104aa4a41afc3" dependencies = [ "crossbeam-channel", "gethostname", "log", - "reqwest 0.12.22", + "reqwest 0.12.24", "solana-cluster-type", - "solana-sha256-hasher 2.2.1", + "solana-sha256-hasher", "solana-time-utils", - "thiserror 2.0.12", -] - -[[package]] -name = "solana-msg" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f36a1a14399afaabc2781a1db09cb14ee4cc4ee5c7a5a3cfcc601811379a8092" -dependencies = [ - "solana-define-syscall 2.3.0", + "thiserror 2.0.17", ] [[package]] @@ -7377,15 +7441,15 @@ dependencies = [ [[package]] name = "solana-native-token" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "307fb2f78060995979e9b4f68f833623565ed4e55d3725f100454ce78a99a1a3" +checksum = "ae8dd4c280dca9d046139eb5b7a5ac9ad10403fbd64964c7d7571214950d758f" [[package]] name = "solana-net-utils" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdbf5df25bd50e6e7b1f448b04d8cf7157ad153588beae15e03b02a9741dd942" +checksum = "1216dd3d15b873d224cba1a736161582c2c30ddc152ccd16d271fc85bf9db46d" dependencies = [ "anyhow", "bincode", @@ -7396,7 +7460,7 @@ dependencies = [ "rand 0.8.5", "serde", "serde_derive", - "socket2 0.5.10", + "socket2 0.6.0", "solana-serde", "tokio", "url 2.5.4", @@ -7410,51 +7474,51 @@ checksum = "8b8a731ed60e89177c8a7ab05fe0f1511cedd3e70e773f288f9de33a9cfdc21e" [[package]] name = "solana-nonce" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "703e22eb185537e06204a5bd9d509b948f0066f2d1d814a6f475dafb3ddf1325" +checksum = "abbdc6c8caf1c08db9f36a50967539d0f72b9f1d4aea04fec5430f532e5afadc" dependencies = [ "serde", "serde_derive", "solana-fee-calculator", - "solana-hash 2.3.0", - "solana-pubkey 2.4.0", - "solana-sha256-hasher 2.2.1", + "solana-hash", + "solana-pubkey", + "solana-sha256-hasher", ] [[package]] name = "solana-nonce-account" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde971a20b8dbf60144d6a84439dda86b5466e00e2843091fe731083cda614da" +checksum = "805fd25b29e5a1a0e6c3dd6320c9da80f275fbe4ff6e392617c303a2085c435e" dependencies = [ "solana-account", - "solana-hash 2.3.0", + "solana-hash", "solana-nonce", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", ] [[package]] name = "solana-offchain-message" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b526398ade5dea37f1f147ce55dae49aa017a5d7326606359b0445ca8d946581" +checksum = "f6e2a1141a673f72a05cf406b99e4b2b8a457792b7c01afa07b3f00d4e2de393" dependencies = [ "num_enum", - "solana-hash 2.3.0", + "solana-hash", "solana-packet", - "solana-pubkey 2.4.0", - "solana-sanitize 2.2.1", - "solana-sha256-hasher 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-sanitize", + "solana-sha256-hasher", + "solana-signature", + "solana-signer", ] [[package]] name = "solana-packet" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "004f2d2daf407b3ec1a1ca5ec34b3ccdfd6866dd2d3c7d0715004a96e4b6d127" +checksum = "6edf2f25743c95229ac0fdc32f8f5893ef738dbf332c669e9861d33ddb0f469d" dependencies = [ "bincode", "bitflags 2.9.1", @@ -7466,9 +7530,9 @@ dependencies = [ [[package]] name = "solana-perf" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea9454d4e98821fa127d4d3c4fd1459419da327ec6c092e669d4ea06144de172" +checksum = "6775cb16f353c05785e1ef05fd1fbeb47db4a6b0f3273a79a0fc2dad78f85f88" dependencies = [ "ahash 0.8.11", "bincode", @@ -7484,47 +7548,48 @@ dependencies = [ "rand 0.8.5", "rayon", "serde", - "solana-hash 2.3.0", + "solana-hash", "solana-message", "solana-metrics", "solana-packet", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rayon-threadlimit", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-short-vec", - "solana-signature 2.3.0", + "solana-signature", "solana-time-utils", ] [[package]] name = "solana-poh" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52904972df1cf056dc79b55d4500d24a7760ec188729777aa4bbc967bb2fafe3" +checksum = "9d6d1cbee713cde6f8ee1e399122f801a87d7d11431e161273b98111b1e8fae6" dependencies = [ + "arc-swap", "core_affinity", "crossbeam-channel", "log", "qualifier_attr", "solana-clock", "solana-entry", - "solana-hash 2.3.0", + "solana-hash", "solana-ledger", "solana-measure", "solana-metrics", "solana-poh-config", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime", "solana-time-utils", "solana-transaction", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-poh-config" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d650c3b4b9060082ac6b0efbbb66865089c58405bfb45de449f3f2b91eccee75" +checksum = "2f1fef1f2ff2480fdbcc64bef5e3c47bec6e1647270db88b43f23e3a55f8d9cf" dependencies = [ "serde", "serde_derive", @@ -7532,160 +7597,94 @@ dependencies = [ [[package]] name = "solana-poseidon" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65143c77c1d4864c05e238f25b7d41b5a14b4d56352afab38fe89d97a78fff7f" +checksum = "4a9a6bf2b300b7b65a89f2c5b59832a86c46be8b6b67507231ee58f9343d7e9a" dependencies = [ "ark-bn254", "light-poseidon", - "solana-define-syscall 2.3.0", - "thiserror 2.0.12", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] name = "solana-precompile-error" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d87b2c1f5de77dfe2b175ee8dd318d196aaca4d0f66f02842f80c852811f9f8" +checksum = "cafcd950de74c6c39d55dc8ca108bbb007799842ab370ef26cf45a34453c31e1" dependencies = [ "num-traits", - "solana-decode-error", -] - -[[package]] -name = "solana-precompiles" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a460ab805ec063802105b463ecb5eb02c3ffe469e67a967eea8a6e778e0bc06" -dependencies = [ - "lazy_static", - "solana-ed25519-program", - "solana-feature-set", - "solana-message", - "solana-precompile-error", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-secp256k1-program", - "solana-secp256r1-program", ] [[package]] name = "solana-presigner" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81a57a24e6a4125fc69510b6774cd93402b943191b6cddad05de7281491c90fe" +checksum = "0f704eaf825be3180832445b9e4983b875340696e8e7239bf2d535b0f86c14a2" dependencies = [ - "solana-pubkey 2.4.0", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-signature", + "solana-signer", ] [[package]] name = "solana-program" -version = "2.3.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98eca145bd3545e2fbb07166e895370576e47a00a7d824e325390d33bf467210" +checksum = "91b12305dd81045d705f427acd0435a2e46444b65367d7179d7bdcfc3bc5f5eb" dependencies = [ - "bincode", - "blake3", - "borsh 0.10.4", - "borsh 1.5.7", - "bs58", - "bytemuck", - "console_error_panic_hook", - "console_log", - "getrandom 0.2.15", - "lazy_static", - "log", "memoffset", - "num-bigint 0.4.6", - "num-derive", - "num-traits", - "rand 0.8.5", - "serde", - "serde_bytes", - "serde_derive", - "solana-account-info 2.3.0", - "solana-address-lookup-table-interface", - "solana-atomic-u64 2.2.1", + "solana-account-info", "solana-big-mod-exp", - "solana-bincode", "solana-blake3-hasher", - "solana-borsh 2.2.1", + "solana-borsh", "solana-clock", "solana-cpi", - "solana-decode-error", - "solana-define-syscall 2.3.0", + "solana-define-syscall 3.0.0", "solana-epoch-rewards", "solana-epoch-schedule", + "solana-epoch-stake", "solana-example-mocks", - "solana-feature-gate-interface", "solana-fee-calculator", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", + "solana-hash", + "solana-instruction", + "solana-instruction-error", + "solana-instructions-sysvar", "solana-keccak-hasher", "solana-last-restart-slot", - "solana-loader-v2-interface", - "solana-loader-v3-interface", - "solana-loader-v4-interface", - "solana-message", - "solana-msg 2.2.1", + "solana-msg", "solana-native-token", - "solana-nonce", "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-error", + "solana-program-memory", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", "solana-rent", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", - "solana-sdk-macro", + "solana-sdk-ids", "solana-secp256k1-recover", "solana-serde-varint", - "solana-serialize-utils 2.2.1", - "solana-sha256-hasher 2.2.1", + "solana-serialize-utils", + "solana-sha256-hasher", "solana-short-vec", "solana-slot-hashes", "solana-slot-history", "solana-stable-layout", - "solana-stake-interface", - "solana-system-interface", "solana-sysvar", - "solana-sysvar-id 2.2.1", - "solana-vote-interface", - "thiserror 2.0.12", - "wasm-bindgen", + "solana-sysvar-id", ] [[package]] name = "solana-program-entrypoint" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32ce041b1a0ed275290a5008ee1a4a6c48f5054c8a3d78d313c08958a06aedbd" -dependencies = [ - "solana-account-info 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", -] - -[[package]] -name = "solana-program-error" -version = "2.2.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ae2c1a8d0d4ae865882d5770a7ebca92bab9c685e43f0461682c6c05a35bfa" +checksum = "6557cf5b5e91745d1667447438a1baa7823c6086e4ece67f8e6ebfa7a8f72660" dependencies = [ - "borsh 1.5.7", - "num-traits", - "serde", - "serde_derive", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-pubkey 2.4.0", + "solana-account-info", + "solana-define-syscall 3.0.0", + "solana-msg", + "solana-program-error", + "solana-pubkey", ] [[package]] @@ -7694,16 +7693,9 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1af32c995a7b692a915bb7414d5f8e838450cf7c70414e763d8abcae7b51f28" dependencies = [ - "borsh 1.5.7", -] - -[[package]] -name = "solana-program-memory" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a5426090c6f3fd6cfdc10685322fede9ca8e5af43cd6a59e98bfe4e91671712" -dependencies = [ - "solana-define-syscall 2.3.0", + "borsh", + "serde", + "serde_derive", ] [[package]] @@ -7715,45 +7707,29 @@ dependencies = [ "solana-define-syscall 3.0.0", ] -[[package]] -name = "solana-program-option" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc677a2e9bc616eda6dbdab834d463372b92848b2bfe4a1ed4e4b4adba3397d0" - [[package]] name = "solana-program-option" version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e7b4ddb464f274deb4a497712664c3b612e3f5f82471d4e47710fc4ab1c3095" -[[package]] -name = "solana-program-pack" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "319f0ef15e6e12dc37c597faccb7d62525a509fec5f6975ecb9419efddeb277b" -dependencies = [ - "solana-program-error 2.2.1", -] - [[package]] name = "solana-program-pack" version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c169359de21f6034a63ebf96d6b380980307df17a8d371344ff04a883ec4e9d0" dependencies = [ - "solana-program-error 3.0.0", + "solana-program-error", ] [[package]] name = "solana-program-runtime" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faaed80488a55ba4a5a124b264ef6a807a1225b1753f781cbdf6ea114e5f41a8" +checksum = "cb7c0120b8925e979b2fd4a060d65428c2929162cca38307d1db9dfe3b6cce4a" dependencies = [ "base64 0.22.1", "bincode", - "enum-iterator", "itertools 0.12.1", "log", "percentage", @@ -7764,35 +7740,34 @@ dependencies = [ "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-structure", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-last-restart-slot", - "solana-log-collector", - "solana-measure", - "solana-metrics", "solana-program-entrypoint", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", "solana-sbpf", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-slot-hashes", - "solana-stable-layout", + "solana-stake-interface", "solana-svm-callback", "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", + "solana-svm-transaction", + "solana-svm-type-overrides", "solana-system-interface", "solana-sysvar", - "solana-sysvar-id 2.2.1", - "solana-timings", + "solana-sysvar-id", "solana-transaction-context", - "solana-type-overrides", - "thiserror 2.0.12", ] [[package]] name = "solana-program-test" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3fa89c04f924bc7bf5a40244074b0151ac63dc77ffe261290aacb39d0f85a96" +checksum = "fbb73bbb04c0e65a409ae43cdfadf998ee13a158179ab28f860edca7743e2d57" dependencies = [ "agave-feature-set", "assert_matches", @@ -7804,94 +7779,69 @@ dependencies = [ "log", "serde", "solana-account", - "solana-account-info 2.3.0", + "solana-account-info", "solana-accounts-db", "solana-banks-client", "solana-banks-interface", "solana-banks-server", "solana-clock", + "solana-cluster-type", "solana-commitment-config", "solana-compute-budget", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-calculator", "solana-genesis-config", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-loader-v3-interface", - "solana-log-collector", - "solana-logger 2.3.1", + "solana-logger", "solana-message", - "solana-msg 2.2.1", + "solana-msg", "solana-native-token", "solana-poh-config", "solana-program-entrypoint", - "solana-program-error 2.2.1", + "solana-program-error", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", "solana-runtime", "solana-sbpf", - "solana-sdk-ids 2.2.1", - "solana-signer 2.2.1", + "solana-sdk-ids", + "solana-signer", "solana-stable-layout", "solana-stake-interface", "solana-svm", + "solana-svm-log-collector", + "solana-svm-timings", "solana-system-interface", "solana-sysvar", - "solana-sysvar-id 2.2.1", - "solana-timings", + "solana-sysvar-id", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-vote-program", "spl-generic-token", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", ] -[[package]] -name = "solana-pubkey" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b62adb9c3261a052ca1f999398c388f1daf558a1b492f60a6d9e64857db4ff1" -dependencies = [ - "borsh 0.10.4", - "borsh 1.5.7", - "bytemuck", - "bytemuck_derive", - "curve25519-dalek 4.1.3", - "five8", - "five8_const", - "getrandom 0.2.15", - "js-sys", - "num-traits", - "rand 0.8.5", - "serde", - "serde_derive", - "solana-atomic-u64 2.2.1", - "solana-decode-error", - "solana-define-syscall 2.3.0", - "solana-sanitize 2.2.1", - "solana-sha256-hasher 2.2.1", - "wasm-bindgen", -] - [[package]] name = "solana-pubkey" version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8909d399deb0851aa524420beeb5646b115fd253ef446e35fe4504c904da3941" dependencies = [ + "rand 0.8.5", "solana-address", ] [[package]] name = "solana-pubsub-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ea65fb00df1f934d372a3762f16c5d1423dc9e4ab9d2548ed6c7774ea108d0" +checksum = "c7f9773e441e93aaf1c77d609fe24e6b4d86a2ba8fac21dc9d49a02ef5bdf05c" dependencies = [ "crossbeam-channel", "futures-util", @@ -7903,10 +7853,10 @@ dependencies = [ "serde_json", "solana-account-decoder-client-types", "solana-clock", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc-client-types", - "solana-signature 2.3.0", - "thiserror 2.0.12", + "solana-signature", + "thiserror 2.0.17", "tokio", "tokio-stream", "tokio-tungstenite", @@ -7916,9 +7866,9 @@ dependencies = [ [[package]] name = "solana-quic-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35498861e85147221f995b01fa51c09feddf3eb3ded472b759ca43c772750c1c" +checksum = "8373fb6bf9ed15ea677a914cb114e6ed81244d39316f3dce9d45da351abe8fb8" dependencies = [ "async-lock", "async-trait", @@ -7927,48 +7877,49 @@ dependencies = [ "log", "quinn", "quinn-proto", - "rustls 0.23.29", + "rustls 0.23.33", "solana-connection-cache", "solana-keypair", "solana-measure", "solana-metrics", "solana-net-utils", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-definitions", "solana-rpc-client-api", - "solana-signer 2.2.1", + "solana-signer", "solana-streamer", "solana-tls-utils", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-quic-definitions" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e606feac5110eb5d8afaa43ccaeea3ec49ccec36773387930b5ba545e745aea2" +checksum = "15319accf7d3afd845817aeffa6edd8cc185f135cefbc6b985df29cfd8c09609" dependencies = [ "solana-keypair", ] [[package]] name = "solana-rayon-threadlimit" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7920b328da6207a84d1381f9a1b18f7a86af42feef91944cdb59bffd4ad74d14" +checksum = "6b10c48c6b068d11d2c93271b7534d9bdabcf1ca3d39225d29f3bc4906b352a4" dependencies = [ + "log", "num_cpus", ] [[package]] name = "solana-remote-wallet" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c1e7c96838831b0fc7f5c6f7620c91bc718b8feec183f13b843750e22bc6863" +checksum = "504e0f4cdc1f566728549db7fd062be33e24ee88081ece0aebfc42f903061d60" dependencies = [ - "console 0.15.11", + "console 0.16.0", "dialoguer", "hidapi", "log", @@ -7977,72 +7928,33 @@ dependencies = [ "parking_lot 0.12.3", "qstring", "semver", - "solana-derivation-path 2.2.1", + "solana-derivation-path", "solana-offchain-message", - "solana-pubkey 2.4.0", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "thiserror 2.0.12", + "solana-pubkey", + "solana-signature", + "solana-signer", + "thiserror 2.0.17", "uriparse", ] [[package]] name = "solana-rent" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1aea8fdea9de98ca6e8c2da5827707fb3842833521b528a713810ca685d2480" +checksum = "b702d8c43711e3c8a9284a4f1bbc6a3de2553deb25b0c8142f9a44ef0ce5ddc1" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-sdk-macro", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", ] [[package]] -name = "solana-rent-collector" -version = "2.2.1" +name = "solana-reward-info" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c1e19f5d5108b0d824244425e43bc78bbb9476e2199e979b0230c9f632d3bf4" -dependencies = [ - "serde", - "serde_derive", - "solana-account", - "solana-clock", - "solana-epoch-schedule", - "solana-genesis-config", - "solana-pubkey 2.4.0", - "solana-rent", - "solana-sdk-ids 2.2.1", -] - -[[package]] -name = "solana-rent-debits" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f6f9113c6003492e74438d1288e30cffa8ccfdc2ef7b49b9e816d8034da18cd" -dependencies = [ - "solana-pubkey 2.4.0", - "solana-reward-info", -] - -[[package]] -name = "solana-reserved-account-keys" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b293f4246626c0e0a991531f08848a713ada965612e99dc510963f04d12cae7" -dependencies = [ - "lazy_static", - "solana-feature-set", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", -] - -[[package]] -name = "solana-reward-info" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18205b69139b1ae0ab8f6e11cdcb627328c0814422ad2482000fa2ca54ae4a2f" +checksum = "82be7946105c2ee6be9f9ee7bd18a068b558389221d29efa92b906476102bfcc" dependencies = [ "serde", "serde_derive", @@ -8050,9 +7962,9 @@ dependencies = [ [[package]] name = "solana-rpc" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "208aeee7fbf23db4e6735e757ff59e492531f86c590a4031cea389c7f21e989f" +checksum = "708a65dd97f8ebe838d5d3bebd84803cd5ad22829755e0c05ada60efcd44e0ee" dependencies = [ "agave-feature-set", "base64 0.22.1", @@ -8077,6 +7989,7 @@ dependencies = [ "solana-account", "solana-account-decoder", "solana-accounts-db", + "solana-cli-output", "solana-client", "solana-clock", "solana-commitment-config", @@ -8087,7 +8000,7 @@ dependencies = [ "solana-faucet", "solana-genesis-config", "solana-gossip", - "solana-hash 2.3.0", + "solana-hash", "solana-keypair", "solana-ledger", "solana-measure", @@ -8097,16 +8010,16 @@ dependencies = [ "solana-perf", "solana-poh", "solana-poh-config", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-pack", + "solana-pubkey", "solana-quic-definitions", "solana-rayon-threadlimit", "solana-rpc-client-api", "solana-runtime", "solana-runtime-transaction", "solana-send-transaction-service", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-slot-history", "solana-stake-program", "solana-storage-bigtable", @@ -8119,26 +8032,26 @@ dependencies = [ "solana-tpu-client", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", "solana-validator-exit", "solana-version", "solana-vote", "solana-vote-program", "spl-generic-token", - "spl-token", - "spl-token-2022 8.0.1", + "spl-token-2022-interface 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "spl-token-interface", "stream-cancel", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", ] [[package]] name = "solana-rpc-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3e48d54d2155b7442a3e3a34fcdf7aa5c0d40fd4f68789eb99ec8f899b549ba" +checksum = "cb85200cc4ca3f96fb6378966111e651cd026dde442b09d83ae0824e5793d59f" dependencies = [ "async-trait", "base64 0.22.1", @@ -8147,7 +8060,7 @@ dependencies = [ "futures 0.3.31", "indicatif", "log", - "reqwest 0.12.22", + "reqwest 0.12.24", "reqwest-middleware", "semver", "serde", @@ -8160,14 +8073,14 @@ dependencies = [ "solana-epoch-info", "solana-epoch-schedule", "solana-feature-gate-interface", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-message", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc-client-api", - "solana-signature 2.3.0", + "solana-signature", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status-client-types", "solana-version", "solana-vote-interface", @@ -8176,13 +8089,13 @@ dependencies = [ [[package]] name = "solana-rpc-client-api" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8710855b7342efc5fd9951461aeabaa0631a4b1a24dfef5644edf76283b6f37c" +checksum = "7166554f3c6c807cb1c99514c1026a40bf63ce9b21cfe0059c6621df03a3c4d6" dependencies = [ "anyhow", "jsonrpc-core", - "reqwest 0.12.22", + "reqwest 0.12.24", "reqwest-middleware", "serde", "serde_derive", @@ -8190,34 +8103,34 @@ dependencies = [ "solana-account-decoder-client-types", "solana-clock", "solana-rpc-client-types", - "solana-signer 2.2.1", - "solana-transaction-error 2.2.1", + "solana-signer", + "solana-transaction-error", "solana-transaction-status-client-types", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-rpc-client-nonce-utils" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "582f8b6b0404d6dca8064ebfefd310c1d183d33a018a89844e82ef0c28824671" +checksum = "8e8422aba0c1acefd79b49e8467a8351a2967f4457a0beaeb5c535bceb180d05" dependencies = [ "solana-account", "solana-commitment-config", - "solana-hash 2.3.0", + "solana-hash", "solana-message", "solana-nonce", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc-client", - "solana-sdk-ids 2.2.1", - "thiserror 2.0.12", + "solana-sdk-ids", + "thiserror 2.0.17", ] [[package]] name = "solana-rpc-client-types" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fe9fd3064c2bb096ec8ec94ceae3a33b3a998b58bbbf28156e114de41cc945c" +checksum = "665af0ff5e14b13433407b2e706ae5c7f22b4ebd94631fc8d0eef39783174eaa" dependencies = [ "base64 0.22.1", "bs58", @@ -8231,25 +8144,27 @@ dependencies = [ "solana-commitment-config", "solana-fee-calculator", "solana-inflation", - "solana-pubkey 2.4.0", - "solana-transaction-error 2.2.1", + "solana-pubkey", + "solana-transaction-error", "solana-transaction-status-client-types", "solana-version", "spl-generic-token", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-runtime" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df5ca69813c6b9efd937291609841ee21d793dc5c40fdb9a064c0d0e0323da44" +checksum = "6b7ed4bb39305a1c523adee9b7787e8f865e01ffc92b9ced1df60e53c5df3a2c" dependencies = [ "agave-feature-set", "agave-precompiles", "agave-reserved-account-keys", + "agave-syscalls", "ahash 0.8.11", "aquamarine", + "arc-swap", "arrayref", "assert_matches", "base64 0.22.1", @@ -8257,11 +8172,9 @@ dependencies = [ "blake3", "bv", "bytemuck", - "bzip2", "crossbeam-channel", "dashmap", "dir-diff", - "flate2", "fnv", "im", "itertools 0.12.1", @@ -8285,7 +8198,7 @@ dependencies = [ "serde_json", "serde_with", "solana-account", - "solana-account-info 2.3.0", + "solana-account-info", "solana-accounts-db", "solana-address-lookup-table-interface", "solana-bpf-loader-program", @@ -8293,6 +8206,7 @@ dependencies = [ "solana-builtins", "solana-client-traits", "solana-clock", + "solana-cluster-type", "solana-commitment-config", "solana-compute-budget", "solana-compute-budget-instruction", @@ -8309,9 +8223,9 @@ dependencies = [ "solana-fee-structure", "solana-genesis-config", "solana-hard-forks", - "solana-hash 2.3.0", + "solana-hash", "solana-inflation", - "solana-instruction 2.3.0", + "solana-instruction", "solana-keypair", "solana-lattice-hash", "solana-loader-v3-interface", @@ -8328,37 +8242,34 @@ dependencies = [ "solana-poh-config", "solana-precompile-error", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rayon-threadlimit", "solana-rent", - "solana-rent-collector", - "solana-rent-debits", "solana-reward-info", "solana-runtime-transaction", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-secp256k1-program", - "solana-seed-derivable 2.2.1", + "solana-seed-derivable", "solana-serde", - "solana-sha256-hasher 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-sha256-hasher", + "solana-signature", + "solana-signer", "solana-slot-hashes", "solana-slot-history", "solana-stake-interface", "solana-stake-program", "solana-svm", "solana-svm-callback", - "solana-svm-rent-collector", + "solana-svm-timings", "solana-svm-transaction", "solana-system-interface", "solana-system-transaction", "solana-sysvar", - "solana-sysvar-id 2.2.1", + "solana-sysvar-id", "solana-time-utils", - "solana-timings", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status-client-types", "solana-unified-scheduler-logic", "solana-version", @@ -8372,37 +8283,31 @@ dependencies = [ "symlink", "tar", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.17", "zstd", ] [[package]] name = "solana-runtime-transaction" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0345883ad085433c4c06c829a2316e8a6eec30b6a176ec518b0d4cd26f15aed5" +checksum = "a76faa3186e513b635ec7314b9b21d8bf31390c505c9d1e05acb881bafcd91c4" dependencies = [ "agave-transaction-view", "log", "solana-compute-budget", "solana-compute-budget-instruction", - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-signature 2.3.0", + "solana-pubkey", + "solana-sdk-ids", + "solana-signature", "solana-svm-transaction", "solana-transaction", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", ] -[[package]] -name = "solana-sanitize" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f1bc1357b8188d9c4a3af3fc55276e56987265eb7ad073ae6f8180ee54cecf" - [[package]] name = "solana-sanitize" version = "3.0.0" @@ -8411,9 +8316,9 @@ checksum = "927e833259588ac8f860861db0f6e2668c3cc46d917798ade116858960acfe8a" [[package]] name = "solana-sbpf" -version = "0.11.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "474a2d95dc819898ded08d24f29642d02189d3e1497bbb442a92a3997b7eb55f" +checksum = "0f224d906c14efc7ed7f42bc5fe9588f3f09db8cabe7f6023adda62a69678e1a" dependencies = [ "byteorder", "combine 3.8.1", @@ -8422,88 +8327,46 @@ dependencies = [ "log", "rand 0.8.5", "rustc-demangle", - "thiserror 2.0.12", + "thiserror 2.0.17", "winapi 0.3.9", ] [[package]] name = "solana-sdk" -version = "2.3.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cc0e4a7635b902791c44b6581bfb82f3ada32c5bc0929a64f39fe4bb384c86a" +checksum = "3f03df7969f5e723ad31b6c9eadccc209037ac4caa34d8dc259316b05c11e82b" dependencies = [ "bincode", "bs58", - "getrandom 0.1.16", - "js-sys", "serde", - "serde_json", "solana-account", - "solana-bn254", - "solana-client-traits", - "solana-cluster-type", - "solana-commitment-config", - "solana-compute-budget-interface", - "solana-decode-error", - "solana-derivation-path 2.2.1", - "solana-ed25519-program", "solana-epoch-info", "solana-epoch-rewards-hasher", - "solana-feature-set", "solana-fee-structure", - "solana-genesis-config", - "solana-hard-forks", "solana-inflation", - "solana-instruction 2.3.0", "solana-keypair", "solana-message", - "solana-native-token", - "solana-nonce-account", "solana-offchain-message", - "solana-packet", - "solana-poh-config", - "solana-precompile-error", - "solana-precompiles", "solana-presigner", "solana-program", - "solana-program-memory 2.3.1", - "solana-pubkey 2.4.0", - "solana-quic-definitions", - "solana-rent-collector", - "solana-rent-debits", - "solana-reserved-account-keys", - "solana-reward-info", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", + "solana-program-memory", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", "solana-sdk-macro", - "solana-secp256k1-program", - "solana-secp256k1-recover", - "solana-secp256r1-program", - "solana-seed-derivable 2.2.1", - "solana-seed-phrase 2.2.1", + "solana-seed-derivable", + "solana-seed-phrase", "solana-serde", "solana-serde-varint", "solana-short-vec", "solana-shred-version", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "solana-system-transaction", + "solana-signature", + "solana-signer", "solana-time-utils", "solana-transaction", - "solana-transaction-context", - "solana-transaction-error 2.2.1", - "solana-validator-exit", - "thiserror 2.0.12", - "wasm-bindgen", -] - -[[package]] -name = "solana-sdk-ids" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5d8b9cc68d5c88b062a33e23a6466722467dde0035152d8fb1afbcdf350a5f" -dependencies = [ - "solana-pubkey 2.4.0", + "solana-transaction-error", + "thiserror 2.0.17", ] [[package]] @@ -8512,14 +8375,14 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1b6d6aaf60669c592838d382266b173881c65fb1cdec83b37cb8ce7cb89f9ad" dependencies = [ - "solana-pubkey 3.0.0", + "solana-pubkey", ] [[package]] name = "solana-sdk-macro" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86280da8b99d03560f6ab5aca9de2e38805681df34e0bb8f238e69b29433b9df" +checksum = "d6430000e97083460b71d9fbadc52a2ab2f88f53b3a4c5e58c5ae3640a0e8c00" dependencies = [ "bs58", "proc-macro2", @@ -8529,46 +8392,39 @@ dependencies = [ [[package]] name = "solana-secp256k1-program" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0a1caa972414cc78122c32bdae65ac5fe89df7db598585a5cde19d16a20280a" +checksum = "8efa767b0188f577edae7080e8bf080e5db9458e2b6ee5beaa73e2e6bb54e99d" dependencies = [ - "bincode", "digest 0.10.7", - "libsecp256k1", + "k256", "serde", "serde_derive", "sha3", - "solana-feature-set", - "solana-instruction 2.3.0", - "solana-precompile-error", - "solana-sdk-ids 2.2.1", + "solana-signature", ] [[package]] name = "solana-secp256k1-recover" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baa3120b6cdaa270f39444f5093a90a7b03d296d362878f7a6991d6de3bbe496" +checksum = "394a4470477d66296af5217970a905b1c5569032a7732c367fb69e5666c8607e" dependencies = [ - "borsh 1.5.7", - "libsecp256k1", - "solana-define-syscall 2.3.0", - "thiserror 2.0.12", + "k256", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] name = "solana-secp256r1-program" -version = "2.2.4" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce0ae46da3071a900f02d367d99b2f3058fe2e90c5062ac50c4f20cfedad8f0f" +checksum = "445d8e12592631d76fc4dc57858bae66c9fd7cc838c306c62a472547fc9d0ce6" dependencies = [ "bytemuck", "openssl", - "solana-feature-set", - "solana-instruction 2.3.0", - "solana-precompile-error", - "solana-sdk-ids 2.2.1", + "solana-instruction", + "solana-sdk-ids", ] [[package]] @@ -8577,33 +8433,13 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "468aa43b7edb1f9b7b7b686d5c3aeb6630dc1708e86e31343499dd5c4d775183" -[[package]] -name = "solana-seed-derivable" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3beb82b5adb266c6ea90e5cf3967235644848eac476c5a1f2f9283a143b7c97f" -dependencies = [ - "solana-derivation-path 2.2.1", -] - [[package]] name = "solana-seed-derivable" version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff7bdb72758e3bec33ed0e2658a920f1f35dfb9ed576b951d20d63cb61ecd95c" dependencies = [ - "solana-derivation-path 3.0.0", -] - -[[package]] -name = "solana-seed-phrase" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36187af2324f079f65a675ec22b31c24919cb4ac22c79472e85d819db9bbbc15" -dependencies = [ - "hmac 0.12.1", - "pbkdf2 0.11.0", - "sha2 0.10.9", + "solana-derivation-path", ] [[package]] @@ -8619,9 +8455,9 @@ dependencies = [ [[package]] name = "solana-send-transaction-service" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775d4bf50c03ad604bba6dd65d3565dff9fda47255fbdd607b6462a86eb7f94c" +checksum = "9806f5867f972a23e3d7eb33a6f01700c0556d0cbd27e72c966f0b72c4cbba11" dependencies = [ "async-trait", "crossbeam-channel", @@ -8630,50 +8466,39 @@ dependencies = [ "solana-client", "solana-clock", "solana-connection-cache", - "solana-hash 2.3.0", + "solana-hash", "solana-keypair", "solana-measure", "solana-metrics", "solana-nonce-account", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-definitions", "solana-runtime", - "solana-signature 2.3.0", + "solana-signature", "solana-time-utils", "solana-tpu-client-next", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", ] [[package]] name = "solana-serde" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1931484a408af466e14171556a47adaa215953c7f48b24e5f6b0282763818b04" +checksum = "709a93cab694c70f40b279d497639788fc2ccbcf9b4aa32273d4b361322c02dd" dependencies = [ "serde", ] [[package]] name = "solana-serde-varint" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a7e155eba458ecfb0107b98236088c3764a09ddf0201ec29e52a0be40857113" +checksum = "3e5174c57d5ff3c1995f274d17156964664566e2cde18a07bba1586d35a70d3b" dependencies = [ "serde", ] -[[package]] -name = "solana-serialize-utils" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "817a284b63197d2b27afdba829c5ab34231da4a9b4e763466a003c40ca4f535e" -dependencies = [ - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sanitize 2.2.1", -] - [[package]] name = "solana-serialize-utils" version = "3.0.0" @@ -8681,19 +8506,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7665da4f6e07b58c93ef6aaf9fb6a923fd11b0922ffc53ba74c3cadfa490f26" dependencies = [ "solana-instruction-error", - "solana-pubkey 3.0.0", - "solana-sanitize 3.0.0", -] - -[[package]] -name = "solana-sha256-hasher" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0037386961c0d633421f53560ad7c80675c0447cba4d1bb66d60974dd486c7ea" -dependencies = [ - "sha2 0.10.9", - "solana-define-syscall 2.3.0", - "solana-hash 2.3.0", + "solana-pubkey", + "solana-sanitize", ] [[package]] @@ -8704,63 +8518,42 @@ checksum = "a9b912ba6f71cb202c0c3773ec77bf898fa9fe0c78691a2d6859b3b5b8954719" dependencies = [ "sha2 0.10.9", "solana-define-syscall 3.0.0", - "solana-hash 3.0.0", + "solana-hash", ] [[package]] name = "solana-short-vec" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c54c66f19b9766a56fa0057d060de8378676cb64987533fa088861858fc5a69" +checksum = "b69d029da5428fc1c57f7d49101b2077c61f049d4112cd5fb8456567cc7d2638" dependencies = [ "serde", ] [[package]] name = "solana-shred-version" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afd3db0461089d1ad1a78d9ba3f15b563899ca2386351d38428faa5350c60a98" +checksum = "94953e22ca28fe4541a3447d6baeaf519cc4ddc063253bfa673b721f34c136bb" dependencies = [ "solana-hard-forks", - "solana-hash 2.3.0", - "solana-sha256-hasher 2.2.1", + "solana-hash", + "solana-sha256-hasher", ] [[package]] name = "solana-signature" -version = "2.3.0" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64c8ec8e657aecfc187522fc67495142c12f35e55ddeca8698edbb738b8dbd8c" +checksum = "4bb8057cc0e9f7b5e89883d49de6f407df655bb6f3a71d0b7baf9986a2218fd9" dependencies = [ - "ed25519-dalek", + "ed25519-dalek 2.2.0", "five8", "rand 0.8.5", "serde", "serde-big-array", "serde_derive", - "solana-sanitize 2.2.1", -] - -[[package]] -name = "solana-signature" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bb8057cc0e9f7b5e89883d49de6f407df655bb6f3a71d0b7baf9986a2218fd9" -dependencies = [ - "five8", - "solana-sanitize 3.0.0", -] - -[[package]] -name = "solana-signer" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c41991508a4b02f021c1342ba00bcfa098630b213726ceadc7cb032e051975b" -dependencies = [ - "solana-pubkey 2.4.0", - "solana-signature 2.3.0", - "solana-transaction-error 2.2.1", + "solana-sanitize", ] [[package]] @@ -8769,73 +8562,71 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5bfea97951fee8bae0d6038f39a5efcb6230ecdfe33425ac75196d1a1e3e3235" dependencies = [ - "solana-pubkey 3.0.0", - "solana-signature 3.1.0", - "solana-transaction-error 3.0.0", + "solana-pubkey", + "solana-signature", + "solana-transaction-error", ] [[package]] name = "solana-slot-hashes" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c8691982114513763e88d04094c9caa0376b867a29577939011331134c301ce" +checksum = "80a293f952293281443c04f4d96afd9d547721923d596e92b4377ed2360f1746" dependencies = [ "serde", "serde_derive", - "solana-hash 2.3.0", - "solana-sdk-ids 2.2.1", - "solana-sysvar-id 2.2.1", + "solana-hash", + "solana-sdk-ids", + "solana-sysvar-id", ] [[package]] name = "solana-slot-history" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97ccc1b2067ca22754d5283afb2b0126d61eae734fc616d23871b0943b0d935e" +checksum = "f914f6b108f5bba14a280b458d023e3621c9973f27f015a4d755b50e88d89e97" dependencies = [ "bv", "serde", "serde_derive", - "solana-sdk-ids 2.2.1", - "solana-sysvar-id 2.2.1", + "solana-sdk-ids", + "solana-sysvar-id", ] [[package]] name = "solana-stable-layout" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f14f7d02af8f2bc1b5efeeae71bc1c2b7f0f65cd75bcc7d8180f2c762a57f54" +checksum = "1da74507795b6e8fb60b7c7306c0c36e2c315805d16eaaf479452661234685ac" dependencies = [ - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", + "solana-instruction", + "solana-pubkey", ] [[package]] name = "solana-stake-interface" -version = "1.2.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5269e89fde216b4d7e1d1739cf5303f8398a1ff372a81232abbee80e554a838c" +checksum = "f6f912ae679b683365348dea482dbd9468d22ff258b554fd36e3d3683c2122e3" dependencies = [ - "borsh 0.10.4", - "borsh 1.5.7", "num-traits", "serde", "serde_derive", "solana-clock", "solana-cpi", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", + "solana-instruction", + "solana-program-error", + "solana-pubkey", "solana-system-interface", - "solana-sysvar-id 2.2.1", + "solana-sysvar", + "solana-sysvar-id", ] [[package]] name = "solana-stake-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54ee3fde30acddc028581afdf16de9b89091c2bab7b0b5651b7d473273d9a5d5" +checksum = "1325e6afc36a946d97be5e14351df21243ee7171a3eee2b6c967b694317f6abc" dependencies = [ "agave-feature-set", "bincode", @@ -8843,28 +8634,28 @@ dependencies = [ "solana-account", "solana-bincode", "solana-clock", - "solana-config-program-client", + "solana-config-interface", "solana-genesis-config", - "solana-instruction 2.3.0", - "solana-log-collector", + "solana-instruction", "solana-native-token", "solana-packet", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-stake-interface", + "solana-svm-log-collector", + "solana-svm-type-overrides", "solana-sysvar", "solana-transaction-context", - "solana-type-overrides", "solana-vote-interface", ] [[package]] name = "solana-storage-bigtable" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9572d456b99cd320715cd262c7448b93cc4b8424e65d336c3547bb51c33c1ce" +checksum = "92482d15a30c5dc3419c7a7d7cd40f9cb372920879548d0c7a99d299a0e5a859" dependencies = [ "agave-reserved-account-keys", "backoff", @@ -8888,15 +8679,15 @@ dependencies = [ "solana-clock", "solana-message", "solana-metrics", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-serde", - "solana-signature 2.3.0", + "solana-signature", "solana-storage-proto", "solana-time-utils", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", "tonic", "zstd", @@ -8904,9 +8695,9 @@ dependencies = [ [[package]] name = "solana-storage-proto" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47cc921c7daf2bf3b5722b0e0889775950011f623a92bdd6fc277f51945f7918" +checksum = "0a9b97a56c554f6b9e92b70b64ff6faf909ee087eb68785b64590c23a1a8d397" dependencies = [ "bincode", "bs58", @@ -8914,25 +8705,26 @@ dependencies = [ "protobuf-src", "serde", "solana-account-decoder", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-message", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-serde", - "solana-signature 2.3.0", + "solana-signature", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status", "tonic-build", ] [[package]] name = "solana-streamer" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d7b33dfd0a99f0537154b451d9f70274c431d85a997c6e0128409b413f8dffd" +checksum = "b85b5bc5e6e8e96c09ee3b5a6d5cc4c811f0f4f0e96dcc86ce45bdab37bd741b" dependencies = [ + "arc-swap", "async-channel", "bytes", "crossbeam-channel", @@ -8946,42 +8738,42 @@ dependencies = [ "libc", "log", "nix", + "num_cpus", "pem", "percentage", "quinn", "quinn-proto", "rand 0.8.5", - "rustls 0.23.29", + "rustls 0.23.33", "smallvec", - "socket2 0.5.10", + "socket2 0.6.0", "solana-keypair", "solana-measure", "solana-metrics", "solana-net-utils", "solana-packet", "solana-perf", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-definitions", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-time-utils", "solana-tls-utils", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-metrics-tracker", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", "x509-parser", ] [[package]] name = "solana-svm" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bb3f23bd59479b086521d5ebc2074857a21b9fd7f13f3561cf0a784a860eb2e" +checksum = "12f0c55efcd35d5f6d443cc6a631bb6162e84ac049f9df38555801d8dd80a78a" dependencies = [ "ahash 0.8.11", - "itertools 0.12.1", "log", "percentage", "serde", @@ -8989,108 +8781,123 @@ dependencies = [ "solana-account", "solana-clock", "solana-fee-structure", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", + "solana-hash", + "solana-instruction", + "solana-instructions-sysvar", "solana-loader-v3-interface", "solana-loader-v4-interface", "solana-loader-v4-program", - "solana-log-collector", - "solana-measure", "solana-message", "solana-nonce", "solana-nonce-account", "solana-program-entrypoint", - "solana-program-pack 2.2.1", + "solana-program-pack", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", - "solana-rent-collector", - "solana-rent-debits", - "solana-sdk-ids 2.2.1", - "solana-slot-hashes", + "solana-sdk-ids", "solana-svm-callback", "solana-svm-feature-set", - "solana-svm-rent-collector", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", "solana-svm-transaction", + "solana-svm-type-overrides", "solana-system-interface", - "solana-sysvar-id 2.2.1", - "solana-timings", + "solana-sysvar-id", "solana-transaction-context", - "solana-transaction-error 2.2.1", - "solana-type-overrides", + "solana-transaction-error", "spl-generic-token", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-svm-callback" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4aa58b3b9410f377b572cb2e7fd1910900295bce47b9dcdbcbc42569a2b192c9" +checksum = "a591bceb6b4ed365b6bddaace64469a736c5f2ab6ac0b6f7171c39c275977588" dependencies = [ "solana-account", + "solana-clock", "solana-precompile-error", - "solana-pubkey 2.4.0", + "solana-pubkey", ] [[package]] name = "solana-svm-feature-set" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75d9e63442629ecf438f9fbb5647b92c1d7f66c5eb1d46bcfa4eb34cd457f86" +checksum = "0db171398f959c9a5b4bd1a918d2f2a096a32760c9c633b6f19e09155e124151" [[package]] -name = "solana-svm-rent-collector" -version = "2.3.4" +name = "solana-svm-log-collector" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0012625e8569e94c044bed0c466ee6dab9af5a821d279933fbc343e38b842cc9" +checksum = "f38b5f90d905995fd99069c895498c27542d367825f67dd8a760e458b4859cf8" dependencies = [ - "solana-account", - "solana-clock", - "solana-pubkey 2.4.0", - "solana-rent", - "solana-rent-collector", - "solana-sdk-ids 2.2.1", - "solana-transaction-context", - "solana-transaction-error 2.2.1", + "log", +] + +[[package]] +name = "solana-svm-measure" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b057ed8bcd36b2ea591dc6d9fcd4684256efbc10293abc6218c4bb9a81919d5a" + +[[package]] +name = "solana-svm-timings" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14a893daf8425e56595827dde03bef1b7aa38f5dec6772c0053eb92e41a636e6" +dependencies = [ + "eager", + "enum-iterator", + "solana-pubkey", ] [[package]] name = "solana-svm-transaction" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc3d7bb7e0d630d28295b1a51b240a32922f598b6a72b3b821c7d6c9463702e" +checksum = "0126d08c8bdc526b669d2fc92f3b61570bb557618614f1b98a7a6e8e9547d624" dependencies = [ - "solana-hash 2.3.0", + "solana-hash", "solana-message", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-signature 2.3.0", + "solana-pubkey", + "solana-sdk-ids", + "solana-signature", "solana-transaction", ] +[[package]] +name = "solana-svm-type-overrides" +version = "3.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afca78aac8c36a41b3bdd00f12eed423fcc7efe9305d261004c52a8fd1439187" +dependencies = [ + "rand 0.8.5", +] + [[package]] name = "solana-system-interface" -version = "1.0.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94d7c18cb1a91c6be5f5a8ac9276a1d7c737e39a21beba9ea710ab4b9c63bc90" +checksum = "4e1790547bfc3061f1ee68ea9d8dc6c973c02a163697b24263a8e9f2e6d4afa2" dependencies = [ - "js-sys", "num-traits", "serde", "serde_derive", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "wasm-bindgen", + "solana-instruction", + "solana-msg", + "solana-program-error", + "solana-pubkey", ] [[package]] name = "solana-system-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17a208cce4205cac8386ea2750ab8cd453f469a0ef55769cf0e4abf78ace735b" +checksum = "d536678eb0110d98adf5d4fbf73b5b304ac8809bc1946c0ca095dd19e1f026ce" dependencies = [ "bincode", "log", @@ -9099,40 +8906,40 @@ dependencies = [ "solana-account", "solana-bincode", "solana-fee-calculator", - "solana-instruction 2.3.0", - "solana-log-collector", + "solana-instruction", "solana-nonce", "solana-nonce-account", "solana-packet", "solana-program-runtime", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-svm-type-overrides", "solana-system-interface", "solana-sysvar", "solana-transaction-context", - "solana-type-overrides", ] [[package]] name = "solana-system-transaction" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bd98a25e5bcba8b6be8bcbb7b84b24c2a6a8178d7fb0e3077a916855ceba91a" +checksum = "a31b5699ec533621515e714f1533ee6b3b0e71c463301d919eb59b8c1e249d30" dependencies = [ - "solana-hash 2.3.0", + "solana-hash", "solana-keypair", "solana-message", - "solana-pubkey 2.4.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-signer", "solana-system-interface", "solana-transaction", ] [[package]] name = "solana-sysvar" -version = "2.3.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8c3595f95069f3d90f275bb9bd235a1973c4d059028b0a7f81baca2703815db" +checksum = "63205e68d680bcc315337dec311b616ab32fea0a612db3b883ce4de02e0953f9" dependencies = [ "base64 0.22.1", "bincode", @@ -9141,38 +8948,25 @@ dependencies = [ "lazy_static", "serde", "serde_derive", - "solana-account-info 2.3.0", + "solana-account-info", "solana-clock", - "solana-define-syscall 2.3.0", + "solana-define-syscall 3.0.0", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-calculator", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", + "solana-hash", + "solana-instruction", "solana-last-restart-slot", "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-pubkey 2.4.0", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", "solana-rent", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-sdk-macro", "solana-slot-hashes", "solana-slot-history", - "solana-stake-interface", - "solana-sysvar-id 2.2.1", -] - -[[package]] -name = "solana-sysvar-id" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5762b273d3325b047cfda250787f8d796d781746860d5d0a746ee29f3e8812c1" -dependencies = [ - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", + "solana-sysvar-id", ] [[package]] @@ -9181,15 +8975,15 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5051bc1a16d5d96a96bc33b5b2ec707495c48fe978097bdaba68d3c47987eb32" dependencies = [ - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.0.0", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] name = "solana-test-validator" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db02e03f888267b86a33d271dc3a2e01d98cb8a67320a5b358bc2b8de772c58c" +checksum = "5c2922c3cdbc317137d3598ff3014df9b0c97f88974d87929012f49ac7affac0" dependencies = [ "agave-feature-set", "base64 0.22.1", @@ -9211,93 +9005,55 @@ dependencies = [ "solana-fee-calculator", "solana-geyser-plugin-manager", "solana-gossip", - "solana-instruction 2.3.0", + "solana-inflation", + "solana-instruction", "solana-keypair", "solana-ledger", "solana-loader-v3-interface", - "solana-logger 2.3.1", + "solana-logger", "solana-message", "solana-native-token", "solana-net-utils", "solana-program-test", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", "solana-rpc", "solana-rpc-client", "solana-rpc-client-api", "solana-runtime", - "solana-sdk-ids 2.2.1", - "solana-signer 2.2.1", + "solana-sdk-ids", + "solana-signer", "solana-streamer", "solana-tpu-client", + "solana-transaction", "solana-validator-exit", "tokio", ] -[[package]] -name = "solana-thin-client" -version = "2.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597916274841b9491e1057034fcca199c8c6dcb2437295194608c91da15fb545" -dependencies = [ - "bincode", - "log", - "rayon", - "solana-account", - "solana-client-traits", - "solana-clock", - "solana-commitment-config", - "solana-connection-cache", - "solana-epoch-info", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-keypair", - "solana-message", - "solana-pubkey 2.4.0", - "solana-rpc-client", - "solana-rpc-client-api", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "solana-system-interface", - "solana-transaction", - "solana-transaction-error 2.2.1", -] - [[package]] name = "solana-time-utils" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af261afb0e8c39252a04d026e3ea9c405342b08c871a2ad8aa5448e068c784c" - -[[package]] -name = "solana-timings" -version = "2.3.4" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e6b2450d6c51c25b57cc067e0ab93015feb27347c34a81ddd540f9979a2b125" -dependencies = [ - "eager", - "enum-iterator", - "solana-pubkey 2.4.0", -] +checksum = "0ced92c60aa76ec4780a9d93f3bd64dfa916e1b998eacc6f1c110f3f444f02c9" [[package]] name = "solana-tls-utils" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261b7aeeca06bbbe05f8c82913c2415389efc46435de9932a71839439a614c2f" +checksum = "c0e7fbf21da865ffedf59e3efa96a653981e68793782482e095887c0779a16e1" dependencies = [ - "rustls 0.23.29", + "rustls 0.23.33", "solana-keypair", - "solana-pubkey 2.4.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-signer", "x509-parser", ] [[package]] name = "solana-tpu-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b70691bb3ef570f9f9fbf1fcfda34618d1eb59dcab2fae2d77e87eaca0a76f" +checksum = "0d6681844a1d01dbea9c5b13f9b106e8e7849c9809da06f3727d748e9bb7e3f7" dependencies = [ "async-trait", "bincode", @@ -9314,30 +9070,30 @@ dependencies = [ "solana-measure", "solana-message", "solana-net-utils", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-pubsub-client", "solana-quic-definitions", "solana-rpc-client", "solana-rpc-client-api", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-transaction", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-tpu-client-next" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec22dff31f318350328d5ba7208933b1f7489b5e089c2fb1621c4f2b7371b4a" +checksum = "0a7df9eb5abe66704793f981771b86d565f8920bce1fda6583e013305b10a18f" dependencies = [ "async-trait", "log", "lru", "quinn", - "rustls 0.23.29", + "rustls 0.23.33", "solana-clock", "solana-connection-cache", "solana-keypair", @@ -9349,65 +9105,48 @@ dependencies = [ "solana-time-utils", "solana-tls-utils", "solana-tpu-client", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", ] [[package]] name = "solana-transaction" -version = "2.2.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abec848d081beb15a324c633cd0e0ab33033318063230389895cae503ec9b544" +checksum = "2db6ac3984042d9248fd9b06761ece438ed9ba412c001240052ce6216fee3141" dependencies = [ "bincode", "serde", "serde_derive", - "solana-bincode", - "solana-feature-set", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-keypair", + "solana-hash", + "solana-instruction", "solana-message", - "solana-precompiles", - "solana-pubkey 2.4.0", - "solana-sanitize 2.2.1", - "solana-sdk-ids 2.2.1", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", "solana-short-vec", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "solana-system-interface", - "solana-transaction-error 2.2.1", - "wasm-bindgen", + "solana-signature", + "solana-signer", + "solana-transaction-error", ] [[package]] name = "solana-transaction-context" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a3005a53f202a6b1b21068733748c7a0c2e4e8f5ff4a25032d59df7f5deec0b" +checksum = "cd6e951b985f5cb926592a72f1c8d63cbda317017d20c7e225ac30c4e736424f" dependencies = [ "bincode", "serde", "serde_derive", "solana-account", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", - "solana-pubkey 2.4.0", + "solana-instruction", + "solana-instructions-sysvar", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", -] - -[[package]] -name = "solana-transaction-error" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "222a9dc8fdb61c6088baab34fc3a8b8473a03a7a5fd404ed8dd502fa79b67cb1" -dependencies = [ - "serde", - "serde_derive", - "solana-instruction 2.3.0", - "solana-sanitize 2.2.1", + "solana-sbpf", + "solana-sdk-ids", ] [[package]] @@ -9416,15 +9155,17 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4222065402340d7e6aec9dc3e54d22992ddcf923d91edcd815443c2bfca3144a" dependencies = [ + "serde", + "serde_derive", "solana-instruction-error", - "solana-sanitize 3.0.0", + "solana-sanitize", ] [[package]] name = "solana-transaction-metrics-tracker" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0b52d7bdfb64dba22d1129b93a2f959ef645561b777f0c5897019f5754250b6" +checksum = "d4258281f3dc723dfe7a42377e0c4ad87edb51f97b0a9f403401fbd263a61563" dependencies = [ "base64 0.22.1", "bincode", @@ -9433,20 +9174,20 @@ dependencies = [ "solana-packet", "solana-perf", "solana-short-vec", - "solana-signature 2.3.0", + "solana-signature", ] [[package]] name = "solana-transaction-status" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c6d87ced5a2b5d4c84e21d73c73df60e7d0f0d0485f556c0d4bd0fd5f2ca07f" +checksum = "95a714ee49082be501771f0202c7fb2f391a853e10825785b18167a879342cb2" dependencies = [ "Inflector", "agave-reserved-account-keys", "base64 0.22.1", "bincode", - "borsh 1.5.7", + "borsh", "bs58", "log", "serde", @@ -9455,36 +9196,36 @@ dependencies = [ "solana-account-decoder", "solana-address-lookup-table-interface", "solana-clock", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-loader-v2-interface", "solana-loader-v3-interface", "solana-message", - "solana-program-option 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-option", + "solana-pubkey", "solana-reward-info", - "solana-sdk-ids 2.2.1", - "solana-signature 2.3.0", + "solana-sdk-ids", + "solana-signature", "solana-stake-interface", "solana-system-interface", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-transaction-status-client-types", "solana-vote-interface", - "spl-associated-token-account", - "spl-memo", - "spl-token", - "spl-token-2022 8.0.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", - "thiserror 2.0.12", + "spl-associated-token-account-interface", + "spl-memo-interface", + "spl-token-2022-interface 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "spl-token-group-interface", + "spl-token-interface", + "spl-token-metadata-interface", + "thiserror 2.0.17", ] [[package]] name = "solana-transaction-status-client-types" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4796a3c2bdbef21867114aaa200e04fe0a7208d81d1c2bf3e99fabc285bd925" +checksum = "ee3d7557295320bf7bf591f1703df483bd9ee69c2b750072abb0657d2915046c" dependencies = [ "base64 0.22.1", "bincode", @@ -9494,20 +9235,22 @@ dependencies = [ "serde_json", "solana-account-decoder-client-types", "solana-commitment-config", + "solana-instruction", "solana-message", + "solana-pubkey", "solana-reward-info", - "solana-signature 2.3.0", + "solana-signature", "solana-transaction", "solana-transaction-context", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", ] [[package]] name = "solana-turbine" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c593dd3ab231ec70abb00e153933c60f5a39039b698fcfb05c2a8d4012e8633" +checksum = "e7a49b8051317188d8ae01059c8c68e10055e7edf42fbfb512487d0f6e43d29c" dependencies = [ "agave-feature-set", "agave-xdp", @@ -9524,71 +9267,63 @@ dependencies = [ "rand 0.8.5", "rand_chacha 0.3.1", "rayon", - "rustls 0.23.29", + "rustls 0.23.33", "solana-clock", "solana-cluster-type", "solana-entry", "solana-gossip", - "solana-hash 2.3.0", + "solana-hash", "solana-keypair", "solana-ledger", "solana-measure", "solana-metrics", "solana-native-token", "solana-net-utils", + "solana-nohash-hasher", "solana-perf", "solana-poh", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-quic-client", "solana-rayon-threadlimit", "solana-rpc", "solana-rpc-client-api", "solana-runtime", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-signature", + "solana-signer", "solana-streamer", "solana-system-transaction", "solana-time-utils", "solana-tls-utils", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "static_assertions", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", ] -[[package]] -name = "solana-type-overrides" -version = "2.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f826f38dba90fcd24832edb75394a7140c5816b2416d93aad50edf33a0a93a" -dependencies = [ - "rand 0.8.5", -] - [[package]] name = "solana-udp-client" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb8fdccd1bd4972bdd632370ee0e353f1eec4c9ee7c49bac70a5f804b6eb1816" +checksum = "747532f7fe9fd6b96f0c5dfce2c98365e9d2ab98788122f31f84dcc5d34eec4f" dependencies = [ "async-trait", "solana-connection-cache", "solana-keypair", "solana-net-utils", "solana-streamer", - "solana-transaction-error 2.2.1", - "thiserror 2.0.12", + "solana-transaction-error", + "thiserror 2.0.17", "tokio", ] [[package]] name = "solana-unified-scheduler-logic" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96fb2a227e734de3200c12a5f57ad75dd9af1f798ec8ead564b6fe923ad9bcc1" +checksum = "567ab6b9e87318b1be24f3df95d0089db50e4864621c86e06fb2d1c9a7f2cdcf" dependencies = [ "assert_matches", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime-transaction", "solana-transaction", "static_assertions", @@ -9597,9 +9332,9 @@ dependencies = [ [[package]] name = "solana-unified-scheduler-pool" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72daba7fe36fd40d9cf82344f4c2b5d039f1133707fa69ceb12c35302163e7f0" +checksum = "66d116dd081ee0cc8096ee78e0e147e17074fec4c36e52ea45d30e5bfd0b5c3d" dependencies = [ "agave-banking-stage-ingress-types", "aquamarine", @@ -9615,14 +9350,15 @@ dependencies = [ "solana-clock", "solana-cost-model", "solana-ledger", + "solana-metrics", "solana-poh", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime", "solana-runtime-transaction", "solana-svm", - "solana-timings", + "solana-svm-timings", "solana-transaction", - "solana-transaction-error 2.2.1", + "solana-transaction-error", "solana-unified-scheduler-logic", "static_assertions", "trait-set", @@ -9632,30 +9368,30 @@ dependencies = [ [[package]] name = "solana-validator-exit" -version = "2.2.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bbf6d7a3c0b28dd5335c52c0e9eae49d0ae489a8f324917faf0ded65a812c1d" +checksum = "c5d2face763df5afeaa9509b9019968860e69cc1531ec8b4a2e6c7b702204d5a" [[package]] name = "solana-version" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f94a680221a357f8f69d7190b6152be6d5a19289bee1092d362493ecf351506b" +checksum = "107c352fb2f329791d3637fcb84f67e597f79553f218760742872c66abac372e" dependencies = [ "agave-feature-set", "rand 0.8.5", "semver", "serde", "serde_derive", - "solana-sanitize 2.2.1", + "solana-sanitize", "solana-serde-varint", ] [[package]] name = "solana-vote" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "979db3da03376f1cb179db2fb8e21caa753028b3c1945ff40c78726793d7a331" +checksum = "0afb783c280c43eda4113c7abce42701d3b125f713937f1effee4c2590416717" dependencies = [ "itertools 0.12.1", "log", @@ -9664,50 +9400,52 @@ dependencies = [ "solana-account", "solana-bincode", "solana-clock", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-packet", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-serialize-utils 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-pubkey", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-signature", + "solana-signer", "solana-svm-transaction", "solana-transaction", "solana-vote-interface", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-vote-interface" -version = "2.2.5" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef4f08746f154458f28b98330c0d55cb431e2de64ee4b8efc98dcbe292e0672b" +checksum = "66631ddbe889dab5ec663294648cd1df395ec9df7a4476e7b3e095604cfdb539" dependencies = [ "bincode", + "cfg_eval", "num-derive", "num-traits", "serde", "serde_derive", + "serde_with", "solana-clock", - "solana-decode-error", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", + "solana-hash", + "solana-instruction", + "solana-instruction-error", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-serde-varint", - "solana-serialize-utils 2.2.1", + "solana-serialize-utils", "solana-short-vec", "solana-system-interface", ] [[package]] name = "solana-vote-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55a0e62cf9bc0483152abac9338d067a961f2cc3f4bd8b321129d15db499bb64" +checksum = "584786205560c911c31d56487da21de5c9b13b22e3380a4529cda6a4fb45a84b" dependencies = [ "agave-feature-set", "bincode", @@ -9720,27 +9458,27 @@ dependencies = [ "solana-bincode", "solana-clock", "solana-epoch-schedule", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", "solana-packet", "solana-program-runtime", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", - "solana-signer 2.2.1", + "solana-sdk-ids", + "solana-signer", "solana-slot-hashes", "solana-transaction", "solana-transaction-context", "solana-vote-interface", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "solana-wen-restart" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f7717e6bdd8c21188489bf02c98d0ee342a3871e4067f02784313b5396ae136" +checksum = "40b16c16bd8a5460cf8e5ed7f1cc095b5d0d3b60bb87eefdf5749e378634917f" dependencies = [ "anyhow", "log", @@ -9752,13 +9490,13 @@ dependencies = [ "solana-clock", "solana-entry", "solana-gossip", - "solana-hash 2.3.0", + "solana-hash", "solana-ledger", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-runtime", "solana-shred-version", + "solana-svm-timings", "solana-time-utils", - "solana-timings", "solana-vote", "solana-vote-interface", "solana-vote-program", @@ -9766,55 +9504,19 @@ dependencies = [ [[package]] name = "solana-zk-elgamal-proof-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c857b47345e9017b7906579b5742381de76a9b4785f5d9d3a997a42211825245" +checksum = "dbed18c3299d434b33b0d5aaee0cc4bcc3d1ea51516488819e261dea35c324e6" dependencies = [ "agave-feature-set", "bytemuck", "num-derive", "num-traits", - "solana-instruction 2.3.0", - "solana-log-collector", + "solana-instruction", "solana-program-runtime", - "solana-sdk-ids 2.2.1", - "solana-zk-sdk 2.3.4", -] - -[[package]] -name = "solana-zk-sdk" -version = "2.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c13cbe908b9142274d5cdedc57b6bbc705181d05c7a2c7df21a76ad93463119" -dependencies = [ - "aes-gcm-siv", - "base64 0.22.1", - "bincode", - "bytemuck", - "bytemuck_derive", - "curve25519-dalek 4.1.3", - "itertools 0.12.1", - "js-sys", - "merlin", - "num-derive", - "num-traits", - "rand 0.8.5", - "serde", - "serde_derive", - "serde_json", - "sha3", - "solana-derivation-path 2.2.1", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-seed-derivable 2.2.1", - "solana-seed-phrase 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", - "subtle", - "thiserror 2.0.12", - "wasm-bindgen", - "zeroize", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-zk-sdk", ] [[package]] @@ -9840,42 +9542,42 @@ dependencies = [ "serde_derive", "serde_json", "sha3", - "solana-derivation-path 3.0.0", - "solana-instruction 3.0.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.0.0", - "solana-seed-derivable 3.0.0", - "solana-seed-phrase 3.0.0", - "solana-signature 3.1.0", - "solana-signer 3.0.0", + "solana-derivation-path", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", "subtle", - "thiserror 2.0.12", + "thiserror 2.0.17", "wasm-bindgen", "zeroize", ] [[package]] name = "solana-zk-token-proof-program" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3441d519b441143d4f8a44d958a160c868e22abc42e007d428264b4392267bc9" +checksum = "7441cfffde254bfb4c28658284624951dc1e08d4fa9e3c547b31673150bc4c92" dependencies = [ "agave-feature-set", "bytemuck", "num-derive", "num-traits", - "solana-instruction 2.3.0", - "solana-log-collector", + "solana-instruction", "solana-program-runtime", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", + "solana-svm-log-collector", "solana-zk-token-sdk", ] [[package]] name = "solana-zk-token-sdk" -version = "2.3.4" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75b31849ca786c2da9c4d1a7292b33d5f8e697626b9eb5a53adf759a8409f6e" +checksum = "8aea259ea80581de2af20a75e433ad92de410348f438b32df2ba41761e1dcc81" dependencies = [ "aes-gcm-siv", "base64 0.22.1", @@ -9892,17 +9594,17 @@ dependencies = [ "serde_derive", "serde_json", "sha3", - "solana-curve25519", - "solana-derivation-path 2.2.1", - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-seed-derivable 2.2.1", - "solana-seed-phrase 2.2.1", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-curve25519 3.0.7", + "solana-derivation-path", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", "subtle", - "thiserror 2.0.12", + "thiserror 2.0.17", "zeroize", ] @@ -9922,41 +9624,24 @@ dependencies = [ ] [[package]] -name = "spl-associated-token-account" -version = "7.0.0" +name = "spki" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae179d4a26b3c7a20c839898e6aed84cb4477adf108a366c95532f058aea041b" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" dependencies = [ - "borsh 1.5.7", - "num-derive", - "num-traits", - "solana-program", - "spl-associated-token-account-client", - "spl-token", - "spl-token-2022 8.0.1", - "thiserror 2.0.12", + "base64ct", + "der", ] [[package]] -name = "spl-associated-token-account-client" +name = "spl-associated-token-account-interface" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6f8349dbcbe575f354f9a533a21f272f3eb3808a49e2fdc1c34393b88ba76cb" -dependencies = [ - "solana-instruction 2.3.0", - "solana-pubkey 2.4.0", -] - -[[package]] -name = "spl-discriminator" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7398da23554a31660f17718164e31d31900956054f54f52d5ec1be51cb4f4b3" +checksum = "e6433917b60441d68d99a17e121d9db0ea15a9a69c0e5afa34649cf5ba12612f" dependencies = [ - "bytemuck", - "solana-program-error 2.2.1", - "solana-sha256-hasher 2.2.1", - "spl-discriminator-derive", + "borsh", + "solana-instruction", + "solana-pubkey", ] [[package]] @@ -9966,8 +9651,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d48cc11459e265d5b501534144266620289720b4c44522a47bc6b63cd295d2f3" dependencies = [ "bytemuck", - "solana-program-error 3.0.0", - "solana-sha256-hasher 3.0.0", + "solana-program-error", + "solana-sha256-hasher", "spl-discriminator-derive", ] @@ -9995,109 +9680,58 @@ dependencies = [ "thiserror 1.0.69", ] -[[package]] -name = "spl-elgamal-registry" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65edfeed09cd4231e595616aa96022214f9c9d2be02dea62c2b30d5695a6833a" -dependencies = [ - "bytemuck", - "solana-account-info 2.3.0", - "solana-cpi", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "solana-rent", - "solana-sdk-ids 2.2.1", - "solana-system-interface", - "solana-sysvar", - "solana-zk-sdk 2.3.4", - "spl-pod 0.5.1", - "spl-token-confidential-transfer-proof-extraction 0.3.0", -] - [[package]] name = "spl-elgamal-registry" version = "0.3.0" dependencies = [ "bytemuck", - "solana-account-info 2.3.0", + "solana-account-info", "solana-cpi", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", + "solana-instruction", + "solana-msg", "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-error", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-security-txt", "solana-system-interface", "solana-sysvar", - "solana-zk-sdk 2.3.4", - "spl-pod 0.5.1", - "spl-token-confidential-transfer-proof-extraction 0.4.1", + "solana-zk-sdk", + "spl-pod", + "spl-token-confidential-transfer-proof-extraction 0.5.0", ] [[package]] name = "spl-generic-token" -version = "1.0.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "741a62a566d97c58d33f9ed32337ceedd4e35109a686e31b1866c5dfa56abddc" +checksum = "233df81b75ab99b42f002b5cdd6e65a7505ffa930624f7096a7580a56765e9cf" dependencies = [ "bytemuck", - "solana-pubkey 2.4.0", + "solana-pubkey", ] [[package]] -name = "spl-instruction-padding" -version = "0.3.0" +name = "spl-instruction-padding-interface" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5352d4c4a6d455fc96320342aeab9f522f057e2666ebe40b2e079d054339ab8f" +checksum = "9c3a77c0c9b83b111ee29bc6aa6eaab54b82e1ed5db40ba9786527b80283c3ef" dependencies = [ "num_enum", - "solana-account-info 2.3.0", - "solana-cpi", - "solana-instruction 2.3.0", - "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", -] - -[[package]] -name = "spl-memo" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f09647c0974e33366efeb83b8e2daebb329f0420149e74d3a4bd2c08cf9f7cb" -dependencies = [ - "solana-account-info 2.3.0", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", + "solana-instruction", + "solana-program-error", + "solana-pubkey", ] [[package]] -name = "spl-pod" -version = "0.5.1" +name = "spl-memo-interface" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d994afaf86b779104b4a95ba9ca75b8ced3fdb17ee934e38cb69e72afbe17799" +checksum = "3d4e2aedd58f858337fa609af5ad7100d4a243fdaf6a40d6eb4c28c5f19505d3" dependencies = [ - "borsh 1.5.7", - "bytemuck", - "bytemuck_derive", - "num-derive", - "num-traits", - "serde", - "solana-decode-error", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-program-option 2.2.1", - "solana-pubkey 2.4.0", - "solana-zk-sdk 2.3.4", - "thiserror 2.0.12", + "solana-instruction", + "solana-pubkey", ] [[package]] @@ -10106,40 +9740,40 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1233fdecd7461611d69bb87bc2e95af742df47291975d21232a0be8217da9de" dependencies = [ - "borsh 1.5.7", + "borsh", "bytemuck", "bytemuck_derive", "num-derive", "num-traits", "num_enum", "serde", - "solana-program-error 3.0.0", - "solana-program-option 3.0.0", - "solana-pubkey 3.0.0", - "solana-zk-sdk 4.0.0", - "thiserror 2.0.12", + "solana-program-error", + "solana-program-option", + "solana-pubkey", + "solana-zk-sdk", + "thiserror 2.0.17", ] [[package]] name = "spl-program-error" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cdebc8b42553070b75aa5106f071fef2eb798c64a7ec63375da4b1f058688c6" +checksum = "9c4f6cf26cb6768110bf024bc7224326c720d711f7ad25d16f40f6cee40edb2d" dependencies = [ "num-derive", "num-traits", - "solana-decode-error", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", + "num_enum", + "solana-msg", + "solana-program-error", "spl-program-error-derive", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "spl-program-error-derive" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2539e259c66910d78593475540e8072f0b10f0f61d7607bbf7593899ed52d0" +checksum = "9ec8965aa4dc6c74701cbb48b9cad5af35b9a394514934949edbb357b78f840d" dependencies = [ "proc-macro2", "quote", @@ -10149,117 +9783,44 @@ dependencies = [ [[package]] name = "spl-record" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1288810a85bbe7e62ee3c6f7b8119e8c1016e90351411d12e4132e98c7ca7344" +checksum = "fda0eb42ca6387770d7f0e764ecd8fa863f4529e9ff35fbf146576b5f4372587" dependencies = [ "bytemuck", "num-derive", "num-traits", - "solana-account-info 2.3.0", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", + "solana-account-info", + "solana-instruction", + "solana-msg", "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", + "solana-program-error", + "solana-program-pack", + "solana-pubkey", "solana-rent", - "thiserror 1.0.69", + "solana-security-txt", + "thiserror 2.0.17", ] [[package]] name = "spl-tlv-account-resolution" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1408e961215688715d5a1063cbdcf982de225c45f99c82b4f7d7e1dd22b998d7" -dependencies = [ - "bytemuck", - "num-derive", - "num-traits", - "solana-account-info 2.3.0", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "spl-discriminator 0.4.1", - "spl-pod 0.5.1", - "spl-program-error", - "spl-type-length-value 0.8.0", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-token" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053067c6a82c705004f91dae058b11b4780407e9ccd6799dc9e7d0fab5f242da" -dependencies = [ - "arrayref", - "bytemuck", - "num-derive", - "num-traits", - "num_enum", - "solana-account-info 2.3.0", - "solana-cpi", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", - "solana-rent", - "solana-sdk-ids 2.2.1", - "solana-sysvar", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-token-2022" -version = "8.0.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31f0dfbb079eebaee55e793e92ca5f433744f4b71ee04880bfd6beefba5973e5" +checksum = "6927f613c9d7ce20835d3cefb602137cab2518e383a047c0eaa58054a60644c8" dependencies = [ - "arrayref", "bytemuck", "num-derive", "num-traits", "num_enum", - "solana-account-info 2.3.0", - "solana-clock", - "solana-cpi", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-native-token", - "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", - "solana-rent", - "solana-sdk-ids 2.2.1", - "solana-security-txt", - "solana-system-interface", - "solana-sysvar", - "solana-zk-sdk 2.3.4", - "spl-elgamal-registry 0.2.0", - "spl-memo", - "spl-pod 0.5.1", - "spl-token", - "spl-token-confidential-transfer-ciphertext-arithmetic 0.3.1", - "spl-token-confidential-transfer-proof-extraction 0.3.0", - "spl-token-confidential-transfer-proof-generation 0.4.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", - "spl-transfer-hook-interface", - "spl-type-length-value 0.8.0", - "thiserror 2.0.12", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "spl-discriminator", + "spl-pod", + "spl-program-error", + "spl-type-length-value", + "thiserror 2.0.17", ] [[package]] @@ -10279,49 +9840,47 @@ dependencies = [ "serde_with", "serial_test", "solana-account", - "solana-account-info 2.3.0", + "solana-account-info", "solana-clock", "solana-cpi", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-keypair", - "solana-msg 2.2.1", + "solana-msg", "solana-program-entrypoint", - "solana-program-error 2.2.1", - "solana-program-memory 2.3.1", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", + "solana-program-error", + "solana-program-memory", + "solana-program-option", + "solana-program-pack", "solana-program-test", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rent", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-security-txt", - "solana-signer 2.2.1", + "solana-signer", "solana-system-interface", "solana-sysvar", "solana-transaction", - "solana-transaction-error 2.2.1", - "solana-zk-sdk 2.3.4", - "spl-elgamal-registry 0.3.0", - "spl-memo", - "spl-pod 0.5.1", + "solana-transaction-error", + "solana-zk-sdk", + "spl-elgamal-registry", + "spl-memo-interface", + "spl-pod", "spl-tlv-account-resolution", - "spl-token-2022-interface 1.0.0", - "spl-token-confidential-transfer-ciphertext-arithmetic 0.3.1", - "spl-token-confidential-transfer-proof-extraction 0.4.1", - "spl-token-confidential-transfer-proof-generation 0.4.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", + "spl-token-2022-interface 2.0.0", + "spl-token-confidential-transfer-ciphertext-arithmetic", + "spl-token-confidential-transfer-proof-extraction 0.5.0", + "spl-token-confidential-transfer-proof-generation 0.5.0", + "spl-token-group-interface", + "spl-token-metadata-interface", "spl-transfer-hook-interface", "test-case", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] name = "spl-token-2022-interface" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62d7ae2ee6b856f8ddcbdc3b3a9f4d2141582bbe150f93e5298ee97e0251fa04" +version = "2.0.0" dependencies = [ "arrayref", "base64 0.22.1", @@ -10329,58 +9888,57 @@ dependencies = [ "num-derive", "num-traits", "num_enum", + "proptest", "serde", + "serde_json", "serde_with", - "solana-account-info 2.3.0", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-program-option 2.2.1", - "solana-program-pack 2.2.1", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-zk-sdk 2.3.4", - "spl-pod 0.5.1", - "spl-token-confidential-transfer-proof-extraction 0.4.1", - "spl-token-confidential-transfer-proof-generation 0.4.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", - "spl-type-length-value 0.8.0", - "thiserror 2.0.12", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-sdk-ids", + "solana-zk-sdk", + "spl-pod", + "spl-token-2022-interface 2.0.0", + "spl-token-confidential-transfer-proof-extraction 0.5.0", + "spl-token-confidential-transfer-proof-generation 0.5.0", + "spl-token-group-interface", + "spl-token-interface", + "spl-token-metadata-interface", + "spl-type-length-value", + "strum 0.24.1", + "strum_macros 0.24.3", + "thiserror 2.0.17", ] [[package]] name = "spl-token-2022-interface" version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0888304af6b3d839e435712e6c84025e09513017425ff62045b6b8c41feb77d9" dependencies = [ "arrayref", - "base64 0.22.1", "bytemuck", "num-derive", "num-traits", "num_enum", - "proptest", - "serde", - "serde_json", - "serde_with", - "solana-account-info 3.0.0", - "solana-instruction 3.0.0", - "solana-program-error 3.0.0", - "solana-program-option 3.0.0", - "solana-program-pack 3.0.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.0.0", - "solana-zk-sdk 4.0.0", - "spl-pod 0.7.1", - "spl-token-2022-interface 2.0.0", - "spl-token-confidential-transfer-proof-extraction 0.5.0", - "spl-token-confidential-transfer-proof-generation 0.5.0", - "spl-token-group-interface 0.7.1", - "spl-token-interface", - "spl-token-metadata-interface 0.8.0", - "spl-type-length-value 0.9.0", - "thiserror 2.0.12", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-sdk-ids", + "solana-zk-sdk", + "spl-pod", + "spl-token-confidential-transfer-proof-extraction 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "spl-token-confidential-transfer-proof-generation 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "spl-token-group-interface", + "spl-token-metadata-interface", + "spl-type-length-value", + "thiserror 2.0.17", ] [[package]] @@ -10402,23 +9960,25 @@ dependencies = [ "solana-cli-config", "solana-cli-output", "solana-client", - "solana-logger 3.0.0", + "solana-commitment-config", + "solana-logger", + "solana-nonce", "solana-remote-wallet", "solana-sdk", - "solana-sdk-ids 2.2.1", + "solana-sdk-ids", "solana-system-interface", "solana-test-validator", "solana-transaction-status", - "spl-associated-token-account-client", - "spl-memo", - "spl-pod 0.5.1", - "spl-token", - "spl-token-2022 9.0.0", - "spl-token-2022-interface 1.0.0", + "spl-associated-token-account-interface", + "spl-memo-interface", + "spl-pod", + "spl-token-2022", + "spl-token-2022-interface 2.0.0", "spl-token-client", - "spl-token-confidential-transfer-proof-generation 0.4.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", + "spl-token-confidential-transfer-proof-generation 0.5.0", + "spl-token-group-interface", + "spl-token-interface", + "spl-token-metadata-interface", "strum 0.27.2", "strum_macros 0.27.2", "tempfile", @@ -10432,7 +9992,7 @@ version = "0.17.0" dependencies = [ "async-trait", "bincode", - "borsh 1.5.7", + "borsh", "bytemuck", "futures 0.3.31", "futures-util", @@ -10441,56 +10001,43 @@ dependencies = [ "solana-banks-interface", "solana-cli-output", "solana-compute-budget-interface", - "solana-hash 2.3.0", - "solana-instruction 2.3.0", + "solana-hash", + "solana-instruction", "solana-message", "solana-packet", - "solana-program", - "solana-program-error 2.2.1", - "solana-program-pack 2.2.1", + "solana-program-error", + "solana-program-pack", "solana-program-test", - "solana-pubkey 2.4.0", + "solana-pubkey", "solana-rpc-client", "solana-rpc-client-api", "solana-sdk", - "solana-signature 2.3.0", - "solana-signer 2.2.1", + "solana-sdk-ids", + "solana-signature", + "solana-signer", "solana-system-interface", "solana-transaction", - "spl-associated-token-account", - "spl-associated-token-account-client", - "spl-elgamal-registry 0.3.0", - "spl-instruction-padding", - "spl-memo", - "spl-pod 0.5.1", + "spl-associated-token-account-interface", + "spl-elgamal-registry", + "spl-instruction-padding-interface", + "spl-memo-interface", + "spl-pod", "spl-record", "spl-tlv-account-resolution", - "spl-token", - "spl-token-2022 9.0.0", - "spl-token-2022-interface 1.0.0", + "spl-token-2022", + "spl-token-2022-interface 2.0.0", "spl-token-client", - "spl-token-confidential-transfer-proof-extraction 0.4.1", - "spl-token-confidential-transfer-proof-generation 0.4.1", - "spl-token-group-interface 0.6.0", - "spl-token-metadata-interface 0.7.0", + "spl-token-confidential-transfer-proof-extraction 0.5.0", + "spl-token-confidential-transfer-proof-generation 0.5.0", + "spl-token-group-interface", + "spl-token-interface", + "spl-token-metadata-interface", "spl-transfer-hook-interface", "test-case", - "thiserror 2.0.12", + "thiserror 2.0.17", "tokio", ] -[[package]] -name = "spl-token-confidential-transfer-ciphertext-arithmetic" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cddd52bfc0f1c677b41493dafa3f2dbbb4b47cf0990f08905429e19dc8289b35" -dependencies = [ - "base64 0.22.1", - "bytemuck", - "solana-curve25519", - "solana-zk-sdk 2.3.4", -] - [[package]] name = "spl-token-confidential-transfer-ciphertext-arithmetic" version = "0.4.0" @@ -10498,87 +10045,67 @@ dependencies = [ "base64 0.22.1", "bytemuck", "curve25519-dalek 4.1.3", - "solana-curve25519", - "solana-zk-sdk 4.0.0", + "solana-curve25519 2.3.4", + "solana-zk-sdk", "spl-token-confidential-transfer-proof-generation 0.5.0", ] [[package]] name = "spl-token-confidential-transfer-proof-extraction" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe2629860ff04c17bafa9ba4bed8850a404ecac81074113e1f840dbd0ebb7bd6" -dependencies = [ - "bytemuck", - "solana-account-info 2.3.0", - "solana-curve25519", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-zk-sdk 2.3.4", - "spl-pod 0.5.1", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-token-confidential-transfer-proof-extraction" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512c85bdbbb4cbcc2038849a9e164c958b16541f252b53ea1a3933191c0a4a1a" +version = "0.5.0" dependencies = [ "bytemuck", - "solana-account-info 2.3.0", - "solana-curve25519", - "solana-instruction 2.3.0", - "solana-instructions-sysvar 2.2.2", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-zk-sdk 2.3.4", - "spl-pod 0.5.1", - "thiserror 2.0.12", + "solana-account-info", + "solana-curve25519 2.3.4", + "solana-instruction", + "solana-instructions-sysvar", + "solana-msg", + "solana-program-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-zk-sdk", + "spl-pod", + "thiserror 2.0.17", ] [[package]] name = "spl-token-confidential-transfer-proof-extraction" version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a22217af69b7a61ca813f47c018afb0b00b02a74a4c70ff099cd4287740bc3d" dependencies = [ "bytemuck", - "solana-account-info 3.0.0", - "solana-curve25519", - "solana-instruction 3.0.0", - "solana-instructions-sysvar 3.0.0", - "solana-msg 3.0.0", - "solana-program-error 3.0.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.0.0", - "solana-zk-sdk 4.0.0", - "spl-pod 0.7.1", - "thiserror 2.0.12", + "solana-account-info", + "solana-curve25519 2.3.4", + "solana-instruction", + "solana-instructions-sysvar", + "solana-msg", + "solana-program-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-zk-sdk", + "spl-pod", + "thiserror 2.0.17", ] [[package]] name = "spl-token-confidential-transfer-proof-generation" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa27b9174bea869a7ebf31e0be6890bce90b1a4288bc2bbf24bd413f80ae3fde" +version = "0.5.0" dependencies = [ "curve25519-dalek 4.1.3", - "solana-zk-sdk 2.3.4", - "thiserror 2.0.12", + "solana-zk-sdk", + "thiserror 2.0.17", ] [[package]] name = "spl-token-confidential-transfer-proof-generation" version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f63a2b41095945dc15274b924b21ccae9b3ec9dc2fdd43dbc08de8c33bbcd915" dependencies = [ "curve25519-dalek 4.1.3", - "solana-zk-sdk 4.0.0", - "thiserror 2.0.12", + "solana-zk-sdk", + "thiserror 2.0.17", ] [[package]] @@ -10586,29 +10113,10 @@ name = "spl-token-confidential-transfer-proof-test" version = "0.0.1" dependencies = [ "curve25519-dalek 4.1.3", - "solana-zk-sdk 4.0.0", + "solana-zk-sdk", "spl-token-confidential-transfer-proof-extraction 0.5.0", "spl-token-confidential-transfer-proof-generation 0.5.0", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-token-group-interface" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5597b4cd76f85ce7cd206045b7dc22da8c25516573d42d267c8d1fd128db5129" -dependencies = [ - "bytemuck", - "num-derive", - "num-traits", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "spl-discriminator 0.4.1", - "spl-pod 0.5.1", - "thiserror 2.0.12", + "thiserror 2.0.17", ] [[package]] @@ -10621,12 +10129,12 @@ dependencies = [ "num-derive", "num-traits", "num_enum", - "solana-instruction 3.0.0", - "solana-program-error 3.0.0", - "solana-pubkey 3.0.0", - "spl-discriminator 0.5.1", - "spl-pod 0.7.1", - "thiserror 2.0.12", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "spl-discriminator", + "spl-pod", + "thiserror 2.0.17", ] [[package]] @@ -10640,34 +10148,13 @@ dependencies = [ "num-derive", "num-traits", "num_enum", - "solana-instruction 3.0.0", - "solana-program-error 3.0.0", - "solana-program-option 3.0.0", - "solana-program-pack 3.0.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.0.0", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-token-metadata-interface" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "304d6e06f0de0c13a621464b1fd5d4b1bebf60d15ca71a44d3839958e0da16ee" -dependencies = [ - "borsh 1.5.7", - "num-derive", - "num-traits", - "solana-borsh 2.2.1", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "spl-discriminator 0.4.1", - "spl-pod 0.5.1", - "spl-type-length-value 0.8.0", - "thiserror 2.0.12", + "solana-instruction", + "solana-program-error", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-sdk-ids", + "thiserror 2.0.17", ] [[package]] @@ -10676,60 +10163,43 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c467c7c3bd056f8fe60119e7ec34ddd6f23052c2fa8f1f51999098063b72676" dependencies = [ - "borsh 1.5.7", + "borsh", "num-derive", "num-traits", - "solana-borsh 3.0.0", - "solana-instruction 3.0.0", - "solana-program-error 3.0.0", - "solana-pubkey 3.0.0", - "spl-discriminator 0.5.1", - "spl-pod 0.7.1", - "spl-type-length-value 0.9.0", - "thiserror 2.0.12", + "solana-borsh", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "spl-discriminator", + "spl-pod", + "spl-type-length-value", + "thiserror 2.0.17", ] [[package]] name = "spl-transfer-hook-interface" -version = "0.10.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7e905b849b6aba63bde8c4badac944ebb6c8e6e14817029cbe1bc16829133bd" +checksum = "bdfff2798bcdc48ba52be12a47a28cf2d003f6f9846484ad7e6fec68d2578c25" dependencies = [ "arrayref", "bytemuck", "num-derive", "num-traits", - "solana-account-info 2.3.0", + "solana-account-info", "solana-cpi", - "solana-decode-error", - "solana-instruction 2.3.0", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "solana-pubkey 2.4.0", - "spl-discriminator 0.4.1", - "spl-pod 0.5.1", + "solana-instruction", + "solana-msg", + "solana-program-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", + "spl-discriminator", + "spl-pod", "spl-program-error", "spl-tlv-account-resolution", - "spl-type-length-value 0.8.0", - "thiserror 2.0.12", -] - -[[package]] -name = "spl-type-length-value" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d417eb548214fa822d93f84444024b4e57c13ed6719d4dcc68eec24fb481e9f5" -dependencies = [ - "bytemuck", - "num-derive", - "num-traits", - "solana-account-info 2.3.0", - "solana-decode-error", - "solana-msg 2.2.1", - "solana-program-error 2.2.1", - "spl-discriminator 0.4.1", - "spl-pod 0.5.1", - "thiserror 2.0.12", + "spl-type-length-value", + "thiserror 2.0.17", ] [[package]] @@ -10742,12 +10212,12 @@ dependencies = [ "num-derive", "num-traits", "num_enum", - "solana-account-info 3.0.0", - "solana-msg 3.0.0", - "solana-program-error 3.0.0", - "spl-discriminator 0.5.1", - "spl-pod 0.7.1", - "thiserror 2.0.12", + "solana-account-info", + "solana-msg", + "solana-program-error", + "spl-discriminator", + "spl-pod", + "thiserror 2.0.17", ] [[package]] @@ -11080,11 +10550,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.17", ] [[package]] @@ -11100,9 +10570,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -11281,7 +10751,7 @@ version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" dependencies = [ - "rustls 0.23.29", + "rustls 0.23.33", "tokio", ] @@ -11344,9 +10814,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.15" +version = "0.7.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +checksum = "14307c986784f72ef81c89db7d9e28d6ac26d16213b109ea501696195e6e3ce5" dependencies = [ "bytes", "futures-core", @@ -11440,7 +10910,7 @@ dependencies = [ "rand 0.8.5", "slab", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.16", "tower-layer", "tower-service", "tracing", @@ -11661,6 +11131,12 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unit-prefix" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817" + [[package]] name = "universal-hash" version = "0.5.1" diff --git a/Makefile b/Makefile index 817dbc9af..6c76422ba 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ RUST_TOOLCHAIN_NIGHTLY = nightly-2025-02-16 -SOLANA_CLI_VERSION = 2.3.4 +SOLANA_CLI_VERSION = 3.0.0 nightly = +${RUST_TOOLCHAIN_NIGHTLY} diff --git a/clients/cli/Cargo.toml b/clients/cli/Cargo.toml index 1c5ac03ec..c027af53c 100644 --- a/clients/cli/Cargo.toml +++ b/clients/cli/Cargo.toml @@ -21,33 +21,35 @@ futures = "0.3" serde = "1.0.219" serde_derive = "1.0.103" serde_json = "1.0.142" -solana-account-decoder = "2.3.4" -solana-clap-v3-utils = "2.3.4" -solana-cli-config = "2.3.4" -solana-cli-output = "2.3.4" -solana-client = "2.3.4" +solana-account-decoder = "3.0.0" +solana-clap-v3-utils = "3.0.0" +solana-cli-config = "3.0.0" +solana-cli-output = "3.0.0" +solana-client = "3.0.0" +solana-commitment-config = "3.0.0" solana-logger = "3.0.0" -solana-remote-wallet = "2.3.4" -solana-sdk = "2.2.1" -solana-system-interface = "1" -solana-transaction-status = "2.3.4" -spl-associated-token-account-client = { version = "2.0.0" } -spl-pod = { version = "0.5.1" } -spl-token = { version = "8.0", features = ["no-entrypoint"] } -spl-token-2022-interface = { version = "1.0.0" } +solana-remote-wallet = "3.0.0" +solana-sdk = "3.0.0" +solana-system-interface = "2" +solana-transaction-status = "3.0.0" +spl-associated-token-account-interface = { version = "2.0.0" } +spl-pod = { version = "0.7.1" } +spl-token-interface = "2.0.0" +spl-token-2022-interface = { version = "2.0.0", path = "../../interface" } spl-token-2022 = { version = "9.0.0", path = "../../program", features = ["no-entrypoint"] } spl-token-client = { version = "0.17.0", path = "../rust-legacy" } -spl-token-confidential-transfer-proof-generation = { version = "0.4.1" } -spl-token-metadata-interface = { version = "0.7.0" } -spl-token-group-interface = { version = "0.6.0" } -spl-memo = { version = "6.0", features = ["no-entrypoint"] } +spl-token-confidential-transfer-proof-generation = { version = "0.5.0", path = "../../confidential/proof-generation" } +spl-token-metadata-interface = { version = "0.8.0" } +spl-token-group-interface = { version = "0.7.0" } +spl-memo-interface = "2.0.0" strum = "0.27" strum_macros = "0.27" tokio = "1.47" [dev-dependencies] -solana-sdk-ids = "2.2.1" -solana-test-validator = "2.3.4" +solana-nonce = "3.0.0" +solana-sdk-ids = "3.0.0" +solana-test-validator = "3.0.0" assert_cmd = "2.0.17" libtest-mimic = "0.8" serial_test = "3.2.0" diff --git a/clients/cli/src/bench.rs b/clients/cli/src/bench.rs index 3e609b4bc..a50b88988 100644 --- a/clients/cli/src/bench.rs +++ b/clients/cli/src/bench.rs @@ -3,17 +3,17 @@ use { crate::{clap_app::Error, command::CommandResult, config::Config}, clap::ArgMatches, solana_clap_v3_utils::input_parsers::{pubkey_of_signer, Amount}, + solana_cli_output::display::build_balance_message, solana_client::{ nonblocking::rpc_client::RpcClient, rpc_client::RpcClient as BlockingRpcClient, tpu_client::TpuClient, tpu_client::TpuClientConfig, }, solana_remote_wallet::remote_wallet::RemoteWalletManager, solana_sdk::{ - message::Message, native_token::lamports_to_sol, native_token::Sol, program_pack::Pack, - pubkey::Pubkey, signature::Signer, + message::Message, native_token::Sol, program_pack::Pack, pubkey::Pubkey, signature::Signer, }, solana_system_interface::instruction as system_instruction, - spl_associated_token_account_client::address::get_associated_token_address_with_program_id, + spl_associated_token_account_interface::address::get_associated_token_address_with_program_id, spl_token_2022_interface::{ extension::StateWithExtensions, instruction, @@ -253,7 +253,9 @@ async fn command_deposit_into_or_withdraw_from( config.check_account(&from_or_to, Some(*token)).await?; let amount = match ui_amount { Amount::Raw(ui_amount) => ui_amount, - Amount::Decimal(ui_amount) => spl_token::ui_amount_to_amount(ui_amount, mint_info.decimals), + Amount::Decimal(ui_amount) => { + spl_token_2022::ui_amount_to_amount(ui_amount, mint_info.decimals) + } Amount::All => { return Err( "Use of ALL keyword currently not supported for the bench command" @@ -372,8 +374,8 @@ async fn check_fee_payer_balance(config: &Config<'_>, required_balance: u64) -> Err(format!( "Fee payer, {}, has insufficient balance: {} required, {} available", config.fee_payer()?.pubkey(), - lamports_to_sol(required_balance), - lamports_to_sol(balance) + build_balance_message(required_balance, false, false), + build_balance_message(balance, false, false) ) .into()) } else { diff --git a/clients/cli/src/clap_app.rs b/clients/cli/src/clap_app.rs index 712a072bc..86f2a23cc 100644 --- a/clients/cli/src/clap_app.rs +++ b/clients/cli/src/clap_app.rs @@ -111,7 +111,8 @@ impl OfflineArgs for clap::Command<'_> { } } -pub static VALID_TOKEN_PROGRAM_IDS: [Pubkey; 2] = [spl_token_2022_interface::ID, spl_token::ID]; +pub static VALID_TOKEN_PROGRAM_IDS: [Pubkey; 2] = + [spl_token_2022_interface::ID, spl_token_interface::ID]; #[derive(AsRefStr, Debug, Clone, Copy, PartialEq, EnumString, IntoStaticStr)] #[strum(serialize_all = "kebab-case")] diff --git a/clients/cli/src/command.rs b/clients/cli/src/command.rs index ac1acc40b..7163453fc 100644 --- a/clients/cli/src/command.rs +++ b/clients/cli/src/command.rs @@ -21,20 +21,19 @@ use { keypair::signer_from_path, }, solana_cli_output::{ - return_signers_data, CliSignOnlyData, CliSignature, OutputFormat, QuietDisplay, - ReturnSignersConfig, VerboseDisplay, + display::build_balance_message, return_signers_data, CliSignOnlyData, CliSignature, + OutputFormat, QuietDisplay, ReturnSignersConfig, VerboseDisplay, }, solana_client::rpc_request::TokenAccountsFilter, solana_remote_wallet::remote_wallet::RemoteWalletManager, solana_sdk::{ instruction::AccountMeta, - native_token::*, program_option::COption, pubkey::Pubkey, signature::{Keypair, Signer}, }, solana_system_interface::program as system_program, - spl_associated_token_account_client::address::get_associated_token_address_with_program_id, + spl_associated_token_account_interface::address::get_associated_token_address_with_program_id, spl_pod::optional_keys::OptionalNonZeroPubkey, spl_token_2022::extension::confidential_transfer::account_info::{ ApplyPendingBalanceAccountInfo, TransferAccountInfo, WithdrawAccountInfo, @@ -95,7 +94,7 @@ fn print_error_and_exit(e: E) -> T { fn amount_to_raw_amount(amount: Amount, decimals: u8, all_amount: Option, name: &str) -> u64 { match amount { Amount::Raw(ui_amount) => ui_amount, - Amount::Decimal(ui_amount) => spl_token::ui_amount_to_amount(ui_amount, decimals), + Amount::Decimal(ui_amount) => spl_token_2022::ui_amount_to_amount(ui_amount, decimals), Amount::All => { if let Some(raw_amount) = all_amount { raw_amount @@ -145,8 +144,8 @@ async fn check_wallet_balance( Err(format!( "Wallet {}, has insufficient balance: {} required, {} available", wallet, - lamports_to_sol(required_balance), - lamports_to_sol(balance) + build_balance_message(required_balance, false, false), + build_balance_message(balance, false, false) ) .into()) } else { @@ -822,7 +821,7 @@ async fn command_set_transfer_fee( "Setting transfer fee for {} to {} bps, {} maximum", token_pubkey, transfer_fee_basis_points, - spl_token::amount_to_ui_amount(maximum_fee, decimals) + spl_token_2022::amount_to_ui_amount(maximum_fee, decimals) ), ); @@ -877,7 +876,7 @@ async fn command_create_account( } if immutable_owner { - if config.program_id == spl_token::id() { + if config.program_id == spl_token_interface::id() { return Err(format!( "Specified --immutable, but token program {} does not support the extension", config.program_id @@ -1331,7 +1330,9 @@ async fn command_transfer( // the amount the user wants to transfer, as a u64 let transfer_balance = match ui_amount { Amount::Raw(ui_amount) => ui_amount, - Amount::Decimal(ui_amount) => spl_token::ui_amount_to_amount(ui_amount, mint_info.decimals), + Amount::Decimal(ui_amount) => { + spl_token_2022::ui_amount_to_amount(ui_amount, mint_info.decimals) + } Amount::All => { if config.sign_only { return Err("Use of ALL keyword to burn tokens requires online signing" @@ -1351,7 +1352,7 @@ async fn command_transfer( } else { "" }, - spl_token::amount_to_ui_amount(transfer_balance, mint_info.decimals), + spl_token_2022::amount_to_ui_amount(transfer_balance, mint_info.decimals), sender, recipient ), @@ -1806,7 +1807,9 @@ async fn command_burn( let amount = match ui_amount { Amount::Raw(ui_amount) => ui_amount, - Amount::Decimal(ui_amount) => spl_token::ui_amount_to_amount(ui_amount, mint_info.decimals), + Amount::Decimal(ui_amount) => { + spl_token_2022::ui_amount_to_amount(ui_amount, mint_info.decimals) + } Amount::All => { if config.sign_only { return Err("Use of ALL keyword to burn tokens requires online signing" @@ -1821,7 +1824,7 @@ async fn command_burn( config, format!( "Burn {} tokens\n Source: {}", - spl_token::amount_to_ui_amount(amount, mint_info.decimals), + spl_token_2022::amount_to_ui_amount(amount, mint_info.decimals), account ), ); @@ -1861,7 +1864,7 @@ async fn command_mint( config, format!( "Minting {} tokens\n Token: {}\n Recipient: {}", - spl_token::amount_to_ui_amount(amount, mint_info.decimals), + spl_token_2022::amount_to_ui_amount(amount, mint_info.decimals), token, recipient ), @@ -1973,12 +1976,14 @@ async fn command_wrap( immutable_owner: bool, bulk_signers: BulkSigners, ) -> CommandResult { - let lamports = match amount { - Amount::Raw(amount) => amount, - Amount::Decimal(amount) => sol_to_lamports(amount), + let lamports = match amount.sol_to_lamport() { Amount::All => { return Err("ALL keyword not supported for SOL amount".into()); } + Amount::Raw(amount) => amount, + Amount::Decimal(_) => { + unreachable!(); + } }; let token = native_token_client_from_config(config)?; @@ -1989,7 +1994,7 @@ async fn command_wrap( config, format!( "Wrapping {} SOL into {}", - lamports_to_sol(lamports), + build_balance_message(lamports, false, false), account ), ); @@ -2005,7 +2010,7 @@ async fn command_wrap( } let res = if immutable_owner { - if config.program_id == spl_token::id() { + if config.program_id == spl_token_interface::id() { return Err(format!( "Specified --immutable, but token program {} does not support the extension", config.program_id @@ -2070,7 +2075,10 @@ async fn command_unwrap( println_display( config, - format!(" Amount: {} SOL", lamports_to_sol(account_data.lamports)), + format!( + " Amount: {} SOL", + build_balance_message(account_data.lamports, false, false) + ), ); } @@ -2116,7 +2124,7 @@ async fn command_approve( config, format!( "Approve {} tokens\n Account: {}\n Delegate: {}", - spl_token::amount_to_ui_amount(amount, mint_info.decimals), + spl_token_2022::amount_to_ui_amount(amount, mint_info.decimals), account, delegate ), @@ -2337,7 +2345,7 @@ async fn command_accounts( vec![TokenAccountsFilter::ProgramId(config.program_id)] } else { vec![ - TokenAccountsFilter::ProgramId(spl_token::id()), + TokenAccountsFilter::ProgramId(spl_token_interface::id()), TokenAccountsFilter::ProgramId(spl_token_2022_interface::id()), ] }; @@ -3366,7 +3374,9 @@ async fn command_deposit_withdraw_confidential_tokens( // the amount the user wants to deposit or withdraw, as a u64 let amount = match ui_amount { Amount::Raw(ui_amount) => ui_amount, - Amount::Decimal(ui_amount) => spl_token::ui_amount_to_amount(ui_amount, mint_info.decimals), + Amount::Decimal(ui_amount) => { + spl_token_2022::ui_amount_to_amount(ui_amount, mint_info.decimals) + } Amount::All => { if config.sign_only { return Err("Use of ALL keyword to burn tokens requires online signing" @@ -3388,7 +3398,7 @@ async fn command_deposit_withdraw_confidential_tokens( config, format!( "Depositing {} confidential tokens", - spl_token::amount_to_ui_amount(amount, mint_info.decimals), + spl_token_2022::amount_to_ui_amount(amount, mint_info.decimals), ), ); let current_balance = state_with_extension.base.amount; @@ -3408,7 +3418,7 @@ async fn command_deposit_withdraw_confidential_tokens( config, format!( "Withdrawing {} confidential tokens", - spl_token::amount_to_ui_amount(amount, mint_info.decimals) + spl_token_2022::amount_to_ui_amount(amount, mint_info.decimals) ), ); } diff --git a/clients/cli/src/config.rs b/clients/cli/src/config.rs index 8ea8e8c8d..23020bc17 100644 --- a/clients/cli/src/config.rs +++ b/clients/cli/src/config.rs @@ -10,12 +10,13 @@ use { }, solana_cli_output::OutputFormat, solana_client::nonblocking::rpc_client::RpcClient, + solana_commitment_config::CommitmentConfig, solana_remote_wallet::remote_wallet::RemoteWalletManager, solana_sdk::{ - account::Account as RawAccount, commitment_config::CommitmentConfig, hash::Hash, - pubkey::Pubkey, signature::Signer, signer::null_signer::NullSigner, + account::Account as RawAccount, hash::Hash, pubkey::Pubkey, signature::Signer, + signer::null_signer::NullSigner, }, - spl_associated_token_account_client::address::get_associated_token_address_with_program_id, + spl_associated_token_account_interface::address::get_associated_token_address_with_program_id, spl_token_2022_interface::{ extension::StateWithExtensionsOwned, state::{Account, Mint}, @@ -280,7 +281,7 @@ impl<'a> Config<'a> { .and_then(|pubkey| Pubkey::from_str(pubkey).ok()) }; - let default_program_id = spl_token::id(); + let default_program_id = spl_token_interface::id(); let (program_id, restrict_to_program_id) = if matches.is_present("program_2022") { (spl_token_2022_interface::id(), true) } else if let Some(program_id) = pubkey_from_matches("program_id") { diff --git a/clients/cli/src/sort.rs b/clients/cli/src/sort.rs index b82dbe417..ba0c1f9b9 100644 --- a/clients/cli/src/sort.rs +++ b/clients/cli/src/sort.rs @@ -8,7 +8,7 @@ use { solana_account_decoder::{parse_token::TokenAccountType, UiAccountData}, solana_client::rpc_response::RpcKeyedAccount, solana_sdk::pubkey::Pubkey, - spl_associated_token_account_client::address::get_associated_token_address_with_program_id, + spl_associated_token_account_interface::address::get_associated_token_address_with_program_id, std::{ collections::{btree_map::Entry, BTreeMap}, str::FromStr, diff --git a/clients/cli/tests/command.rs b/clients/cli/tests/command.rs index 2535238e1..5c64b6983 100644 --- a/clients/cli/tests/command.rs +++ b/clients/cli/tests/command.rs @@ -14,7 +14,7 @@ use { solana_sdk_ids::bpf_loader_upgradeable, solana_system_interface::{instruction as system_instruction, program as system_program}, solana_test_validator::{TestValidator, TestValidatorGenesis, UpgradeableProgramInfo}, - spl_associated_token_account_client::address::get_associated_token_address_with_program_id, + spl_associated_token_account_interface::address::get_associated_token_address_with_program_id, spl_token_2022_interface::{ extension::{ confidential_transfer::{ConfidentialTransferAccount, ConfidentialTransferMint}, @@ -156,7 +156,7 @@ async fn main() { } fn clone_keypair(keypair: &Keypair) -> Keypair { - Keypair::from_bytes(&keypair.to_bytes()).unwrap() + Keypair::new_from_array(*keypair.secret_bytes()) } const TEST_DECIMALS: u8 = 9; @@ -237,7 +237,7 @@ async fn create_nonce(config: &Config<'_>, authority: &Keypair) -> Pubkey { let nonce_rent = config .rpc_client - .get_minimum_balance_for_rent_exemption(solana_sdk::nonce::State::size()) + .get_minimum_balance_for_rent_exemption(solana_nonce::state::State::size()) .await .unwrap(); let instr = system_instruction::create_nonce_account( @@ -407,11 +407,11 @@ async fn run_transfer_test(config: &Config<'_>, payer: &Keypair) { let account = config.rpc_client.get_account(&source).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); let account = config.rpc_client.get_account(&destination).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(10.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(10.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); } @@ -690,7 +690,7 @@ async fn mint(test_validator: &TestValidator, payer: &Keypair) { ) .await .unwrap(); - amount += spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS); + amount += spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS); let account_data = config.rpc_client.get_account(&account).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account_data.data).unwrap(); @@ -712,7 +712,7 @@ async fn mint(test_validator: &TestValidator, payer: &Keypair) { ) .await .unwrap(); - amount += spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS); + amount += spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS); let account_data = config.rpc_client.get_account(&account).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account_data.data).unwrap(); @@ -735,7 +735,7 @@ async fn mint(test_validator: &TestValidator, payer: &Keypair) { ) .await .unwrap(); - amount += spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS); + amount += spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS); let account_data = config.rpc_client.get_account(&account).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account_data.data).unwrap(); @@ -761,7 +761,7 @@ async fn balance_after_mint(test_validator: &TestValidator, payer: &Keypair) { ) .await; let value: serde_json::Value = serde_json::from_str(&result.unwrap()).unwrap(); - let amount = spl_token::ui_amount_to_amount(ui_amount, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(ui_amount, TEST_DECIMALS); assert_eq!(value["amount"], format!("{}", amount)); assert_eq!(value["uiAmountString"], format!("{}", ui_amount)); } @@ -790,7 +790,7 @@ async fn balance_after_mint_with_owner(test_validator: &TestValidator, payer: &K ) .await; let value: serde_json::Value = serde_json::from_str(&result.unwrap()).unwrap(); - let amount = spl_token::ui_amount_to_amount(ui_amount, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(ui_amount, TEST_DECIMALS); assert_eq!(value["amount"], format!("{}", amount)); assert_eq!(value["uiAmountString"], format!("{}", ui_amount)); } @@ -963,7 +963,7 @@ async fn transfer_fund_recipient(test_validator: &TestValidator, payer: &Keypair let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); assert_eq!( token_account.base.amount, - spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS) ); } } @@ -1041,7 +1041,7 @@ async fn transfer_non_standard_recipient(test_validator: &TestValidator, payer: let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); assert_eq!( token_account.base.amount, - spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS) ); // transfer fails to non-system recipient without flag @@ -1084,7 +1084,7 @@ async fn transfer_non_standard_recipient(test_validator: &TestValidator, payer: let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); assert_eq!( token_account.base.amount, - spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS) ); // transfer to same-program non-account fails @@ -1127,7 +1127,7 @@ async fn transfer_non_standard_recipient(test_validator: &TestValidator, payer: } async fn allow_non_system_account_recipient(test_validator: &TestValidator, payer: &Keypair) { - let config = test_config_with_default_signer(test_validator, payer, &spl_token::id()); + let config = test_config_with_default_signer(test_validator, payer, &spl_token_interface::id()); let token = create_token(&config, payer).await; let source = create_associated_account(&config, payer, &token, &payer.pubkey()).await; @@ -1159,7 +1159,7 @@ async fn allow_non_system_account_recipient(test_validator: &TestValidator, paye .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); } @@ -1327,7 +1327,7 @@ async fn gc(test_validator: &TestValidator, payer: &Keypair) { .unwrap(); // aux is gone and its tokens are in ata - let amount = spl_token::ui_amount_to_amount(2.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(2.0, TEST_DECIMALS); assert_eq!(ui_ata.token_amount.amount, format!("{amount}")); config.rpc_client.get_account(&aux).await.unwrap_err(); @@ -1376,7 +1376,7 @@ async fn gc(test_validator: &TestValidator, payer: &Keypair) { .unwrap(); // aux is gone and its tokens are in ata, and ata has not been closed - let amount = spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS); assert_eq!(ui_ata.token_amount.amount, format!("{amount}")); config.rpc_client.get_account(&aux).await.unwrap_err(); @@ -1413,7 +1413,7 @@ async fn gc(test_validator: &TestValidator, payer: &Keypair) { .unwrap(); // aux tokens are now in ata - let amount = spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS); assert_eq!(ui_ata.token_amount.amount, format!("{amount}")); } } @@ -1469,7 +1469,7 @@ async fn transfer_with_account_delegate(test_validator: &TestValidator, payer: & .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(100.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(100.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); assert_eq!(ui_account.delegate, None); assert_eq!(ui_account.delegated_amount, None); @@ -1507,7 +1507,7 @@ async fn transfer_with_account_delegate(test_validator: &TestValidator, payer: & .unwrap() .unwrap(); assert_eq!(ui_account.delegate.unwrap(), delegate.pubkey().to_string()); - let amount = spl_token::ui_amount_to_amount(10.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(10.0, TEST_DECIMALS); assert_eq!( ui_account.delegated_amount.unwrap().amount, format!("{amount}") @@ -1540,7 +1540,7 @@ async fn transfer_with_account_delegate(test_validator: &TestValidator, payer: & .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); assert_eq!(ui_account.delegate, None); assert_eq!(ui_account.delegated_amount, None); @@ -1550,7 +1550,7 @@ async fn transfer_with_account_delegate(test_validator: &TestValidator, payer: & .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(10.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(10.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); } } @@ -1580,7 +1580,7 @@ async fn burn(test_validator: &TestValidator, payer: &Keypair) { let account = config.rpc_client.get_account(&source).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); process_test_command( @@ -1598,7 +1598,7 @@ async fn burn(test_validator: &TestValidator, payer: &Keypair) { let account = config.rpc_client.get_account(&source).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(0.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(0.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); let result = process_test_command( @@ -1655,7 +1655,7 @@ async fn burn_with_account_delegate(test_validator: &TestValidator, payer: &Keyp .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(100.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(100.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); assert_eq!(ui_account.delegate, None); assert_eq!(ui_account.delegated_amount, None); @@ -1686,7 +1686,7 @@ async fn burn_with_account_delegate(test_validator: &TestValidator, payer: &Keyp .unwrap() .unwrap(); assert_eq!(ui_account.delegate.unwrap(), delegate.pubkey().to_string()); - let amount = spl_token::ui_amount_to_amount(10.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(10.0, TEST_DECIMALS); assert_eq!( ui_account.delegated_amount.unwrap().amount, format!("{amount}") @@ -1716,7 +1716,7 @@ async fn burn_with_account_delegate(test_validator: &TestValidator, payer: &Keyp .await .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); assert_eq!(ui_account.delegate, None); assert_eq!(ui_account.delegated_amount, None); @@ -1763,7 +1763,7 @@ async fn burn_with_permanent_delegate(test_validator: &TestValidator, payer: &Ke .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(100.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(100.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); exec_test_cmd( @@ -1787,7 +1787,7 @@ async fn burn_with_permanent_delegate(test_validator: &TestValidator, payer: &Ke .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); } @@ -1832,7 +1832,7 @@ async fn transfer_with_permanent_delegate(test_validator: &TestValidator, payer: .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(100.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(100.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); let ui_account = config @@ -1868,7 +1868,7 @@ async fn transfer_with_permanent_delegate(test_validator: &TestValidator, payer: .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(50.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(50.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); let ui_account = config @@ -1878,7 +1878,7 @@ async fn transfer_with_permanent_delegate(test_validator: &TestValidator, payer: .unwrap() .unwrap(); - let amount = spl_token::ui_amount_to_amount(50.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(50.0, TEST_DECIMALS); assert_eq!(ui_account.token_amount.amount, format!("{amount}")); } @@ -2002,7 +2002,7 @@ async fn required_transfer_memos(test_validator: &TestValidator, payer: &Keypair let account_state = StateWithExtensionsOwned::::unpack(account_data.data).unwrap(); assert_eq!( account_state.base.amount, - spl_token::ui_amount_to_amount(1.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(1.0, TEST_DECIMALS) ); // disable works @@ -2374,7 +2374,7 @@ async fn transfer_fee(test_validator: &TestValidator, payer: &Keypair) { let account_state = StateWithExtensionsOwned::::unpack(account.data).unwrap(); let extension = account_state.get_extension::().unwrap(); let withheld_amount = - spl_token::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); + spl_token_2022::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); assert_eq!(withheld_amount, 1.0); process_test_command( @@ -2418,7 +2418,7 @@ async fn transfer_fee(test_validator: &TestValidator, payer: &Keypair) { // burn tokens let account = config.rpc_client.get_account(&token_account).await.unwrap(); let account_state = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let burn_amount = spl_token::amount_to_ui_amount(account_state.base.amount, TEST_DECIMALS); + let burn_amount = spl_token_2022::amount_to_ui_amount(account_state.base.amount, TEST_DECIMALS); process_test_command( &config, payer, @@ -2436,7 +2436,7 @@ async fn transfer_fee(test_validator: &TestValidator, payer: &Keypair) { let account_state = StateWithExtensionsOwned::::unpack(account.data).unwrap(); let extension = account_state.get_extension::().unwrap(); let withheld_amount = - spl_token::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); + spl_token_2022::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); assert_eq!(withheld_amount, 9.0); process_test_command( @@ -2458,7 +2458,7 @@ async fn transfer_fee(test_validator: &TestValidator, payer: &Keypair) { let mint_state = StateWithExtensionsOwned::::unpack(mint.data).unwrap(); let extension = mint_state.get_extension::().unwrap(); let withheld_amount = - spl_token::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); + spl_token_2022::amount_to_ui_amount(u64::from(extension.withheld_amount), TEST_DECIMALS); assert_eq!(withheld_amount, 9.0); process_test_command( @@ -2503,7 +2503,7 @@ async fn transfer_fee(test_validator: &TestValidator, payer: &Keypair) { u16::from(extension.newer_transfer_fee.transfer_fee_basis_points), new_transfer_fee_basis_points ); - let new_maximum_fee = spl_token::ui_amount_to_amount(new_maximum_fee, TEST_DECIMALS); + let new_maximum_fee = spl_token_2022::ui_amount_to_amount(new_maximum_fee, TEST_DECIMALS); assert_eq!( u64::from(extension.newer_transfer_fee.maximum_fee), new_maximum_fee @@ -3063,13 +3063,13 @@ async fn multisig_transfer(test_validator: &TestValidator, payer: &Keypair) { let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); assert_eq!( token_account.base.amount, - spl_token::ui_amount_to_amount(90.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(90.0, TEST_DECIMALS) ); let account = config.rpc_client.get_account(&destination).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); assert_eq!( token_account.base.amount, - spl_token::ui_amount_to_amount(10.0, TEST_DECIMALS) + spl_token_2022::ui_amount_to_amount(10.0, TEST_DECIMALS) ); } } @@ -3247,11 +3247,11 @@ async fn do_offline_multisig_transfer( let account = config.rpc_client.get_account(&source).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(0.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(0.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); let account = config.rpc_client.get_account(&destination).await.unwrap(); let token_account = StateWithExtensionsOwned::::unpack(account.data).unwrap(); - let amount = spl_token::ui_amount_to_amount(100.0, TEST_DECIMALS); + let amount = spl_token_2022::ui_amount_to_amount(100.0, TEST_DECIMALS); assert_eq!(token_account.base.amount, amount); // get new nonce diff --git a/clients/rust-legacy/Cargo.toml b/clients/rust-legacy/Cargo.toml index b69e98178..23d41efd4 100644 --- a/clients/rust-legacy/Cargo.toml +++ b/clients/rust-legacy/Cargo.toml @@ -25,37 +25,37 @@ bincode = "1.3.2" bytemuck = "1.23.1" futures = "0.3.31" futures-util = "0.3" -solana-account = "2.2.1" -solana-banks-client = { version = "2.3.4", optional = true } -solana-banks-interface = { version = "2.3.4", optional = true } -solana-compute-budget-interface = "2.2.1" -solana-cli-output = { version = "2.2.0", optional = true } -solana-hash = "2.2.1" -solana-instruction = "2.2.1" -solana-message = "2.2.1" -solana-packet = "2.2.1" -solana-program-error = "2.2.1" -solana-program-pack = "2.2.1" -solana-program-test = { version = "2.3.4", optional = true } -solana-pubkey = "2.2.1" -solana-rpc-client = "2.3.4" -solana-rpc-client-api = "2.3.4" -solana-signature = "2.2.1" -solana-signer = "2.2.1" -solana-system-interface = "1" -solana-transaction = "2.2.1" -spl-associated-token-account-client = { version = "2.0.0" } -spl-elgamal-registry = { version = "0.3.0",features = ["no-entrypoint"], path = "../../confidential/elgamal-registry"} -spl-memo = { version = "6.0", features = ["no-entrypoint"] } -spl-record = { version = "0.3.0", features = ["no-entrypoint"] } -spl-token = { version = "8.0", features = ["no-entrypoint"] } -spl-token-confidential-transfer-proof-extraction = { version = "0.4.1" } -spl-token-confidential-transfer-proof-generation = { version = "0.4.1" } -spl-token-2022-interface = { version = "1.0.0" } -spl-token-2022 = { version = "9.0.0", features = ["no-entrypoint"], path = "../../program" } -spl-token-group-interface = { version = "0.6.0" } -spl-token-metadata-interface = { version = "0.7.0" } -spl-transfer-hook-interface = { version = "0.10.0" } +solana-account = "3.0.0" +solana-banks-client = { version = "3.0.0", optional = true } +solana-banks-interface = { version = "3.0.0", optional = true } +solana-compute-budget-interface = "3.0.0" +solana-cli-output = { version = "3.0.0", optional = true } +solana-hash = "3.0.0" +solana-instruction = "3.0.0" +solana-message = "3.0.0" +solana-packet = "3.0.0" +solana-program-error = "3.0.0" +solana-program-pack = "3.0.0" +solana-program-test = { version = "3.0.0", optional = true } +solana-pubkey = "3.0.0" +solana-rpc-client = "3.0.0" +solana-rpc-client-api = "3.0.0" +solana-signature = "3.0.0" +solana-signer = "3.0.0" +solana-system-interface = "2" +solana-transaction = "3.0.0" +spl-associated-token-account-interface = { version = "2.0.0" } +spl-elgamal-registry = { version = "0.3.0", path = "../../confidential/elgamal-registry", features = ["no-entrypoint"] } +spl-memo-interface = "2.0.0" +spl-record = { version = "0.4.0", features = ["no-entrypoint"] } +spl-token-interface = "2.0.0" +spl-token-confidential-transfer-proof-extraction = { path = "../../confidential/proof-extraction", version = "0.5.0" } +spl-token-confidential-transfer-proof-generation = { path = "../../confidential/proof-generation", version = "0.5.0" } +spl-token-2022-interface = { version = "2.0.0", path = "../../interface" } +spl-token-2022 = { version = "9.0.0", path = "../../program", features = ["no-entrypoint"] } +spl-token-group-interface = { version = "0.7.0" } +spl-token-metadata-interface = { version = "0.8.0" } +spl-transfer-hook-interface = { version = "2.0.0" } tokio = "1" thiserror = "2.0" @@ -64,12 +64,11 @@ async-trait = "0.1" borsh = "1.5.7" bytemuck = "1.23.1" futures-util = "0.3" -solana-program = "2.3.0" -solana-program-test = "2.3.4" -solana-sdk = "2.2.1" -spl-associated-token-account = { version = "7.0.0" } -spl-pod = { version = "0.5.1" } -spl-instruction-padding = { version = "0.3.0", features = ["no-entrypoint"] } -spl-tlv-account-resolution = { version = "0.10.0" } +solana-program-test = "3.0.0" +solana-sdk = "3.0.0" +solana-sdk-ids = "3.0.0" +spl-pod = { version = "0.7.1" } +spl-instruction-padding-interface = "1.0.0" +spl-tlv-account-resolution = "0.11.0" spl-token-client = { path = ".", features = ["dev-context-only-utils"] } test-case = "3.3" diff --git a/clients/rust-legacy/src/client.rs b/clients/rust-legacy/src/client.rs index d42e91da5..2459d65ee 100644 --- a/clients/rust-legacy/src/client.rs +++ b/clients/rust-legacy/src/client.rs @@ -135,7 +135,8 @@ pub trait SimulateTransactionRpc: SimulateTransaction { #[derive(Debug, Clone, Copy, Default)] pub struct ProgramRpcClientSendTransaction; -#[derive(Debug, Clone, PartialEq, Eq)] +#[derive(Debug, Clone, PartialEq)] +#[allow(clippy::large_enum_variant)] pub enum RpcClientResponse { Signature(Signature), Transaction(Transaction), diff --git a/clients/rust-legacy/src/token.rs b/clients/rust-legacy/src/token.rs index cfdf40a48..e3a845cad 100644 --- a/clients/rust-legacy/src/token.rs +++ b/clients/rust-legacy/src/token.rs @@ -18,7 +18,7 @@ use { solana_signer::{signers::Signers, Signer, SignerError}, solana_system_interface::instruction as system_instruction, solana_transaction::Transaction, - spl_associated_token_account_client::{ + spl_associated_token_account_interface::{ address::get_associated_token_address_with_program_id, instruction::{ create_associated_token_account, create_associated_token_account_idempotent, @@ -370,7 +370,8 @@ struct TokenMemo { } impl TokenMemo { pub fn to_instruction(&self) -> Instruction { - spl_memo::build_memo( + spl_memo_interface::instruction::build_memo( + &spl_memo_interface::v3::id(), self.text.as_bytes(), &self.signers.iter().collect::>(), ) @@ -427,20 +428,20 @@ impl fmt::Debug for Token { } fn native_mint(program_id: &Pubkey) -> Pubkey { - if program_id == &spl_token_2022::id() { - spl_token_2022::native_mint::id() - } else if program_id == &spl_token::id() { - spl_token::native_mint::id() + if program_id == &spl_token_2022_interface::id() { + spl_token_2022_interface::native_mint::id() + } else if program_id == &spl_token_interface::id() { + spl_token_interface::native_mint::id() } else { panic!("Unrecognized token program id: {}", program_id); } } fn native_mint_decimals(program_id: &Pubkey) -> u8 { - if program_id == &spl_token_2022::id() { - spl_token_2022::native_mint::DECIMALS - } else if program_id == &spl_token::id() { - spl_token::native_mint::DECIMALS + if program_id == &spl_token_2022_interface::id() { + spl_token_2022_interface::native_mint::DECIMALS + } else if program_id == &spl_token_interface::id() { + spl_token_interface::native_mint::DECIMALS } else { panic!("Unrecognized token program id: {}", program_id); } @@ -1503,7 +1504,7 @@ where signing_keypairs: &S, ) -> TokenResult { // mutable owner for Tokenkeg, immutable otherwise - let immutable_owner = self.program_id != spl_token::id(); + let immutable_owner = self.program_id != spl_token_interface::id(); let instructions = self.wrap_ixs(account, owner, lamports, immutable_owner)?; self.process_ixs(&instructions, signing_keypairs).await @@ -3655,13 +3656,15 @@ where let multisig_signers = self.get_multisig_signers(authority, &signing_pubkeys); self.process_ixs( - &[spl_token_2022::instruction::withdraw_excess_lamports( - &self.program_id, - source, - destination, - authority, - &multisig_signers, - )?], + &[ + spl_token_2022_interface::instruction::withdraw_excess_lamports( + &self.program_id, + source, + destination, + authority, + &multisig_signers, + )?, + ], signing_keypairs, ) .await @@ -4091,7 +4094,9 @@ where account_info .get_total_balance(elgamal_secret_key, aes_key) .map_err(|e| match e { - spl_token_2022::error::TokenError::Overflow => TokenError::AccountDecryption, + spl_token_2022_interface::error::TokenError::Overflow => { + TokenError::AccountDecryption + } _ => TokenError::AccountDecryption, }) } diff --git a/clients/rust-legacy/tests/basic.rs b/clients/rust-legacy/tests/basic.rs index 393617e89..643173652 100644 --- a/clients/rust-legacy/tests/basic.rs +++ b/clients/rust-legacy/tests/basic.rs @@ -69,7 +69,7 @@ impl TestContext { } fn keypair_clone(kp: &Keypair) -> Keypair { - Keypair::from_bytes(&kp.to_bytes()).expect("failed to copy keypair") + Keypair::new_from_array(*kp.secret_bytes()) } #[tokio::test] diff --git a/clients/rust-legacy/tests/burn.rs b/clients/rust-legacy/tests/burn.rs index b1a675be1..19094c4fa 100644 --- a/clients/rust-legacy/tests/burn.rs +++ b/clients/rust-legacy/tests/burn.rs @@ -215,7 +215,7 @@ async fn run_burn_and_close_system_or_incinerator(context: TestContext, non_owne let error = token .close_account( &non_owner_account, - &solana_program::incinerator::id(), + &solana_sdk_ids::incinerator::id(), &carlos.pubkey(), &[&carlos], ) @@ -257,7 +257,7 @@ async fn run_burn_and_close_system_or_incinerator(context: TestContext, non_owne let error = token .close_account( &non_owner_account, - &solana_program::system_program::id(), + &solana_sdk_ids::system_program::id(), &carlos.pubkey(), &[&carlos], ) @@ -275,7 +275,7 @@ async fn run_burn_and_close_system_or_incinerator(context: TestContext, non_owne token .close_account( &non_owner_account, - &solana_program::incinerator::id(), + &solana_sdk_ids::incinerator::id(), &carlos.pubkey(), &[&carlos], ) @@ -287,12 +287,12 @@ async fn run_burn_and_close_system_or_incinerator(context: TestContext, non_owne async fn burn_and_close_incinerator_tokens() { let mut context = TestContext::new().await; context.init_token_with_mint(vec![]).await.unwrap(); - run_burn_and_close_system_or_incinerator(context, &solana_program::incinerator::id()).await; + run_burn_and_close_system_or_incinerator(context, &solana_sdk_ids::incinerator::id()).await; } #[tokio::test] async fn burn_and_close_system_tokens() { let mut context = TestContext::new().await; context.init_token_with_mint(vec![]).await.unwrap(); - run_burn_and_close_system_or_incinerator(context, &solana_program::system_program::id()).await; + run_burn_and_close_system_or_incinerator(context, &solana_sdk_ids::system_program::id()).await; } diff --git a/clients/rust-legacy/tests/close_account.rs b/clients/rust-legacy/tests/close_account.rs index bc44fdedf..e006af5cc 100644 --- a/clients/rust-legacy/tests/close_account.rs +++ b/clients/rust-legacy/tests/close_account.rs @@ -14,7 +14,7 @@ use { #[tokio::test] async fn success_init_after_close_account() { let mut context = TestContext::new().await; - let payer = Keypair::from_bytes(&context.context.lock().await.payer.to_bytes()).unwrap(); + let payer = Keypair::new_from_array(*context.context.lock().await.payer.secret_bytes()); context.init_token_with_mint(vec![]).await.unwrap(); let token = context.token_context.take().unwrap().token; let token_program_id = spl_token_2022_interface::id(); @@ -64,7 +64,7 @@ async fn success_init_after_close_account() { #[tokio::test] async fn fail_init_after_close_account() { let mut context = TestContext::new().await; - let payer = Keypair::from_bytes(&context.context.lock().await.payer.to_bytes()).unwrap(); + let payer = Keypair::new_from_array(*context.context.lock().await.payer.secret_bytes()); context.init_token_with_mint(vec![]).await.unwrap(); let token = context.token_context.take().unwrap().token; let token_program_id = spl_token_2022_interface::id(); @@ -115,7 +115,7 @@ async fn fail_init_after_close_account() { async fn fail_init_after_close_mint() { let close_authority = Keypair::new(); let mut context = TestContext::new().await; - let payer = Keypair::from_bytes(&context.context.lock().await.payer.to_bytes()).unwrap(); + let payer = Keypair::new_from_array(*context.context.lock().await.payer.secret_bytes()); context .init_token_with_mint(vec![ExtensionInitializationParams::MintCloseAuthority { close_authority: Some(close_authority.pubkey()), diff --git a/clients/rust-legacy/tests/cpi_guard.rs b/clients/rust-legacy/tests/cpi_guard.rs index 7fb4cfcb1..3a4f02d1a 100644 --- a/clients/rust-legacy/tests/cpi_guard.rs +++ b/clients/rust-legacy/tests/cpi_guard.rs @@ -9,7 +9,7 @@ use { instruction::InstructionError, pubkey::Pubkey, signature::Signer, signer::keypair::Keypair, transaction::TransactionError, transport::TransportError, }, - spl_instruction_padding::instruction::wrap_instruction, + spl_instruction_padding_interface::instruction::wrap_instruction, spl_token_2022_interface::{ error::TokenError, extension::{ @@ -39,7 +39,7 @@ async fn make_context() -> TestContext { program_test.add_program( "spl_instruction_padding", - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), None, ); @@ -101,7 +101,7 @@ async fn test_cpi_guard_enable_disable() { let error = token .process_ixs( &[wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), cpi_guard::instruction::disable_cpi_guard( &spl_token_2022_interface::id(), &alice.pubkey(), @@ -139,7 +139,7 @@ async fn test_cpi_guard_enable_disable() { let error = token .process_ixs( &[wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), cpi_guard::instruction::enable_cpi_guard( &spl_token_2022_interface::id(), &alice.pubkey(), @@ -197,7 +197,7 @@ async fn test_cpi_guard_transfer() { let mk_transfer = |authority, do_checked| { wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), if do_checked { instruction::transfer_checked( &spl_token_2022_interface::id(), @@ -345,7 +345,7 @@ async fn test_cpi_guard_burn() { let mk_burn = |authority, do_checked| { wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), if do_checked { instruction::burn_checked( &spl_token_2022_interface::id(), @@ -484,7 +484,7 @@ async fn test_cpi_guard_approve() { let mk_approve = |do_checked| { wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), if do_checked { instruction::approve_checked( &spl_token_2022_interface::id(), @@ -611,7 +611,7 @@ async fn test_cpi_guard_close_account() { let mk_close = |account, destination, authority| { wrap_instruction( - spl_instruction_padding::id(), + spl_instruction_padding_interface::id(), instruction::close_account( &spl_token_2022_interface::id(), &account, @@ -773,7 +773,13 @@ async fn test_cpi_guard_set_authority() { // this wraps it or doesn't based on the test case let instruction = if do_in_cpi { - wrap_instruction(spl_instruction_padding::id(), token_instruction, vec![], 0).unwrap() + wrap_instruction( + spl_instruction_padding_interface::id(), + token_instruction, + vec![], + 0, + ) + .unwrap() } else { token_instruction }; diff --git a/clients/rust-legacy/tests/memo_transfer.rs b/clients/rust-legacy/tests/memo_transfer.rs index d3d981031..442494ccc 100644 --- a/clients/rust-legacy/tests/memo_transfer.rs +++ b/clients/rust-legacy/tests/memo_transfer.rs @@ -91,8 +91,12 @@ async fn test_memo_transfers( assert_eq!(bob_state.base.amount, 0); // attempt to transfer from alice to bob with misplaced memo, v1 and current - let mut memo_ix = spl_memo::build_memo(&[240, 159, 166, 150], &[]); - for program_id in [spl_memo::id(), spl_memo::v1::id()] { + let mut memo_ix = spl_memo_interface::instruction::build_memo( + &spl_memo_interface::v3::id(), + &[240, 159, 166, 150], + &[], + ); + for program_id in [spl_memo_interface::v3::id(), spl_memo_interface::v1::id()] { let ctx = context.lock().await; memo_ix.program_id = program_id; #[allow(deprecated)] @@ -144,7 +148,7 @@ async fn test_memo_transfers( // transfer with memo v1 let ctx = context.lock().await; - memo_ix.program_id = spl_memo::v1::id(); + memo_ix.program_id = spl_memo_interface::v1::id(); #[allow(deprecated)] let instructions = vec![ memo_ix, diff --git a/clients/rust-legacy/tests/program_test.rs b/clients/rust-legacy/tests/program_test.rs index e048963d4..37cbd00f7 100644 --- a/clients/rust-legacy/tests/program_test.rs +++ b/clients/rust-legacy/tests/program_test.rs @@ -176,7 +176,7 @@ impl TestContext { } pub(crate) fn keypair_clone(kp: &Keypair) -> Keypair { - Keypair::from_bytes(&kp.to_bytes()).expect("failed to copy keypair") + Keypair::new_from_array(*kp.secret_bytes()) } pub(crate) struct ConfidentialTokenAccountMeta { diff --git a/confidential/elgamal-registry/Cargo.toml b/confidential/elgamal-registry/Cargo.toml index 1b1938425..1062a2ba7 100644 --- a/confidential/elgamal-registry/Cargo.toml +++ b/confidential/elgamal-registry/Cargo.toml @@ -14,21 +14,21 @@ test-sbf = [] [dependencies] bytemuck = { version = "1.23.1", features = ["derive"] } -solana-account-info = "2.3.0" -solana-cpi = "2.2.1" -solana-instruction = "2.2.1" -solana-msg = "2.2.1" -solana-program-entrypoint = "2.3.0" -solana-program-error = "2.2.1" -solana-pubkey = { version = "2.2.1", features = ["curve25519"] } -solana-rent = "2.2.1" -solana-sdk-ids = "2.2.1" +solana-account-info = "3.0.0" +solana-cpi = "3.0.0" +solana-instruction = "3.0.0" +solana-msg = "3.0.0" +solana-program-entrypoint = "3.0.0" +solana-program-error = "3.0.0" +solana-pubkey = { version = "3.0.0", features = ["curve25519"] } +solana-rent = "3.0.0" +solana-sdk-ids = "3.0.0" solana-security-txt = "1.1.1" -solana-system-interface = { version = "1.0.0", features = ["bincode"] } -solana-sysvar = { version = "2.3.0", features = ["bincode"] } -solana-zk-sdk = "2.3.4" -spl-pod = "0.5.1" -spl-token-confidential-transfer-proof-extraction = { version = "0.4.1" } +solana-system-interface = { version = "2.0.0", features = ["bincode"] } +solana-sysvar = { version = "3.0.0", features = ["bincode"] } +solana-zk-sdk = "4.0.0" +spl-pod = "0.7.1" +spl-token-confidential-transfer-proof-extraction = { version = "0.5.0", path = "../proof-extraction" } [lib] crate-type = ["cdylib", "lib"] diff --git a/interface/Cargo.toml b/interface/Cargo.toml index 8ddc83388..37733aa81 100644 --- a/interface/Cargo.toml +++ b/interface/Cargo.toml @@ -46,6 +46,8 @@ solana-pubkey = { version = "3.0.0", features = ["curve25519"] } spl-token-interface = { version = "2.0" } spl-token-2022-interface = { path = ".", features = ["serde"] } serde_json = "1.0.141" +strum = "0.24" +strum_macros = "0.24" [lib] crate-type = ["lib"] diff --git a/interface/src/error.rs b/interface/src/error.rs index 3cae76ae0..9345b94f7 100644 --- a/interface/src/error.rs +++ b/interface/src/error.rs @@ -10,6 +10,8 @@ use { }; /// Errors that may be returned by the Token program. +#[repr(u32)] +#[cfg_attr(test, derive(strum_macros::FromRepr, strum_macros::EnumIter))] #[derive(Clone, Debug, Eq, Error, FromPrimitive, PartialEq)] pub enum TokenError { // 0 @@ -274,6 +276,12 @@ impl From for ProgramError { ProgramError::Custom(e as u32) } } +impl TryFrom for TokenError { + type Error = ProgramError; + fn try_from(code: u32) -> Result { + num_traits::FromPrimitive::from_u32(code).ok_or(ProgramError::InvalidArgument) + } +} impl ToStr for TokenError { fn to_str(&self) -> &'static str { @@ -494,3 +502,18 @@ impl From for TokenError { } } } + +#[cfg(test)] +mod test { + use {super::*, strum::IntoEnumIterator}; + #[test] + fn test_parse_error_from_primitive_exhaustive() { + for variant in TokenError::iter() { + let variant_u32 = variant as u32; + assert_eq!( + TokenError::from_repr(variant_u32).unwrap(), + TokenError::try_from(variant_u32).unwrap() + ); + } + } +} diff --git a/program/Cargo.toml b/program/Cargo.toml index 97f12aebb..1dab9082e 100644 --- a/program/Cargo.toml +++ b/program/Cargo.toml @@ -24,52 +24,52 @@ bytemuck = { version = "1.23.1", features = ["derive"] } num-derive = "0.4" num-traits = "0.2" num_enum = "0.7.4" -solana-account-info = "2.3.0" -solana-clock = "2.2.1" -solana-cpi = "2.2.1" -solana-instruction = "2.2.1" -solana-msg = "2.2.1" -solana-program-entrypoint = "2.3.0" -solana-program-error = "2.2.1" -solana-program-memory = "2.3.1" -solana-program-option = "2.2.1" -solana-program-pack = "2.2.1" -solana-pubkey = "2.2.1" -solana-rent = "2.2.1" -solana-sdk-ids = "2.2.1" +solana-account-info = "3.0.0" +solana-clock = "3.0.0" +solana-cpi = "3.0.0" +solana-instruction = "3.0.0" +solana-msg = "3.0.0" +solana-program-entrypoint = "3.0.0" +solana-program-error = "3.0.0" +solana-program-memory = "3.0.0" +solana-program-option = "3.0.0" +solana-program-pack = "3.0.0" +solana-pubkey = "3.0.0" +solana-rent = "3.0.0" +solana-sdk-ids = "3.0.0" solana-security-txt = "1.1.1" -solana-sysvar = "2.3.0" -solana-system-interface = "1.0.0" -solana-zk-sdk = "2.3.4" +solana-sysvar = "3.0.0" +solana-system-interface = "2.0.0" +solana-zk-sdk = "4.0.0" spl-elgamal-registry = { version = "0.3.0", path = "../confidential/elgamal-registry", features = ["no-entrypoint"] } -spl-memo = { version = "6.0", features = ["no-entrypoint"] } -spl-token-2022-interface = { version = "1.0" } -spl-token-confidential-transfer-ciphertext-arithmetic = { version = "0.3.1" } -spl-token-confidential-transfer-proof-extraction = { version = "0.4.1" } -spl-token-group-interface = { version = "0.6.0" } -spl-token-metadata-interface = { version = "0.7.0" } -spl-transfer-hook-interface = { version = "0.10.0" } -spl-pod = { version = "0.5.1" } +spl-memo-interface = { version = "2.0" } +spl-token-2022-interface = { version = "2.0", path = "../interface" } +spl-token-confidential-transfer-ciphertext-arithmetic = { version = "0.4.0", path = "../confidential/ciphertext-arithmetic" } +spl-token-confidential-transfer-proof-extraction = { version = "0.5.0", path = "../confidential/proof-extraction" } +spl-token-group-interface = { version = "0.7.1" } +spl-token-metadata-interface = { version = "0.8.0" } +spl-transfer-hook-interface = { version = "2.0.0" } +spl-pod = { version = "0.7.1" } thiserror = "2.0" serde = { version = "1.0.219", optional = true } serde_with = { version = "3.14.0", optional = true } base64 = { version = "0.22.1", optional = true } [target.'cfg(not(target_os = "solana"))'.dependencies] -spl-token-confidential-transfer-proof-generation = { version = "0.4.1" } +spl-token-confidential-transfer-proof-generation = { version = "0.5.0", path = "../confidential/proof-generation" } [dev-dependencies] lazy_static = "1.5.0" proptest = "1.7" serial_test = "3.2.0" -solana-account = "2.2.1" -solana-hash = "2.2.1" -solana-keypair = "2.2.1" -solana-program-test = "2.3.4" -solana-signer = "2.2.1" -solana-transaction = "2.2.1" -solana-transaction-error = "2.2.1" -spl-tlv-account-resolution = { version = "0.10.0" } +solana-account = "3.0.0" +solana-hash = "3.0.0" +solana-keypair = "3.0.0" +solana-program-test = "3.0.0" +solana-signer = "3.0.0" +solana-transaction = "3.0.0" +solana-transaction-error = "3.0.0" +spl-tlv-account-resolution = { version = "0.11.1" } serde_json = "1.0.142" test-case = "3.3.1" diff --git a/program/src/entrypoint.rs b/program/src/entrypoint.rs index 3e624234d..9911ec158 100644 --- a/program/src/entrypoint.rs +++ b/program/src/entrypoint.rs @@ -1,11 +1,8 @@ //! Program entrypoint use { - crate::processor::Processor, - solana_account_info::AccountInfo, - solana_program_error::{PrintProgramError, ProgramResult}, - solana_pubkey::Pubkey, - solana_security_txt::security_txt, + crate::processor::Processor, solana_account_info::AccountInfo, solana_msg::msg, + solana_program_error::ProgramResult, solana_pubkey::Pubkey, solana_security_txt::security_txt, spl_token_2022_interface::error::TokenError, }; @@ -17,7 +14,7 @@ fn process_instruction( ) -> ProgramResult { if let Err(error) = Processor::process(program_id, accounts, instruction_data) { // catch the error so we can print it - error.print::(); + msg!(error.to_str::()); return Err(error); } Ok(()) diff --git a/program/src/extension/memo_transfer/mod.rs b/program/src/extension/memo_transfer/mod.rs index 023a4cff1..914bf92bd 100644 --- a/program/src/extension/memo_transfer/mod.rs +++ b/program/src/extension/memo_transfer/mod.rs @@ -18,7 +18,7 @@ pub use spl_token_2022_interface::extension::memo_transfer::{memo_required, Memo /// Check if the previous sibling instruction is a memo pub fn check_previous_sibling_instruction_is_memo() -> Result<(), ProgramError> { let is_memo_program = |program_id: &Pubkey| -> bool { - program_id == &spl_memo::id() || program_id == &spl_memo::v1::id() + program_id == &spl_memo_interface::v3::id() || program_id == &spl_memo_interface::v1::id() }; let previous_instruction = get_processed_sibling_instruction(); match previous_instruction { diff --git a/program/src/lib.rs b/program/src/lib.rs index f98ebbc06..5e81d66b1 100644 --- a/program/src/lib.rs +++ b/program/src/lib.rs @@ -1,6 +1,5 @@ #![allow(clippy::arithmetic_side_effects)] #![deny(missing_docs)] -#![cfg_attr(not(test), warn(unsafe_code))] //! An ERC20-like Token program for the Solana blockchain diff --git a/program/src/offchain.rs b/program/src/offchain.rs index 62c0cf34e..27db4ba6d 100644 --- a/program/src/offchain.rs +++ b/program/src/offchain.rs @@ -340,8 +340,8 @@ mod tests { AccountMeta::new_readonly(MINT_PUBKEY, false), AccountMeta::new(destination, false), AccountMeta::new_readonly(authority, true), - AccountMeta::new_readonly(EXTRA_META_1, true), - AccountMeta::new_readonly(EXTRA_META_2, true), + AccountMeta::new_readonly(EXTRA_META_1, false), // demoted + AccountMeta::new_readonly(EXTRA_META_2, false), // demoted AccountMeta::new(extra_meta_3_pubkey, false), AccountMeta::new(extra_meta_4_pubkey, false), AccountMeta::new_readonly(TRANSFER_HOOK_PROGRAM_ID, false), @@ -377,8 +377,8 @@ mod tests { AccountMeta::new_readonly(signer_1, true), AccountMeta::new_readonly(signer_2, true), AccountMeta::new_readonly(signer_3, true), - AccountMeta::new_readonly(EXTRA_META_1, true), - AccountMeta::new_readonly(EXTRA_META_2, true), + AccountMeta::new_readonly(EXTRA_META_1, false), // demoted + AccountMeta::new_readonly(EXTRA_META_2, false), // demoted AccountMeta::new(extra_meta_3_pubkey, false), AccountMeta::new(extra_meta_4_pubkey, false), AccountMeta::new_readonly(TRANSFER_HOOK_PROGRAM_ID, false), @@ -438,8 +438,8 @@ mod tests { AccountMeta::new_readonly(MINT_PUBKEY, false), AccountMeta::new(destination, false), AccountMeta::new_readonly(authority, true), - AccountMeta::new_readonly(EXTRA_META_1, true), - AccountMeta::new_readonly(EXTRA_META_2, true), + AccountMeta::new_readonly(EXTRA_META_1, false), // demoted + AccountMeta::new_readonly(EXTRA_META_2, false), // demoted AccountMeta::new(extra_meta_3_pubkey, false), AccountMeta::new(extra_meta_4_pubkey, false), AccountMeta::new_readonly(TRANSFER_HOOK_PROGRAM_ID, false), @@ -476,8 +476,8 @@ mod tests { AccountMeta::new_readonly(signer_1, true), AccountMeta::new_readonly(signer_2, true), AccountMeta::new_readonly(signer_3, true), - AccountMeta::new_readonly(EXTRA_META_1, true), - AccountMeta::new_readonly(EXTRA_META_2, true), + AccountMeta::new_readonly(EXTRA_META_1, false), // demoted + AccountMeta::new_readonly(EXTRA_META_2, false), // demoted AccountMeta::new(extra_meta_3_pubkey, false), AccountMeta::new(extra_meta_4_pubkey, false), AccountMeta::new_readonly(TRANSFER_HOOK_PROGRAM_ID, false), diff --git a/program/src/onchain.rs b/program/src/onchain.rs index 425b0e5b2..cdacce81d 100644 --- a/program/src/onchain.rs +++ b/program/src/onchain.rs @@ -348,7 +348,6 @@ mod tests { &mut [], &source_owner, false, - 0, ); let mut mint_lamports = 100; @@ -366,7 +365,6 @@ mod tests { &mut mint_data, &mint_owner, false, - 0, ); let mut destination_lamports = 100; @@ -379,7 +377,6 @@ mod tests { &mut [], &destination_owner, false, - 0, ); let authority_is_signer = !with_multisig; // Authority signs only if not multisig @@ -402,7 +399,6 @@ mod tests { &mut [], &authority_owner, false, - 0, ) } else { // Setup multisig @@ -434,7 +430,6 @@ mod tests { &mut multisig_data, &token_program_id, false, - 0, ) }; @@ -457,7 +452,6 @@ mod tests { &mut [], &signer1_owner, false, - 0, ); let signer2_info = AccountInfo::new( @@ -468,7 +462,6 @@ mod tests { &mut [], &signer2_owner, false, - 0, ); let signer3_info = AccountInfo::new( @@ -479,7 +472,6 @@ mod tests { &mut [], &signer3_owner, false, - 0, ); additional_accounts.extend(vec![signer1_info, signer2_info, signer3_info]); @@ -507,7 +499,6 @@ mod tests { &mut validation_data, &transfer_hook_program_id, false, - 0, ); let hook_program_info = AccountInfo::new( @@ -518,7 +509,6 @@ mod tests { &mut [], &hook_program_owner, true, - 0, ); let extra_account1_info = AccountInfo::new( @@ -529,7 +519,6 @@ mod tests { &mut [], &extra_account1_owner, false, - 0, ); let extra_account2_info = AccountInfo::new( @@ -540,7 +529,6 @@ mod tests { &mut [], &extra_account2_owner, false, - 0, ); let extra_account3_info = AccountInfo::new( @@ -551,7 +539,6 @@ mod tests { &mut [], &extra_account3_owner, false, - 0, ); additional_accounts.extend(vec![ @@ -698,7 +685,6 @@ mod tests { &mut data, &wrong_owner, false, - 0, ); let accounts = vec![]; @@ -714,16 +700,8 @@ mod tests { let mut lamports = 100; let mut data = vec![0; 10]; // Wrong size for a multisig account - let not_multisig = AccountInfo::new( - &key, - false, - false, - &mut lamports, - &mut data, - &owner, - false, - 0, - ); + let not_multisig = + AccountInfo::new(&key, false, false, &mut lamports, &mut data, &owner, false); let accounts = vec![]; @@ -767,7 +745,6 @@ mod tests { &mut multisig_data, &owner, false, - 0, ); let signer1_owner = Pubkey::new_unique(); @@ -784,7 +761,6 @@ mod tests { &mut [], &signer1_owner, false, - 0, ); let signer2_info = AccountInfo::new( @@ -795,7 +771,6 @@ mod tests { &mut [], &signer2_owner, false, - 0, ); // Accounts that should not be included @@ -817,7 +792,6 @@ mod tests { &mut [], &extra_account1_owner, false, - 0, ); let extra_account2_info = AccountInfo::new( @@ -828,7 +802,6 @@ mod tests { &mut [], &extra_account2_owner, false, - 0, ); let system_program_key = Pubkey::default(); // System program has default pubkey @@ -842,7 +815,6 @@ mod tests { &mut [], &system_program_owner, false, - 0, ); let accounts = vec![ @@ -863,7 +835,6 @@ mod tests { assert_eq!(result_accounts[0].is_signer, signer1_info.is_signer); assert_eq!(result_accounts[0].executable, signer1_info.executable); assert_eq!(result_accounts[0].lamports, signer1_info.lamports); - assert_eq!(result_accounts[0].rent_epoch, signer1_info.rent_epoch); assert_eq!(result_accounts[1].data_len(), signer2_info.data_len()); assert_eq!(result_accounts[1].owner, signer2_info.owner); @@ -872,6 +843,5 @@ mod tests { assert_eq!(result_accounts[1].is_signer, signer2_info.is_signer); assert_eq!(result_accounts[1].executable, signer2_info.executable); assert_eq!(result_accounts[1].lamports, signer2_info.lamports); - assert_eq!(result_accounts[1].rent_epoch, signer2_info.rent_epoch); } } diff --git a/program/src/processor.rs b/program/src/processor.rs index ddbdd3425..479621926 100644 --- a/program/src/processor.rs +++ b/program/src/processor.rs @@ -25,7 +25,7 @@ use { solana_rent::Rent, solana_sdk_ids::system_program, solana_system_interface::instruction as system_instruction, - solana_sysvar::Sysvar, + solana_sysvar::{Sysvar, SysvarSerialize}, spl_pod::{ bytemuck::{pod_from_bytes, pod_from_bytes_mut}, primitives::{PodBool, PodU64}, @@ -2020,7 +2020,9 @@ fn delete_account(account_info: &AccountInfo) -> Result<(), ProgramError> { account_info.assign(&system_program::id()); let mut account_data = account_info.data.borrow_mut(); let data_len = account_data.len(); - solana_program_memory::sol_memset(*account_data, 0, data_len); + unsafe { + solana_program_memory::sol_memset(*account_data, 0, data_len); + } Ok(()) } @@ -2040,9 +2042,8 @@ mod tests { create_account_for_test, create_is_signer_account_infos, Account as SolanaAccount, }, solana_account_info::IntoAccountInfo, - solana_clock::{Clock, Epoch}, + solana_clock::Clock, solana_instruction::Instruction, - solana_program_error::PrintProgramError, solana_program_option::COption, solana_sdk_ids::sysvar::rent, spl_token_2022_interface::{ @@ -2171,12 +2172,6 @@ mod tests { mint_account } - #[test] - fn test_print_error() { - let error = return_token_error_as_program_error(); - error.print::(); - } - #[test] fn test_error_as_custom() { assert_eq!( @@ -6131,7 +6126,6 @@ mod tests { &mut signer_data, &program_id, false, - Epoch::default(), ); MAX_SIGNERS + 1 ]; @@ -6154,7 +6148,6 @@ mod tests { &mut data, &program_id, false, - Epoch::default(), ); // no multisig, but the account is its own authority, and data is mutably @@ -6173,7 +6166,6 @@ mod tests { &mut data, &program_id, false, - Epoch::default(), ); let account_info_data_len = account_info.data_len(); let mut borrowed_data = account_info.try_borrow_mut_data().unwrap(); @@ -6339,7 +6331,6 @@ mod tests { &mut signer_data, &program_id, false, - Epoch::default(), ); MAX_SIGNERS + 1 ]; @@ -8154,7 +8145,6 @@ mod tests { &mut destination_data, &system_program_id, false, - Epoch::default(), ); let multisig_key = Pubkey::new_unique(); @@ -8178,7 +8168,6 @@ mod tests { &mut signer_data, &program_id, false, - Epoch::default(), ); MAX_SIGNERS + 1 ]; @@ -8245,7 +8234,6 @@ mod tests { &mut destination_data, &system_program_id, false, - Epoch::default(), ); let mint_key = Pubkey::new_unique(); let mut mint_account = @@ -8266,7 +8254,6 @@ mod tests { &mut mint_account.data, &program_id, false, - Epoch::default(), ); let account_info: AccountInfo = (&account_key, true, &mut account_account).into(); @@ -8316,7 +8303,6 @@ mod tests { &mut destination_data, &system_program_id, false, - Epoch::default(), ); let mint_key = Pubkey::new_unique(); let mut mint_account = SolanaAccount::new( @@ -8367,7 +8353,6 @@ mod tests { &mut destination_data, &system_program_id, false, - Epoch::default(), ); let mint_key = Pubkey::new_unique(); let mut mint_account = SolanaAccount::new( @@ -8386,7 +8371,6 @@ mod tests { &mut mint_authority_data, &system_program_id, false, - Epoch::default(), ); let mut rent_sysvar = rent_sysvar();