diff --git a/Cargo.lock b/Cargo.lock index 19a10f08..774032b4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,7 +24,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" dependencies = [ - "crypto-common", + "crypto-common 0.1.6", "generic-array", ] @@ -36,7 +36,7 @@ checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" dependencies = [ "cfg-if", "cipher", - "cpufeatures", + "cpufeatures 0.2.16", ] [[package]] @@ -54,25 +54,56 @@ dependencies = [ "zeroize", ] +[[package]] +name = "agave-bls-cert-verify" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b1c145644e721797e2bae22e28616fa3c54be5b08b81ea4e99cc39a7dae8424" +dependencies = [ + "agave-votor-messages", + "bitvec", + "qualifier_attr", + "rayon", + "solana-bls-signatures 3.3.0", + "solana-signer-store", + "thiserror 2.0.18", + "wincode", +] + [[package]] name = "agave-feature-set" version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2846bb4fc0831d112255193a54259fabdc82149f0cd0a72db8922837cc62c0cd" dependencies = [ - "ahash 0.8.11", + "ahash", "solana-epoch-schedule", "solana-hash 3.1.0", "solana-pubkey 3.0.0", "solana-sha256-hasher", - "solana-svm-feature-set", + "solana-svm-feature-set 3.1.8", +] + +[[package]] +name = "agave-feature-set" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f74c3ae25479515dad1d6dc74eab06d159fdb522cab459f177c0281c512568d8" +dependencies = [ + "ahash", + "solana-epoch-schedule", + "solana-hash 4.4.0", + "solana-keypair", + "solana-pubkey 4.2.0", + "solana-sha256-hasher", + "solana-svm-feature-set 4.1.0-rc.1", ] [[package]] name = "agave-fs" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b650afb205ac1cc84288c83b6f6f69057990e33c12ba93772d7fa1ff82d798ad" +checksum = "368cac57ab242acd71e3ce0c1ad4e742b2a3ea4f0ee1bd85ebb7b8c3e6bfbaf8" dependencies = [ "agave-io-uring", "io-uring", @@ -80,13 +111,15 @@ dependencies = [ "log", "slab", "smallvec", + "tempfile", + "thiserror 2.0.18", ] [[package]] name = "agave-io-uring" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8440be5b6759e60ffe27c15da728568721b79f03524ca2b667b229c18b82eb6e" +checksum = "da362285a17656050075b4e5fafe04ce75f7f5e56c62bca5495fdcddf15ba601" dependencies = [ "io-uring", "libc", @@ -97,54 +130,73 @@ dependencies = [ [[package]] name = "agave-logger" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37f62cea69e633631571de6c4641c0738a232158a4a2e4b4ceefd7f2b9a3bba4" +checksum = "42ad5e90d38c2850f6d4769741f3559c6cad6d58a3fa8c89257d734148fce8b1" dependencies = [ "env_logger", "libc", "log", - "signal-hook", + "signal-hook 0.4.4", ] [[package]] name = "agave-precompiles" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d65f7398d5e24334130de1f825c0ad1a78471a2a43c90e98914c792d29dfc89" +checksum = "0eb00bd9979c940f1d29e0a30080dcc87ed466e6efd33667481daa1e36b22dd2" dependencies = [ - "agave-feature-set", + "agave-feature-set 4.1.0-rc.1", "bincode", - "digest 0.10.7", "ed25519-dalek 1.0.1", "libsecp256k1", "openssl", - "sha3", "solana-ed25519-program", - "solana-message", + "solana-keccak-hasher", + "solana-message 4.2.0", "solana-precompile-error", - "solana-pubkey 3.0.0", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-secp256k1-program", "solana-secp256r1-program", ] +[[package]] +name = "agave-random" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56ca4ef9a020062638e543fabd19b986a1558af5c58127fe0143ef9d0284e536" +dependencies = [ + "rand 0.9.4", +] + [[package]] name = "agave-reserved-account-keys" version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a55fff3d170fbcf81afc8d30c504a1ae4a6ff64be025ee6c08012f3db2a243fc" dependencies = [ - "agave-feature-set", + "agave-feature-set 3.1.8", "solana-pubkey 3.0.0", "solana-sdk-ids", ] +[[package]] +name = "agave-reserved-account-keys" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70f0351397cb8be02408db564017e3b6acfcc50c0f11b548c3ace0f6f85b8d03" +dependencies = [ + "agave-feature-set 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-sdk-ids", +] + [[package]] name = "agave-snapshots" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f19b2777041a651187f2c94ed07d92ea1aafb7ec43b48035f39adc4fe282b8f" +checksum = "64a38ba9558c1652d57e5b3a021d89bc833404cbed26ca3757e0440f2c725b7a" dependencies = [ "agave-fs", "bincode", @@ -152,119 +204,104 @@ dependencies = [ "crossbeam-channel", "log", "lz4", - "rand 0.8.5", + "rand 0.9.4", "regex", "semver", "solana-accounts-db", "solana-clock", "solana-genesis-config", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-lattice-hash", - "solana-measure", - "solana-metrics", + "solana-measure 4.1.0-rc.1", + "solana-metrics 4.1.0-rc.1", "strum", "symlink", "tar", "tempfile", "thiserror 2.0.18", + "wincode", "zstd", ] -[[package]] -name = "agave-syscalls" -version = "3.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa34d30153e3c36d0d488a606a0aa01c85724f04048a02433623d55a28cf679a" -dependencies = [ - "bincode", - "libsecp256k1", - "num-traits", - "solana-account 3.4.0", - "solana-account-info", - "solana-big-mod-exp", - "solana-blake3-hasher", - "solana-bn254", - "solana-clock", - "solana-cpi", - "solana-curve25519", - "solana-hash 3.1.0", - "solana-instruction", - "solana-keccak-hasher", - "solana-loader-v3-interface", - "solana-poseidon", - "solana-program-entrypoint", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sbpf", - "solana-sdk-ids", - "solana-secp256k1-recover", - "solana-sha256-hasher", - "solana-stable-layout", - "solana-stake-interface 2.0.2", - "solana-svm-callback", - "solana-svm-feature-set", - "solana-svm-log-collector", - "solana-svm-measure", - "solana-svm-timings", - "solana-svm-type-overrides", - "solana-sysvar 3.1.1", - "solana-sysvar-id", - "solana-transaction-context", - "thiserror 2.0.18", -] - [[package]] name = "agave-transaction-view" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15a8e85dc7796559a1bd3bd292d62a841c7a564deefe783655974d2d8b49207" +checksum = "7de78ba8bf3d2bb1d7f8c29f98f4a521bd62d95127308a89f0cee441a3ba169e" dependencies = [ - "solana-hash 3.1.0", - "solana-message", - "solana-packet", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-packet 4.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-short-vec", "solana-signature", - "solana-svm-transaction", - "solana-transaction-context", + "solana-svm-transaction 4.1.0-rc.1", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", ] [[package]] name = "agave-votor-messages" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45cdc13389d98584389d139218d11f7cdb2508150727819f6343934b88954dd0" +checksum = "89e14e3ac9fa6c8618300332b5f205985bf4a4630f0b0042c3c80145295a7aba" dependencies = [ - "agave-logger", + "agave-feature-set 4.1.0-rc.1", + "log", "serde", - "solana-bls-signatures", + "solana-address 2.6.0", + "solana-bls-signatures 3.3.0", "solana-clock", - "solana-hash 3.1.0", + "solana-epoch-schedule", + "solana-hash 4.4.0", + "solana-pubkey 4.2.0", + "solana-short-vec", + "solana-signer-store", + "thiserror 2.0.18", + "wincode", ] [[package]] -name = "ahash" -version = "0.7.8" +name = "agave-xdp" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +checksum = "b1fb928755076e7752bd48bee3cd0098ad326f85e0c9d8b44b7f1f8f7d05b729" dependencies = [ - "getrandom 0.2.15", - "once_cell", - "version_check", + "agave-xdp-ebpf", + "arc-swap", + "aya", + "bytes", + "caps", + "core_affinity", + "crossbeam-channel", + "libc", + "log", + "thiserror 2.0.18", +] + +[[package]] +name = "agave-xdp-ebpf" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "010621ade5305fa571b5bd45be8461d5f1ffdf05d5191ed7d668a4e1ada769e4" +dependencies = [ + "aya", + "aya-ebpf", ] [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", - "getrandom 0.2.15", + "getrandom 0.3.1", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.8.52", ] [[package]] @@ -317,9 +354,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.21" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -338,9 +375,9 @@ checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] @@ -351,7 +388,7 @@ version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -362,14 +399,14 @@ checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", "once_cell_polyfill", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] name = "anyhow" -version = "1.0.101" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e0fee31ef5ed1ba1316088939cea399010ed7731dba877ed44aeb407a75ea" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "aquamarine" @@ -387,13 +424,19 @@ dependencies = [ [[package]] name = "arc-swap" -version = "1.8.1" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ded5f9a03ac8f24d1b8a25101ee812cd32cdc8c50a4c50237de2c4915850e73" +checksum = "6a3a1fd6f75306b68087b831f025c712524bcb19aad54e557b1129cfa0a2b207" dependencies = [ "rustversion", ] +[[package]] +name = "archery" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70e0a5f99dfebb87bb342d0f53bb92c81842e100bbb915223e38349580e5441d" + [[package]] name = "ark-bn254" version = "0.4.0" @@ -439,7 +482,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce" dependencies = [ - "ahash 0.8.11", + "ahash", "ark-ff 0.5.0", "ark-poly 0.5.0", "ark-serialize 0.5.0", @@ -559,7 +602,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27" dependencies = [ - "ahash 0.8.11", + "ahash", "ark-ff 0.5.0", "ark-serialize 0.5.0", "ark-std 0.5.0", @@ -659,8 +702,8 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ - "asn1-rs-derive", - "asn1-rs-impl", + "asn1-rs-derive 0.4.0", + "asn1-rs-impl 0.1.0", "displaydoc", "nom", "num-traits", @@ -669,6 +712,22 @@ dependencies = [ "time", ] +[[package]] +name = "asn1-rs" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7f43a50ac4fdca5df8e885c21b835997f0a1cdee65494a6847694a98652d9d8" +dependencies = [ + "asn1-rs-derive 0.6.0", + "asn1-rs-impl 0.2.0", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror 2.0.18", + "time", +] + [[package]] name = "asn1-rs-derive" version = "0.4.0" @@ -681,6 +740,18 @@ dependencies = [ "synstructure 0.12.6", ] +[[package]] +name = "asn1-rs-derive" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3109e49b1e4909e9db6515a30c633684d68cdeaa252f215214cb4fa1a5bfee2c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", + "synstructure 0.13.1", +] + [[package]] name = "asn1-rs-impl" version = "0.1.0" @@ -692,6 +763,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + [[package]] name = "assert_matches" version = "1.5.0" @@ -752,16 +834,94 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] -name = "base16ct" -version = "0.2.0" +name = "aya" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +checksum = "d18bc4e506fbb85ab7392ed993a7db4d1a452c71b75a246af4a80ab8c9d2dd50" +dependencies = [ + "assert_matches", + "aya-obj", + "bitflags 2.10.0", + "bytes", + "libc", + "log", + "object", + "once_cell", + "thiserror 1.0.69", +] [[package]] -name = "base64" -version = "0.12.3" +name = "aya-build" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59bc42f3c5ddacc34eca28a420b47e3cbb3f0f484137cb2bf1ad2153d0eae52a" +dependencies = [ + "anyhow", + "cargo_metadata", +] + +[[package]] +name = "aya-ebpf" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8dbaf5409a1a0982e5c9bdc0f499a55fe5ead39fe9c846012053faf0d404f73" +dependencies = [ + "aya-ebpf-bindings", + "aya-ebpf-cty", + "aya-ebpf-macros", + "rustversion", +] + +[[package]] +name = "aya-ebpf-bindings" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71ee8e6a617f040d8da7565ec4010aea75e33cda4662f64c019c66ee97d17889" +dependencies = [ + "aya-build", + "aya-ebpf-cty", +] + +[[package]] +name = "aya-ebpf-cty" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" +checksum = "e6f33396742e7fd0f519c1e0de5141d84e1a8df69146a557c08cc222b0ceace4" +dependencies = [ + "aya-build", +] + +[[package]] +name = "aya-ebpf-macros" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96fd02363736177e7e91d6c95d7effbca07be87502c7b5b32fc194aed8b177a0" +dependencies = [ + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "aya-obj" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c51b96c5a8ed8705b40d655273bc4212cbbf38d4e3be2788f36306f154523ec7" +dependencies = [ + "bytes", + "core-error", + "hashbrown 0.15.2", + "log", + "object", + "thiserror 1.0.69", +] + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] name = "base64" @@ -822,12 +982,9 @@ dependencies = [ [[package]] name = "bitmaps" -version = "2.1.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" -dependencies = [ - "typenum", -] +checksum = "a1d084b0137aaa901caf9f1e8b21daa6aa24d41cd806e111335541eff9683bd6" [[package]] name = "bitvec" @@ -837,22 +994,24 @@ checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ "funty", "radium", + "serde", "tap", "wyz", ] [[package]] name = "blake3" -version = "1.8.2" +version = "1.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", - "digest 0.10.7", + "cpufeatures 0.3.0", + "digest 0.11.3", ] [[package]] @@ -873,6 +1032,15 @@ dependencies = [ "generic-array", ] +[[package]] +name = "block-buffer" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" +dependencies = [ + "hybrid-array", +] + [[package]] name = "blst" version = "0.3.16" @@ -1014,52 +1182,72 @@ dependencies = [ [[package]] name = "bzip2" -version = "0.4.4" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" +checksum = "f3a53fac24f34a81bc9954b5d6cfce0c21e18ec6959f44f56e8e90e4bb7c346c" dependencies = [ - "bzip2-sys", - "libc", + "libbz2-rs-sys", ] [[package]] -name = "bzip2-sys" -version = "0.1.11+1.0.8" +name = "camino" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +checksum = "b4ce8d3bd5823c7504d3f579f13e7b2f3da252fcb938c594d5680ee508bf846f" dependencies = [ - "cc", - "libc", - "pkg-config", + "serde_core", ] [[package]] name = "caps" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190baaad529bcfbde9e1a19022c42781bdb6ff9de25721abdb8fd98c0807730b" +checksum = "fd1ddba47aba30b6a889298ad0109c3b8dcb0e8fc993b459daa7067d46f865e0" dependencies = [ "libc", - "thiserror 1.0.69", ] [[package]] -name = "cc" -version = "1.2.16" +name = "cargo-platform" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" +checksum = "dd0061da739915fae12ea00e16397555ed4371a6bb285431aab930f61b0aa4ba" dependencies = [ - "jobserver", - "libc", - "shlex", + "serde", + "serde_core", ] [[package]] -name = "cesu8" -version = "1.1.0" +name = "cargo_metadata" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - +checksum = "ef987d17b0a113becdd19d3d0022d04d7ef41f9efe4f3fb63ac44ba61df3ade9" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror 2.0.18", +] + +[[package]] +name = "cc" +version = "1.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" +dependencies = [ + "jobserver", + "libc", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cfg-if" version = "1.0.4" @@ -1112,7 +1300,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "crypto-common", + "crypto-common 0.1.6", "inout", ] @@ -1131,6 +1319,12 @@ dependencies = [ "vec_map", ] +[[package]] +name = "cmov" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c9ea0ac24bc397ab3c98583a3c9ba74fa56b09a4449bbe172b9b1ddb016027a" + [[package]] name = "colorchoice" version = "1.0.4" @@ -1203,9 +1397,18 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "constant_time_eq" -version = "0.3.1" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" + +[[package]] +name = "core-error" +version = "0.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +checksum = "efcdb2972eb64230b4c50646d8498ff73f5128d196a90c7236eec4cbe8619b8f" +dependencies = [ + "version_check", +] [[package]] name = "core-foundation" @@ -1223,6 +1426,17 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "core_affinity" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a034b3a7b624016c6e13f5df875747cc25f884156aad2abd12b6c46797971342" +dependencies = [ + "libc", + "num_cpus", + "winapi", +] + [[package]] name = "cpufeatures" version = "0.2.16" @@ -1232,6 +1446,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "crc32fast" version = "1.4.2" @@ -1304,6 +1527,15 @@ dependencies = [ "typenum", ] +[[package]] +name = "crypto-common" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" +dependencies = [ + "hybrid-array", +] + [[package]] name = "crypto-mac" version = "0.8.0" @@ -1323,6 +1555,15 @@ dependencies = [ "cipher", ] +[[package]] +name = "ctutils" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d5515a3834141de9eafb9717ad39eea8247b5674e6066c404e8c4b365d2a29e" +dependencies = [ + "cmov", +] + [[package]] name = "curve25519-dalek" version = "3.2.0" @@ -1343,7 +1584,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.16", "curve25519-dalek-derive", "digest 0.10.7", "fiat-crypto", @@ -1367,9 +1608,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.21.3" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" dependencies = [ "darling_core", "darling_macro", @@ -1377,11 +1618,10 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.21.3" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" dependencies = [ - "fnv", "ident_case", "proc-macro2", "quote", @@ -1391,9 +1631,9 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.21.3" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ "darling_core", "quote", @@ -1421,6 +1661,38 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +[[package]] +name = "defmt" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6e524506490a1953d237cb87b1cfc1e46f88c18f10a22dfe0f507dc6bfc7f7f" +dependencies = [ + "bitflags 1.3.2", + "defmt-macros", +] + +[[package]] +name = "defmt-macros" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0a27770e9c8f719a79d8b638281f4d828f77d8fd61e0bd94451b9b85e576a0b" +dependencies = [ + "defmt-parser", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "defmt-parser" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10d60334b3b2e7c9d91ef8150abfb6fa4c1c39ebbcf4a81c2e346aad939fee3e" +dependencies = [ + "thiserror 2.0.18", +] + [[package]] name = "der" version = "0.7.10" @@ -1437,7 +1709,21 @@ version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", + "displaydoc", + "nom", + "num-bigint 0.4.6", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "der-parser" +version = "10.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07da5016415d5a3c4dd39b11ed26f915f52fc4e0dc197d87908bc916e51bc1a6" +dependencies = [ + "asn1-rs 0.7.2", "displaydoc", "nom", "num-bigint 0.4.6", @@ -1483,12 +1769,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "difflib" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" - [[package]] name = "digest" version = "0.9.0" @@ -1506,17 +1786,19 @@ checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", "const-oid", - "crypto-common", + "crypto-common 0.1.6", "subtle", ] [[package]] -name = "dir-diff" -version = "0.3.3" +name = "digest" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7ad16bf5f84253b50d6557681c58c3ab67c47c77d39fed9aeb56e947290bd10" +checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ - "walkdir", + "block-buffer 0.12.1", + "crypto-common 0.2.2", + "ctutils", ] [[package]] @@ -1557,7 +1839,19 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa" dependencies = [ - "dlopen2_derive", + "dlopen2_derive 0.3.0", + "libc", + "once_cell", + "winapi", +] + +[[package]] +name = "dlopen2" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e2c5bd4158e66d1e215c49b837e11d62f3267b30c92f1d171c4d3105e3dc4d4" +dependencies = [ + "dlopen2_derive 0.4.3", "libc", "once_cell", "winapi", @@ -1574,6 +1868,17 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "dlopen2_derive" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fbbb781877580993a8707ec48672673ec7b81eeba04cfd2310bd28c08e47c8f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + [[package]] name = "downcast" version = "0.11.0" @@ -1724,11 +2029,20 @@ dependencies = [ "enum-iterator-derive", ] +[[package]] +name = "enum-iterator" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4549325971814bda7a44061bf3fe7e487d447cba01e4220a4b454d630d7a016" +dependencies = [ + "enum-iterator-derive", +] + [[package]] name = "enum-iterator-derive" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b" +checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", @@ -1770,9 +2084,9 @@ dependencies = [ [[package]] name = "env_filter" -version = "0.1.4" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" +checksum = "32e90c2accc4b07a8456ea0debdc2e7587bdd890680d71173a15d4ae604f6eef" dependencies = [ "log", "regex", @@ -1780,9 +2094,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.8" +version = "0.11.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" +checksum = "0621c04f2196ac3f488dd583365b9c09be011a4ab8b9f37248ffcc8f6198b56a" dependencies = [ "anstream", "anstyle", @@ -1828,6 +2142,15 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "fast-math" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2465292146cdfc2011350fe3b1c616ac83cf0faeedb33463ba1c332ed8948d66" +dependencies = [ + "ieee754", +] + [[package]] name = "fastbloom" version = "0.14.1" @@ -1836,7 +2159,7 @@ checksum = "4e7f34442dbe69c60fe8eaf58a8cafff81a1f278816d8ab4db255b3bef4ac3c4" dependencies = [ "getrandom 0.3.1", "libm", - "rand 0.9.2", + "rand 0.9.4", "siphasher 1.0.1", ] @@ -1901,9 +2224,9 @@ dependencies = [ [[package]] name = "five8_core" -version = "0.1.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94474d15a76982be62ca8a39570dccce148d98c238ebb7408b0a21b2c4bdddc4" +checksum = "059c31d7d36c43fe39d89e55711858b4da8be7eb6dabac23c7289b1a19489406" [[package]] name = "flate2" @@ -1915,21 +2238,24 @@ dependencies = [ "miniz_oxide", ] -[[package]] -name = "float-cmp" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" -dependencies = [ - "num-traits", -] - [[package]] name = "fnv" version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "foreign-types" version = "0.3.2" @@ -1968,9 +2294,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" dependencies = [ "futures-channel", "futures-core", @@ -1983,9 +2309,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" dependencies = [ "futures-core", "futures-sink", @@ -1993,15 +2319,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -2010,15 +2336,15 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" [[package]] name = "futures-macro" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", @@ -2027,15 +2353,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" +checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" [[package]] name = "futures-task" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" [[package]] name = "futures-timer" @@ -2045,9 +2371,9 @@ checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" [[package]] name = "futures-util" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" dependencies = [ "futures-channel", "futures-core", @@ -2057,7 +2383,6 @@ dependencies = [ "futures-task", "memchr", "pin-project-lite", - "pin-utils", "slab", ] @@ -2082,6 +2407,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "gethostname" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" +dependencies = [ + "rustix 1.1.4", + "windows-link", +] + [[package]] name = "getrandom" version = "0.1.16" @@ -2168,22 +2503,13 @@ dependencies = [ "byteorder", ] -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] - [[package]] name = "hashbrown" version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.11", + "ahash", ] [[package]] @@ -2199,19 +2525,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ "allocator-api2", + "equivalent", + "foldhash 0.1.5", ] [[package]] name = "hashbrown" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash 0.2.0", +] [[package]] name = "heck" -version = "0.4.1" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" @@ -2334,6 +2667,15 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" +[[package]] +name = "hybrid-array" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3944cf8cf766b40e2a1a333ee5e9b563f854d5fa49d6a8ca2764e97c6eddb214" +dependencies = [ + "typenum", +] + [[package]] name = "hyper" version = "1.6.0" @@ -2563,19 +2905,35 @@ dependencies = [ ] [[package]] -name = "im" -version = "15.1.0" +name = "ieee754" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c" + +[[package]] +name = "imbl" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9" +checksum = "e525189e5f603908d0c6e0d402cb5de9c4b2c8866151fabc4ebd771ed2630a2e" dependencies = [ + "archery", "bitmaps", - "rand_core 0.6.4", + "imbl-sized-chunks", + "rand_core 0.9.3", "rand_xoshiro", "rayon", - "serde", - "sized-chunks", - "typenum", + "serde_core", "version_check", + "wide", +] + +[[package]] +name = "imbl-sized-chunks" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f4241005618a62f8d57b2febd02510fb96e0137304728543dfc5fd6f052c22d" +dependencies = [ + "bitmaps", ] [[package]] @@ -2599,12 +2957,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.13.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.17.1", ] [[package]] @@ -2631,9 +2989,9 @@ dependencies = [ [[package]] name = "io-uring" -version = "0.7.11" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd7bddefd0a8833b88a4b68f90dae22c7450d11b354198baee3874fd811b344" +checksum = "4d09b98f7eace8982db770e4408e7470b028ce513ac28fecdc6bf4c30fe92b62" dependencies = [ "bitflags 2.10.0", "cfg-if", @@ -2689,6 +3047,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.14" @@ -2697,10 +3064,11 @@ checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jiff" -version = "0.2.19" +version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89a5b5e10d5a9ad6e5d1f4bd58225f655d6fe9767575a5e8ac5a6fe64e04495" +checksum = "34f877a98676d2fb664698d74cc6a51ce6c484ce8c770f05d0108ec9090aeb46" dependencies = [ + "defmt", "jiff-static", "log", "portable-atomic", @@ -2710,9 +3078,9 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.19" +version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff7a39c8862fc1369215ccf0a8f12dd4598c7f6484704359f0351bd617034dbf" +checksum = "0666b5ab5ecaca213fc2a85b8c0083d9004e84ee2d5f9a7e0017aaf50986f25f" dependencies = [ "proc-macro2", "quote", @@ -2795,7 +3163,7 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" dependencies = [ - "cpufeatures", + "cpufeatures 0.2.16", ] [[package]] @@ -2804,11 +3172,17 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +[[package]] +name = "libbz2-rs-sys" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34b357333733e8260735ba5894eb928c02ecc69c78715f01a8019e7fa7f2db4c" + [[package]] name = "libc" -version = "0.2.181" +version = "0.2.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459427e2af2b9c839b132acb702a1c654d95e10f8c326bfc2ad11310e458b1c5" +checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" [[package]] name = "libm" @@ -2829,18 +3203,18 @@ dependencies = [ [[package]] name = "libsecp256k1" -version = "0.6.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" +checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" dependencies = [ "arrayref", - "base64 0.12.3", + "base64 0.22.1", "digest 0.9.0", "hmac-drbg", "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", - "rand 0.7.3", + "rand 0.8.5", "serde", "sha2 0.9.9", "typenum", @@ -2848,9 +3222,9 @@ dependencies = [ [[package]] name = "libsecp256k1-core" -version = "0.2.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" dependencies = [ "crunchy", "digest 0.9.0", @@ -2859,18 +3233,18 @@ dependencies = [ [[package]] name = "libsecp256k1-gen-ecmult" -version = "0.2.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccab96b584d38fac86a83f07e659f0deafd0253dc096dab5a36d53efe653c5c3" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" dependencies = [ "libsecp256k1-core", ] [[package]] name = "libsecp256k1-gen-genmult" -version = "0.2.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67abfe149395e3aa1c48a2beb32b068e2334402df8181f818d3aee2b304c4f5d" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" dependencies = [ "libsecp256k1-core", ] @@ -2907,9 +3281,9 @@ checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" @@ -2935,11 +3309,11 @@ checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "lru" -version = "0.7.8" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" +checksum = "8a860605968fce16869fd239cf4237a82f3ac470723415db603b0e8b6c8d4fb9" dependencies = [ - "hashbrown 0.12.3", + "hashbrown 0.17.1", ] [[package]] @@ -2984,9 +3358,9 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "744133e4a0e0a658e1374cf3bf8e415c4052a15a111acd372764c55b4177d490" +checksum = "714098028fe011992e1c3962653c96b2d578c4b4bce9036e15ff220319b1e0e3" dependencies = [ "libc", ] @@ -3029,25 +3403,24 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" +checksum = "02bd0af71c67b473010cbbc60715ee815645a4dc942899111f494b4b737d6fda" dependencies = [ "libc", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "mockall" -version = "0.11.4" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c84490118f2ee2d74570d114f3d0493cbf02790df303d2707606c3e14e07c96" +checksum = "f58d964098a5f9c6b63d0798e5372fd04708193510a7af313c22e9f29b7b620b" dependencies = [ "cfg-if", "downcast", "fragile", - "lazy_static", "mockall_derive", "predicates", "predicates-tree", @@ -3055,14 +3428,14 @@ dependencies = [ [[package]] name = "mockall_derive" -version = "0.11.4" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb" +checksum = "ca41ce716dda6a9be188b385aa78ee5260fc25cd3802cb2a8afdc6afbe6b6dbf" dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.117", ] [[package]] @@ -3099,6 +3472,19 @@ dependencies = [ "memoffset", ] +[[package]] +name = "nix" +version = "0.31.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf20d2fde8ff38632c426f1165ed7436270b44f199fc55284c38276f9db47c3d" +dependencies = [ + "bitflags 2.10.0", + "cfg-if", + "cfg_aliases", + "libc", + "memoffset", +] + [[package]] name = "no-std-compat" version = "0.4.1" @@ -3121,12 +3507,6 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21" -[[package]] -name = "normalize-line-endings" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" - [[package]] name = "num" version = "0.2.1" @@ -3263,13 +3643,34 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "object" +version = "0.36.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +dependencies = [ + "crc32fast", + "hashbrown 0.15.2", + "indexmap", + "memchr", +] + [[package]] name = "oid-registry" version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", +] + +[[package]] +name = "oid-registry" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f40cff3dde1b6087cc5d5f5d4d65712f34016a03ed60e9c08dcc392736b5b7" +dependencies = [ + "asn1-rs 0.7.2", ] [[package]] @@ -3409,9 +3810,9 @@ checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "pastey" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b867cad97c0791bbd3aaa6472142568c6c9e8f71937e98379f584cfb0cf35bec" +checksum = "2ee67f1008b1ba2321834326597b8e186293b049a023cdef258527550b9935b4" [[package]] name = "pbkdf2" @@ -3482,12 +3883,6 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - [[package]] name = "pkcs8" version = "0.10.2" @@ -3511,7 +3906,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.16", "opaque-debug", "universal-hash", ] @@ -3543,21 +3938,17 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] name = "predicates" -version = "2.1.5" +version = "3.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" +checksum = "ada8f2932f28a27ee7b70dd6c1c39ea0675c55a36879ab92f3a715eaa1e63cfe" dependencies = [ - "difflib", - "float-cmp", - "itertools 0.10.5", - "normalize-line-endings", + "anstyle", "predicates-core", - "regex", ] [[package]] @@ -3610,6 +4001,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", + "syn 2.0.117", ] [[package]] @@ -3621,6 +4013,18 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", + "version_check", +] + [[package]] name = "proptest" version = "1.11.0" @@ -3631,7 +4035,7 @@ dependencies = [ "bit-vec", "bitflags 2.10.0", "num-traits", - "rand 0.9.2", + "rand 0.9.4", "rand_chacha 0.9.0", "rand_xorshift 0.4.0", "regex-syntax", @@ -3694,7 +4098,7 @@ dependencies = [ "quinn-udp", "rustc-hash 2.1.0", "rustls", - "socket2 0.6.2", + "socket2 0.6.4", "thiserror 2.0.18", "tokio", "tracing", @@ -3711,7 +4115,7 @@ dependencies = [ "fastbloom", "getrandom 0.3.1", "lru-slab", - "rand 0.9.2", + "rand 0.9.4", "ring", "rustc-hash 2.1.0", "rustls", @@ -3779,9 +4183,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.2" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" +checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.3", @@ -3873,11 +4277,11 @@ dependencies = [ [[package]] name = "rand_xoshiro" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +checksum = "f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41" dependencies = [ - "rand_core 0.6.4", + "rand_core 0.9.3", ] [[package]] @@ -3891,9 +4295,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" dependencies = [ "either", "rayon-core", @@ -4109,22 +4513,22 @@ dependencies = [ [[package]] name = "rustix" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ "bitflags 2.10.0", "errno", "libc", - "linux-raw-sys 0.11.0", - "windows-sys 0.60.2", + "linux-raw-sys 0.12.1", + "windows-sys 0.52.0", ] [[package]] name = "rustls" -version = "0.23.36" +version = "0.23.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b" +checksum = "ef86cd5876211988985292b91c96a8f2d298df24e75989a43a3c73f2d4d8168b" dependencies = [ "once_cell", "ring", @@ -4174,7 +4578,7 @@ dependencies = [ "security-framework", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.60.2", + "windows-sys 0.52.0", ] [[package]] @@ -4218,6 +4622,15 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +[[package]] +name = "safe_arch" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96b02de82ddbe1b636e6170c21be622223aea188ef2e139be0a5b219ec215323" +dependencies = [ + "bytemuck", +] + [[package]] name = "same-file" version = "1.0.6" @@ -4281,9 +4694,13 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" +dependencies = [ + "serde", + "serde_core", +] [[package]] name = "seqlock" @@ -4369,9 +4786,9 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.16.1" +version = "3.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa237f2807440d238e0364a218270b98f767a00d3dada77b1c53ae88940e2e7" +checksum = "76a5c54c7310e7b8b9577c286d7e399ddd876c3e12b3ed917a8aabc4b96e9e8c" dependencies = [ "serde_core", "serde_with_macros", @@ -4379,9 +4796,9 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.16.1" +version = "3.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52a8e3ca0ca629121f70ab50f95249e5a6f925cc0f6ffe8256c45b728875706c" +checksum = "84d57bc0c8b9a17920c178daa6bb924850d54a9c97ab45194bb8c17ad66bb660" dependencies = [ "darling", "proc-macro2", @@ -4409,7 +4826,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.16", "digest 0.10.7", ] @@ -4421,7 +4838,7 @@ checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" dependencies = [ "block-buffer 0.9.0", "cfg-if", - "cpufeatures", + "cpufeatures 0.2.16", "digest 0.9.0", "opaque-debug", ] @@ -4433,7 +4850,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.16", "digest 0.10.7", ] @@ -4484,6 +4901,16 @@ dependencies = [ "signal-hook-registry", ] +[[package]] +name = "signal-hook" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a0c28ca5908dbdbcd52e6fdaa00358ab88637f8ab33e1f188dd510eb44b53d" +dependencies = [ + "libc", + "signal-hook-registry", +] + [[package]] name = "signal-hook-registry" version = "1.4.2" @@ -4521,16 +4948,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" -[[package]] -name = "sized-chunks" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" -dependencies = [ - "bitmaps", - "typenum", -] - [[package]] name = "slab" version = "0.4.12" @@ -4542,6 +4959,9 @@ name = "smallvec" version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +dependencies = [ + "serde", +] [[package]] name = "socket2" @@ -4555,12 +4975,12 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.2" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0" +checksum = "52d1cfed4120b4d927bf7c0f86d2087a4a7d6027c906d9f9d525a80573b9be51" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -4613,14 +5033,14 @@ dependencies = [ "serde", "serde_json", "solana-account 3.4.0", - "solana-account-decoder-client-types", + "solana-account-decoder-client-types 3.1.8", "solana-address-lookup-table-interface", "solana-clock", "solana-config-interface", "solana-epoch-schedule", "solana-fee-calculator", "solana-instruction", - "solana-loader-v3-interface", + "solana-loader-v3-interface 6.1.0", "solana-nonce", "solana-program-option", "solana-program-pack", @@ -4641,6 +5061,48 @@ dependencies = [ "zstd", ] +[[package]] +name = "solana-account-decoder" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d0e7e28288d81d8698b5bcd75cf0406a1c92fbc3cb178e6f0ae51fb94c0c859" +dependencies = [ + "Inflector", + "base64 0.22.1", + "bincode", + "bs58", + "bv", + "serde", + "serde_json", + "solana-account 4.3.1", + "solana-account-decoder-client-types 4.1.0-rc.1", + "solana-address-lookup-table-interface", + "solana-clock", + "solana-config-interface", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-instruction", + "solana-loader-v3-interface 7.0.0", + "solana-nonce", + "solana-program-option", + "solana-program-pack", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", + "solana-sdk-ids", + "solana-slot-hashes", + "solana-slot-history", + "solana-stake-interface 3.1.0", + "solana-sysvar 4.0.0", + "solana-vote-interface 6.0.1", + "spl-generic-token", + "spl-token-2022-interface 2.1.0", + "spl-token-group-interface", + "spl-token-interface 2.0.0", + "spl-token-metadata-interface 0.8.0", + "thiserror 2.0.18", + "zstd", +] + [[package]] name = "solana-account-decoder-client-types" version = "3.1.8" @@ -4656,6 +5118,21 @@ dependencies = [ "zstd", ] +[[package]] +name = "solana-account-decoder-client-types" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d971a625a2008e802c596bf40392dcc4b5d1c2a6c9c76af11a7efed330fdff" +dependencies = [ + "base64 0.22.1", + "bs58", + "serde", + "serde_json", + "solana-account 4.3.1", + "solana-pubkey 4.2.0", + "zstd", +] + [[package]] name = "solana-account-info" version = "3.1.1" @@ -4671,59 +5148,49 @@ dependencies = [ [[package]] name = "solana-accounts-db" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "774af16dab3435a64c83f88027f17ef72a4c56afedbbf4a0f799cd242199beab" +checksum = "7307f79b5ac6f9250b5606ede77c84f2e23573b6d120c2e60ded5fd292476c37" dependencies = [ "agave-fs", - "ahash 0.8.11", - "bincode", + "ahash", "blake3", "bv", - "bytemuck", - "bytemuck_derive", - "crossbeam-channel", "dashmap", - "indexmap", - "itertools 0.12.1", + "itertools 0.14.0", "log", - "lz4", - "memmap2 0.9.9", + "memmap2 0.9.10", "modular-bitfield", "num_cpus", - "num_enum", - "rand 0.8.5", + "rand 0.9.4", "rayon", "seqlock", "serde", "smallvec", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-address-lookup-table-interface", "solana-bucket-map", "solana-clock", "solana-epoch-schedule", "solana-fee-calculator", - "solana-genesis-config", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-lattice-hash", - "solana-measure", - "solana-message", - "solana-metrics", + "solana-measure 4.1.0-rc.1", + "solana-message 4.2.0", + "solana-metrics 4.1.0-rc.1", "solana-nohash-hasher", - "solana-pubkey 3.0.0", - "solana-rayon-threadlimit", - "solana-reward-info", - "solana-sha256-hasher", + "solana-pubkey 4.2.0", + "solana-rayon-threadlimit 4.1.0-rc.1", + "solana-reward-info 6.2.0", "solana-slot-hashes", - "solana-svm-transaction", - "solana-system-interface 2.0.0", - "solana-sysvar 3.1.1", + "solana-svm-transaction 4.1.0-rc.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.0.0", "solana-time-utils", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", "spl-generic-token", - "static_assertions", "tempfile", "thiserror 2.0.18", ] @@ -4749,24 +5216,24 @@ dependencies = [ "curve25519-dalek 4.1.3", "five8", "five8_const", - "rand 0.9.2", + "rand 0.9.4", "serde", "serde_derive", "sha2-const-stable", "solana-atomic-u64", - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", "solana-nullable", "solana-program-error", "solana-sanitize", "solana-sha256-hasher", - "wincode 0.5.1", + "wincode", ] [[package]] name = "solana-address-lookup-table-interface" -version = "3.0.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e8df0b083c10ce32490410f3795016b1b5d9b4d094658c0a5e496753645b7cd" +checksum = "115b4f773acc4f3f3cb986b0d335e9845c0368c82b0940410935bc11ae065578" dependencies = [ "bincode", "bytemuck", @@ -4791,25 +5258,25 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3a1b216be442158ae6ffcbe57cc8662ada054902c415b2bf82922aed83b0d40" +checksum = "388882be3a93bf9e28a71da0decc30b432e951d3fef2bffd407ce9749595d683" dependencies = [ "borsh", "futures", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-banks-interface", "solana-clock", "solana-commitment-config", - "solana-hash 3.1.0", - "solana-message", + "solana-hash 4.4.0", + "solana-message 4.2.0", "solana-program-pack", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", "solana-signature", - "solana-sysvar 3.1.1", - "solana-transaction", - "solana-transaction-context", + "solana-sysvar 4.0.0", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", "tarpc", "thiserror 2.0.18", @@ -4819,52 +5286,52 @@ dependencies = [ [[package]] name = "solana-banks-interface" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f53ca62827471c64e5fa7f7671cb525b996762fe31c8ef2e60095726dd24c494" +checksum = "2aaf1dc8fbd78fad0d36c464dd1234a0628c14f22f29ee4d21d5e5ba1a3fb457" dependencies = [ "serde", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-clock", "solana-commitment-config", - "solana-hash 3.1.0", - "solana-message", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-pubkey 4.2.0", "solana-signature", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", "tarpc", ] [[package]] name = "solana-banks-server" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb9277a686ef80d18a6da305fbbd02c72a58dd97b1a27075c122883f3bb6bab9" +checksum = "ae617e2f3acd2f26d6cf6fbf9275f915b538a3162e3878e8153aa1fefd218cbf" dependencies = [ - "agave-feature-set", + "agave-feature-set 4.1.0-rc.1", "bincode", "crossbeam-channel", "futures", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-banks-interface", - "solana-client", "solana-clock", "solana-commitment-config", - "solana-hash 3.1.0", - "solana-message", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-net-utils 4.1.0-rc.1", + "solana-pubkey 4.2.0", "solana-runtime", "solana-runtime-transaction", "solana-send-transaction-service", "solana-signature", - "solana-svm", - "solana-transaction", + "solana-transaction 4.1.2", "solana-transaction-error", "tarpc", "tokio", "tokio-serde", + "tokio-util 0.7.18", ] [[package]] @@ -4905,6 +5372,26 @@ name = "solana-bls-signatures" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61c75573697bbb148afa8209aa3ce228ca0754584c9a8a91e818db0f706ae4fb" +dependencies = [ + "base64 0.22.1", + "blst", + "blstrs", + "cfg_eval", + "ff", + "group", + "pairing", + "rand 0.8.5", + "serde", + "serde_json", + "serde_with", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-bls-signatures" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "654ea8d31bbb4b0b9c28f9c545edb32691de27d4e2fc0e252c1ff47da50c5f2a" dependencies = [ "base64 0.22.1", "blst", @@ -4915,6 +5402,7 @@ dependencies = [ "group", "pairing", "rand 0.8.5", + "rayon", "serde", "serde_json", "serde_with", @@ -4922,6 +5410,22 @@ dependencies = [ "solana-signer", "subtle", "thiserror 2.0.18", + "wincode", + "zeroize", +] + +[[package]] +name = "solana-bls12-381-syscall" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28a699aa5e660203c17c18ceaef0eff78c67fd5193f4dbe90a07148e06030ab6" +dependencies = [ + "blst", + "blstrs", + "bytemuck", + "bytemuck_derive", + "group", + "pairing", ] [[package]] @@ -4935,7 +5439,7 @@ dependencies = [ "ark-ff 0.5.0", "ark-serialize 0.5.0", "bytemuck", - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", "thiserror 2.0.18", ] @@ -4950,88 +5454,80 @@ dependencies = [ [[package]] name = "solana-bpf-loader-program" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc7d30e90589489d4ef93ada64811c0b23297736ca953c2ecc94bf1bd7087d4" +checksum = "ef26382c9ed1a359b53b1bfc06d221be7bc69b48fd672e2f5f4c18fa225d5ea7" dependencies = [ - "agave-syscalls", "bincode", "qualifier_attr", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-bincode", "solana-clock", "solana-instruction", - "solana-loader-v3-interface", - "solana-loader-v4-interface", - "solana-packet", - "solana-program-entrypoint", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sbpf", + "solana-loader-v3-interface 7.0.0", + "solana-packet 4.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-sbpf 0.21.0", "solana-sdk-ids", - "solana-svm-feature-set", - "solana-svm-log-collector", - "solana-svm-measure", - "solana-svm-type-overrides", - "solana-system-interface 2.0.0", - "solana-transaction-context", + "solana-svm-feature-set 4.1.0-rc.1", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-svm-measure 4.1.0-rc.1", + "solana-svm-type-overrides 4.1.0-rc.1", + "solana-syscalls", + "solana-system-interface 3.2.0", + "solana-transaction-context 4.1.0-rc.1", ] [[package]] name = "solana-bucket-map" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77b879a0ec6836148c4c571357f1852b8e7bf70e2f6212f560a9fd81f98a6965" +checksum = "02c67529ef5b92896ea055e9ffb4acab28130add2187585199d3bd308187e5fe" dependencies = [ + "ahash", "bv", "bytemuck", "bytemuck_derive", - "memmap2 0.9.9", + "memmap2 0.9.10", "modular-bitfield", "num_enum", - "rand 0.8.5", + "rand 0.9.4", "solana-clock", - "solana-measure", - "solana-pubkey 3.0.0", + "solana-measure 4.1.0-rc.1", + "solana-pubkey 4.2.0", "tempfile", ] [[package]] name = "solana-builtins" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eb800aef9a1dc85195c088e9c0e4786f0c7aa22348c53892f2773e234408be3" +checksum = "e7ac5f7ab127e80134120706b1b0b12584dc4b52d170dd7e50f115f88b6a6283" dependencies = [ - "agave-feature-set", + "agave-feature-set 4.1.0-rc.1", "solana-bpf-loader-program", "solana-compute-budget-program", - "solana-hash 3.1.0", - "solana-loader-v4-program", - "solana-program-runtime", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-system-program", - "solana-vote-program", + "solana-vote-program 4.1.0-rc.1", "solana-zk-elgamal-proof-program", "solana-zk-token-proof-program", ] [[package]] name = "solana-builtins-default-costs" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abdf819d105e2afa3ecd651d06514764bb567395cd91c25b4a51ea8d0a6b426" +checksum = "e8b2e3714dce48eb2088d2e083d249df524cde8bf7c4b65e8badb41c8306e7dd" dependencies = [ - "agave-feature-set", - "ahash 0.8.11", - "log", - "solana-bpf-loader-program", - "solana-compute-budget-program", - "solana-loader-v4-program", - "solana-pubkey 3.0.0", + "agave-feature-set 4.1.0-rc.1", + "ahash", + "solana-pubkey 4.2.0", "solana-sdk-ids", - "solana-system-program", - "solana-vote-program", ] [[package]] @@ -5043,14 +5539,14 @@ dependencies = [ "chrono", "clap", "rpassword", - "solana-bls-signatures", + "solana-bls-signatures 1.0.0", "solana-clock", "solana-cluster-type", "solana-commitment-config", "solana-derivation-path", "solana-hash 3.1.0", "solana-keypair", - "solana-message", + "solana-message 3.1.0", "solana-native-token", "solana-presigner", "solana-pubkey 3.0.0", @@ -5085,7 +5581,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c75b9c6f7b0ab8617eb03b22c78b860af588f6f1bc76c5ada6b8125a9826b4c8" dependencies = [ "Inflector", - "agave-reserved-account-keys", + "agave-reserved-account-keys 3.1.8", "base64 0.22.1", "chrono", "clap", @@ -5097,26 +5593,26 @@ dependencies = [ "serde", "serde_json", "solana-account 3.4.0", - "solana-account-decoder", + "solana-account-decoder 3.1.8", "solana-bincode", "solana-clap-utils", "solana-cli-config", "solana-clock", "solana-epoch-info", "solana-hash 3.1.0", - "solana-message", - "solana-packet", + "solana-message 3.1.0", + "solana-packet 3.0.0", "solana-pubkey 3.0.0", - "solana-rpc-client-api", + "solana-rpc-client-api 3.1.8", "solana-sdk-ids", "solana-signature", "solana-stake-interface 2.0.2", "solana-system-interface 2.0.0", - "solana-transaction", + "solana-transaction 3.1.0", "solana-transaction-error", "solana-transaction-status", - "solana-transaction-status-client-types", - "solana-vote-program", + "solana-transaction-status-client-types 3.1.8", + "solana-vote-program 3.1.8", "spl-memo-interface", ] @@ -5137,31 +5633,31 @@ dependencies = [ "quinn", "rayon", "solana-account 3.4.0", - "solana-client-traits", + "solana-client-traits 3.0.0", "solana-commitment-config", "solana-connection-cache", "solana-epoch-info", "solana-hash 3.1.0", "solana-instruction", "solana-keypair", - "solana-measure", - "solana-message", - "solana-net-utils", + "solana-measure 3.1.8", + "solana-message 3.1.0", + "solana-net-utils 3.1.8", "solana-pubkey 3.0.0", "solana-pubsub-client", "solana-quic-client", "solana-quic-definitions", - "solana-rpc-client", - "solana-rpc-client-api", + "solana-rpc-client 3.1.8", + "solana-rpc-client-api 3.1.8", "solana-rpc-client-nonce-utils", "solana-signature", "solana-signer", - "solana-streamer", + "solana-streamer 3.1.8", "solana-time-utils", "solana-tpu-client", - "solana-transaction", + "solana-transaction 3.1.0", "solana-transaction-error", - "solana-transaction-status-client-types", + "solana-transaction-status-client-types 3.1.8", "solana-udp-client", "thiserror 2.0.18", "tokio", @@ -5180,12 +5676,33 @@ dependencies = [ "solana-hash 3.1.0", "solana-instruction", "solana-keypair", - "solana-message", + "solana-message 3.1.0", "solana-pubkey 3.0.0", "solana-signature", "solana-signer", "solana-system-interface 2.0.0", - "solana-transaction", + "solana-transaction 3.1.0", + "solana-transaction-error", +] + +[[package]] +name = "solana-client-traits" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19635cc703678bcb26eb6faee4a363c71f4a0d622c445d9b70c048c42f4cbcd3" +dependencies = [ + "solana-account 4.3.1", + "solana-commitment-config", + "solana-epoch-info", + "solana-hash 4.4.0", + "solana-instruction", + "solana-keypair", + "solana-message 4.2.0", + "solana-pubkey 4.2.0", + "solana-signature", + "solana-signer", + "solana-system-interface 3.2.0", + "solana-transaction 4.1.2", "solana-transaction-error", ] @@ -5204,13 +5721,13 @@ dependencies = [ [[package]] name = "solana-cluster-type" -version = "3.0.0" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb7692fa6bf10a1a86b450c4775526f56d7e0e2116a53313f2533b5694abea64" +checksum = "3a494cf8eda7d98d9f0144b288bb409c88308d2e86f15cc1045aa77b83304718" dependencies = [ "serde", "serde_derive", - "solana-hash 3.1.0", + "solana-hash 4.4.0", ] [[package]] @@ -5225,33 +5742,31 @@ dependencies = [ [[package]] name = "solana-compute-budget" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2fe14d00d8e4092523c58b0ebfce03d8dd6a5cb778df7d7262bb2c2acff50e3" +checksum = "56ccfb43c9fc8f041e744c2a6413391ca906f31266bc5ac1afe78bced47a07bc" dependencies = [ "solana-fee-structure", - "solana-program-runtime", + "solana-program-runtime 4.1.0-rc.1", ] [[package]] name = "solana-compute-budget-instruction" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804f1a6de0397f6fe4a2a4d68ccc5925028d41e83fc424514e93095f9709c363" +checksum = "59aadca9711df5ab98d19452347b9c5e1dd56060ca6729a0d971a445975c5d2e" dependencies = [ - "agave-feature-set", - "log", + "agave-feature-set 4.1.0-rc.1", "solana-borsh", "solana-builtins-default-costs", "solana-compute-budget", "solana-compute-budget-interface", "solana-instruction", - "solana-packet", - "solana-pubkey 3.0.0", + "solana-packet 4.1.0", + "solana-pubkey 4.2.0", "solana-sdk-ids", - "solana-svm-transaction", + "solana-svm-transaction 4.1.0-rc.1", "solana-transaction-error", - "thiserror 2.0.18", ] [[package]] @@ -5267,11 +5782,11 @@ dependencies = [ [[package]] name = "solana-compute-budget-program" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b83c297d29952206a455ec06fbe1e47f32711a13584ae1a6248f6ce0399a0f8" +checksum = "e0f16af451ac5e0f7360d371c2f24725badfa7f95d3f8ed8c6c9a691451e349a" dependencies = [ - "solana-program-runtime", + "solana-program-runtime 4.1.0-rc.1", ] [[package]] @@ -5306,8 +5821,8 @@ dependencies = [ "rand 0.8.5", "rayon", "solana-keypair", - "solana-measure", - "solana-metrics", + "solana-measure 3.1.8", + "solana-metrics 3.1.8", "solana-time-utils", "solana-transaction-error", "thiserror 2.0.18", @@ -5316,30 +5831,27 @@ dependencies = [ [[package]] name = "solana-cost-model" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a72fa5a0dd6b1438574a1cce6b5c8db0f525d35680773ec58cd907261012fd" +checksum = "7c24e379298f9cd2196f0690e2a66fc9baa3d843e61b6f96f498b02b0dc1f101" dependencies = [ - "agave-feature-set", - "ahash 0.8.11", + "agave-feature-set 4.1.0-rc.1", + "ahash", "log", "solana-bincode", - "solana-borsh", - "solana-builtins-default-costs", "solana-clock", "solana-compute-budget", "solana-compute-budget-instruction", "solana-compute-budget-interface", - "solana-fee-structure", - "solana-metrics", - "solana-packet", - "solana-pubkey 3.0.0", + "solana-metrics 4.1.0-rc.1", + "solana-packet 4.1.0", + "solana-pubkey 4.2.0", "solana-runtime-transaction", "solana-sdk-ids", - "solana-svm-transaction", - "solana-system-interface 2.0.0", + "solana-svm-transaction 4.1.0-rc.1", + "solana-system-interface 3.2.0", "solana-transaction-error", - "solana-vote-program", + "solana-vote-program 4.1.0-rc.1", ] [[package]] @@ -5370,6 +5882,20 @@ dependencies = [ "thiserror 2.0.18", ] +[[package]] +name = "solana-curve25519" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14b4d2a4bf0d0b0a86c22111917e86e8bd39a7b31420fb2c7d73eb83761fc7af" +dependencies = [ + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "solana-define-syscall 5.1.0", + "subtle", + "thiserror 2.0.18", +] + [[package]] name = "solana-define-syscall" version = "3.0.0" @@ -5384,9 +5910,9 @@ checksum = "57e5b1c0bc1d4a4d10c88a4100499d954c09d3fecfae4912c1a074dff68b1738" [[package]] name = "solana-define-syscall" -version = "5.0.0" +version = "5.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03aacdd7a61e2109887a7a7f046caebafce97ddf1150f33722eeac04f9039c73" +checksum = "21e14a4f604117f379840956a8fc8695e4c84f5b0ebed192f31f60d9b85d581d" [[package]] name = "solana-derivation-path" @@ -5411,6 +5937,37 @@ dependencies = [ "solana-sdk-ids", ] +[[package]] +name = "solana-entry" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b214250563d7374e5e38c05e315b4a9902314416f6099a25d2a78794705c029" +dependencies = [ + "agave-votor-messages", + "crossbeam-channel", + "dlopen2 0.8.2", + "log", + "num_cpus", + "rayon", + "smallvec", + "solana-address 2.6.0", + "solana-bls-signatures 3.3.0", + "solana-clock", + "solana-hash 4.4.0", + "solana-measure 4.1.0-rc.1", + "solana-merkle-tree", + "solana-message 4.2.0", + "solana-packet 4.1.0", + "solana-perf 4.1.0-rc.1", + "solana-runtime-transaction", + "solana-sha256-hasher", + "solana-signature", + "solana-transaction 4.1.2", + "solana-transaction-error", + "thiserror 2.0.18", + "wincode", +] + [[package]] name = "solana-epoch-info" version = "3.1.0" @@ -5448,9 +6005,9 @@ dependencies = [ [[package]] name = "solana-epoch-schedule" -version = "3.0.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e5481e72cc4d52c169db73e4c0cd16de8bc943078aac587ec4817a75cc6388f" +checksum = "7ad280b1ed803853f7b453cb3ea9a57e600ca5599a63e69f7be199b486c0ec93" dependencies = [ "serde", "serde_derive", @@ -5482,7 +6039,7 @@ dependencies = [ "solana-hash 3.1.0", "solana-instruction", "solana-keccak-hasher", - "solana-message", + "solana-message 3.1.0", "solana-nonce", "solana-pubkey 3.0.0", "solana-sdk-ids", @@ -5512,11 +6069,24 @@ name = "solana-feature-gate-interface" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75ca9b5cbb6f500f7fd73db5bd95640f71a83f04d6121a0e59a43b202dca2731" +dependencies = [ + "serde", + "serde_derive", + "solana-program-error", + "solana-pubkey 4.2.0", + "solana-sdk-ids", +] + +[[package]] +name = "solana-feature-gate-interface" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd7545e02f91da1d6996f32b18f7796aa01e0682f8f3a7434b82cd1a10448add" dependencies = [ "bincode", "serde", "serde_derive", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-account-info", "solana-instruction", "solana-program-error", @@ -5528,24 +6098,25 @@ dependencies = [ [[package]] name = "solana-fee" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1e6bdbeeaab926dee7830046ce8c18e8fc3ccb324f6eb4f100c240dfd61fe45" +checksum = "aa56d47a938fe7e9833273a12186ecacb6315876a2046e7e7f838a7b087c5d57" dependencies = [ - "agave-feature-set", + "agave-feature-set 4.1.0-rc.1", "solana-fee-structure", - "solana-svm-transaction", + "solana-svm-transaction 4.1.0-rc.1", ] [[package]] name = "solana-fee-calculator" -version = "3.1.0" +version = "3.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2a5675b2cf8d407c672dc1776492b1f382337720ddf566645ae43237a3d8c3" +checksum = "ef67f01cc6a0c72e99a08d0d484683f995de4c80e9568728fa77d1537f9b7e09" dependencies = [ "log", "serde", "serde_derive", + "wincode", ] [[package]] @@ -5560,26 +6131,26 @@ dependencies = [ [[package]] name = "solana-genesis-config" -version = "3.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "749eccc960e85c9b33608450093d256006253e1cb436b8380e71777840a3f675" +checksum = "5415e781581524a972a3de931d1716d90c0ee08beaa1f34e3108339caf9ee450" dependencies = [ "bincode", "chrono", "memmap2 0.5.10", "serde", "serde_derive", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-clock", "solana-cluster-type", "solana-epoch-schedule", "solana-fee-calculator", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-inflation", "solana-keypair", "solana-poh-config", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", "solana-sdk-ids", "solana-sha256-hasher", "solana-shred-version", @@ -5589,9 +6160,9 @@ dependencies = [ [[package]] name = "solana-hard-forks" -version = "3.0.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0abacc4b66ce471f135f48f22facf75cbbb0f8a252fbe2c1e0aa59d5b203f519" +checksum = "45406eccad36220e52988b024d8daa93e691e38d5d71ad5fec55410cc9cf427d" dependencies = [ "serde", "serde_derive", @@ -5620,13 +6191,20 @@ dependencies = [ "serde_derive", "solana-atomic-u64", "solana-sanitize", + "wincode", ] +[[package]] +name = "solana-hash-512" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ce934b02bab639341f2fd62c3e7e3c39dcceb47f0196b7630ed1f82ecb704bd" + [[package]] name = "solana-inflation" -version = "3.0.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e92f37a14e7c660628752833250dd3dcd8e95309876aee751d7f8769a27947c6" +checksum = "ccf104167e42e747602b88e02b25cacfc5de699c3b7cbba60d3250437e6a22ed" dependencies = [ "serde", "serde_derive", @@ -5642,9 +6220,10 @@ dependencies = [ "borsh", "serde", "serde_derive", - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", "solana-instruction-error", "solana-pubkey 4.2.0", + "wincode", ] [[package]] @@ -5690,14 +6269,15 @@ dependencies = [ [[package]] name = "solana-keypair" -version = "3.1.0" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ac8be597c9e231b0cab2928ce3bc3e4ee77d9c0ad92977b9d901f3879f25a7a" +checksum = "263d614c12aa267a3278703175fd6440552ca61bc960b5a02a4482720c53438b" dependencies = [ "ed25519-dalek 2.2.0", "ed25519-dalek-bip32", "five8", - "rand 0.8.5", + "five8_core", + "rand 0.9.4", "solana-address 2.6.0", "solana-derivation-path", "solana-seed-derivable", @@ -5721,9 +6301,9 @@ dependencies = [ [[package]] name = "solana-lattice-hash" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ed689cb9fdb3b8540686d7b023dbaef1ecc51f0fcad98c9000bbdbecd829e8" +checksum = "d1a523f3d3d2386112e36e8e5306d206022c3cdd3375a2898180d562de2fac86" dependencies = [ "base64 0.22.1", "blake3", @@ -5731,6 +6311,20 @@ dependencies = [ "bytemuck", ] +[[package]] +name = "solana-leader-schedule" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fdd88056bec810f9e5e5822430d523138486f3ed012530fda9b63bd5b36cb61" +dependencies = [ + "agave-random", + "itertools 0.14.0", + "rand_chacha 0.9.0", + "solana-clock", + "solana-pubkey 4.2.0", + "solana-vote", +] + [[package]] name = "solana-loader-v2-interface" version = "3.0.0" @@ -5761,42 +6355,29 @@ dependencies = [ ] [[package]] -name = "solana-loader-v4-interface" -version = "3.1.0" +name = "solana-loader-v3-interface" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" +checksum = "68029ab11d9c891d4ce23ada75745e40f983c5674af366f447b672569634231b" dependencies = [ "serde", "serde_bytes", "serde_derive", "solana-instruction", - "solana-pubkey 3.0.0", + "solana-pubkey 4.2.0", "solana-sdk-ids", - "solana-system-interface 2.0.0", + "solana-system-interface 3.2.0", ] [[package]] -name = "solana-loader-v4-program" -version = "3.1.8" +name = "solana-loader-v4-interface" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc6ca85532321c1e4ae6b0024f6b23267e742635aec19cac744a54a37ee5764" +checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" dependencies = [ - "log", - "solana-account 3.4.0", - "solana-bincode", - "solana-bpf-loader-program", "solana-instruction", - "solana-loader-v3-interface", - "solana-loader-v4-interface", - "solana-packet", - "solana-program-runtime", "solana-pubkey 3.0.0", - "solana-sbpf", "solana-sdk-ids", - "solana-svm-log-collector", - "solana-svm-measure", - "solana-svm-type-overrides", - "solana-transaction-context", ] [[package]] @@ -5809,7 +6390,7 @@ dependencies = [ "lazy_static", "libc", "log", - "signal-hook", + "signal-hook 0.3.18", ] [[package]] @@ -5818,6 +6399,23 @@ version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be8c8288f2b0755aaec2bae772239a48408e076a9b90db40c936f1fa5debbc78" +[[package]] +name = "solana-measure" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ff9bf0fa43ef5128b9ac7e33741a24d20eb0378a8c23c69dacb8e6ca485c1d" + +[[package]] +name = "solana-merkle-tree" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9ef073c7c0703b9f1990f98188d3f1f8916b12a62b53df1ab76106594db6fb5" +dependencies = [ + "fast-math", + "solana-hash 4.4.0", + "solana-sha256-hasher", +] + [[package]] name = "solana-message" version = "3.1.0" @@ -5838,6 +6436,26 @@ dependencies = [ "solana-transaction-error", ] +[[package]] +name = "solana-message" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a81a5ae2aa5c27925de70bc94fc42f1ca80a46c951ae101b419aa4eac9abb56a" +dependencies = [ + "blake3", + "lazy_static", + "serde", + "serde_derive", + "solana-address 2.6.0", + "solana-hash 4.4.0", + "solana-instruction", + "solana-sanitize", + "solana-sdk-ids", + "solana-short-vec", + "solana-transaction-error", + "wincode", +] + [[package]] name = "solana-metrics" version = "3.1.8" @@ -5845,7 +6463,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dac53c2ae91e227cd1f0aa9f744beca638a2e971b84d7c2f008cf2c75af1b0d5" dependencies = [ "crossbeam-channel", - "gethostname", + "gethostname 0.2.3", + "log", + "reqwest", + "solana-cluster-type", + "solana-sha256-hasher", + "solana-time-utils", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-metrics" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb28cd8892b67bd406fe70e6daa1d39197f8a3026b1304bb323d14d590e1eb2d" +dependencies = [ + "crossbeam-channel", + "gethostname 1.1.0", "log", "reqwest", "solana-cluster-type", @@ -5860,7 +6494,7 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726b7cbbc6be6f1c6f29146ac824343b9415133eee8cce156452ad1db93f8008" dependencies = [ - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", ] [[package]] @@ -5882,12 +6516,35 @@ dependencies = [ "dashmap", "itertools 0.12.1", "log", - "nix", + "nix 0.30.1", "rand 0.8.5", "serde", - "socket2 0.6.2", + "socket2 0.6.4", + "solana-serde", + "solana-svm-type-overrides 3.1.8", + "tokio", + "url", +] + +[[package]] +name = "solana-net-utils" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "971c3e8bfe2c3de370f9b68579df570760ef99ea4fe1522d75bd97f65e0ab685" +dependencies = [ + "bincode", + "bytes", + "cfg-if", + "dashmap", + "itertools 0.14.0", + "log", + "nix 0.31.3", + "rand 0.9.4", + "serde", + "socket2 0.6.4", "solana-serde", - "solana-svm-type-overrides", + "solana-svm-type-overrides 4.1.0-rc.1", + "thiserror 2.0.18", "tokio", "url", ] @@ -5900,28 +6557,30 @@ checksum = "8b8a731ed60e89177c8a7ab05fe0f1511cedd3e70e773f288f9de33a9cfdc21e" [[package]] name = "solana-nonce" -version = "3.0.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abbdc6c8caf1c08db9f36a50967539d0f72b9f1d4aea04fec5430f532e5afadc" +checksum = "d95dbc9f2e33b6c10e231df15cb2a3bff9ea7eab6347f9e316fe75c97fd67bbb" dependencies = [ "serde", "serde_derive", "solana-fee-calculator", - "solana-hash 3.1.0", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-pubkey 4.2.0", "solana-sha256-hasher", + "wincode", ] [[package]] name = "solana-nonce-account" -version = "3.0.0" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "805fd25b29e5a1a0e6c3dd6320c9da80f275fbe4ff6e392617c303a2085c435e" +checksum = "cda945f4ccb317791c26379ca8ec410c5938aa7a5eff211fe5fe0bb428c3a75f" dependencies = [ - "solana-account 3.4.0", - "solana-hash 3.1.0", + "solana-account 4.3.1", + "solana-hash 4.4.0", "solana-nonce", "solana-sdk-ids", + "wincode", ] [[package]] @@ -5942,7 +6601,7 @@ checksum = "f6e2a1141a673f72a05cf406b99e4b2b8a457792b7c01afa07b3f00d4e2de393" dependencies = [ "num_enum", "solana-hash 3.1.0", - "solana-packet", + "solana-packet 3.0.0", "solana-pubkey 3.0.0", "solana-sanitize", "solana-sha256-hasher", @@ -5964,37 +6623,82 @@ dependencies = [ "serde_with", ] +[[package]] +name = "solana-packet" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ad62e1045c2347a0c0e219a6ceb0abfe904be622920996bfcac8d116fabe3c7" +dependencies = [ + "bincode", + "bitflags 2.10.0", + "cfg_eval", + "serde", + "serde_derive", + "serde_with", + "solana-pubkey 4.2.0", +] + [[package]] name = "solana-perf" version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "87608537c53ca0976f04166691fc11523e93802a50660b719e62e172dd47cf10" dependencies = [ - "ahash 0.8.11", + "ahash", "bincode", "bv", "bytes", "caps", "curve25519-dalek 4.1.3", - "dlopen2", + "dlopen2 0.5.0", "fnv", "libc", "log", - "nix", + "nix 0.30.1", "rand 0.8.5", "rayon", "serde", "solana-hash 3.1.0", - "solana-message", - "solana-metrics", - "solana-packet", + "solana-message 3.1.0", + "solana-metrics 3.1.8", + "solana-packet 3.0.0", "solana-pubkey 3.0.0", - "solana-rayon-threadlimit", + "solana-rayon-threadlimit 3.1.8", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-time-utils", + "solana-transaction-context 3.1.8", +] + +[[package]] +name = "solana-perf" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "869260210eb9360515759d6cac56955a2c02effd56bcd3285dc38ae8db70c6fc" +dependencies = [ + "agave-transaction-view", + "ahash", + "bincode", + "bytes", + "caps", + "libc", + "log", + "nix 0.31.3", + "num_cpus", + "rand 0.9.4", + "rayon", + "serde", + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-metrics 4.1.0-rc.1", + "solana-packet 4.1.0", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-short-vec", "solana-signature", "solana-time-utils", - "solana-transaction-context", + "solana-transaction-context 4.1.0-rc.1", ] [[package]] @@ -6009,15 +6713,15 @@ dependencies = [ [[package]] name = "solana-poseidon" -version = "3.1.8" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9b2cf3486543d8d5abf916b99ab383b5c8fc83ea091eafe3761e4af667e49e2" +checksum = "737b8ab25bf4cc8e618f80f1fe40709b2ace708bc764a36b8a4c81eea8c07034" dependencies = [ "ark-bn254 0.4.0", "ark-bn254 0.5.0", "light-poseidon 0.2.0", "light-poseidon 0.4.0", - "solana-define-syscall 3.0.0", + "solana-define-syscall 4.0.1", "thiserror 2.0.18", ] @@ -6101,7 +6805,7 @@ dependencies = [ "solana-borsh", "solana-clock", "solana-cpi", - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", "solana-epoch-rewards", "solana-epoch-schedule", "solana-epoch-stake", @@ -6137,16 +6841,15 @@ dependencies = [ [[package]] name = "solana-program-binaries" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72fc15a97e374d38b350b0b32833137469f633450d0e19d71d7251810ebbc206" +checksum = "1c149c9017f3f7e16b750270f297fa15920c3a16ff93ffdebee6438f58a19d6c" dependencies = [ "bincode", - "serde", - "solana-account 3.4.0", - "solana-loader-v3-interface", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", + "solana-account 4.3.1", + "solana-loader-v3-interface 7.0.0", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", "solana-sdk-ids", "spl-generic-token", ] @@ -6220,48 +6923,94 @@ dependencies = [ "solana-hash 3.1.0", "solana-instruction", "solana-last-restart-slot", - "solana-loader-v3-interface", + "solana-loader-v3-interface 6.1.0", "solana-program-entrypoint", "solana-pubkey 3.0.0", "solana-rent 3.1.0", - "solana-sbpf", + "solana-sbpf 0.13.1", "solana-sdk-ids", "solana-slot-hashes", "solana-stable-layout", "solana-stake-interface 2.0.2", - "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-svm-callback 3.1.8", + "solana-svm-feature-set 3.1.8", + "solana-svm-log-collector 3.1.8", + "solana-svm-measure 3.1.8", + "solana-svm-timings 3.1.8", + "solana-svm-transaction 3.1.8", + "solana-svm-type-overrides 3.1.8", "solana-system-interface 2.0.0", "solana-sysvar 3.1.1", "solana-sysvar-id", - "solana-transaction-context", + "solana-transaction-context 3.1.8", "thiserror 2.0.18", ] [[package]] -name = "solana-program-test" -version = "3.1.8" +name = "solana-program-runtime" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de00fae33b25bc45c99178c47353891582554f5dd863f0b41a580d178aff1f83" +checksum = "7533a06c622b6ba0816961b207fbbc33c94021e5e193cfca3523f9c3e93d468b" dependencies = [ - "agave-feature-set", + "base64 0.22.1", + "bincode", + "cfg-if", + "itertools 0.14.0", + "log", + "percentage", + "rand 0.9.4", + "serde", + "solana-account 4.3.1", + "solana-account-info", + "solana-clock", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-fee-structure", + "solana-hash 4.4.0", + "solana-instruction", + "solana-last-restart-slot", + "solana-loader-v3-interface 7.0.0", + "solana-program-entrypoint", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", + "solana-sbpf 0.21.0", + "solana-sdk-ids", + "solana-slot-hashes", + "solana-stable-layout", + "solana-stake-interface 3.1.0", + "solana-svm-callback 4.1.0-rc.1", + "solana-svm-feature-set 4.1.0-rc.1", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-svm-measure 4.1.0-rc.1", + "solana-svm-timings 4.1.0-rc.1", + "solana-svm-transaction 4.1.0-rc.1", + "solana-svm-type-overrides 4.1.0-rc.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.0.0", + "solana-sysvar-id", + "solana-transaction-context 4.1.0-rc.1", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-program-test" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "995bf67dbb85aef4a4b0d878f805af66ddba5823ebb23bd6a0ba90109130f6ae" +dependencies = [ + "agave-feature-set 4.1.0-rc.1", "agave-logger", "assert_matches", "async-trait", "base64 0.22.1", "bincode", "chrono-humanize", - "crossbeam-channel", "log", "serde", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-account-info", "solana-accounts-db", + "solana-address 2.6.0", "solana-banks-client", "solana-banks-interface", "solana-banks-server", @@ -6273,36 +7022,34 @@ dependencies = [ "solana-epoch-schedule", "solana-fee-calculator", "solana-genesis-config", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-instruction", "solana-keypair", - "solana-loader-v3-interface", - "solana-message", + "solana-loader-v3-interface 7.0.0", + "solana-message 4.2.0", "solana-msg", "solana-native-token", "solana-poh-config", "solana-program-binaries", "solana-program-entrypoint", "solana-program-error", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", "solana-runtime", - "solana-sbpf", + "solana-sbpf 0.21.0", "solana-sdk-ids", "solana-signer", - "solana-stable-layout", - "solana-stake-interface 2.0.2", - "solana-svm", - "solana-svm-log-collector", - "solana-svm-timings", - "solana-system-interface 2.0.0", - "solana-sysvar 3.1.1", + "solana-stake-interface 3.1.0", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-svm-timings 4.1.0-rc.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.0.0", "solana-sysvar-id", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", - "solana-vote-program", + "solana-vote-program 4.1.0-rc.1", "spl-generic-token", "thiserror 2.0.18", "tokio", @@ -6324,6 +7071,7 @@ version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7db719574990de7e8b0f55a8593ac92a5ccb42c8ce67b3e4bf05b139d5d9ee71" dependencies = [ + "rand 0.9.4", "solana-address 2.6.0", ] @@ -6340,10 +7088,10 @@ dependencies = [ "semver", "serde", "serde_json", - "solana-account-decoder-client-types", + "solana-account-decoder-client-types 3.1.8", "solana-clock", "solana-pubkey 3.0.0", - "solana-rpc-client-types", + "solana-rpc-client-types 3.1.8", "solana-signature", "thiserror 2.0.18", "tokio", @@ -6369,15 +7117,15 @@ dependencies = [ "rustls", "solana-connection-cache", "solana-keypair", - "solana-measure", - "solana-metrics", - "solana-net-utils", + "solana-measure 3.1.8", + "solana-metrics 3.1.8", + "solana-net-utils 3.1.8", "solana-pubkey 3.0.0", "solana-quic-definitions", - "solana-rpc-client-api", + "solana-rpc-client-api 3.1.8", "solana-signer", - "solana-streamer", - "solana-tls-utils", + "solana-streamer 3.1.8", + "solana-tls-utils 3.1.8", "solana-transaction-error", "thiserror 2.0.18", "tokio", @@ -6402,6 +7150,16 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "solana-rayon-threadlimit" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52c2b67d55c6c4e5a40fd1aba1e32961cee4a0f96d7c9765d42b12af2be607d7" +dependencies = [ + "log", + "num_cpus", +] + [[package]] name = "solana-remote-wallet" version = "3.1.8" @@ -6462,6 +7220,17 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "solana-reward-info" +version = "6.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc553b782111862cd6c56bdeba696dcba9722a42154ef1248c5a06ca1d983797" +dependencies = [ + "serde", + "serde_derive", + "wincode", +] + [[package]] name = "solana-rpc-client" version = "3.1.8" @@ -6481,27 +7250,66 @@ dependencies = [ "serde", "serde_json", "solana-account 3.4.0", - "solana-account-decoder", - "solana-account-decoder-client-types", + "solana-account-decoder 3.1.8", + "solana-account-decoder-client-types 3.1.8", "solana-clock", "solana-commitment-config", "solana-epoch-info", "solana-epoch-schedule", - "solana-feature-gate-interface", + "solana-feature-gate-interface 3.1.0", "solana-hash 3.1.0", "solana-instruction", - "solana-message", + "solana-message 3.1.0", "solana-pubkey 3.0.0", - "solana-rpc-client-api", + "solana-rpc-client-api 3.1.8", "solana-signature", - "solana-transaction", + "solana-transaction 3.1.0", "solana-transaction-error", - "solana-transaction-status-client-types", - "solana-version", + "solana-transaction-status-client-types 3.1.8", + "solana-version 3.1.8", "solana-vote-interface 4.0.4", "tokio", ] +[[package]] +name = "solana-rpc-client" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f225521cb598684eb4dc1ff85a2987e24594e3e2c535613f89c28da10f77ee44" +dependencies = [ + "async-trait", + "base64 0.22.1", + "bincode", + "bs58", + "futures", + "log", + "reqwest", + "reqwest-middleware", + "semver", + "serde", + "serde_json", + "solana-account 4.3.1", + "solana-account-decoder 4.1.0-rc.1", + "solana-account-decoder-client-types 4.1.0-rc.1", + "solana-clock", + "solana-commitment-config", + "solana-epoch-info", + "solana-epoch-schedule", + "solana-feature-gate-interface 4.0.0", + "solana-hash 4.4.0", + "solana-instruction", + "solana-message 4.2.0", + "solana-pubkey 4.2.0", + "solana-rpc-client-api 4.1.0-rc.1", + "solana-signature", + "solana-transaction 4.1.2", + "solana-transaction-error", + "solana-transaction-status-client-types 4.1.0-rc.1", + "solana-version 4.1.0-rc.1", + "solana-vote-interface 6.0.1", + "tokio", +] + [[package]] name = "solana-rpc-client-api" version = "3.1.8" @@ -6514,12 +7322,32 @@ dependencies = [ "reqwest-middleware", "serde", "serde_json", - "solana-account-decoder-client-types", + "solana-account-decoder-client-types 3.1.8", + "solana-clock", + "solana-rpc-client-types 3.1.8", + "solana-signer", + "solana-transaction-error", + "solana-transaction-status-client-types 3.1.8", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-rpc-client-api" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d373477d41652670e075bb456c920d790690d74a3a18c7feb81a9b8ec5a2429f" +dependencies = [ + "anyhow", + "jsonrpc-core", + "reqwest", + "reqwest-middleware", + "serde", + "serde_json", "solana-clock", - "solana-rpc-client-types", + "solana-rpc-client-types 4.1.0-rc.1", "solana-signer", "solana-transaction-error", - "solana-transaction-status-client-types", + "solana-transaction-status-client-types 4.1.0-rc.1", "thiserror 2.0.18", ] @@ -6532,10 +7360,10 @@ dependencies = [ "solana-account 3.4.0", "solana-commitment-config", "solana-hash 3.1.0", - "solana-message", + "solana-message 3.1.0", "solana-nonce", "solana-pubkey 3.0.0", - "solana-rpc-client", + "solana-rpc-client 3.1.8", "solana-sdk-ids", "thiserror 2.0.18", ] @@ -6552,78 +7380,94 @@ dependencies = [ "serde", "serde_json", "solana-account 3.4.0", - "solana-account-decoder-client-types", + "solana-account-decoder-client-types 3.1.8", "solana-address 1.1.0", "solana-clock", "solana-commitment-config", "solana-fee-calculator", "solana-inflation", - "solana-reward-info", - "solana-transaction", + "solana-reward-info 3.0.0", + "solana-transaction 3.1.0", "solana-transaction-error", - "solana-transaction-status-client-types", - "solana-version", + "solana-transaction-status-client-types 3.1.8", + "solana-version 3.1.8", "spl-generic-token", "thiserror 2.0.18", ] +[[package]] +name = "solana-rpc-client-types" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f0f448c510e5ad4c6ab823accd683e6aa5ddca20eedb06346d4ee5421f8625f" +dependencies = [ + "base64 0.22.1", + "bs58", + "semver", + "serde", + "serde_json", + "solana-account-decoder-client-types 4.1.0-rc.1", + "solana-address 2.6.0", + "solana-clock", + "solana-commitment-config", + "solana-fee-calculator", + "solana-inflation", + "solana-reward-info 6.2.0", + "solana-transaction 4.1.2", + "solana-transaction-error", + "solana-transaction-status-client-types 4.1.0-rc.1", + "solana-version 4.1.0-rc.1", + "thiserror 2.0.18", +] + [[package]] name = "solana-runtime" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791c6e7aac45a5307e4cda9cb3b1cbec6805ec1dcf1b5673181ff73fa5fbad88" +checksum = "ed7b5b0b65457e9b912bef192ea4153ce9fc1fc82a465e9a34abcd741fbae70e" dependencies = [ - "agave-feature-set", + "agave-bls-cert-verify", + "agave-feature-set 4.1.0-rc.1", "agave-fs", "agave-precompiles", - "agave-reserved-account-keys", + "agave-reserved-account-keys 4.1.0-rc.1", "agave-snapshots", - "agave-syscalls", "agave-votor-messages", - "ahash 0.8.11", + "ahash", "aquamarine", "arc-swap", "arrayref", "assert_matches", "base64 0.22.1", "bincode", - "blake3", - "bv", "bytemuck", "crossbeam-channel", "dashmap", - "dir-diff", - "fnv", - "im", - "itertools 0.12.1", + "imbl", + "itertools 0.14.0", "libc", "log", - "lz4", - "memmap2 0.9.9", "mockall", - "modular-bitfield", "num-derive", "num-traits", "num_cpus", - "num_enum", "percentage", "qualifier_attr", - "rand 0.8.5", + "rand 0.9.4", "rayon", "regex", "semver", "serde", "serde_json", "serde_with", - "solana-account 3.4.0", + "smallvec", + "solana-account 4.3.1", "solana-account-info", "solana-accounts-db", "solana-address-lookup-table-interface", - "solana-bls-signatures", - "solana-bpf-loader-program", - "solana-bucket-map", + "solana-bls-signatures 3.3.0", "solana-builtins", - "solana-client-traits", + "solana-client-traits 4.0.0", "solana-clock", "solana-cluster-type", "solana-commitment-config", @@ -6634,38 +7478,38 @@ dependencies = [ "solana-cost-model", "solana-cpi", "solana-ed25519-program", + "solana-entry", "solana-epoch-info", "solana-epoch-rewards-hasher", "solana-epoch-schedule", - "solana-feature-gate-interface", + "solana-feature-gate-interface 4.0.0", "solana-fee", "solana-fee-calculator", "solana-fee-structure", "solana-genesis-config", "solana-hard-forks", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-inflation", "solana-instruction", "solana-keypair", "solana-lattice-hash", - "solana-loader-v3-interface", - "solana-loader-v4-interface", - "solana-measure", - "solana-message", - "solana-metrics", + "solana-leader-schedule", + "solana-loader-v3-interface 7.0.0", + "solana-measure 4.1.0-rc.1", + "solana-message 4.2.0", + "solana-metrics 4.1.0-rc.1", "solana-native-token", - "solana-nohash-hasher", "solana-nonce", "solana-nonce-account", - "solana-packet", - "solana-perf", + "solana-packet 4.1.0", + "solana-perf 4.1.0-rc.1", "solana-poh-config", "solana-precompile-error", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-rayon-threadlimit", - "solana-rent 3.1.0", - "solana-reward-info", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-rayon-threadlimit 4.1.0-rc.1", + "solana-rent 4.2.1", + "solana-reward-info 6.2.0", "solana-runtime-transaction", "solana-sdk-ids", "solana-secp256k1-program", @@ -6674,27 +7518,29 @@ dependencies = [ "solana-sha256-hasher", "solana-signature", "solana-signer", + "solana-signer-store", "solana-slot-hashes", "solana-slot-history", - "solana-stake-interface 2.0.2", + "solana-stake-interface 3.1.0", "solana-svm", - "solana-svm-callback", - "solana-svm-timings", - "solana-svm-transaction", - "solana-system-interface 2.0.0", + "solana-svm-callback 4.1.0-rc.1", + "solana-svm-timings 4.1.0-rc.1", + "solana-svm-transaction 4.1.0-rc.1", + "solana-syscalls", + "solana-system-interface 3.2.0", "solana-system-transaction", - "solana-sysvar 3.1.1", + "solana-sysvar 4.0.0", "solana-sysvar-id", "solana-time-utils", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", - "solana-transaction-status-client-types", + "solana-transaction-status-client-types 4.1.0-rc.1", "solana-unified-scheduler-logic", - "solana-version", + "solana-version 4.1.0-rc.1", "solana-vote", - "solana-vote-interface 4.0.4", - "solana-vote-program", + "solana-vote-interface 6.0.1", + "solana-vote-program 4.1.0-rc.1", "spl-generic-token", "static_assertions", "strum", @@ -6702,28 +7548,30 @@ dependencies = [ "symlink", "tempfile", "thiserror 2.0.18", + "wincode", ] [[package]] name = "solana-runtime-transaction" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c95ca737e7c2a3edfdb25c24a1576b5799a51c5f71bd737af6c6f2ab13172cc5" +checksum = "c8904d49a82d668ffc23f7866dc36d03a134318af0a7b6ddc8218770a86340b4" dependencies = [ + "agave-feature-set 4.1.0-rc.1", "agave-transaction-view", - "log", "solana-compute-budget", "solana-compute-budget-instruction", - "solana-hash 3.1.0", - "solana-message", - "solana-pubkey 3.0.0", + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-program-entrypoint", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-signature", - "solana-svm-transaction", - "solana-transaction", - "solana-transaction-context", + "solana-svm-transaction 4.1.0-rc.1", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", - "thiserror 2.0.18", + "wincode", ] [[package]] @@ -6749,6 +7597,23 @@ dependencies = [ "winapi", ] +[[package]] +name = "solana-sbpf" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f84c593fa3d4131045b606dec5acf9d8eac73791bc786ca9911057aec8f43ec" +dependencies = [ + "byteorder", + "combine 3.8.1", + "hash32", + "libc", + "log", + "rand 0.8.5", + "rustc-demangle", + "thiserror 2.0.18", + "winapi", +] + [[package]] name = "solana-sdk" version = "3.0.0" @@ -6764,7 +7629,7 @@ dependencies = [ "solana-fee-structure", "solana-inflation", "solana-keypair", - "solana-message", + "solana-message 3.1.0", "solana-offchain-message", "solana-presigner", "solana-program 3.0.0", @@ -6782,7 +7647,45 @@ dependencies = [ "solana-signature", "solana-signer", "solana-time-utils", - "solana-transaction", + "solana-transaction 3.1.0", + "solana-transaction-error", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-sdk" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "657e20ea41ba32cad0c493bec60b6d55cc6c30d2c1073b94cfee96dda0d764dd" +dependencies = [ + "bincode", + "bs58", + "serde", + "solana-account 4.3.1", + "solana-epoch-info", + "solana-epoch-rewards-hasher", + "solana-fee-structure", + "solana-inflation", + "solana-keypair", + "solana-message 4.2.0", + "solana-offchain-message", + "solana-presigner", + "solana-program 4.0.0", + "solana-program-memory", + "solana-pubkey 4.2.0", + "solana-sanitize", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-serde", + "solana-serde-varint", + "solana-short-vec", + "solana-shred-version", + "solana-signature", + "solana-signer", + "solana-time-utils", + "solana-transaction 4.1.2", "solana-transaction-error", "thiserror 2.0.18", ] @@ -6810,9 +7713,9 @@ dependencies = [ [[package]] name = "solana-secp256k1-program" -version = "3.0.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8efa767b0188f577edae7080e8bf080e5db9458e2b6ee5beaa73e2e6bb54e99d" +checksum = "ad4cf8232f7aef9ff2dd95d701f63e3c11909dec2400def5c361be29d24291e7" dependencies = [ "digest 0.10.7", "k256", @@ -6824,12 +7727,12 @@ dependencies = [ [[package]] name = "solana-secp256k1-recover" -version = "3.1.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de18cfdab99eeb940fbedd8c981fa130c0d76252da75d05446f22fae8b51932" +checksum = "e7c5f18893d62e6c73117dcba48f8f5e3266d90e5ec3d0a0a90f9785adac36c1" dependencies = [ "k256", - "solana-define-syscall 4.0.1", + "solana-define-syscall 5.1.0", "thiserror 2.0.18", ] @@ -6873,27 +7776,24 @@ dependencies = [ [[package]] name = "solana-send-transaction-service" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6389d45273e036cecc72b6c6bc90dd40de5deaaa5b197842ea6ab2c080adc94d" +checksum = "17d41cc51248329460e6518a1b58f7bf8e747f491368dfdd6d70668f2a248f6f" dependencies = [ "async-trait", "crossbeam-channel", - "itertools 0.12.1", + "itertools 0.14.0", "log", - "solana-client", - "solana-clock", - "solana-connection-cache", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-keypair", - "solana-measure", - "solana-metrics", + "solana-measure 4.1.0-rc.1", + "solana-metrics 4.1.0-rc.1", "solana-nonce-account", - "solana-pubkey 3.0.0", - "solana-quic-definitions", + "solana-pubkey 4.2.0", "solana-runtime", "solana-signature", "solana-time-utils", + "solana-tls-utils 4.1.0-rc.1", "solana-tpu-client-next", "tokio", "tokio-util 0.7.18", @@ -6939,6 +7839,17 @@ dependencies = [ "solana-hash 4.4.0", ] +[[package]] +name = "solana-sha512-hasher" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11e10e103ab5bd52af341e7bc2f4123a2f4e66bb7ba4e6ca40f1e00cd6314e02" +dependencies = [ + "sha2 0.10.8", + "solana-define-syscall 5.1.0", + "solana-hash-512", +] + [[package]] name = "solana-short-vec" version = "3.2.2" @@ -6946,6 +7857,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d8250a4495aad49ad20556a607da53bdcb20de78da10b65afbf918b7f1de647" dependencies = [ "serde_core", + "wincode", ] [[package]] @@ -6961,18 +7873,18 @@ dependencies = [ [[package]] name = "solana-signature" -version = "3.2.0" +version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4028aeedd443d80f1dccbf64872593a80e6a9676ee9007f6eccb63b65983ebd" +checksum = "b0364c7577c3c82a693ce28a1febc8d1b5d1b0a175fdc2114ae6186b69effe1e" dependencies = [ "ed25519-dalek 2.2.0", "five8", - "rand 0.9.2", + "rand 0.9.4", "serde", "serde-big-array", "serde_derive", "solana-sanitize", - "wincode 0.2.5", + "wincode", ] [[package]] @@ -6986,15 +7898,26 @@ dependencies = [ "solana-transaction-error", ] +[[package]] +name = "solana-signer-store" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36329bba208f0e41954389ae4ad5d973fe15952672cfd71a9b49deb7d2ecbc2f" +dependencies = [ + "bitvec", + "num-derive", + "num-traits", +] + [[package]] name = "solana-slot-hashes" -version = "3.0.0" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80a293f952293281443c04f4d96afd9d547721923d596e92b4377ed2360f1746" +checksum = "0a57c158c35629f9e302ab385f16b15813f4927a31c27dda72f3df828bb08d93" dependencies = [ "serde", "serde_derive", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-sdk-ids", "solana-sysvar-id", ] @@ -7014,12 +7937,12 @@ dependencies = [ [[package]] name = "solana-stable-layout" -version = "3.0.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1da74507795b6e8fb60b7c7306c0c36e2c315805d16eaaf479452661234685ac" +checksum = "c9f6a291ba063a37780af29e7db14bdd3dc447584d8ba5b3fc4b88e2bbc982fa" dependencies = [ "solana-instruction", - "solana-pubkey 3.0.0", + "solana-pubkey 4.2.0", ] [[package]] @@ -7041,6 +7964,25 @@ dependencies = [ "solana-sysvar-id", ] +[[package]] +name = "solana-stake-interface" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49eb5c77484214c3484921e2cdda79d185373118b5458c1b2df0f1a04c3bc30" +dependencies = [ + "num-traits", + "serde", + "serde_derive", + "solana-clock", + "solana-cpi", + "solana-instruction", + "solana-program-error", + "solana-pubkey 4.2.0", + "solana-system-interface 3.2.0", + "solana-sysvar 4.0.0", + "solana-sysvar-id", +] + [[package]] name = "solana-stake-interface" version = "4.2.0" @@ -7079,7 +8021,7 @@ dependencies = [ "itertools 0.12.1", "libc", "log", - "nix", + "nix 0.30.1", "num_cpus", "pem", "percentage", @@ -7088,65 +8030,102 @@ dependencies = [ "rand 0.8.5", "rustls", "smallvec", - "socket2 0.6.2", + "socket2 0.6.4", "solana-keypair", - "solana-measure", - "solana-metrics", - "solana-net-utils", - "solana-packet", - "solana-perf", + "solana-measure 3.1.8", + "solana-metrics 3.1.8", + "solana-net-utils 3.1.8", + "solana-packet 3.0.0", + "solana-perf 3.1.8", "solana-pubkey 3.0.0", "solana-quic-definitions", "solana-signature", "solana-signer", "solana-time-utils", - "solana-tls-utils", + "solana-tls-utils 3.1.8", "solana-transaction-error", "solana-transaction-metrics-tracker", "thiserror 2.0.18", "tokio", "tokio-util 0.7.18", - "x509-parser", + "x509-parser 0.14.0", +] + +[[package]] +name = "solana-streamer" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88cfbbbb29c08642eedd60153c87260a3b8cd9bdef12c9ccc22e6125db67e968" +dependencies = [ + "agave-xdp", + "bytes", + "crossbeam-channel", + "futures", + "histogram", + "indexmap", + "itertools 0.14.0", + "libc", + "log", + "nix 0.31.3", + "num_cpus", + "pem", + "percentage", + "quinn", + "rand 0.9.4", + "rustls", + "smallvec", + "solana-keypair", + "solana-metrics 4.1.0-rc.1", + "solana-net-utils 4.1.0-rc.1", + "solana-packet 4.1.0", + "solana-perf 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-signer", + "solana-time-utils", + "solana-tls-utils 4.1.0-rc.1", + "solana-transaction-error", + "thiserror 2.0.18", + "tokio", + "tokio-util 0.7.18", ] [[package]] name = "solana-svm" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5b12459299179112ec6ff3e1a975006b8ac9aa1bb8a66377ba6128d05f099a2" +checksum = "299459e9e367946534eff2617ec8d5ee95da7bc4b0236a3489d6d61f9c2e7f39" dependencies = [ - "ahash 0.8.11", + "ahash", "log", "percentage", "serde", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-clock", "solana-fee-structure", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-instruction", "solana-instructions-sysvar", - "solana-loader-v3-interface", + "solana-loader-v3-interface 7.0.0", "solana-loader-v4-interface", - "solana-loader-v4-program", - "solana-message", + "solana-message 4.2.0", "solana-nonce", "solana-nonce-account", "solana-program-entrypoint", "solana-program-pack", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", "solana-sdk-ids", - "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 2.0.0", + "solana-svm-callback 4.1.0-rc.1", + "solana-svm-feature-set 4.1.0-rc.1", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-svm-measure 4.1.0-rc.1", + "solana-svm-timings 4.1.0-rc.1", + "solana-svm-transaction 4.1.0-rc.1", + "solana-svm-type-overrides 4.1.0-rc.1", + "solana-system-interface 3.2.0", "solana-sysvar-id", - "solana-transaction-context", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", "spl-generic-token", "thiserror 2.0.18", @@ -7164,12 +8143,30 @@ dependencies = [ "solana-pubkey 3.0.0", ] +[[package]] +name = "solana-svm-callback" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f872a719f83dd921c69afeaca8568c9ec19cf27f017846838aeb7a1ba03723e" +dependencies = [ + "solana-account 4.3.1", + "solana-clock", + "solana-precompile-error", + "solana-pubkey 4.2.0", +] + [[package]] name = "solana-svm-feature-set" version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "641cddc667abba4cf3474d850a073c0a2b439ff0014c445cd09eaf5d79d70bab" +[[package]] +name = "solana-svm-feature-set" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe4a7ba56f1c4bd69912ad3fc5cf66152a7b36cf2ce8a36bdc77ae3a854a5a36" + [[package]] name = "solana-svm-log-collector" version = "3.1.8" @@ -7179,12 +8176,27 @@ dependencies = [ "log", ] +[[package]] +name = "solana-svm-log-collector" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e00e729fa6819aae3493ac99d856758cd8c38bf257b69517c924448371867da" +dependencies = [ + "log", +] + [[package]] name = "solana-svm-measure" version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea1d8035045fe47df97ee2a4695b09236161f82f1b4b6c2a49a5cb6a7c94fed6" +[[package]] +name = "solana-svm-measure" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0eb2955b0b50706622cfa5446821a3f348703961d42a322b52804efeac43447" + [[package]] name = "solana-svm-timings" version = "3.1.8" @@ -7192,10 +8204,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9b6407ecacc9b1ca88bdb34f6afb10ab0e4c65f3f1b82bce637c3056deb456d" dependencies = [ "eager", - "enum-iterator", + "enum-iterator 1.5.0", "solana-pubkey 3.0.0", ] +[[package]] +name = "solana-svm-timings" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7162277cc214ffa7d0193a6261a4026327925572b1ffa6b8cb4902fdee16cfd9" +dependencies = [ + "eager", + "enum-iterator 2.3.0", + "solana-pubkey 4.2.0", +] + [[package]] name = "solana-svm-transaction" version = "3.1.8" @@ -7203,11 +8226,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9ca13fa9a99ad8474c3867d56d81effcf5582bb6356ab0a9ed2fc373a3e4af7" dependencies = [ "solana-hash 3.1.0", - "solana-message", + "solana-message 3.1.0", "solana-pubkey 3.0.0", "solana-sdk-ids", "solana-signature", - "solana-transaction", + "solana-transaction 3.1.0", +] + +[[package]] +name = "solana-svm-transaction" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c909c9ee2d5a8f5fbc0d90704886ccaac2e992c59a89df9f766239f84d3fee01" +dependencies = [ + "solana-hash 4.4.0", + "solana-message 4.2.0", + "solana-pubkey 4.2.0", + "solana-sdk-ids", + "solana-signature", + "solana-transaction 4.1.2", ] [[package]] @@ -7219,6 +8256,57 @@ dependencies = [ "rand 0.8.5", ] +[[package]] +name = "solana-svm-type-overrides" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b97cc621ec1b9f664c8902cd919418a74aeb18819aa4dedf7039d006fbd5fbc" +dependencies = [ + "rand 0.9.4", +] + +[[package]] +name = "solana-syscalls" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cdde8e09f3224eede151671d75725c115527015bbd3c0de18d0f3cd549cc5d5" +dependencies = [ + "bincode", + "libsecp256k1", + "num-traits", + "solana-account 4.3.1", + "solana-account-info", + "solana-big-mod-exp", + "solana-blake3-hasher", + "solana-bls12-381-syscall", + "solana-bn254", + "solana-clock", + "solana-cpi", + "solana-curve25519 4.0.1", + "solana-hash 4.4.0", + "solana-hash-512", + "solana-instruction", + "solana-keccak-hasher", + "solana-poseidon", + "solana-program-entrypoint", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-sbpf 0.21.0", + "solana-sdk-ids", + "solana-secp256k1-recover", + "solana-sha256-hasher", + "solana-sha512-hasher", + "solana-stable-layout", + "solana-stake-interface 3.1.0", + "solana-svm-feature-set 4.1.0-rc.1", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-svm-type-overrides 4.1.0-rc.1", + "solana-sysvar 4.0.0", + "solana-sysvar-id", + "solana-transaction-context 4.1.0-rc.1", + "thiserror 2.0.18", +] + [[package]] name = "solana-system-interface" version = "2.0.0" @@ -7247,47 +8335,46 @@ dependencies = [ "solana-instruction", "solana-msg", "solana-program-error", + "wincode", ] [[package]] name = "solana-system-program" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c1c3a09bccfee48f072cbbeab3151578ac246f8af91309a9521ecd6129d4b92" +checksum = "452e4fbe16aca56e92f28b56a078d7e6d9fdfae9435cd6152a6fd1a18d8375f2" dependencies = [ "bincode", "log", - "serde", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-bincode", "solana-fee-calculator", "solana-instruction", "solana-nonce", "solana-nonce-account", - "solana-packet", - "solana-program-runtime", - "solana-pubkey 3.0.0", + "solana-packet 4.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", "solana-sdk-ids", - "solana-svm-log-collector", - "solana-svm-type-overrides", - "solana-system-interface 2.0.0", - "solana-sysvar 3.1.1", - "solana-transaction-context", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.0.0", + "solana-transaction-context 4.1.0-rc.1", ] [[package]] name = "solana-system-transaction" -version = "3.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31b5699ec533621515e714f1533ee6b3b0e71c463301d919eb59b8c1e249d30" +checksum = "7a39522012be4127884bc611d65f58f1cf33a3afb7baee7e6774be90b48edc3c" dependencies = [ - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-keypair", - "solana-message", - "solana-pubkey 3.0.0", + "solana-message 4.2.0", + "solana-pubkey 4.2.0", "solana-signer", - "solana-system-interface 2.0.0", - "solana-transaction", + "solana-system-interface 3.2.0", + "solana-transaction 4.1.2", ] [[package]] @@ -7339,7 +8426,7 @@ dependencies = [ "serde_derive", "solana-account-info", "solana-clock", - "solana-define-syscall 5.0.0", + "solana-define-syscall 5.1.0", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-calculator", @@ -7384,7 +8471,20 @@ dependencies = [ "solana-keypair", "solana-pubkey 3.0.0", "solana-signer", - "x509-parser", + "x509-parser 0.14.0", +] + +[[package]] +name = "solana-tls-utils" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "210b93d44fcf6f0d2ef0ea42d75c0f1484d74426ecce7725c75f87ebe73aabca" +dependencies = [ + "rustls", + "solana-keypair", + "solana-pubkey 4.2.0", + "solana-signer", + "x509-parser 0.18.1", ] [[package]] @@ -7400,22 +8500,22 @@ dependencies = [ "indicatif", "log", "rayon", - "solana-client-traits", + "solana-client-traits 3.0.0", "solana-clock", "solana-commitment-config", "solana-connection-cache", "solana-epoch-schedule", - "solana-measure", - "solana-message", - "solana-net-utils", + "solana-measure 3.1.8", + "solana-message 3.1.0", + "solana-net-utils 3.1.8", "solana-pubkey 3.0.0", "solana-pubsub-client", "solana-quic-definitions", - "solana-rpc-client", - "solana-rpc-client-api", + "solana-rpc-client 3.1.8", + "solana-rpc-client-api 3.1.8", "solana-signature", "solana-signer", - "solana-transaction", + "solana-transaction 3.1.0", "solana-transaction-error", "thiserror 2.0.18", "tokio", @@ -7423,26 +8523,29 @@ dependencies = [ [[package]] name = "solana-tpu-client-next" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec6fa88818274c8ff5c91c0cb86a98c2ab69fe3ac1796572a0e4072fa5608d53" +checksum = "8d80f2de24c81a816b4b61be5bf9065d818c0b3a01a35603b9962232450f8031" dependencies = [ "async-trait", + "futures", + "futures-util", "log", "lru", "quinn", "rustls", "solana-clock", - "solana-connection-cache", + "solana-commitment-config", "solana-keypair", - "solana-measure", - "solana-metrics", - "solana-quic-definitions", - "solana-rpc-client", - "solana-streamer", + "solana-measure 4.1.0-rc.1", + "solana-metrics 4.1.0-rc.1", + "solana-packet 4.1.0", + "solana-pubkey 4.2.0", + "solana-rpc-client 4.1.0-rc.1", + "solana-rpc-client-api 4.1.0-rc.1", + "solana-streamer 4.1.0-rc.1", "solana-time-utils", - "solana-tls-utils", - "solana-tpu-client", + "solana-tls-utils 4.1.0-rc.1", "thiserror 2.0.18", "tokio", "tokio-util 0.7.18", @@ -7450,24 +8553,46 @@ dependencies = [ [[package]] name = "solana-transaction" -version = "3.1.0" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96697cff5075a028265324255efed226099f6d761ca67342b230d09f72cc48d2" +dependencies = [ + "bincode", + "serde", + "serde_derive", + "solana-address 2.6.0", + "solana-hash 4.4.0", + "solana-instruction", + "solana-instruction-error", + "solana-message 3.1.0", + "solana-sanitize", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-signer", + "solana-transaction-error", +] + +[[package]] +name = "solana-transaction" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96697cff5075a028265324255efed226099f6d761ca67342b230d09f72cc48d2" +checksum = "45eb9e481a70f582be316d0bf2f8f8704079664e636a4e5d0c0d077f1c9de8f3" dependencies = [ - "bincode", "serde", "serde_derive", "solana-address 2.6.0", "solana-hash 4.4.0", "solana-instruction", "solana-instruction-error", - "solana-message", + "solana-message 4.2.0", "solana-sanitize", "solana-sdk-ids", "solana-short-vec", "solana-signature", "solana-signer", "solana-transaction-error", + "wincode", ] [[package]] @@ -7483,15 +8608,32 @@ dependencies = [ "solana-instructions-sysvar", "solana-pubkey 3.0.0", "solana-rent 3.1.0", - "solana-sbpf", + "solana-sbpf 0.13.1", + "solana-sdk-ids", +] + +[[package]] +name = "solana-transaction-context" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d1e190ec93b461e6f5b73b5b26c32ba8b716eff7f8355d037b8571f561c9402" +dependencies = [ + "bincode", + "serde", + "solana-account 4.3.1", + "solana-instruction", + "solana-instructions-sysvar", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", + "solana-sbpf 0.21.0", "solana-sdk-ids", ] [[package]] name = "solana-transaction-error" -version = "3.0.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4222065402340d7e6aec9dc3e54d22992ddcf923d91edcd815443c2bfca3144a" +checksum = "2441d6dcd51100e7d97c3fb3b723e08aa701066ff7afc00026fd8d8e222cb95b" dependencies = [ "serde", "serde_derive", @@ -7509,8 +8651,8 @@ dependencies = [ "bincode", "log", "rand 0.8.5", - "solana-packet", - "solana-perf", + "solana-packet 3.0.0", + "solana-perf 3.1.8", "solana-short-vec", "solana-signature", ] @@ -7522,7 +8664,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afe59d2c9a9ff1bb05150ebc5b1a945642760977da3715b9e1c403f0a29d3805" dependencies = [ "Inflector", - "agave-reserved-account-keys", + "agave-reserved-account-keys 3.1.8", "base64 0.22.1", "bincode", "borsh", @@ -7530,24 +8672,24 @@ dependencies = [ "log", "serde", "serde_json", - "solana-account-decoder", + "solana-account-decoder 3.1.8", "solana-address-lookup-table-interface", "solana-clock", "solana-hash 3.1.0", "solana-instruction", "solana-loader-v2-interface", - "solana-loader-v3-interface", - "solana-message", + "solana-loader-v3-interface 6.1.0", + "solana-message 3.1.0", "solana-program-option", "solana-pubkey 3.0.0", - "solana-reward-info", + "solana-reward-info 3.0.0", "solana-sdk-ids", "solana-signature", "solana-stake-interface 2.0.2", "solana-system-interface 2.0.0", - "solana-transaction", + "solana-transaction 3.1.0", "solana-transaction-error", - "solana-transaction-status-client-types", + "solana-transaction-status-client-types 3.1.8", "solana-vote-interface 4.0.4", "spl-associated-token-account-interface", "spl-memo-interface", @@ -7569,17 +8711,41 @@ dependencies = [ "bs58", "serde", "serde_json", - "solana-account-decoder-client-types", + "solana-account-decoder-client-types 3.1.8", "solana-commitment-config", "solana-instruction", - "solana-message", + "solana-message 3.1.0", "solana-pubkey 3.0.0", - "solana-reward-info", + "solana-reward-info 3.0.0", + "solana-signature", + "solana-transaction 3.1.0", + "solana-transaction-context 3.1.8", + "solana-transaction-error", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-transaction-status-client-types" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5315d3b1e1eceb6970760c8e647876f98441c1bdcefb8d79149f9bf4b31105db" +dependencies = [ + "base64 0.22.1", + "bincode", + "bs58", + "serde", + "serde_json", + "solana-account-decoder-client-types 4.1.0-rc.1", + "solana-commitment-config", + "solana-instruction", + "solana-message 4.2.0", + "solana-reward-info 6.2.0", "solana-signature", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 4.1.2", + "solana-transaction-context 4.1.0-rc.1", "solana-transaction-error", "thiserror 2.0.18", + "wincode", ] [[package]] @@ -7591,8 +8757,8 @@ dependencies = [ "async-trait", "solana-connection-cache", "solana-keypair", - "solana-net-utils", - "solana-streamer", + "solana-net-utils 3.1.8", + "solana-streamer 3.1.8", "solana-transaction-error", "thiserror 2.0.18", "tokio", @@ -7600,14 +8766,16 @@ dependencies = [ [[package]] name = "solana-unified-scheduler-logic" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "762ee8857761da481355ffa201131850426b46a7b1e7dfe1052d86f41a37a94e" +checksum = "0eb1c0437c4f3d5a88c39bc17f194b6ee009b017c01b8d3df1c8ba3d3bffdc56" dependencies = [ "assert_matches", - "solana-pubkey 3.0.0", + "solana-clock", + "solana-hash 4.4.0", + "solana-pubkey 4.2.0", "solana-runtime-transaction", - "solana-transaction", + "solana-transaction 4.1.2", "static_assertions", "unwrap_none", ] @@ -7618,7 +8786,7 @@ version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2642d930b9ef476bfb5d64bac62d35b37dfb415cdf7b0a642c3c0ca537f1a7b" dependencies = [ - "agave-feature-set", + "agave-feature-set 3.1.8", "rand 0.8.5", "semver", "serde", @@ -7626,30 +8794,43 @@ dependencies = [ "solana-serde-varint", ] +[[package]] +name = "solana-version" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "681e26dfc7dbac02d4b2876f112f6633b71e64529142ee8277b4417fdeef0029" +dependencies = [ + "agave-feature-set 4.1.0-rc.1", + "rand 0.9.4", + "semver", + "serde", + "solana-sanitize", + "solana-serde-varint", +] + [[package]] name = "solana-vote" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be38127756ac2aadf00dbff18a9dbd5b9f2044472fc9d395f9b4db85050814e3" +checksum = "1ca62b7b67665b83824323afc04f3217860b933738f1e8d983ab9906e5c2cf2f" dependencies = [ - "itertools 0.12.1", "log", "serde", - "solana-account 3.4.0", + "solana-account 4.3.1", "solana-bincode", "solana-clock", - "solana-hash 3.1.0", + "solana-hash 4.4.0", "solana-instruction", "solana-keypair", - "solana-packet", - "solana-pubkey 3.0.0", + "solana-packet 4.1.0", + "solana-pubkey 4.2.0", "solana-sdk-ids", "solana-serialize-utils", "solana-signature", "solana-signer", - "solana-svm-transaction", - "solana-transaction", - "solana-vote-interface 4.0.4", + "solana-svm-transaction 4.1.0-rc.1", + "solana-transaction 4.1.2", + "solana-vote-interface 6.0.1", "thiserror 2.0.18", ] @@ -7711,7 +8892,7 @@ version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de77cc3a9dc9c1247d779db24a5c3bb5cf533855ccfa0ddb12c0c773c26acf4e" dependencies = [ - "agave-feature-set", + "agave-feature-set 3.1.8", "bincode", "log", "num-derive", @@ -7724,19 +8905,46 @@ dependencies = [ "solana-hash 3.1.0", "solana-instruction", "solana-keypair", - "solana-packet", - "solana-program-runtime", + "solana-packet 3.0.0", + "solana-program-runtime 3.1.8", "solana-pubkey 3.0.0", "solana-rent 3.1.0", "solana-sdk-ids", "solana-signer", "solana-slot-hashes", - "solana-transaction", - "solana-transaction-context", + "solana-transaction 3.1.0", + "solana-transaction-context 3.1.8", "solana-vote-interface 4.0.4", "thiserror 2.0.18", ] +[[package]] +name = "solana-vote-program" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e2d83fa8c12ebab19054b06094fbc0ca6e50e37bf5b3d9204f3b599f3f6cd17" +dependencies = [ + "agave-feature-set 4.1.0-rc.1", + "bincode", + "log", + "solana-account 4.3.1", + "solana-bincode", + "solana-bls-signatures 3.3.0", + "solana-clock", + "solana-epoch-schedule", + "solana-hash 4.4.0", + "solana-instruction", + "solana-packet 4.1.0", + "solana-program-runtime 4.1.0-rc.1", + "solana-pubkey 4.2.0", + "solana-rent 4.2.1", + "solana-sdk-ids", + "solana-slot-hashes", + "solana-system-interface 3.2.0", + "solana-transaction-context 4.1.0-rc.1", + "solana-vote-interface 6.0.1", +] + [[package]] name = "solana-zero-copy" version = "1.0.1" @@ -7766,19 +8974,16 @@ dependencies = [ [[package]] name = "solana-zk-elgamal-proof-program" -version = "3.1.8" +version = "4.1.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ee82208a466bd448bcd1387a7c2c4def0b3f938398e04e5364ee24b10ed04a" +checksum = "badf12817f2f1b423b8634124ef25768895a9c8bb698e65fe7da22bf25b54ee0" dependencies = [ - "agave-feature-set", "bytemuck", - "num-derive", - "num-traits", "solana-instruction", - "solana-program-runtime", + "solana-program-runtime 4.1.0-rc.1", "solana-sdk-ids", - "solana-svm-log-collector", - "solana-zk-sdk", + "solana-svm-log-collector 4.1.0-rc.1", + "solana-zk-sdk 5.0.1", ] [[package]] @@ -7819,40 +9024,10 @@ dependencies = [ ] [[package]] -name = "solana-zk-sdk-pod" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a800583b7a4cea3e851686af162cc6e4712eef97fa91dfa9aca2459b95c84777" -dependencies = [ - "base64 0.22.1", - "bytemuck", - "bytemuck_derive", - "solana-nullable", - "thiserror 2.0.18", -] - -[[package]] -name = "solana-zk-token-proof-program" -version = "3.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50aa6a85620f94356acf313c13ae4464bbb0b981b1e80f45daec456695b2839d" -dependencies = [ - "agave-feature-set", - "bytemuck", - "num-derive", - "num-traits", - "solana-instruction", - "solana-program-runtime", - "solana-sdk-ids", - "solana-svm-log-collector", - "solana-zk-token-sdk", -] - -[[package]] -name = "solana-zk-token-sdk" -version = "3.1.8" +name = "solana-zk-sdk" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9135e607f31cd86f73052cbb37264564166c31e400e1c49a9dfca93f7fb661d7" +checksum = "09670ff59f60e6ddc2209c2e4353992a9b9f01d4e244f3e9d67bd5146e33d388" dependencies = [ "aes-gcm-siv", "base64 0.22.1", @@ -7860,18 +9035,18 @@ dependencies = [ "bytemuck", "bytemuck_derive", "curve25519-dalek 4.1.3", - "itertools 0.12.1", + "itertools 0.14.0", "merlin", "num-derive", "num-traits", "rand 0.8.5", "serde", + "serde_derive", "serde_json", "sha3", - "solana-curve25519", + "solana-address 2.6.0", "solana-derivation-path", "solana-instruction", - "solana-pubkey 3.0.0", "solana-sdk-ids", "solana-seed-derivable", "solana-seed-phrase", @@ -7882,6 +9057,28 @@ dependencies = [ "zeroize", ] +[[package]] +name = "solana-zk-sdk-pod" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a800583b7a4cea3e851686af162cc6e4712eef97fa91dfa9aca2459b95c84777" +dependencies = [ + "base64 0.22.1", + "bytemuck", + "bytemuck_derive", + "solana-nullable", + "thiserror 2.0.18", +] + +[[package]] +name = "solana-zk-token-proof-program" +version = "4.1.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fca48a86b3ba4b4c1a40da8710b88ed3da948b84316a8937252803465f94937e" +dependencies = [ + "solana-program-runtime 4.1.0-rc.1", +] + [[package]] name = "spinning_top" version = "0.3.0" @@ -7984,7 +9181,7 @@ dependencies = [ "solana-program-option", "solana-pubkey 3.0.0", "solana-zero-copy", - "solana-zk-sdk", + "solana-zk-sdk 4.0.0", "thiserror 2.0.18", ] @@ -7992,7 +9189,7 @@ dependencies = [ name = "spl-stake-pool" version = "2.0.3" dependencies = [ - "agave-feature-set", + "agave-feature-set 3.1.8", "arrayref", "assert_matches", "bincode", @@ -8022,7 +9219,7 @@ dependencies = [ "solana-program-test", "solana-pubkey 4.2.0", "solana-rent 4.2.1", - "solana-sdk", + "solana-sdk 4.0.1", "solana-sdk-ids", "solana-security-txt", "solana-stake-interface 4.2.0", @@ -8044,7 +9241,7 @@ dependencies = [ "bincode", "clap", "serde", - "solana-account-decoder", + "solana-account-decoder 3.1.8", "solana-clap-utils", "solana-cli-config", "solana-cli-output", @@ -8052,10 +9249,10 @@ dependencies = [ "solana-commitment-config", "solana-compute-budget-interface", "solana-logger", - "solana-message", + "solana-message 3.1.0", "solana-program 4.0.0", "solana-remote-wallet", - "solana-sdk", + "solana-sdk 3.0.0", "solana-stake-interface 4.2.0", "solana-system-interface 3.2.0", "spl-associated-token-account-interface", @@ -8111,7 +9308,7 @@ dependencies = [ "solana-program-pack", "solana-pubkey 3.0.0", "solana-sdk-ids", - "solana-zk-sdk", + "solana-zk-sdk 4.0.0", "spl-pod", "spl-token-confidential-transfer-proof-extraction 0.5.1", "spl-token-confidential-transfer-proof-generation", @@ -8159,14 +9356,14 @@ checksum = "879a9ebad0d77383d3ea71e7de50503554961ff0f4ef6cbca39ad126e6f6da3a" dependencies = [ "bytemuck", "solana-account-info", - "solana-curve25519", + "solana-curve25519 3.1.8", "solana-instruction", "solana-instructions-sysvar", "solana-msg", "solana-program-error", "solana-pubkey 3.0.0", "solana-sdk-ids", - "solana-zk-sdk", + "solana-zk-sdk 4.0.0", "spl-pod", "thiserror 2.0.18", ] @@ -8180,7 +9377,7 @@ dependencies = [ "bytemuck", "solana-account-info", "solana-address 2.6.0", - "solana-curve25519", + "solana-curve25519 3.1.8", "solana-instruction", "solana-instructions-sysvar", "solana-msg", @@ -8198,7 +9395,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0cd59fce3dc00f563c6fa364d67c3f200d278eae681f4dc250240afcfe044b1" dependencies = [ "curve25519-dalek 4.1.3", - "solana-zk-sdk", + "solana-zk-sdk 4.0.0", "thiserror 2.0.18", ] @@ -8343,24 +9540,23 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.24.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +checksum = "9628de9b8791db39ceda2b119bbe13134770b56c138ec1d3af810d045c04f9bd" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.24.3" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +checksum = "ab85eea0270ee17587ed4156089e10b9e6880ee688791d45a905f5b1ca36f664" dependencies = [ "heck", "proc-macro2", "quote", - "rustversion", - "syn 1.0.109", + "syn 2.0.117", ] [[package]] @@ -8483,15 +9679,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.25.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", "getrandom 0.3.1", "once_cell", - "rustix 1.1.3", - "windows-sys 0.60.2", + "rustix 1.1.4", + "windows-sys 0.52.0", ] [[package]] @@ -8676,9 +9872,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.49.0" +version = "1.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" dependencies = [ "bytes", "libc", @@ -8686,16 +9882,16 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.2", + "socket2 0.6.4", "tokio-macros", "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" +checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", @@ -8925,7 +10121,7 @@ dependencies = [ "http 1.3.1", "httparse", "log", - "rand 0.9.2", + "rand 0.9.4", "rustls", "rustls-pki-types", "sha1", @@ -8991,7 +10187,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ - "crypto-common", + "crypto-common 0.1.6", "subtle", ] @@ -9265,6 +10461,16 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "wide" +version = "0.7.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce5da8ecb62bcd8ec8b7ea19f69a51275e91299be594ea5cc6ef7819e16cd03" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "winapi" version = "0.3.9" @@ -9298,46 +10504,22 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "wincode" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5cec722a3274e47d1524cbe2cea762f2c19d615bd9d73ada21db9066349d57e" -dependencies = [ - "proc-macro2", - "quote", - "thiserror 2.0.18", - "wincode-derive 0.2.3", -] - -[[package]] -name = "wincode" -version = "0.5.1" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a61f8f0a55eb6cae5d7b7ad2eca536a944deb9722a948525181069064ecd1abc" +checksum = "66d967db7705dc29120bb6e8ce5b5a2e27734ed5976d1c904e95bd238d1c3c5a" dependencies = [ "pastey", "proc-macro2", "quote", "thiserror 2.0.18", - "wincode-derive 0.4.3", -] - -[[package]] -name = "wincode-derive" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8961eb04054a1b2e026b5628e24da7e001350249a787e1a85aa961f33dc5f286" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.117", + "wincode-derive", ] [[package]] name = "wincode-derive" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fca057fc9a13dd19cdb64ef558635d43c42667c0afa1ae7915ea1fa66993fd1a" +checksum = "15ab90b719560d0fda79c74550ad1c948d17b118765942838055ebaf34d67071" dependencies = [ "darling", "proc-macro2", @@ -9396,15 +10578,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-sys" -version = "0.60.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" -dependencies = [ - "windows-targets 0.53.5", -] - [[package]] name = "windows-sys" version = "0.61.2" @@ -9453,30 +10626,13 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", + "windows_i686_gnullvm", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] -[[package]] -name = "windows-targets" -version = "0.53.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" -dependencies = [ - "windows-link", - "windows_aarch64_gnullvm 0.53.1", - "windows_aarch64_msvc 0.53.1", - "windows_i686_gnu 0.53.1", - "windows_i686_gnullvm 0.53.1", - "windows_i686_msvc 0.53.1", - "windows_x86_64_gnu 0.53.1", - "windows_x86_64_gnullvm 0.53.1", - "windows_x86_64_msvc 0.53.1", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -9495,12 +10651,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" - [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -9519,12 +10669,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" - [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -9543,24 +10687,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" -[[package]] -name = "windows_i686_gnu" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" - [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" - [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -9579,12 +10711,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_i686_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" - [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -9603,12 +10729,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" - [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -9627,12 +10747,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" - [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -9651,12 +10765,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" - [[package]] name = "winnow" version = "0.6.20" @@ -9702,18 +10810,35 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", "base64 0.13.1", "data-encoding", - "der-parser", + "der-parser 8.2.0", "lazy_static", "nom", - "oid-registry", + "oid-registry 0.6.1", "rusticata-macros", "thiserror 1.0.69", "time", ] +[[package]] +name = "x509-parser" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d43b0f71ce057da06bc0851b23ee24f3f86190b07203dd8f567d0b706a185202" +dependencies = [ + "asn1-rs 0.7.2", + "data-encoding", + "der-parser 10.0.0", + "lazy_static", + "nom", + "oid-registry 0.8.1", + "rusticata-macros", + "thiserror 2.0.18", + "time", +] + [[package]] name = "xattr" version = "1.3.1" @@ -9756,7 +10881,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.52" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce1022995ff5ff5d841ad7d994facc23098cd40152f2c1d11cd607c6f530653f" +dependencies = [ + "zerocopy-derive 0.8.52", ] [[package]] @@ -9770,6 +10904,17 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "zerocopy-derive" +version = "0.8.52" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ae7f38b72ec2a254e2b87ef277cf2cd4fb97cbebf944faa6f33354da0867930" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + [[package]] name = "zerofrom" version = "0.1.5" @@ -9793,18 +10938,18 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 1ec23a94..eb116a83 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,4 +17,4 @@ check-cfg = [ ] [workspace.metadata.cli] -solana = "3.1.14" +solana = "4.0.3" diff --git a/program/Cargo.toml b/program/Cargo.toml index 519b1bfe..d039ada9 100644 --- a/program/Cargo.toml +++ b/program/Cargo.toml @@ -54,8 +54,8 @@ solana-account = { version = "4.3.1", features = ["bincode"] } solana-compute-budget-interface = "3.0.0" solana-native-token = "3.0.0" solana-program = "4.0.0" -solana-program-test = { version = "3.1.8", features = ["agave-unstable-api"] } -solana-sdk = "3.0.0" +solana-program-test = { version = "4.1.0-rc.1", features = ["agave-unstable-api"] } +solana-sdk = "4.0.0" solana-vote-interface = { version = "6.0.0", features = ["bincode"] } spl-token-interface = "3.0.0" test-case = "3.3" diff --git a/program/src/processor.rs b/program/src/processor.rs index 3275014c..231961b8 100644 --- a/program/src/processor.rs +++ b/program/src/processor.rs @@ -2895,10 +2895,16 @@ impl Processor { let lamports_per_pool_token = stake_pool .get_lamports_per_pool_token() .ok_or(StakePoolError::CalculationFailure)?; - let minimum_lamports_with_tolerance = - required_lamports.saturating_add(lamports_per_pool_token); - let has_active_stake = validator_list + // Since this instruction performs a stake split on an active stake, the + // source stake needs to have at least twice the minimum delegation + // amount, so that both accounts have at least the minimum delegation + // afterwards. + let minimum_lamports_with_tolerance = required_lamports + .saturating_add(stake_minimum_delegation) + .saturating_add(lamports_per_pool_token); + + let has_withdrawable_active_stake = validator_list .find::(|x| { ValidatorStakeInfo::active_lamports_greater_than( x, @@ -2906,7 +2912,7 @@ impl Processor { ) && ValidatorStakeInfo::is_active(x) }) .is_some(); - let has_transient_stake = validator_list + let has_withdrawable_transient_stake = validator_list .find::(|x| { ValidatorStakeInfo::transient_lamports_greater_than( x, @@ -2917,7 +2923,7 @@ impl Processor { let validator_list_item_info = if *stake_split_from.key == stake_pool.reserve_stake { // check that the validator stake accounts have no withdrawable stake - if has_transient_stake || has_active_stake { + if has_withdrawable_transient_stake || has_withdrawable_active_stake { msg!("Error withdrawing from reserve: validator stake accounts have lamports available, please use those first."); return Err(StakePoolError::StakeLamportsNotEqualToMinimum.into()); } @@ -2952,11 +2958,9 @@ impl Processor { ValidatorStakeInfo::memcmp_pubkey(x, &preferred_withdraw_validator) }) { - let available_lamports = - u64::from(preferred_validator_info.active_stake_lamports) - .saturating_sub(minimum_lamports_with_tolerance); if preferred_withdraw_validator != vote_account_address - && available_lamports > 0 + && u64::from(preferred_validator_info.active_stake_lamports) + >= minimum_lamports_with_tolerance { msg!("Validator vote address {} is preferred for withdrawals, it currently has {} lamports available. Please withdraw those before using other validator stake accounts.", preferred_withdraw_validator, u64::from(preferred_validator_info.active_stake_lamports)); return Err(StakePoolError::IncorrectWithdrawVoteAddress.into()); @@ -2972,7 +2976,7 @@ impl Processor { }) .ok_or(StakePoolError::ValidatorNotFound)?; - let withdraw_source = if has_active_stake { + let withdraw_source = if has_withdrawable_active_stake { // if there's any active stake, we must withdraw from an active // stake account check_validator_stake_address( @@ -2983,7 +2987,7 @@ impl Processor { NonZeroU32::new(validator_stake_info.validator_seed_suffix.into()), )?; StakeWithdrawSource::Active - } else if has_transient_stake + } else if has_withdrawable_transient_stake || validator_stake_info.transient_stake_lamports != 0.into() { // if there's any transient stake, we must withdraw from there diff --git a/program/tests/fixtures/solana_stake_program.so b/program/tests/fixtures/solana_stake_program.so index 2dd18bbd..53e422b6 100755 Binary files a/program/tests/fixtures/solana_stake_program.so and b/program/tests/fixtures/solana_stake_program.so differ diff --git a/program/tests/helpers/mod.rs b/program/tests/helpers/mod.rs index 9351951b..1421d5b8 100644 --- a/program/tests/helpers/mod.rs +++ b/program/tests/helpers/mod.rs @@ -1,7 +1,6 @@ #![allow(dead_code)] use { - agave_feature_set::stake_raise_minimum_delegation_to_1_sol, borsh::BorshDeserialize, solana_compute_budget_interface::ComputeBudgetInstruction, solana_program::{ @@ -55,17 +54,15 @@ const ACCOUNT_RENT_EXEMPTION: u64 = 1_000_000_000; // go with something big to b pub fn program_test() -> ProgramTest { let mut program_test = ProgramTest::new("spl_stake_pool", id(), processor!(Processor::process)); - program_test.add_upgradeable_program_to_genesis("solana_stake_program", &stake::program::id()); - program_test.deactivate_feature(stake_raise_minimum_delegation_to_1_sol::id()); + program_test.add_program("solana_stake_program", stake::program::id(), None); program_test } pub fn program_test_with_metadata_program() -> ProgramTest { let mut program_test = ProgramTest::default(); - program_test.add_upgradeable_program_to_genesis("solana_stake_program", &stake::program::id()); - program_test.deactivate_feature(stake_raise_minimum_delegation_to_1_sol::id()); program_test.add_program("spl_stake_pool", id(), processor!(Processor::process)); program_test.add_program("mpl_token_metadata", inline_mpl_token_metadata::id(), None); + program_test.add_program("solana_stake_program", stake::program::id(), None); program_test } @@ -924,6 +921,16 @@ impl StakePoolAccounts { } } + pub fn new_without_fees() -> Self { + Self { + epoch_fee: state::Fee::default(), + withdrawal_fee: state::Fee::default(), + deposit_fee: state::Fee::default(), + sol_deposit_fee: state::Fee::default(), + ..Default::default() + } + } + pub fn calculate_fee(&self, amount: u64) -> u64 { (amount * self.epoch_fee.numerator).div_ceil(self.epoch_fee.denominator) } @@ -2609,12 +2616,11 @@ pub fn add_token_account( program_test.add_account(*account_key, fee_account); } -pub async fn setup_for_withdraw( - token_program_id: Pubkey, +pub async fn setup_for_withdraw_with_accounts( + stake_pool_accounts: &StakePoolAccounts, reserve_lamports: u64, ) -> ( ProgramTestContext, - StakePoolAccounts, ValidatorStakeAccount, DepositStakeAccount, Keypair, @@ -2622,7 +2628,6 @@ pub async fn setup_for_withdraw( u64, ) { let mut context = program_test().start_with_context().await; - let stake_pool_accounts = StakePoolAccounts::new_with_token_program(token_program_id); stake_pool_accounts .initialize_stake_pool( &mut context.banks_client, @@ -2637,7 +2642,7 @@ pub async fn setup_for_withdraw( &mut context.banks_client, &context.payer, &context.last_blockhash, - &stake_pool_accounts, + stake_pool_accounts, None, ) .await; @@ -2653,7 +2658,7 @@ pub async fn setup_for_withdraw( &mut context.banks_client, &context.payer, &context.last_blockhash, - &stake_pool_accounts, + stake_pool_accounts, &validator_stake_account, current_minimum_delegation * 3, ) @@ -2686,6 +2691,38 @@ pub async fn setup_for_withdraw( ) .await; + ( + context, + validator_stake_account, + deposit_info, + user_transfer_authority, + user_stake_recipient, + tokens_to_withdraw, + ) +} + +pub async fn setup_for_withdraw( + token_program_id: Pubkey, + reserve_lamports: u64, +) -> ( + ProgramTestContext, + StakePoolAccounts, + ValidatorStakeAccount, + DepositStakeAccount, + Keypair, + Keypair, + u64, +) { + let stake_pool_accounts = StakePoolAccounts::new_with_token_program(token_program_id); + let ( + context, + validator_stake_account, + deposit_info, + user_transfer_authority, + user_stake_recipient, + tokens_to_withdraw, + ) = setup_for_withdraw_with_accounts(&stake_pool_accounts, reserve_lamports).await; + ( context, stake_pool_accounts, diff --git a/program/tests/update_validator_list_balance.rs b/program/tests/update_validator_list_balance.rs index 25c574ae..32a41779 100644 --- a/program/tests/update_validator_list_balance.rs +++ b/program/tests/update_validator_list_balance.rs @@ -201,7 +201,14 @@ async fn success_with_normal() { // Simulate rewards for stake_account in &stake_accounts { - context.increment_vote_account_credits(&stake_account.vote.pubkey(), 100); + transfer( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + &stake_account.stake_account, + 1_000, + ) + .await; } // Warp one more epoch so the rewards are paid out diff --git a/program/tests/withdraw_edge_cases.rs b/program/tests/withdraw_edge_cases.rs index 7a931e49..be1441e5 100644 --- a/program/tests/withdraw_edge_cases.rs +++ b/program/tests/withdraw_edge_cases.rs @@ -916,6 +916,10 @@ async fn fail_withdraw_from_transient() { .await .unwrap(); + let stake_minimum_delegation = + stake_get_minimum_delegation(&mut context.banks_client, &context.payer, &last_blockhash) + .await; + let rent = context.banks_client.get_rent().await.unwrap(); let stake_rent = rent.minimum_balance(std::mem::size_of::()); @@ -927,7 +931,7 @@ async fn fail_withdraw_from_transient() { &last_blockhash, &validator_stake_account.stake_account, &validator_stake_account.transient_stake_account, - deposit_info.stake_lamports + stake_rent - 2, + deposit_info.stake_lamports + stake_rent - stake_minimum_delegation - 2, validator_stake_account.transient_stake_seed, DecreaseInstruction::Reserve, ) @@ -1531,3 +1535,96 @@ async fn success_remove_preferred_validator_resets_preference() { "User should receive all lamports from removed validator" ); } + +#[tokio::test] +async fn fail_withdrawal_minimum_in_preferred() { + let stake_pool_accounts = StakePoolAccounts::new_without_fees(); + + let ( + mut context, + validator_stake, + deposit_info, + user_transfer_authority, + user_stake_recipient, + tokens_to_burn, + ) = setup_for_withdraw_with_accounts(&stake_pool_accounts, 0).await; + + stake_pool_accounts + .set_preferred_validator( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + instruction::PreferredValidatorType::Withdraw, + Some(validator_stake.vote.pubkey()), + ) + .await; + + // Warp forward to activation + let first_normal_slot = context.genesis_config().epoch_schedule.first_normal_slot; + let slot = first_normal_slot + 1; + context.warp_to_slot(slot).unwrap(); + let error = stake_pool_accounts + .update_all( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + false, + ) + .await; + assert!(error.is_none()); + + // Withdraw some from preferred, get it down to 2x + 1 + let stake_minimum_delegation = stake_get_minimum_delegation( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + ) + .await; + + let new_authority = Pubkey::new_unique(); + let error = stake_pool_accounts + .withdraw_stake( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + &user_stake_recipient.pubkey(), + &user_transfer_authority, + &deposit_info.pool_account.pubkey(), + &validator_stake.stake_account, + &new_authority, + tokens_to_burn - stake_minimum_delegation, + ) + .await; + assert!(error.is_none(), "{:?}", error); + + // preferred is not empty, withdrawing from non-preferred fails + let user_stake_recipient = Keypair::new(); + create_blank_stake_account( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + &user_stake_recipient, + ) + .await; + let error = stake_pool_accounts + .withdraw_stake( + &mut context.banks_client, + &context.payer, + &context.last_blockhash, + &user_stake_recipient.pubkey(), + &user_transfer_authority, + &deposit_info.pool_account.pubkey(), + &validator_stake.stake_account, + &new_authority, + stake_minimum_delegation, + ) + .await; + let transaction_error = error.unwrap().unwrap(); + assert_eq!( + transaction_error, + TransactionError::InstructionError( + 0, + InstructionError::Custom(StakePoolError::StakeLamportsNotEqualToMinimum as u32) + ) + ); +}