diff --git a/Cargo.lock b/Cargo.lock index 4491a11..d44adf9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -56,85 +56,67 @@ dependencies = [ [[package]] name = "agave-feature-set" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfe79fc4c114c51ea8461d829bb49853a21a76c7c8ef20e9041b071558f628ce" +checksum = "6e724c6d41535d61eb4cba970716f6cfcef8d3f4d15750488f77a7630faab680" dependencies = [ "ahash", "solana-epoch-schedule", - "solana-hash 3.1.0", - "solana-pubkey 3.0.0", + "solana-hash 4.5.0", + "solana-keypair", + "solana-pubkey 4.2.1", "solana-sha256-hasher 3.1.0", - "solana-svm-feature-set 3.1.14", + "solana-svm-feature-set", ] [[package]] -name = "agave-feature-set" -version = "4.0.0-rc.0" +name = "agave-reserved-account-keys" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33e41538180f5ded6d08a69c75b4f48c4c6ba8098d7e790b3d694a6bc081fbc7" +checksum = "0fa474270f9cd8d71089979f1ad8e31c2eccde8b32d1ca03f33fe1123104d562" dependencies = [ - "ahash", - "solana-epoch-schedule", - "solana-hash 4.4.0", - "solana-keypair", - "solana-pubkey 4.2.0", - "solana-sha256-hasher 3.1.0", - "solana-svm-feature-set 4.0.0-rc.0", + "agave-feature-set", + "solana-pubkey 4.2.1", + "solana-sdk-ids", ] [[package]] -name = "agave-reserved-account-keys" -version = "3.1.14" +name = "agave-transaction-view" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e8ceb5117fa390898f473b0d165f88482a2b36fb4a47441d8b40e22823207cb" +checksum = "11af131e96e1a0df153db2d673a28293d171da78056104ec8e0d396e2bdf305b" dependencies = [ - "agave-feature-set 3.1.14", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-hash 4.5.0", + "solana-message", + "solana-packet", + "solana-pubkey 4.2.1", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-svm-transaction", + "solana-transaction", ] [[package]] -name = "agave-syscalls" -version = "3.1.14" +name = "agave-votor-messages" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98807b80e4367cc38c2b24ea30d6d16466553982aeedb0b0cb2c70bbae8ba5b0" +checksum = "ada4766523d78318ca950206b3fab5d8118d833002781393a2936a4247a18ea8" dependencies = [ - "bincode", - "libsecp256k1", - "num-traits", - "solana-account", - "solana-account-info", - "solana-big-mod-exp", - "solana-blake3-hasher", - "solana-bn254", - "solana-clock 3.1.0", - "solana-cpi", - "solana-curve25519", - "solana-hash 3.1.0", - "solana-instruction 3.4.0", - "solana-keccak-hasher", - "solana-loader-v3-interface 6.1.1", - "solana-poseidon", - "solana-program-entrypoint", - "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sbpf 0.13.1", - "solana-sdk-ids 3.1.0", - "solana-secp256k1-recover", - "solana-sha256-hasher 3.1.0", - "solana-stable-layout", - "solana-stake-interface", - "solana-svm-callback", - "solana-svm-feature-set 3.1.14", - "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 3.1.14", - "thiserror 2.0.18", + "agave-feature-set", + "crossbeam-channel", + "log", + "serde", + "solana-address 2.6.1", + "solana-bls-signatures", + "solana-clock", + "solana-epoch-schedule", + "solana-hash 4.5.0", + "solana-pubkey 4.2.1", + "solana-short-vec", + "solana-signer-store", + "thiserror 2.0.20", + "wincode", ] [[package]] @@ -152,9 +134,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba" dependencies = [ "memchr", ] @@ -182,66 +164,66 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "anchor-attribute-access-control" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b8cd233e382ea499e3c1e51bf4f0cb367abb37bb64e9e3667a5d618af3fe265" +checksum = "9a0ba6f4d5cff33a16a8cb30fd7419b71cf8b8b408998a341235cefe7e76cc1c" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-attribute-account" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e12171382e24c5cda6b0f7236a4f6bb9b657da997780c88a0ef794a419298bf" +checksum = "af875fe99d9dab01317a3bac577b05f3e52d5bd7d1b424de488ba51f3310feab" dependencies = [ "anchor-syn", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-attribute-constant" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510f8db71375446405dfabdaf157fb7d3fbf33470c98ed75fad4c467e8ca0080" +checksum = "345a11192cd11fdc8663e3194bbcd0c983c019cd9f21804d7853eeee5ee22653" dependencies = [ "anchor-syn", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-attribute-error" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b203169a49ea74da7782281e740ea8e21017c85f8f3b1ab452712c9796d28f" +checksum = "1e5f6290f0f54e0e34b8efbb4dcd69dc2c46c655ada8198f35f403d2a88cf9c7" dependencies = [ "anchor-syn", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-attribute-event" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c50a462651e573ec6cc632e8f607e8b1e11f620f6fc26badaeff04fd49f45cc1" +checksum = "d0159e0fae5b1b508110b8753fda23ebce778f3bd8c146b8baabd12d2cebe4a7" dependencies = [ "anchor-syn", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-attribute-program" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84704ee25a7e788afd9d846945cba536cfdcd53b463e8a337cf237cd897ca4d9" +checksum = "51180111bea3660c0db345bfee34cf23f8d89cf2ac8dd5d8c7a044b3fb24d961" dependencies = [ "anchor-lang-idl", "anchor-syn", @@ -249,49 +231,49 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-derive-accounts" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98bf49664527c7bb0ebca04e9b5bfb618d6ceb849ef44a8149241d244bbfb0f6" +checksum = "b802cd6561645117219ae6ed62cd322501bf1b5b7fa1a6fd8d911428c4c37192" dependencies = [ "anchor-syn", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-derive-serde" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8140a40827bdfd74720f1f3084778fa081262f2f43bd4bdbc350f98ce1b341c6" +checksum = "fa658e7d911c4290fe9ee953e75cf95f3c4db19c053f64071512867fa9f40394" dependencies = [ "anchor-syn", "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-derive-space" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee5b6fa5dde037399d3e0bb322a1c7360ad8adc6b6afdd797d19566c039dcfb" +checksum = "69520cea030ee13d2978087a467bf32078012a5ce06b2746318c359887d481ed" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.119", ] [[package]] name = "anchor-lang" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bac4de7c9a9a69180798af701e22302cc0ebf2ef683b843706a1b7809454735" +checksum = "90b556a7a0a734b1ee325c54fb5dd8d5708a2b7c85df70501672d1ace202c803" dependencies = [ "anchor-attribute-access-control", "anchor-attribute-account", @@ -302,6 +284,7 @@ dependencies = [ "anchor-derive-accounts", "anchor-derive-serde", "anchor-derive-space", + "anchor-lang-error", "anchor-lang-idl", "base64 0.21.7", "bincode", @@ -309,12 +292,12 @@ dependencies = [ "bytemuck", "const-crypto", "solana-account-info", - "solana-clock 3.1.0", + "solana-clock", "solana-cpi", "solana-define-syscall 3.0.0", - "solana-feature-gate-interface", - "solana-instruction 3.4.0", - "solana-instructions-sysvar", + "solana-feature-gate-interface 3.1.0", + "solana-instruction 3.4.1", + "solana-instructions-sysvar 3.0.1", "solana-invoke", "solana-loader-v3-interface 6.1.1", "solana-msg 3.1.0", @@ -324,19 +307,32 @@ dependencies = [ "solana-program-option", "solana-program-pack", "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "solana-stake-interface", + "solana-sdk-ids", + "solana-stake-interface 2.0.2", "solana-system-interface 2.0.0", "solana-sysvar 3.1.1", "solana-sysvar-id", "thiserror 1.0.69", ] +[[package]] +name = "anchor-lang-error" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "521690425c1f243d6cd2cb4d1fc46f44a017ad5d58a56fd1cd57313accae7355" +dependencies = [ + "anchor-attribute-error", + "borsh", + "solana-msg 3.1.0", + "solana-program-error 3.0.1", + "solana-pubkey 3.0.0", +] + [[package]] name = "anchor-lang-idl" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "308910c7570f3598e631648dd33ce1a6016cfcb019542667f696b0ffb37e7001" +checksum = "47914b4290ae2bdf4ec203aa821e6eba86d7c78ef497918938038dcc6919f953" dependencies = [ "anchor-lang-idl-spec", "anyhow", @@ -359,19 +355,18 @@ dependencies = [ [[package]] name = "anchor-syn" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6940253e80acf0f8e83b1ebd9c4772c496aedcce6ad19aa85ce75d0b6b188298" +checksum = "1ef87b1d3ae59fbf265a9157a9082308af220b4ef5a64a360d8820dcf25b5a86" dependencies = [ - "anyhow", "bs58", "cargo_toml", "heck", "proc-macro2", "quote", "serde", - "sha2 0.10.9", - "syn 1.0.109", + "sha2 0.11.0", + "syn 2.0.119", "thiserror 1.0.69", ] @@ -386,9 +381,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.102" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" +checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" [[package]] name = "ark-bn254" @@ -444,7 +439,7 @@ dependencies = [ "fnv", "hashbrown 0.15.5", "itertools 0.13.0", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-integer", "num-traits", "zeroize", @@ -463,7 +458,7 @@ dependencies = [ "derivative", "digest 0.10.7", "itertools 0.10.5", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "paste", "rustc_version", @@ -484,7 +479,7 @@ dependencies = [ "digest 0.10.7", "educe 0.6.0", "itertools 0.13.0", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "paste", "zeroize", @@ -507,7 +502,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -516,7 +511,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" dependencies = [ - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "proc-macro2", "quote", @@ -529,11 +524,11 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3" dependencies = [ - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -573,7 +568,7 @@ dependencies = [ "ark-serialize-derive 0.4.2", "ark-std 0.4.0", "digest 0.10.7", - "num-bigint 0.4.6", + "num-bigint 0.4.8", ] [[package]] @@ -586,7 +581,7 @@ dependencies = [ "ark-std 0.5.0", "arrayvec", "digest 0.10.7", - "num-bigint 0.4.6", + "num-bigint 0.4.8", ] [[package]] @@ -608,7 +603,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -618,7 +613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand 0.8.6", + "rand 0.8.8", ] [[package]] @@ -628,7 +623,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a" dependencies = [ "num-traits", - "rand 0.8.6", + "rand 0.8.8", "rayon", ] @@ -640,9 +635,9 @@ checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" [[package]] name = "arrayvec" -version = "0.7.7" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f02882884d3e1bc524fb12c79f107f6ad0e1cfd498c536ffb494301740995dfe" +checksum = "d3fb67a6e08acf24fdeccbac2cb6ac4305825bd1f117462e0e6f2f193345ad56" [[package]] name = "ascii" @@ -652,9 +647,9 @@ checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" [[package]] name = "async-compression" -version = "0.4.42" +version = "0.4.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79b3f8a79cccc2898f31920fc69f304859b3bd567490f75ebf51ae1c792a9ac" +checksum = "4f10dafd0c8d2e51ae9a748805777613ed0bbe17bf586b76c8311f45c020a32f" dependencies = [ "compression-codecs", "compression-core", @@ -664,13 +659,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.89" +version = "0.1.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -687,9 +682,9 @@ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] name = "aws-lc-rs" -version = "1.17.0" +version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ec2f1fc3ec205783a5da9a7e6c1509cc69dedf09a1949e412c1e18469326d00" +checksum = "b281d307588d634de920874890732659e2e7672f72b5e10e81badc1a8a83621e" dependencies = [ "aws-lc-sys", "zeroize", @@ -697,14 +692,15 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.41.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a2f9779ce85b93ab6170dd940ad0169b5766ff848247aff13bb788b832fe3f4" +checksum = "9bff6c3b54fad79a2e60b8102caf565819711497c1f5f092f49508e2f5c31b27" dependencies = [ "cc", "cmake", "dunce", "fs_extra", + "pkg-config", ] [[package]] @@ -713,12 +709,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" -[[package]] -name = "base64" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" - [[package]] name = "base64" version = "0.13.1" @@ -737,6 +727,12 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +[[package]] +name = "base64" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac07cdecf99051d9a5238b80f35af32cdeba5b336e55d957b318b50137e18da5" + [[package]] name = "base64ct" version = "1.8.3" @@ -775,22 +771,33 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.13.0" +version = "2.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06" + +[[package]] +name = "bitvec" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8" +checksum = "ddcec3d12c579d40898fe0a9a358a803c23e9c52ca3c425707f81c9436211837" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] [[package]] name = "blake3" -version = "1.8.5" +version = "1.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce" +checksum = "6d9e454fc11f76977dc803893aff6304ed33d6a26efae8696573bea74baa27ae" dependencies = [ - "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", - "cpufeatures 0.3.0", + "cpufeatures 0.3.1", "digest 0.11.3", ] @@ -821,11 +828,39 @@ dependencies = [ "hybrid-array", ] +[[package]] +name = "blst" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20659f9bbee16cbbd2f7393e40ab6309f5a98f76a2eb57a995ec508b72387fe" +dependencies = [ + "cc", + "glob", + "threadpool", + "zeroize", +] + +[[package]] +name = "blstrs" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a8a8ed6fefbeef4a8c7b460e4110e12c5e22a5b7cf32621aae6ad650c4dcf29" +dependencies = [ + "blst", + "byte-slice-cast", + "ff", + "group", + "pairing", + "rand_core 0.6.4", + "serde", + "subtle", +] + [[package]] name = "borsh" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f3f6da4992df95bbcd9af42a6c7dcb994498fc9048230405f3b36ff7cd3f145" +checksum = "553c5d846a6ba5150c65e3b1b8ec073bcf1abc20f9b7220de384a4443ea4e20a" dependencies = [ "borsh-derive", "bytes", @@ -834,15 +869,15 @@ dependencies = [ [[package]] name = "borsh-derive" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae8fb4fb5740e4b2c4884ff95f5f32f5e8479db1e8fd8eb49ddbe09eb09bb7c" +checksum = "12cdfe656708a01f89b451a7d36466e6fe6c414de0aa18fc54f864f6f9ca9f56" dependencies = [ "once_cell", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -891,24 +926,30 @@ dependencies = [ "serde", ] +[[package]] +name = "byte-slice-cast" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" + [[package]] name = "bytemuck" -version = "1.25.0" +version = "1.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" +checksum = "95832e849adfb21180ccb6826a99da14e5d266ae5c2e668e1602cf234f153797" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.10.2" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" +checksum = "fc0e56a716f1e132ff6bf4bdac1c944a3fcdc1cae65f70a4a2a1ac3b401d2d1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -919,25 +960,25 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae3f5d315924270530207e2a68396c3cc547f6dca3fbdca317cfb1a51edb593" +checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" [[package]] name = "cargo_toml" -version = "0.19.2" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be" +checksum = "374b7c592d9c00c1f4972ea58390ac6b18cbb6ab79011f3bdc90a0b82ca06b77" dependencies = [ "serde", - "toml 0.8.23", + "toml 0.9.12+spec-1.1.0", ] [[package]] name = "cc" -version = "1.2.65" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e228eec9be7c17ccb640b59b36a5cd805ea2a564a4c5e162c2f659fea30d3b96" +checksum = "005ec2760ca554fae18df7a11195552ec576cd665632a881bc011d5bb2fd4d80" dependencies = [ "find-msvc-tools", "jobserver", @@ -953,9 +994,9 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "cfg_aliases" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +checksum = "f079e83a288787bcd14a6aea84cee5c87a67c5a3e660c30f557a3d24761b3527" [[package]] name = "cfg_eval" @@ -965,7 +1006,18 @@ checksum = "45565fc9416b9896014f5732ac776f810ee53a66730c17e4020c3ec064a8f88f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", +] + +[[package]] +name = "chacha20" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.1", + "rand_core 0.10.1", ] [[package]] @@ -1008,9 +1060,9 @@ dependencies = [ [[package]] name = "combine" -version = "4.6.7" +version = "4.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +checksum = "cfc320937d09e6de266b31b9afb480f197d7a861be86be7cb2ea7e5d1bfffc5e" dependencies = [ "bytes", "memchr", @@ -1018,9 +1070,9 @@ dependencies = [ [[package]] name = "compression-codecs" -version = "0.4.38" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce2548391e9c1929c21bf6aa2680af86fe4c1b33e6cea9ac1cfeec0bd11218cf" +checksum = "58a6d0db8759036a783bc7c3f7a07f8cef3bf9470eb1db3bc86e8bcd1c5d0fe8" dependencies = [ "brotli", "compression-core", @@ -1030,15 +1082,15 @@ dependencies = [ [[package]] name = "compression-core" -version = "0.4.32" +version = "0.4.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc14f565cf027a105f7a44ccf9e5b424348421a1d8952a8fc9d499d313107789" +checksum = "6e8ccc4ea9f6acc32d102c0f6d471d11d913ad15f20c04de743374861fa1d414" [[package]] name = "console" -version = "0.16.3" +version = "0.16.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d64e8af5551369d19cf50138de61f1c42074ab970f74e99be916646777f8fc87" +checksum = "e96a4956774c13c126a8b5af4daa79384f4d826534c95a02d76afb39e2ab64e3" dependencies = [ "encode_unicode", "libc", @@ -1062,6 +1114,12 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const-oid" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" + [[package]] name = "constant_time_eq" version = "0.4.2" @@ -1094,6 +1152,12 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "core_detect" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f8f80099a98041a3d1622845c271458a2d73e688351bf3cb999266764b81d48" + [[package]] name = "cpufeatures" version = "0.2.17" @@ -1105,36 +1169,36 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566" dependencies = [ "libc", ] [[package]] name = "crc32fast" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +checksum = "8498c871161e1742aaa9d52551b2d6ebdd4c3d45a3be423e3728f33b955be550" dependencies = [ "cfg-if", ] [[package]] name = "crossbeam-channel" -version = "0.5.15" +version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +checksum = "98b0cc327b5bc766e7fda9c9260cc0fa81b43a8e240440422dff70788e3f9ef1" dependencies = [ "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +checksum = "622f3fc73690be383c7214310406f28a90e6edeadc3cea882f9d71e495b9711a" dependencies = [ "crossbeam-epoch", "crossbeam-utils", @@ -1142,18 +1206,18 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "dc74980687109a3b14c72fd458107bf0baa1da1a1a805e178d15501ba9b86d9d" dependencies = [ "crossbeam-utils", ] [[package]] name = "crossbeam-utils" -version = "0.8.21" +version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" +checksum = "a31eee39dddec8330830986fcd7625edb5a24ec90ea038215273bbc3adb08ac6" [[package]] name = "crunchy" @@ -1237,7 +1301,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -1260,6 +1324,16 @@ dependencies = [ "darling_macro 0.23.0", ] +[[package]] +name = "darling" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed17f5901b6630b993ca003def43f2f8ef4014fc13b047b57aad617ff32bc2ec" +dependencies = [ + "darling_core 0.24.1", + "darling_macro 0.24.1", +] + [[package]] name = "darling_core" version = "0.21.3" @@ -1271,7 +1345,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -1284,7 +1358,20 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.118", + "syn 2.0.119", +] + +[[package]] +name = "darling_core" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6837e2cf7485aaae18f86181d2f0e9a7ed297a025e220aeabf63fdebd3a2ddff" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 3.0.5", ] [[package]] @@ -1295,7 +1382,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -1306,7 +1393,18 @@ checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ "darling_core 0.23.0", "quote", - "syn 2.0.118", + "syn 2.0.119", +] + +[[package]] +name = "darling_macro" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ac7135c3ef02b2f7833bbeb1be5ba7f966dcde8a87c6b87f65a778d71a02785" +dependencies = [ + "darling_core 0.24.1", + "quote", + "syn 3.0.5", ] [[package]] @@ -1315,7 +1413,7 @@ version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ - "const-oid", + "const-oid 0.9.6", "zeroize", ] @@ -1352,7 +1450,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", - "const-oid", + "const-oid 0.9.6", "crypto-common 0.1.7", "subtle", ] @@ -1364,19 +1462,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ "block-buffer 0.12.1", + "const-oid 0.10.2", "crypto-common 0.2.2", "ctutils", ] [[package]] name = "displaydoc" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f" +checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -1448,17 +1547,17 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417" dependencies = [ - "enum-ordinalize 4.3.2", + "enum-ordinalize 4.4.2", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "either" -version = "1.16.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e" +checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34" [[package]] name = "elliptic-curve" @@ -1487,18 +1586,24 @@ checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] name = "encoding_rs" -version = "0.8.35" +version = "0.8.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +checksum = "7b5ef0006ac9ab233c38522f5ae99cae3625151de8f706cacee1cba4b8e2832a" dependencies = [ "cfg-if", + "core_detect", + "multiversion", + "multiversion_no_op", + "rustversion", + "scopeguard", + "simdutf8", ] [[package]] name = "enum-iterator" -version = "1.5.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fd242f399be1da0a5354aa462d57b4ab2b4ee0683cc552f7c007d2d12d36e94" +checksum = "a4549325971814bda7a44061bf3fe7e487d447cba01e4220a4b454d630d7a016" dependencies = [ "enum-iterator-derive", ] @@ -1511,7 +1616,7 @@ checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -1520,31 +1625,31 @@ version = "3.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bf1fa3f06bbff1ea5b1a9c7b14aa992a39657db60a2759457328d7e058f49ee" dependencies = [ - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "enum-ordinalize" -version = "4.3.2" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1091a7bb1f8f2c4b28f1fe2cef4980ca2d410a3d727d67ecc3178c9b0800f0" +checksum = "89dd01549b09589510cf0647475075d12071456586d70f5c75c98ae2a5537677" dependencies = [ "enum-ordinalize-derive", ] [[package]] name = "enum-ordinalize-derive" -version = "4.3.2" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" +checksum = "a65863d15a4ce2888bd2f0f543cc963d3879c3a022c8ee43f6141d479a3ac815" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -1565,9 +1670,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" +checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223" [[package]] name = "feature-probe" @@ -1581,6 +1686,7 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ + "bitvec", "rand_core 0.6.4", "subtle", ] @@ -1593,9 +1699,9 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "find-msvc-tools" -version = "0.1.9" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" +checksum = "3e0f1c7c3a72c66fd80abe965175f7523475c0489a87d3ff9d6e8c87d87a9d2d" [[package]] name = "five8" @@ -1647,12 +1753,13 @@ checksum = "059c31d7d36c43fe39d89e55711858b4da8be7eb6dabac23c7289b1a19489406" [[package]] name = "flate2" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" +checksum = "6e634e2e0ebac1ee034020da1ca582e17ffe4e0f5e985823721e168928136dcb" dependencies = [ "crc32fast", "miniz_oxide", + "zlib-rs", ] [[package]] @@ -1691,11 +1798,17 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "futures" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" +checksum = "9a31d2a3fbaaeb2af2368bbdd904aa8e812d3c04a1ee10d3171f52d556e5d0a3" dependencies = [ "futures-channel", "futures-core", @@ -1708,9 +1821,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" +checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4" dependencies = [ "futures-core", "futures-sink", @@ -1718,15 +1831,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" +checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e" [[package]] name = "futures-executor" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" +checksum = "031b47cf1a3c6cc8bc2fc76cd437f521619387907d469316e7c0bc278f1f5432" dependencies = [ "futures-core", "futures-task", @@ -1735,38 +1848,38 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" +checksum = "53c0fa8157de1303bfffdaa1cc2a673bfffb60102f76b0ef4441659124373fed" [[package]] name = "futures-macro" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" +checksum = "9fb9654ba8355388abeb8dcb4fc62f511300867002afc858860463bdd9fe0c44" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] name = "futures-sink" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" +checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d" [[package]] name = "futures-task" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" +checksum = "cd417de3d1d015fc3bfd2b1ea46dfc7bab72ef86f1cc7cc9c78e728b34a6d1fd" [[package]] name = "futures-util" -version = "0.3.32" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" +checksum = "0d50a92467f8ba5dd6e3ee5d4bd04d73ab2e4e1c44474a0674821dfce14b79bc" dependencies = [ "futures-channel", "futures-core", @@ -1790,17 +1903,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - [[package]] name = "getrandom" version = "0.2.17" @@ -1810,7 +1912,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] @@ -1821,11 +1923,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", - "js-sys", "libc", "r-efi 5.3.0", "wasip2", - "wasm-bindgen", ] [[package]] @@ -1835,15 +1935,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", + "js-sys", "libc", "r-efi 6.0.0", + "rand_core 0.10.1", + "wasm-bindgen", ] [[package]] name = "glob" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" +checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b" [[package]] name = "group" @@ -1852,7 +1955,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", + "rand 0.8.8", "rand_core 0.6.4", + "rand_xorshift 0.3.0", "subtle", ] @@ -1871,7 +1976,7 @@ dependencies = [ "indexmap", "slab", "tokio", - "tokio-util 0.7.18", + "tokio-util 0.7.19", "tracing", ] @@ -1917,6 +2022,12 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "hermit-abi" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e17592d60ebacc7d5e169f4663c5f84f9161cc90328abcfe8456f41e4dfcb284" + [[package]] name = "hmac" version = "0.12.1" @@ -1939,9 +2050,9 @@ dependencies = [ [[package]] name = "http" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6970f50e31d6fc17d3fa27329444bfa74e196cf62e95052a3f6fee181dba6425" +checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0" dependencies = [ "bytes", "itoa", @@ -1960,24 +2071,24 @@ dependencies = [ [[package]] name = "http-body" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +checksum = "ca2a8f2913ee65f60facd6a5905613afaa448497a0230cc41ce022d93290bc2c" dependencies = [ "bytes", - "http 1.4.2", + "http 1.5.0", ] [[package]] name = "http-body-util" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +checksum = "23169fe34a5fbcdd3f3862e78fb9b6fccd5f02a6dc6f732547005d45631ce71c" dependencies = [ "bytes", "futures-core", - "http 1.4.2", - "http-body 1.0.1", + "http 1.5.0", + "http-body 1.1.0", "pin-project-lite", ] @@ -1995,15 +2106,15 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "humantime" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" +checksum = "15cdd26707701c53297e2fa6afb323d55fbc1d0810c3aec078ae3ef0424c3c15" [[package]] name = "hybrid-array" -version = "0.4.12" +version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9155a582abd142abc056962c29e3ce5ff2ad5469f4246b537ed42c5deba857da" +checksum = "27f864f10dfb56725ce5ce5472bc52252c8f93a4ab86327122cebf62c5f59a17" dependencies = [ "typenum", ] @@ -2034,16 +2145,16 @@ dependencies = [ [[package]] name = "hyper" -version = "1.10.1" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55281c53a1894c864990125767da440a4e630446785086f52523b20033b74498" +checksum = "27b501faa50e7a26c3d3560ca625132f4078a17771f4810baf70475ae48cbe43" dependencies = [ "atomic-waker", "bytes", "futures-channel", "futures-core", - "http 1.4.2", - "http-body 1.0.1", + "http 1.5.0", + "http-body 1.1.0", "httparse", "itoa", "pin-project-lite", @@ -2072,14 +2183,14 @@ version = "0.27.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" dependencies = [ - "http 1.4.2", - "hyper 1.10.1", + "http 1.5.0", + "hyper 1.11.1", "hyper-util", - "rustls 0.23.41", + "rustls 0.23.44", "tokio", - "tokio-rustls 0.26.4", + "tokio-rustls 0.26.5", "tower-service", - "webpki-roots 1.0.8", + "webpki-roots 1.0.9", ] [[package]] @@ -2105,14 +2216,14 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.4.2", - "http-body 1.0.1", - "hyper 1.10.1", + "http 1.5.0", + "http-body 1.1.0", + "hyper 1.11.1", "ipnet", "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.4", + "socket2 0.6.5", "tokio", "tower-service", "tracing", @@ -2120,9 +2231,9 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" +checksum = "fa68d21081c4a05d5a901a1c62add574c77048b6a1c67be3b50ce0b60d4ca513" dependencies = [ "displaydoc", "potential_utf", @@ -2134,9 +2245,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" +checksum = "d56e28588da92eee5c3201a6eff33fabdd49b62269c8938d4ff050ce4d900deb" dependencies = [ "displaydoc", "litemap", @@ -2147,9 +2258,9 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" +checksum = "12f9cf5f235641ed274641dd81c3f28d870e276763d0797aeeab72317b1c646f" dependencies = [ "icu_collections", "icu_normalizer_data", @@ -2161,16 +2272,17 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" +checksum = "1563da1ed3e0b3bf3d74c9b85917ac9c56464d2f57242270c09c9e752f8021a0" [[package]] name = "icu_properties" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" +checksum = "7e7ca276ad3145661a65914e6daf131ca5120cd3dcee8f8f3214b8875184a148" dependencies = [ + "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", @@ -2181,15 +2293,15 @@ dependencies = [ [[package]] name = "icu_properties_data" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" +checksum = "e590f038c1464a96894fd6d10127e90a8be4509f56ff7ecef851b15cee0b7caa" [[package]] name = "icu_provider" -version = "2.2.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" +checksum = "d27bbb9d3abbefac45d55f647c9de1d44aafcd1186eb91879afef17c396c3e73" dependencies = [ "displaydoc", "icu_locale_core", @@ -2229,9 +2341,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.14.0" +version = "2.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" +checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855" dependencies = [ "equivalent", "hashbrown 0.17.1", @@ -2239,9 +2351,9 @@ dependencies = [ [[package]] name = "indicatif" -version = "0.18.4" +version = "0.18.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25470f23803092da7d239834776d653104d551bc4d7eacaf31e6837854b8e9eb" +checksum = "9433806cd6b4ec1aba79c021c7e4c58fb4c3b9977c085062e611ac929998fb0c" dependencies = [ "console", "portable-atomic", @@ -2261,9 +2373,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.12.0" +version = "2.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" +checksum = "791930b43c0d5973160d90a8f3894509f2b273430f5c5c73b668636d0287c5c0" [[package]] name = "itertools" @@ -2301,6 +2413,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b4baf93f58d4425749ca49a51c50ebab072c5df6994d08fed93541c331481dc" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.18" @@ -2314,12 +2435,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" dependencies = [ "cfg-if", - "combine 4.6.7", + "combine 4.6.8", "jni-macros", "jni-sys", "log", "simd_cesu8", - "thiserror 2.0.18", + "thiserror 2.0.20", "walkdir", "windows-link", ] @@ -2334,7 +2455,7 @@ dependencies = [ "quote", "rustc_version", "simd_cesu8", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -2353,24 +2474,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" dependencies = [ "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "jobserver" -version = "0.1.34" +version = "0.1.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +checksum = "1c00acbd29eabad4a2392fa0e921c874934dbbf4194312ad20f04a0ed67a3cb3" dependencies = [ - "getrandom 0.3.4", + "getrandom 0.4.3", "libc", ] [[package]] name = "js-sys" -version = "0.3.102" +version = "0.3.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03d04c30968dffe80775bd4d7fb676131cd04a1fb46d2686dbffbaec2d9dfd31" +checksum = "ce57d20d1ea864ce2ac172ab472d409214f4fd359f0b2a2775abdf522e2af99e" dependencies = [ "cfg-if", "futures-util", @@ -2429,32 +2550,38 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.186" +version = "0.2.189" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" +checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2" [[package]] -name = "libsecp256k1" -version = "0.6.0" +name = "libm" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" + +[[package]] +name = "libsecp256k1" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" dependencies = [ "arrayref", - "base64 0.12.3", + "base64 0.22.1", "digest 0.9.0", "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", - "rand 0.7.3", + "rand 0.8.8", "serde", "sha2 0.9.9", ] [[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", @@ -2463,39 +2590,39 @@ 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", ] [[package]] name = "light-account-checks" -version = "0.9.0" +version = "0.10.0" dependencies = [ "borsh", "pinocchio", "pinocchio-system", - "rand 0.8.6", + "rand 0.8.8", "solana-account-info", "solana-cpi", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-msg 3.1.0", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-system-interface 3.2.0", - "solana-sysvar 4.0.0", - "thiserror 2.0.18", + "solana-sysvar 4.1.0", + "thiserror 2.0.20", ] [[package]] @@ -2512,11 +2639,13 @@ dependencies = [ [[package]] name = "light-client" -version = "0.24.1" +version = "0.25.0" dependencies = [ + "agave-feature-set", "anchor-lang", "async-trait", "base64 0.13.1", + "bincode", "borsh", "bs58", "futures", @@ -2530,41 +2659,43 @@ dependencies = [ "light-sdk", "light-sdk-types", "litesvm", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "photon-api", - "rand 0.8.6", + "rand 0.8.8", "reqwest 0.12.28", "serde_json", "smallvec", - "solana-account", + "solana-account 4.3.2", "solana-account-decoder-client-types", - "solana-address-lookup-table-interface 2.2.2", + "solana-address-lookup-table-interface", "solana-banks-client", - "solana-clock 3.1.0", + "solana-clock", "solana-commitment-config", "solana-compute-budget-interface", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-keypair", "solana-message", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-rpc-client", "solana-rpc-client-api", "solana-signature", + "solana-signer", + "solana-system-interface 3.2.0", "solana-transaction", "solana-transaction-error", "solana-transaction-status-client-types", "spl-pod", "spl-token-2022-interface", - "thiserror 2.0.18", + "thiserror 2.0.20", "tokio", "tracing", ] [[package]] name = "light-concurrent-merkle-tree" -version = "6.0.0" +version = "7.0.0" dependencies = [ "ark-bn254 0.5.0", "ark-ff 0.5.0", @@ -2573,74 +2704,74 @@ dependencies = [ "light-hasher", "light-merkle-tree-reference", "memoffset", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "pinocchio", - "rand 0.8.6", + "rand 0.8.8", "solana-program-error 3.0.1", - "thiserror 2.0.18", + "thiserror 2.0.20", "tokio", ] [[package]] name = "light-event" -version = "0.24.0" +version = "0.25.0" dependencies = [ "borsh", "bs58", "light-hasher", "light-sdk-types", "light-zero-copy", - "rand 0.8.6", - "thiserror 2.0.18", + "rand 0.8.8", + "thiserror 2.0.20", ] [[package]] name = "light-hasher" -version = "6.0.1" +version = "7.0.0" dependencies = [ "ark-bn254 0.5.0", "ark-ff 0.5.0", "borsh", "light-poseidon 0.4.0", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "pinocchio", - "rand 0.8.6", + "rand 0.8.8", "sha2 0.10.9", "sha3", - "solana-define-syscall 5.1.0", + "solana-define-syscall 5.2.0", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", - "thiserror 2.0.18", + "solana-pubkey 4.2.1", + "thiserror 2.0.20", "tinyvec", "zerocopy", ] [[package]] name = "light-indexed-array" -version = "0.4.0" +version = "0.5.0" dependencies = [ "light-hasher", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", - "rand 0.8.6", - "thiserror 2.0.18", + "rand 0.8.8", + "thiserror 2.0.20", ] [[package]] name = "light-indexed-merkle-tree" -version = "6.0.0" +version = "7.0.0" dependencies = [ "light-bounded-vec", "light-concurrent-merkle-tree", "light-hasher", "light-merkle-tree-reference", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "pinocchio", - "rand 0.8.6", + "rand 0.8.8", "solana-program-error 3.0.1", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] @@ -2650,13 +2781,13 @@ dependencies = [ "bs58", "proc-macro2", "quote", - "solana-pubkey 4.2.0", - "syn 2.0.118", + "solana-pubkey 4.2.1", + "syn 2.0.119", ] [[package]] name = "light-merkle-tree-metadata" -version = "0.12.0" +version = "0.13.0" dependencies = [ "anchor-lang", "borsh", @@ -2665,22 +2796,22 @@ dependencies = [ "pinocchio", "solana-msg 3.1.0", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", - "solana-sysvar 4.0.0", - "thiserror 2.0.18", + "solana-pubkey 4.2.1", + "solana-sysvar 4.1.0", + "thiserror 2.0.20", "zerocopy", ] [[package]] name = "light-merkle-tree-reference" -version = "5.0.0" +version = "6.0.0" dependencies = [ "light-hasher", "light-indexed-array", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", - "rand 0.8.6", - "thiserror 2.0.18", + "rand 0.8.8", + "thiserror 2.0.20", ] [[package]] @@ -2691,7 +2822,7 @@ checksum = "3c9a85a9752c549ceb7578064b4ed891179d20acd85f27318573b64d2d7ee7ee" dependencies = [ "ark-bn254 0.4.0", "ark-ff 0.4.2", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "thiserror 1.0.69", ] @@ -2703,7 +2834,7 @@ checksum = "47a1ccadd0bb5a32c196da536fd72c59183de24a055f6bf0513bf845fefab862" dependencies = [ "ark-bn254 0.5.0", "ark-ff 0.5.0", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "thiserror 1.0.69", ] @@ -2715,7 +2846,7 @@ checksum = "0a8be18fe4de58a6f754caa74a3fbc6d8a758a26f1f3c24d5b0f5b55df5f5408" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -2729,14 +2860,14 @@ dependencies = [ [[package]] name = "light-prover-client" -version = "9.0.0" +version = "10.0.0" dependencies = [ "ark-bn254 0.5.0", "ark-serialize 0.5.0", "ark-std 0.5.0", "light-hasher", "light-sdk-types", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "once_cell", "reqwest 0.11.27", @@ -2744,14 +2875,14 @@ dependencies = [ "serde_json", "serial_test", "solana-bn254", - "thiserror 2.0.18", + "thiserror 2.0.20", "tokio", "tracing", ] [[package]] name = "light-sdk" -version = "0.24.0" +version = "0.25.0" dependencies = [ "anchor-lang", "bincode", @@ -2763,24 +2894,24 @@ dependencies = [ "light-program-profiler", "light-sdk-macros", "light-sdk-types", - "num-bigint 0.4.6", + "num-bigint 0.4.8", "solana-account-info", - "solana-clock 3.1.0", + "solana-clock", "solana-cpi", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-loader-v3-interface 8.0.1", "solana-msg 3.1.0", "solana-program", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-system-interface 3.2.0", - "solana-sysvar 4.0.0", - "thiserror 2.0.18", + "solana-sysvar 4.1.0", + "thiserror 2.0.20", ] [[package]] name = "light-sdk-macros" -version = "0.24.0" +version = "0.25.0" dependencies = [ "borsh", "darling 0.21.3", @@ -2793,14 +2924,14 @@ dependencies = [ "proc-macro2", "proptest", "quote", - "rand 0.8.6", - "solana-pubkey 4.2.0", - "syn 2.0.118", + "rand 0.8.8", + "solana-pubkey 4.2.1", + "syn 2.0.119", ] [[package]] name = "light-sdk-types" -version = "0.24.0" +version = "0.25.0" dependencies = [ "anchor-lang", "borsh", @@ -2810,12 +2941,12 @@ dependencies = [ "light-macros", "light-program-profiler", "light-zero-copy", - "rand 0.8.6", + "rand 0.8.8", "solana-account-info", "solana-msg 3.1.0", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", - "thiserror 2.0.18", + "solana-pubkey 4.2.1", + "thiserror 2.0.20", "tinyvec", "zerocopy", ] @@ -2827,7 +2958,7 @@ dependencies = [ "borsh", "light-zero-copy-derive", "pinocchio", - "rand 0.8.6", + "rand 0.8.8", "solana-program-error 3.0.1", "trybuild", "zerocopy", @@ -2840,8 +2971,8 @@ dependencies = [ "lazy_static", "proc-macro2", "quote", - "rand 0.8.6", - "syn 2.0.118", + "rand 0.8.8", + "syn 2.0.119", ] [[package]] @@ -2852,44 +2983,43 @@ checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" +checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae" [[package]] name = "litesvm" -version = "0.12.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "236efc1fc49db2af581f221faea4bbc1088dd72d9aa381461eeefef14d48ea1b" +checksum = "a286f10b45b3a8efd78f47846d34af8d109ff5684c2b10a11920b5b089ad6e79" dependencies = [ - "agave-feature-set 3.1.14", + "agave-feature-set", "agave-reserved-account-keys", - "agave-syscalls", "ansi_term", - "bincode", "indexmap", - "itertools 0.14.0", + "itertools 0.15.0", "log", "serde", - "solana-account", + "solana-account 4.3.2", "solana-address 2.6.1", - "solana-address-lookup-table-interface 3.1.0", - "solana-bpf-loader-program", + "solana-address-lookup-table-interface", "solana-builtins", - "solana-clock 3.1.0", + "solana-clock", "solana-compute-budget", "solana-compute-budget-instruction", "solana-epoch-rewards", "solana-epoch-schedule", - "solana-feature-gate-interface", + "solana-feature-gate-interface 4.0.0", "solana-fee", + "solana-fee-calculator", "solana-fee-structure", - "solana-hash 3.1.0", - "solana-instruction 3.4.0", - "solana-instructions-sysvar", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", + "solana-instruction-error", + "solana-instructions-sysvar 4.0.0", "solana-keypair", "solana-last-restart-slot", - "solana-loader-v3-interface 6.1.1", + "solana-loader-v3-interface 8.0.1", "solana-loader-v4-interface", "solana-message", "solana-native-token", @@ -2898,26 +3028,30 @@ dependencies = [ "solana-precompile-error", "solana-program-error 3.0.1", "solana-program-runtime", - "solana-rent 3.1.0", - "solana-sdk-ids 3.1.0", + "solana-rent 4.3.0", + "solana-runtime-transaction", + "solana-sdk-ids", "solana-sha256-hasher 3.1.0", + "solana-short-vec", "solana-signature", "solana-signer", - "solana-slot-hashes 3.0.2", + "solana-slot-hashes", "solana-slot-history", - "solana-stake-interface", + "solana-stake-history", "solana-svm-callback", "solana-svm-log-collector", "solana-svm-timings", "solana-svm-transaction", + "solana-syscalls", "solana-system-interface 3.2.0", "solana-system-program", - "solana-sysvar 3.1.1", + "solana-sysvar 4.1.0", "solana-sysvar-id", "solana-transaction", - "solana-transaction-context 3.1.14", + "solana-transaction-context", "solana-transaction-error", - "thiserror 2.0.18", + "thiserror 2.0.20", + "wincode", ] [[package]] @@ -2931,9 +3065,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.33" +version = "0.4.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ceec5bc11778974d1bcb055b18002eba7f4b3518b6a0081b3af5f21666da9ad" +checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6" [[package]] name = "lru-slab" @@ -2943,9 +3077,9 @@ checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" [[package]] name = "memchr" -version = "2.8.2" +version = "2.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88904434abc2901f197fe8cc55f0445e7ded921dba5911dad2e2b39b48e663c4" +checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" [[package]] name = "memoffset" @@ -2976,9 +3110,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "miniz_oxide" -version = "0.8.9" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +checksum = "b63fbc4a50860e98e7b2aa7804ded1db5cbc3aff9193adaff57a6931bf7c4b4c" dependencies = [ "adler2", "simd-adler32", @@ -2986,15 +3120,42 @@ dependencies = [ [[package]] name = "mio" -version = "1.2.1" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02bd0af71c67b473010cbbc60715ee815645a4dc942899111f494b4b737d6fda" +checksum = "4b18443e9c262bfe8fa82f51666e2642c53393f7e5c27b3e1aeab922cff5b9d8" dependencies = [ "libc", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi", "windows-sys 0.61.2", ] +[[package]] +name = "multiversion" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ca4bea16ffc3f443cf7d866912118196bfef4c6a1556ca00f9f9b00bb43f7c" +dependencies = [ + "multiversion-macros", +] + +[[package]] +name = "multiversion-macros" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d416831a7317ef4b08bee00b69cbbb9c8763da7959a7026244d6266869f9c83" +dependencies = [ + "proc-macro2", + "quote", + "rustversion", + "syn 3.0.5", +] + +[[package]] +name = "multiversion_no_op" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "743fb55ba31b18fb1ecef6bdc9aa2743314978ac084044301a7eee33fb99a20d" + [[package]] name = "native-tls" version = "0.2.18" @@ -3039,13 +3200,13 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.6" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +checksum = "c89e69e7e0f03bea5ef08013795c25018e101932225a656383bd384495ecc367" dependencies = [ "num-integer", "num-traits", - "rand 0.8.6", + "rand 0.8.8", "serde", ] @@ -3067,25 +3228,24 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "num-integer" -version = "0.1.46" +version = "0.1.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +checksum = "7ce2d95d4b3734dc35aa2f45e1aa22cd416814592a4f9d9205e11affd5b8e10b" dependencies = [ "num-traits", ] [[package]] name = "num-iter" -version = "0.1.45" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +checksum = "c92800bd69a1eac91786bcfe9da64a897eb72911b8dc3095decbd07429e8048b" dependencies = [ - "autocfg", "num-integer", "num-traits", ] @@ -3109,6 +3269,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" +dependencies = [ + "hermit-abi", + "libc", ] [[package]] @@ -3130,7 +3301,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -3151,7 +3322,7 @@ version = "0.10.81" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77823a27f0babb03091cb9ed9ef80af3b39dbc82f97e8fa530374b7dafd87a45" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", "cfg-if", "foreign-types", "libc", @@ -3167,7 +3338,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -3203,10 +3374,19 @@ dependencies = [ "lazy_static", "percent-encoding", "pin-project", - "rand 0.8.6", + "rand 0.8.8", "thiserror 1.0.69", ] +[[package]] +name = "pairing" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +dependencies = [ + "group", +] + [[package]] name = "parking_lot" version = "0.12.5" @@ -3273,7 +3453,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95609d4f08f2cf86d6e41f5b483cfbbfd914099eb0f7c6ea15e98b358f4614f8" dependencies = [ "progenitor-client", - "reqwest 0.13.4", + "reqwest 0.13.5", "serde", "serde_json", ] @@ -3295,7 +3475,7 @@ checksum = "c96395f0a926bc13b1c17622aaddda1ecb55d49c8f1bf9777e4d877800a43f8b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -3343,9 +3523,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.33" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" +checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548" [[package]] name = "polyval" @@ -3361,15 +3541,15 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.13.1" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" +checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85" [[package]] name = "potential_utf" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" +checksum = "d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661" dependencies = [ "zerovec", ] @@ -3390,7 +3570,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -3399,14 +3579,14 @@ version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ - "toml_edit 0.25.12+spec-1.1.0", + "toml_edit", ] [[package]] name = "proc-macro2" -version = "1.0.106" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9" dependencies = [ "unicode-ident", ] @@ -3420,7 +3600,7 @@ dependencies = [ "bytes", "futures-core", "percent-encoding", - "reqwest 0.13.4", + "reqwest 0.13.5", "serde", "serde_json", "serde_urlencoded", @@ -3434,11 +3614,11 @@ checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.13.0", + "bitflags 2.13.2", "num-traits", - "rand 0.9.4", + "rand 0.9.5", "rand_chacha 0.9.0", - "rand_xorshift", + "rand_xorshift 0.4.0", "regex-syntax", "rusty-fork", "tempfile", @@ -3462,7 +3642,7 @@ checksum = "9e2e25ee72f5b24d773cae88422baddefff7714f97aab68d96fe2b6fc4a28fb2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -3483,9 +3663,9 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash", - "rustls 0.23.41", - "socket2 0.6.4", - "thiserror 2.0.18", + "rustls 0.23.44", + "socket2 0.6.5", + "thiserror 2.0.20", "tokio", "tracing", "web-time", @@ -3493,21 +3673,22 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.11.15" +version = "0.11.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fcb935c5bec503c2f0e306bdd3e58bb9029dcb14fa8d9ac76e3a5256ac0763e" +checksum = "04759210543be93709136e28212294a659ef5001836ff4eab4d663e4529bba83" dependencies = [ "aws-lc-rs", "bytes", - "getrandom 0.3.4", + "getrandom 0.4.3", "lru-slab", - "rand 0.9.4", + "rand 0.10.2", + "rand_pcg", "ring", "rustc-hash", - "rustls 0.23.41", + "rustls 0.23.44", "rustls-pki-types", "slab", - "thiserror 2.0.18", + "thiserror 2.0.20", "tinyvec", "tracing", "web-time", @@ -3515,23 +3696,23 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.14" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" +checksum = "35a133f956daabe89a61a685c2649f13d82d5aa4bd5d12d1277e1072a21c0694" dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.6.4", + "socket2 0.6.5", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "quote" -version = "1.0.46" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbc457d0c7a0759a614551b11a6409e5951f6c7537be1f1b7682b9ae9230368" +checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001" dependencies = [ "proc-macro2", ] @@ -3549,23 +3730,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] -name = "rand" -version = "0.7.3" +name = "radium" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" [[package]] name = "rand" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a" +checksum = "e058c7de0b26af77780c769414d6257830bb240f3c38477dbc2c16e5f54d6d4c" dependencies = [ "libc", "rand_chacha 0.3.1", @@ -3574,22 +3748,23 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" +checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.5", ] [[package]] -name = "rand_chacha" -version = "0.2.2" +name = "rand" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80" dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "chacha20", + "getrandom 0.4.3", + "rand_core 0.10.1", ] [[package]] @@ -3612,15 +3787,6 @@ dependencies = [ "rand_core 0.9.5", ] -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", -] - [[package]] name = "rand_core" version = "0.6.4" @@ -3640,12 +3806,27 @@ dependencies = [ ] [[package]] -name = "rand_hc" -version = "0.2.0" +name = "rand_core" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" + +[[package]] +name = "rand_pcg" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a" +dependencies = [ + "rand_core 0.10.1", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core 0.5.1", + "rand_core 0.6.4", ] [[package]] @@ -3683,14 +3864,14 @@ version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", ] [[package]] name = "regex" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1292b7759ae1cb9ec195452d1390a074f0cd8541ab7a5a8c31cd6db45d4a6ba" +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" dependencies = [ "aho-corasick", "memchr", @@ -3700,9 +3881,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.14" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2" dependencies = [ "aho-corasick", "memchr", @@ -3770,10 +3951,10 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "http 1.4.2", - "http-body 1.0.1", + "http 1.5.0", + "http-body 1.1.0", "http-body-util", - "hyper 1.10.1", + "hyper 1.11.1", "hyper-rustls 0.27.9", "hyper-util", "js-sys", @@ -3781,14 +3962,14 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.41", + "rustls 0.23.44", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tokio-rustls 0.26.4", + "tokio-rustls 0.26.5", "tower", "tower-http", "tower-service", @@ -3796,23 +3977,23 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 1.0.8", + "webpki-roots 1.0.9", ] [[package]] name = "reqwest" -version = "0.13.4" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219c5811de6525e5416c7d5d53bb656d3afdbc6c5af816e0802bcfa42dbdc1c3" +checksum = "16a1cfa75cc186dd73d5818e510e042e40927bccc9c236b061cea97e1eb08029" dependencies = [ - "base64 0.22.1", + "base64 0.23.1", "bytes", "futures-core", "futures-util", - "http 1.4.2", - "http-body 1.0.1", + "http 1.5.0", + "http-body 1.1.0", "http-body-util", - "hyper 1.10.1", + "hyper 1.11.1", "hyper-rustls 0.27.9", "hyper-util", "js-sys", @@ -3820,7 +4001,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.41", + "rustls 0.23.44", "rustls-pki-types", "rustls-platform-verifier", "serde", @@ -3828,8 +4009,8 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tokio-rustls 0.26.4", - "tokio-util 0.7.18", + "tokio-rustls 0.26.5", + "tokio-util 0.7.19", "tower", "tower-http", "tower-service", @@ -3848,7 +4029,7 @@ checksum = "57f17d28a6e6acfe1733fe24bcd30774d13bffa4b8a22535b4c8c98423088d4e" dependencies = [ "anyhow", "async-trait", - "http 1.4.2", + "http 1.5.0", "reqwest 0.12.28", "serde", "thiserror 1.0.69", @@ -3881,15 +4062,15 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" +checksum = "b74b56ffa8bb2830709a538c2cbcae9aa062db0d2a42563bfb09bdaae44020eb" [[package]] name = "rustc-hash" -version = "2.1.2" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" +checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d" [[package]] name = "rustc_version" @@ -3906,7 +4087,7 @@ version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", "errno", "libc", "linux-raw-sys", @@ -3927,15 +4108,15 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.41" +version = "0.23.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b92b125634d9b795e7beca796cc790df15a7fb38323bf3196fda83292d06b1f" +checksum = "6725596c3f2c3a0aef021139e145d4eafe314a6623e4680ca83852b2c67ab2ba" dependencies = [ "aws-lc-rs", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.103.13", + "rustls-webpki 0.103.15", "subtle", "zeroize", ] @@ -3963,9 +4144,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.14.1" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a7197ae7eb376e574fe940d068c30fe0462554a3ddbe4eca7838e049c937a9" +checksum = "2f4925028c7eb5d1fcdaf196971378ed9d2c1c4efc7dc5d011256f76c99c0a96" dependencies = [ "web-time", "zeroize", @@ -3982,10 +4163,10 @@ dependencies = [ "jni", "log", "once_cell", - "rustls 0.23.41", + "rustls 0.23.44", "rustls-native-certs", "rustls-platform-verifier-android", - "rustls-webpki 0.103.13", + "rustls-webpki 0.103.15", "security-framework", "security-framework-sys", "webpki-root-certs", @@ -4010,9 +4191,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.13" +version = "0.103.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c429a8649f110dddef65e2a5ad240f747e85f7758a6bccc7e5777bd33f756e" +checksum = "f3c3cf1d8b1e7d4927e2d154c3fcb02979afb9939629c62cd9048d4f07b60ac2" dependencies = [ "aws-lc-rs", "ring", @@ -4022,9 +4203,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" +checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f" [[package]] name = "rusty-fork" @@ -4098,7 +4279,7 @@ version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -4123,9 +4304,9 @@ checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "serde" -version = "1.0.228" +version = "1.0.229" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba" dependencies = [ "serde_core", "serde_derive", @@ -4152,29 +4333,29 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.228" +version = "1.0.229" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.228" +version = "1.0.229" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] name = "serde_json" -version = "1.0.150" +version = "1.0.151" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9" +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" dependencies = [ "itoa", "memchr", @@ -4183,15 +4364,6 @@ dependencies = [ "zmij", ] -[[package]] -name = "serde_spanned" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" -dependencies = [ - "serde", -] - [[package]] name = "serde_spanned" version = "1.1.1" @@ -4215,9 +4387,9 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.21.0" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a5c54c7310e7b8b9577c286d7e399ddd876c3e12b3ed917a8aabc4b96e9e8c" +checksum = "935177bb8c0cd8ca1a4e6d1a2ac8988bea69cab4f9d3a31311e012ad27868ea4" dependencies = [ "serde_core", "serde_with_macros", @@ -4225,14 +4397,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.21.0" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d57bc0c8b9a17920c178daa6bb924850d54a9c97ab45194bb8c17ad66bb660" +checksum = "1d607aa01a3cb0ad757d6fd216136910db3c97b102fe686585689615a02dbcdc" dependencies = [ - "darling 0.23.0", + "darling 0.24.1", "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -4257,7 +4429,7 @@ checksum = "94e153fc76e1c6a068703d6d29c508a0b15c061c4b7e43da59cc097bc342673c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -4284,6 +4456,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "sha2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.1", + "digest 0.11.3", +] + [[package]] name = "sha2-const-stable" version = "0.1.0" @@ -4337,15 +4520,15 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" +checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea" [[package]] name = "simd_cesu8" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +checksum = "11031e251abf8611c80f460e19dbdeb54a66db918e49c65a7065b46ac7aec520" dependencies = [ "rustc_version", "simdutf8", @@ -4365,9 +4548,9 @@ checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "smallvec" -version = "1.15.2" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90" +checksum = "b9be42f50aa861c555654aa3a37f52f4b1074bacf4e48fe0ef7fa584e80f1f0f" [[package]] name = "socket2" @@ -4381,9 +4564,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52d1cfed4120b4d927bf7c0f86d2087a4a7d6027c906d9f9d525a80573b9be51" +checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4" dependencies = [ "libc", "windows-sys 0.61.2", @@ -4394,24 +4577,37 @@ name = "solana-account" version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efc0ed36decb689413b9da5d57f2be49eea5bebb3cf7897015167b0c4336e731" +dependencies = [ + "solana-account-info", + "solana-clock", + "solana-instruction-error", + "solana-pubkey 4.2.1", + "solana-sdk-ids", +] + +[[package]] +name = "solana-account" +version = "4.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26788ba0d7eb5b250edda3e1d393739bafd5daf94882f2261d14f5ab0d6a25e0" dependencies = [ "bincode", "serde", "serde_bytes", "serde_derive", "solana-account-info", - "solana-clock 3.1.0", + "solana-clock", "solana-instruction-error", - "solana-pubkey 4.2.0", - "solana-sdk-ids 3.1.0", - "solana-sysvar 3.1.1", + "solana-pubkey 4.2.1", + "solana-sdk-ids", + "solana-sysvar 4.1.0", ] [[package]] name = "solana-account-decoder" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b46a77a786c876cba3faff781288ae910723433fe90090d002fbacb7fbfaa4f" +checksum = "d2f5eca13228e4e175b7390222ac9c13b80543cd42a25a47b4bc6373c63caa6d" dependencies = [ "Inflector", "base64 0.22.1", @@ -4420,47 +4616,49 @@ dependencies = [ "bv", "serde", "serde_json", - "solana-account", + "solana-account 4.3.2", "solana-account-decoder-client-types", - "solana-address-lookup-table-interface 3.1.0", - "solana-clock 3.1.0", + "solana-address-lookup-table-interface", + "solana-clock", "solana-config-interface", "solana-epoch-schedule", "solana-fee-calculator", - "solana-instruction 3.4.0", - "solana-loader-v3-interface 6.1.1", + "solana-instruction 3.4.1", + "solana-loader-v3-interface 7.0.0", "solana-nonce", "solana-program-option", "solana-program-pack", - "solana-pubkey 4.2.0", - "solana-rent 3.1.0", - "solana-sdk-ids 3.1.0", - "solana-slot-hashes 3.0.2", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", + "solana-slot-hashes", "solana-slot-history", - "solana-stake-interface", - "solana-sysvar 3.1.1", - "solana-vote-interface 5.1.1", + "solana-stake-interface 4.3.0", + "solana-sysvar 4.1.0", + "solana-vote-interface", + "solana-zk-sdk-pod", "spl-generic-token", "spl-token-2022-interface", "spl-token-group-interface", "spl-token-interface", "spl-token-metadata-interface", - "thiserror 2.0.18", + "thiserror 2.0.20", + "wincode", "zstd", ] [[package]] name = "solana-account-decoder-client-types" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "724476642226b22fb672c90c05c4a5b6a07a7c66ad89eb54ed92244511e88581" +checksum = "be3662c80dbbc25f38ee9a9035d48d1f15164bd3d356c546e7204a69d2cbc728" dependencies = [ "base64 0.22.1", "bs58", "serde", "serde_json", - "solana-account", - "solana-pubkey 4.2.0", + "solana-account 4.3.2", + "solana-pubkey 4.2.1", "zstd", ] @@ -4502,7 +4700,7 @@ dependencies = [ "serde_derive", "sha2-const-stable", "solana-atomic-u64 3.0.1", - "solana-define-syscall 5.1.0", + "solana-define-syscall 5.2.0", "solana-nullable", "solana-program-error 3.0.1", "solana-sanitize 3.0.1", @@ -4510,23 +4708,6 @@ dependencies = [ "wincode", ] -[[package]] -name = "solana-address-lookup-table-interface" -version = "2.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1673f67efe870b64a65cb39e6194be5b26527691ce5922909939961a6e6b395" -dependencies = [ - "bincode", - "bytemuck", - "serde", - "serde_derive", - "solana-clock 2.2.3", - "solana-instruction 2.3.3", - "solana-pubkey 2.4.0", - "solana-sdk-ids 2.2.1", - "solana-slot-hashes 2.2.1", -] - [[package]] name = "solana-address-lookup-table-interface" version = "3.1.0" @@ -4537,12 +4718,12 @@ dependencies = [ "bytemuck", "serde", "serde_derive", - "solana-clock 3.1.0", - "solana-instruction 3.4.0", + "solana-clock", + "solana-instruction 3.4.1", "solana-instruction-error", - "solana-pubkey 4.2.0", - "solana-sdk-ids 3.1.0", - "solana-slot-hashes 3.0.2", + "solana-pubkey 4.2.1", + "solana-sdk-ids", + "solana-slot-hashes", ] [[package]] @@ -4565,48 +4746,48 @@ dependencies = [ [[package]] name = "solana-banks-client" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d062ea97c86b7a48a6976fd59d18e8292b908f85f4b3586162a9bb9295b564ab" +checksum = "f7e8d91a0db596568c64faab670a95300c90e5a28864452d760e5c39d7af6996" dependencies = [ "borsh", "futures", - "solana-account", + "solana-account 4.3.2", "solana-banks-interface", - "solana-clock 3.1.0", + "solana-clock", "solana-commitment-config", - "solana-hash 4.4.0", + "solana-hash 4.5.0", "solana-message", "solana-program-pack", - "solana-pubkey 4.2.0", - "solana-rent 3.1.0", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", "solana-signature", - "solana-sysvar 3.1.1", + "solana-sysvar 4.1.0", "solana-transaction", - "solana-transaction-context 4.0.0-rc.0", + "solana-transaction-context", "solana-transaction-error", "tarpc", - "thiserror 2.0.18", + "thiserror 2.0.20", "tokio", "tokio-serde", ] [[package]] name = "solana-banks-interface" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "283b00aa59faa39898b99a1aeae7f13dcbb8283777e9b6e8a55693b585e3182e" +checksum = "18075d04ea32ea10ec072f2e3fb5c91a21d2bd088b1665641fcf1ceb20978ed5" dependencies = [ "serde", - "solana-account", - "solana-clock 3.1.0", + "solana-account 4.3.2", + "solana-clock", "solana-commitment-config", - "solana-hash 4.4.0", + "solana-hash 4.5.0", "solana-message", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-signature", "solana-transaction", - "solana-transaction-context 4.0.0-rc.0", + "solana-transaction-context", "solana-transaction-error", "tarpc", ] @@ -4617,7 +4798,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30c80fb6d791b3925d5ec4bf23a7c169ef5090c013059ec3ed7d0b2c04efa085" dependencies = [ - "num-bigint 0.4.6", + "num-bigint 0.4.8", "num-traits", "solana-define-syscall 3.0.0", ] @@ -4641,7 +4822,46 @@ checksum = "7116e1d942a2432ca3f514625104757ab8a56233787e95144c93950029e31176" dependencies = [ "blake3", "solana-define-syscall 4.0.1", - "solana-hash 4.4.0", + "solana-hash 4.5.0", +] + +[[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", + "blstrs", + "bytemuck", + "cfg_eval", + "ff", + "group", + "pairing", + "rand 0.8.8", + "serde", + "serde_json", + "serde_with", + "solana-signature", + "solana-signer", + "subtle", + "thiserror 2.0.20", + "wincode", + "zeroize", +] + +[[package]] +name = "solana-bls12-381-syscall" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94e8256fda0542709fd1320a96d81c3c66e10ac5f680cca9b991d7d3b0e3fe86" +dependencies = [ + "blst", + "blstrs", + "bytemuck", + "bytemuck_derive", + "pairing", ] [[package]] @@ -4655,8 +4875,8 @@ dependencies = [ "ark-ff 0.5.0", "ark-serialize 0.5.0", "bytemuck", - "solana-define-syscall 5.1.0", - "thiserror 2.0.18", + "solana-define-syscall 5.2.0", + "thiserror 2.0.20", ] [[package]] @@ -4670,47 +4890,44 @@ dependencies = [ [[package]] name = "solana-bpf-loader-program" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb423db3faa08533a122f867456bb5b7aab211818af004552ea6df5f3c43ef49" +checksum = "fabcc3a5785886f026b438771bf6b221b0d4877f6089af79d432c7fe877a6cd4" dependencies = [ - "agave-syscalls", "bincode", "qualifier_attr", - "solana-account", + "solana-account 4.3.2", "solana-bincode", - "solana-clock 3.1.0", - "solana-instruction 3.4.0", - "solana-loader-v3-interface 6.1.1", - "solana-loader-v4-interface", + "solana-clock", + "solana-instruction 3.4.1", + "solana-loader-v3-interface 7.0.0", "solana-packet", - "solana-program-entrypoint", "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sbpf 0.13.1", - "solana-sdk-ids 3.1.0", - "solana-svm-feature-set 3.1.14", + "solana-pubkey 4.2.1", + "solana-sbpf", + "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 3.1.14", + "solana-syscalls", + "solana-system-interface 3.2.0", + "solana-transaction-context", ] [[package]] name = "solana-builtins" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc47a5aefa70261825037efd942c2c78a600f4dcc110d59808b359c5d37aa941" +checksum = "6ab49c6f8a77bff54e811e9674747fd435e218dcbe71120039a865515151998c" dependencies = [ - "agave-feature-set 3.1.14", + "agave-feature-set", "solana-bpf-loader-program", "solana-compute-budget-program", - "solana-hash 3.1.0", - "solana-loader-v4-program", + "solana-hash 4.5.0", "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-sdk-ids", "solana-system-program", "solana-vote-program", "solana-zk-elgamal-proof-program", @@ -4719,42 +4936,29 @@ dependencies = [ [[package]] name = "solana-builtins-default-costs" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a91f5db54bebaffb93e8bd0d85575139597de7cb1ac32f040442fd66bc90ed0" +checksum = "76792b1ecab1c5f127f16062926850b52c4bb51ac1a93d220635fb13221d3503" dependencies = [ - "agave-feature-set 3.1.14", + "agave-feature-set", "ahash", - "log", - "solana-bpf-loader-program", - "solana-compute-budget-program", - "solana-loader-v4-program", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "solana-system-program", - "solana-vote-program", -] - -[[package]] -name = "solana-clock" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8584296123df8fe229b95e2ebfd37ae637fe9db9b7d4dd677ac5a78e80dbfce" -dependencies = [ - "solana-sdk-macro 2.2.1", + "solana-pubkey 4.2.1", + "solana-sdk-ids", ] [[package]] name = "solana-clock" -version = "3.1.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea35d8f69b67daddb921a9da7f78ca591b533cf5e98833cd9ae62fdc2e4652c" +checksum = "f0acdace90d96e2c9e70d681465b4fe888b6bcf27c354ae9774e9f8a3b72923d" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-get-sysvar", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", + "wincode", ] [[package]] @@ -4769,9 +4973,9 @@ dependencies = [ [[package]] name = "solana-compute-budget" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de86231371bf26dbcf473a0ea7ca424184db0c7720fafbb899d2fca2eaf1ac2" +checksum = "e200042fd149d565521f7b31e082c0db0e022e9860c7e013130f812984ae846f" dependencies = [ "solana-fee-structure", "solana-program-runtime", @@ -4779,23 +4983,21 @@ dependencies = [ [[package]] name = "solana-compute-budget-instruction" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f3d546bf7f979423b8cca3c16ac9b51c80104b5f6bba77ef90b41aa00ec96d" +checksum = "5a651fc5d082fd88090a7336ea85599b1ffcf6503dbcff575ae1bb2fb1cec238" dependencies = [ - "agave-feature-set 3.1.14", - "log", + "agave-feature-set", "solana-borsh", "solana-builtins-default-costs", "solana-compute-budget", "solana-compute-budget-interface", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-packet", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-sdk-ids", "solana-svm-transaction", "solana-transaction-error", - "thiserror 2.0.18", ] [[package]] @@ -4805,15 +5007,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8292c436b269ad23cecc8b24f7da3ab07ca111661e25e00ce0e1d22771951ab9" dependencies = [ "borsh", - "solana-instruction 3.4.0", - "solana-sdk-ids 3.1.0", + "solana-instruction 3.4.1", + "solana-sdk-ids", ] [[package]] name = "solana-compute-budget-program" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b54b78862ca94a2a86354c22f2789ffd095c5f972c15ca104020697dd2cf3409" +checksum = "e314aeb4a86507ba77fb2d6ce9f5836af6aeaaedd4c5314e310ca72f73afe367" dependencies = [ "solana-program-runtime", ] @@ -4827,10 +5029,10 @@ dependencies = [ "bincode", "serde", "serde_derive", - "solana-account", - "solana-instruction 3.4.0", + "solana-account 3.4.0", + "solana-instruction 3.4.1", "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", "solana-short-vec", "solana-system-interface 2.0.0", ] @@ -4843,24 +5045,24 @@ checksum = "4dea26709d867aada85d0d3617db0944215c8bb28d3745b912de7db13a23280c" dependencies = [ "solana-account-info", "solana-define-syscall 4.0.1", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-stable-layout", ] [[package]] name = "solana-curve25519" -version = "3.1.14" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aff7432cdf2ec6a44ac06b4d64d2ee006f6c0066d6456e032a7fe25be40cd5c" +checksum = "14b4d2a4bf0d0b0a86c22111917e86e8bd39a7b31420fb2c7d73eb83761fc7af" dependencies = [ "bytemuck", "bytemuck_derive", "curve25519-dalek", - "solana-define-syscall 3.0.0", + "solana-define-syscall 5.2.0", "subtle", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] @@ -4892,9 +5094,9 @@ checksum = "57e5b1c0bc1d4a4d10c88a4100499d954c09d3fecfae4912c1a074dff68b1738" [[package]] name = "solana-define-syscall" -version = "5.1.0" +version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21e14a4f604117f379840956a8fc8695e4c84f5b0ebed192f31f60d9b85d581d" +checksum = "bf8209ece2bd9f1450e672858ffc0e5c8c786ff6916d2a862b126dd0128f380f" [[package]] name = "solana-derivation-path" @@ -4919,29 +5121,34 @@ dependencies = [ [[package]] name = "solana-epoch-rewards" -version = "3.0.2" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cddf2388b28291210d9aa60690740733cab527531f06ed153c4d388951e407c" +checksum = "daf7eb4986b0b1d6f562b21f75a836f1a6df6e00c275efcef50aab5c144dc59e" dependencies = [ "serde", "serde_derive", - "solana-hash 4.4.0", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-get-sysvar", + "solana-hash 4.5.0", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", + "wincode", ] [[package]] name = "solana-epoch-schedule" -version = "3.1.1" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ad280b1ed803853f7b453cb3ea9a57e600ca5599a63e69f7be199b486c0ec93" +checksum = "8116e6ffa6002237d5ab5edcbda17f9ba66b6742c45a89c9fb40a94dbacd4c1d" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-get-sysvar", + "solana-program-error 3.0.1", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", + "wincode", ] [[package]] @@ -4950,8 +5157,8 @@ version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "027e6d0b9e7daac5b2ac7c3f9ca1b727861121d9ef05084cf435ff736051e7c2" dependencies = [ - "solana-define-syscall 5.1.0", - "solana-pubkey 4.2.0", + "solana-define-syscall 5.2.0", + "solana-pubkey 4.2.1", ] [[package]] @@ -4962,13 +5169,13 @@ checksum = "0eb265ff95e28eceda117e2e3d2d2a611ecbbfe911dfeeeecd1521814540ffab" dependencies = [ "serde", "serde_derive", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-nonce", - "solana-pubkey 4.2.0", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-sdk-ids", "solana-system-interface 3.2.0", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] @@ -4976,27 +5183,38 @@ name = "solana-feature-gate-interface" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75ca9b5cbb6f500f7fd73db5bd95640f71a83f04d6121a0e59a43b202dca2731" +dependencies = [ + "solana-program-error 3.0.1", + "solana-pubkey 4.2.1", + "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", + "solana-account 4.3.2", "solana-account-info", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", - "solana-rent 4.2.1", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", "solana-system-interface 3.2.0", ] [[package]] name = "solana-fee" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c276ea9723bfb6bf9fa2bcde1fa652140b0879d258c78a482533c9c01f71f416" +checksum = "c32df41c2c93a567a1612a973faddeaca093276677c157ef9cb60a378289fc69" dependencies = [ - "agave-feature-set 3.1.14", + "agave-feature-set", "solana-fee-structure", "solana-svm-transaction", ] @@ -5010,6 +5228,7 @@ dependencies = [ "log", "serde", "serde_derive", + "wincode", ] [[package]] @@ -5018,6 +5237,17 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e2abdb1223eea8ec64136f39cb1ffcf257e00f915c957c35c0dd9e3f4e700b0" +[[package]] +name = "solana-get-sysvar" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef3bc859fc036ed490146793557386cbfae614ebba4adc704c37d94350824ed4" +dependencies = [ + "solana-address 2.6.1", + "solana-define-syscall 5.2.0", + "solana-program-error 3.0.1", +] + [[package]] name = "solana-hash" version = "2.3.0" @@ -5033,18 +5263,9 @@ dependencies = [ [[package]] name = "solana-hash" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "337c246447142f660f778cf6cb582beba8e28deb05b3b24bfb9ffd7c562e5f41" -dependencies = [ - "solana-hash 4.4.0", -] - -[[package]] -name = "solana-hash" -version = "4.4.0" +version = "4.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe51db00ac3aa9f950d1e6201a126acfa26e6d81bc4a183ba64ec02effcad883" +checksum = "6f4c847893a2ea50b4ae3ca723b124e07cd0544fecea3598f785168f9b78333f" dependencies = [ "borsh", "bytemuck", @@ -5054,8 +5275,15 @@ dependencies = [ "serde_derive", "solana-atomic-u64 3.0.1", "solana-sanitize 3.0.1", + "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.1.1" @@ -5068,11 +5296,9 @@ version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bab5682934bd1f65f8d2c16f21cb532526fcc1a09f796e2cacdb091eee5774ad" dependencies = [ - "bincode", "getrandom 0.2.17", "js-sys", "num-traits", - "serde", "solana-define-syscall 2.3.0", "solana-pubkey 2.4.0", "wasm-bindgen", @@ -5080,24 +5306,25 @@ dependencies = [ [[package]] name = "solana-instruction" -version = "3.4.0" +version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ebb0ffd19263051bc3f683fcc086134b8ff23af894dcb63f7563c7137b42f1" +checksum = "a3957ca1d31107efd9a6bb88b25c348ca5e3b4b6683e3d08adb86d3d17aa01f1" dependencies = [ "bincode", "borsh", "serde", "serde_derive", - "solana-define-syscall 5.1.0", + "solana-define-syscall 5.2.0", "solana-instruction-error", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", + "wincode", ] [[package]] name = "solana-instruction-error" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0b188842592fdf6cb96f55263ae1bf11713ab5114401d1d5a881ed7cc41bef6" +checksum = "3b7d34343838343a3755b7dfb1e438d94c6db2263b519cfe3c2257af932b6e93" dependencies = [ "num-traits", "serde", @@ -5111,13 +5338,30 @@ version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e0732294560e88ecdb2bbc656e67383e9f88c78ec09469cef172f0d28cd1bcd" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", "solana-account-info", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-instruction-error", "solana-program-error 3.0.1", "solana-sanitize 3.0.1", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-sysvar-id", +] + +[[package]] +name = "solana-instructions-sysvar" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e38363a181313d607f7a118df2b401bb27b477a0104b09283cbf504f5f0f00cc" +dependencies = [ + "bitflags 2.13.2", + "solana-account-info", + "solana-instruction 3.4.1", + "solana-instruction-error", + "solana-program-error 3.0.1", + "solana-sanitize 3.0.1", + "solana-sdk-ids", "solana-serialize-utils", "solana-sysvar-id", ] @@ -5130,7 +5374,7 @@ checksum = "4065031f5c7dd29ef5f5003c1a353011eeabbafa6c5a5033da0cedbfca824b94" dependencies = [ "solana-account-info", "solana-define-syscall 3.0.0", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-program-entrypoint", "solana-stable-layout", ] @@ -5143,7 +5387,7 @@ checksum = "ed1c0d16d6fdeba12291a1f068cdf0d479d9bff1141bf44afd7aa9d485f65ef8" dependencies = [ "sha3", "solana-define-syscall 4.0.1", - "solana-hash 4.4.0", + "solana-hash 4.5.0", ] [[package]] @@ -5155,7 +5399,7 @@ dependencies = [ "ed25519-dalek", "five8 1.0.0", "five8_core 1.0.0", - "rand 0.9.4", + "rand 0.9.5", "solana-address 2.6.1", "solana-seed-phrase", "solana-signature", @@ -5164,15 +5408,17 @@ dependencies = [ [[package]] name = "solana-last-restart-slot" -version = "3.0.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "426711c6564b790026e45cabec3c64b971864c48b6b2d83c0ebf52a118bb4cda" +checksum = "c22474b83d3c7c318e1c3a725784fc2d1d03b728e36369e58ce48769a61ed85e" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-get-sysvar", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", + "wincode", ] [[package]] @@ -5184,83 +5430,70 @@ dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 3.4.0", - "solana-pubkey 4.2.0", - "solana-sdk-ids 3.1.0", + "solana-instruction 3.4.1", + "solana-pubkey 4.2.1", + "solana-sdk-ids", "solana-system-interface 3.2.0", ] [[package]] name = "solana-loader-v3-interface" -version = "8.0.1" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "362b468fbde4c20521b9ff5ef743bc0d9b410455a5a92a8b29fd46954e89345f" +checksum = "68029ab11d9c891d4ce23ada75745e40f983c5674af366f447b672569634231b" dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 3.4.0", - "solana-pubkey 4.2.0", - "solana-sdk-ids 3.1.0", + "solana-instruction 3.4.1", + "solana-pubkey 4.2.1", + "solana-sdk-ids", ] [[package]] -name = "solana-loader-v4-interface" -version = "3.1.0" +name = "solana-loader-v3-interface" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" +checksum = "362b468fbde4c20521b9ff5ef743bc0d9b410455a5a92a8b29fd46954e89345f" dependencies = [ "serde", "serde_bytes", "serde_derive", - "solana-instruction 3.4.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "solana-system-interface 2.0.0", + "solana-instruction 3.4.1", + "solana-pubkey 4.2.1", + "solana-sdk-ids", + "solana-system-interface 3.2.0", + "wincode", ] [[package]] -name = "solana-loader-v4-program" -version = "3.1.14" +name = "solana-loader-v4-interface" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4495b9ef97f369302d882f752465c563ac2aaf7f52cd1a9cf15891a90f986f5f" +checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" dependencies = [ - "log", - "solana-account", - "solana-bincode", - "solana-bpf-loader-program", - "solana-instruction 3.4.0", - "solana-loader-v3-interface 6.1.1", - "solana-loader-v4-interface", - "solana-packet", - "solana-program-runtime", + "solana-instruction 3.4.1", "solana-pubkey 3.0.0", - "solana-sbpf 0.13.1", - "solana-sdk-ids 3.1.0", - "solana-svm-log-collector", - "solana-svm-measure", - "solana-svm-type-overrides", - "solana-transaction-context 3.1.14", + "solana-sdk-ids", ] [[package]] name = "solana-message" -version = "3.1.0" +version = "4.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0448b1fd891c5f46491e5dc7d9986385ba3c852c340db2911dd29faa01d2b08d" +checksum = "7e29e655f222a3a64145fedceacdca3e696ba7aded1dbd5391aa09d5fbfba53c" dependencies = [ - "bincode", "blake3", - "lazy_static", "serde", "serde_derive", "solana-address 2.6.1", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-sanitize 3.0.1", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", "solana-short-vec", "solana-transaction-error", + "wincode", ] [[package]] @@ -5278,7 +5511,7 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726b7cbbc6be6f1c6f29146ac824343b9415133eee8cce156452ad1db93f8008" dependencies = [ - "solana-define-syscall 5.1.0", + "solana-define-syscall 5.2.0", ] [[package]] @@ -5289,60 +5522,64 @@ checksum = "ae8dd4c280dca9d046139eb5b7a5ac9ad10403fbd64964c7d7571214950d758f" [[package]] name = "solana-nonce" -version = "3.2.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d95dbc9f2e33b6c10e231df15cb2a3bff9ea7eab6347f9e316fe75c97fd67bbb" +checksum = "c4172d5b33a0a38fcdb2af8f84406570dd51567267da96c28ad0f31fc11621c0" dependencies = [ "serde", "serde_derive", "solana-fee-calculator", - "solana-hash 4.4.0", - "solana-pubkey 4.2.0", + "solana-hash 4.5.0", + "solana-pubkey 4.2.1", "solana-sha256-hasher 3.1.0", + "wincode", ] [[package]] name = "solana-nonce-account" -version = "3.0.0" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "805fd25b29e5a1a0e6c3dd6320c9da80f275fbe4ff6e392617c303a2085c435e" +checksum = "b81bf7e2aa8c443724051507c1007d0b6d9c34b70925d3232dc78f5ca485209e" dependencies = [ - "solana-account", - "solana-hash 3.1.0", + "solana-account 4.3.2", + "solana-hash 4.5.0", "solana-nonce", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", + "wincode", ] [[package]] name = "solana-nullable" -version = "1.1.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0f95d3028ef0f682bb174b77379c19d5dae2904a649f4a103fe29be7a139980" +checksum = "889194d8c5faec648f2f6fadddb60566249921ebb074e2707e7095458d5864e2" dependencies = [ + "borsh", "bytemuck", ] [[package]] name = "solana-packet" -version = "3.0.0" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edf2f25743c95229ac0fdc32f8f5893ef738dbf332c669e9861d33ddb0f469d" +checksum = "43a2a582d7863548f047f49aa3745c076cfa9e1364baa080ef0c1210f0e4ebda" dependencies = [ - "bitflags 2.13.0", + "bitflags 2.13.2", + "solana-pubkey 4.2.1", ] [[package]] name = "solana-poseidon" -version = "3.1.14" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13ac13134287d7af80717353a8136e3c515d7f34d88e6f116b47350bd623e338" +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", - "thiserror 2.0.18", + "solana-define-syscall 4.0.1", + "thiserror 2.0.20", ] [[package]] @@ -5365,18 +5602,18 @@ dependencies = [ "solana-big-mod-exp", "solana-blake3-hasher", "solana-borsh", - "solana-clock 3.1.0", + "solana-clock", "solana-cpi", - "solana-define-syscall 5.1.0", + "solana-define-syscall 5.2.0", "solana-epoch-rewards", "solana-epoch-schedule", "solana-epoch-stake", "solana-example-mocks", "solana-fee-calculator", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-instruction-error", - "solana-instructions-sysvar", + "solana-instructions-sysvar 3.0.1", "solana-keccak-hasher", "solana-last-restart-slot", "solana-msg 3.1.0", @@ -5386,18 +5623,18 @@ dependencies = [ "solana-program-memory", "solana-program-option", "solana-program-pack", - "solana-pubkey 4.2.0", - "solana-rent 4.2.1", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", "solana-secp256k1-recover", "solana-serde-varint", "solana-serialize-utils", "solana-sha256-hasher 3.1.0", "solana-short-vec", - "solana-slot-hashes 3.0.2", + "solana-slot-hashes", "solana-slot-history", "solana-stable-layout", - "solana-sysvar 4.0.0", + "solana-sysvar 4.1.0", "solana-sysvar-id", ] @@ -5410,7 +5647,7 @@ dependencies = [ "solana-account-info", "solana-define-syscall 4.0.1", "solana-program-error 3.0.1", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", ] [[package]] @@ -5463,47 +5700,49 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c03c5100c43bf28fd03a11b66345ccdc28c1b7e5a7d49dbcff64e6442595627" +checksum = "c2b7281bd4a6072c7e11b611f771f4e61be1d45ea0d2aecfbb77d02d1b5877d4" dependencies = [ "base64 0.22.1", "bincode", - "itertools 0.12.1", + "cfg-if", + "itertools 0.14.0", "log", "percentage", - "rand 0.8.6", + "rand 0.9.5", "serde", - "solana-account", + "solana-account 4.3.2", "solana-account-info", - "solana-clock 3.1.0", + "solana-clock", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-structure", - "solana-hash 3.1.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-last-restart-slot", - "solana-loader-v3-interface 6.1.1", + "solana-loader-v3-interface 7.0.0", "solana-program-entrypoint", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", - "solana-sbpf 0.13.1", - "solana-sdk-ids 3.1.0", - "solana-slot-hashes 3.0.2", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sbpf", + "solana-sdk-ids", + "solana-slot-hashes", "solana-stable-layout", - "solana-stake-interface", + "solana-stake-interface 4.3.0", "solana-svm-callback", - "solana-svm-feature-set 3.1.14", + "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-sysvar 3.1.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.1.0", "solana-sysvar-id", - "solana-transaction-context 3.1.14", - "thiserror 2.0.18", + "solana-transaction-context", + "thiserror 2.0.20", + "wincode", ] [[package]] @@ -5512,16 +5751,11 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b62adb9c3261a052ca1f999398c388f1daf558a1b492f60a6d9e64857db4ff1" dependencies = [ - "bytemuck", - "bytemuck_derive", - "curve25519-dalek", "five8 0.2.1", "five8_const 0.1.4", "getrandom 0.2.17", "js-sys", "num-traits", - "serde", - "serde_derive", "solana-atomic-u64 2.2.1", "solana-decode-error", "solana-define-syscall 2.3.0", @@ -5541,9 +5775,9 @@ dependencies = [ [[package]] name = "solana-pubkey" -version = "4.2.0" +version = "4.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7db719574990de7e8b0f55a8593ac92a5ccb42c8ce67b3e4bf05b139d5d9ee71" +checksum = "6ab5a422939ca3b81180f79c87f43600728e4c5513d6034902675f96df25d033" dependencies = [ "solana-address 2.6.1", ] @@ -5556,40 +5790,44 @@ checksum = "e860d5499a705369778647e97d760f7670adfb6fc8419dd3d568deccd46d5487" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", ] [[package]] name = "solana-rent" -version = "4.2.1" +version = "4.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40f02fbe2669ebe5d851dbf29a02e91ed6244b051bb64fcc57e6644aba636063" +checksum = "39f0d780bf8e8a1fe8b5b5fce1acad6b209485b86dec246e7523d5e4a8b7c7fc" dependencies = [ "serde", "serde_derive", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", + "solana-get-sysvar", + "solana-sdk-ids", + "solana-sdk-macro", "solana-sysvar-id", + "wincode", ] [[package]] name = "solana-reward-info" -version = "5.0.0" +version = "6.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8f4c5c5b5599e640c15ead65be499d60f6ee62a5ba7aa7e23f5b0537046ed49" +checksum = "dc553b782111862cd6c56bdeba696dcba9722a42154ef1248c5a06ca1d983797" dependencies = [ "serde", "serde_derive", + "wincode", ] [[package]] name = "solana-rpc-client" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af2bc0568e90356055b0b97efb5aa2a2559af9dce3b270fe042aa65d87955294" +checksum = "4d6867f1da8a3535c029779addd06e05d975914641cf2e470bb3b7ec407e4a4b" dependencies = [ + "agave-votor-messages", "async-trait", "base64 0.22.1", "bincode", @@ -5602,33 +5840,35 @@ dependencies = [ "semver", "serde", "serde_json", - "solana-account", + "solana-account 4.3.2", "solana-account-decoder", "solana-account-decoder-client-types", - "solana-clock 3.1.0", + "solana-bls-signatures", + "solana-clock", "solana-commitment-config", "solana-epoch-info", "solana-epoch-schedule", - "solana-feature-gate-interface", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-feature-gate-interface 4.0.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-message", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-rpc-client-api", "solana-signature", "solana-transaction", "solana-transaction-error", "solana-transaction-status-client-types", "solana-version", - "solana-vote-interface 5.1.1", + "solana-vote-interface", "tokio", + "wincode", ] [[package]] name = "solana-rpc-client-api" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8a3c68bbeae45d991900fa7020ddd4a974cf2c428b28b18be0300e8526c204b" +checksum = "cc0a93a4b8cd218f8febe38257f3c91a97d45207f28017d5302546381cd8ba16" dependencies = [ "anyhow", "jsonrpc-core", @@ -5636,30 +5876,28 @@ dependencies = [ "reqwest-middleware", "serde", "serde_json", - "solana-account-decoder-client-types", - "solana-clock 3.1.0", + "solana-clock", "solana-rpc-client-types", "solana-signer", "solana-transaction-error", "solana-transaction-status-client-types", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] name = "solana-rpc-client-types" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "174c6e2de935b0c1cf30b007a02f1e1ae4ea62f3b8101502023b372325428757" +checksum = "78554d6edbfd0b7b95b5e0ea39996a513bf95f3f453bdef32354567c33cd71c6" dependencies = [ "base64 0.22.1", "bs58", "semver", "serde", "serde_json", - "solana-account", "solana-account-decoder-client-types", "solana-address 2.6.1", - "solana-clock 3.1.0", + "solana-clock", "solana-commitment-config", "solana-fee-calculator", "solana-inflation", @@ -5668,8 +5906,30 @@ dependencies = [ "solana-transaction-error", "solana-transaction-status-client-types", "solana-version", - "spl-generic-token", - "thiserror 2.0.18", + "thiserror 2.0.20", +] + +[[package]] +name = "solana-runtime-transaction" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f60cf942dcefc0f4d600fed1f4d220ff27abaa04def1fefa37e0e0c2a96e4179" +dependencies = [ + "agave-feature-set", + "agave-transaction-view", + "solana-compute-budget", + "solana-compute-budget-instruction", + "solana-hash 4.5.0", + "solana-message", + "solana-program-entrypoint", + "solana-pubkey 4.2.1", + "solana-sdk-ids", + "solana-signature", + "solana-svm-transaction", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "wincode", ] [[package]] @@ -5686,44 +5946,21 @@ checksum = "dcf09694a0fc14e5ffb18f9b7b7c0f15ecb6eac5b5610bf76a1853459d19daf9" [[package]] name = "solana-sbpf" -version = "0.13.1" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15b079e08471a9dbfe1e48b2c7439c85aa2a055cbd54eddd8bd257b0a7dbb29" +checksum = "d777d7a89267dd133e985113c7e7f820fb7cfd9123a4a350cf8b39ebae1920bc" dependencies = [ "byteorder", "combine 3.8.1", "hash32", "libc", "log", - "rand 0.8.6", + "rand 0.8.8", "rustc-demangle", - "thiserror 2.0.18", + "thiserror 2.0.20", "winapi", ] -[[package]] -name = "solana-sbpf" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "733b3657a0fab205102b799dbe17f85d3972cf984232c1b0b108fa6ba438e382" -dependencies = [ - "byteorder", - "combine 3.8.1", - "hash32", - "log", - "rustc-demangle", - "thiserror 2.0.18", -] - -[[package]] -name = "solana-sdk-ids" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5d8b9cc68d5c88b062a33e23a6466722467dde0035152d8fb1afbcdf350a5f" -dependencies = [ - "solana-pubkey 2.4.0", -] - [[package]] name = "solana-sdk-ids" version = "3.1.0" @@ -5733,18 +5970,6 @@ dependencies = [ "solana-address 2.6.1", ] -[[package]] -name = "solana-sdk-macro" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86280da8b99d03560f6ab5aca9de2e38805681df34e0bb8f238e69b29433b9df" -dependencies = [ - "bs58", - "proc-macro2", - "quote", - "syn 2.0.118", -] - [[package]] name = "solana-sdk-macro" version = "3.0.1" @@ -5754,18 +5979,18 @@ dependencies = [ "bs58", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "solana-secp256k1-recover" -version = "3.1.1" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c5f18893d62e6c73117dcba48f8f5e3266d90e5ec3d0a0a90f9785adac36c1" +checksum = "ce0d2e8d53946f04e789476d6c407e4997b7fb412483df5fc10c075c65cb2edf" dependencies = [ "k256", - "solana-define-syscall 5.1.0", - "thiserror 2.0.18", + "solana-define-syscall 5.2.0", + "thiserror 2.0.20", ] [[package]] @@ -5804,7 +6029,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "761357b0853c9623bf12c1d2314b3d6160a85b087b84c45224fb85766d22616b" dependencies = [ "solana-instruction-error", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-sanitize 3.0.1", ] @@ -5827,7 +6052,18 @@ checksum = "db7dc3011ea4c0334aaaa7e7128cb390ecf546b28d412e9bf2064680f57f588f" dependencies = [ "sha2 0.10.9", "solana-define-syscall 4.0.1", - "solana-hash 4.4.0", + "solana-hash 4.5.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.9", + "solana-define-syscall 5.2.0", + "solana-hash-512", ] [[package]] @@ -5837,6 +6073,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d8250a4495aad49ad20556a607da53bdcb20de78da10b65afbf918b7f1de647" dependencies = [ "serde_core", + "wincode", ] [[package]] @@ -5860,44 +6097,50 @@ version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "520bd6021163ee517f4bdc7ae03ded904f97e11320001ba0b3355f45eb14f558" dependencies = [ - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-signature", "solana-transaction-error", ] [[package]] -name = "solana-slot-hashes" -version = "2.2.1" +name = "solana-signer-store" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c8691982114513763e88d04094c9caa0376b867a29577939011331134c301ce" +checksum = "36329bba208f0e41954389ae4ad5d973fe15952672cfd71a9b49deb7d2ecbc2f" dependencies = [ - "solana-hash 2.3.0", + "bitvec", + "num-derive", + "num-traits", ] [[package]] name = "solana-slot-hashes" -version = "3.0.2" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a57c158c35629f9e302ab385f16b15813f4927a31c27dda72f3df828bb08d93" +checksum = "5c7ce2b4b8911bf2db3de7b6266e67bfc21a6a9f8c566fb096d9782ca2ad16ee" dependencies = [ "serde", "serde_derive", - "solana-hash 4.4.0", - "solana-sdk-ids 3.1.0", + "solana-get-sysvar", + "solana-hash 4.5.0", + "solana-sdk-ids", "solana-sysvar-id", + "wincode", ] [[package]] name = "solana-slot-history" -version = "3.0.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0622d03a823770f7763afd866e012b296d5a3cbbbe51e110b5bd9ab3441efdca" +checksum = "40427c04d3e808493cb5e3d1a97cef84d7c15cb6f89b15c5684d0d4027105600" dependencies = [ "bv", "serde", "serde_derive", - "solana-sdk-ids 3.1.0", + "solana-get-sysvar", + "solana-sdk-ids", "solana-sysvar-id", + "wincode", ] [[package]] @@ -5906,8 +6149,23 @@ version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c9f6a291ba063a37780af29e7db14bdd3dc447584d8ba5b3fc4b88e2bbc982fa" dependencies = [ - "solana-instruction 3.4.0", - "solana-pubkey 4.2.0", + "solana-instruction 3.4.1", + "solana-pubkey 4.2.1", +] + +[[package]] +name = "solana-stake-history" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c736a6aa0e53b9d264d90b06589fc0996f49f882f3e71842ed754fc57ffc1a43" +dependencies = [ + "serde", + "serde_derive", + "solana-clock", + "solana-get-sysvar", + "solana-sdk-ids", + "solana-sysvar-id", + "wincode", ] [[package]] @@ -5919,9 +6177,9 @@ dependencies = [ "num-traits", "serde", "serde_derive", - "solana-clock 3.1.0", + "solana-clock", "solana-cpi", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-program-error 3.0.1", "solana-pubkey 3.0.0", "solana-system-interface 2.0.0", @@ -5930,76 +6188,131 @@ dependencies = [ ] [[package]] -name = "solana-svm-callback" -version = "3.1.14" +name = "solana-stake-interface" +version = "4.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "012617d16d2994673d98792f7f6d93f612dea00b1b747a3c4aec24c12547875b" +checksum = "252b4291eb25a5a356149ed4d4a940d5f655186210fa84b5d0d8d55c3dd42a81" dependencies = [ - "solana-account", - "solana-clock 3.1.0", - "solana-precompile-error", - "solana-pubkey 3.0.0", + "num-traits", + "serde", + "serde_derive", + "solana-clock", + "solana-cpi", + "solana-instruction 3.4.1", + "solana-program-error 3.0.1", + "solana-pubkey 4.2.1", + "solana-system-interface 3.2.0", + "solana-sysvar 4.1.0", + "solana-sysvar-id", ] [[package]] -name = "solana-svm-feature-set" -version = "3.1.14" +name = "solana-svm-callback" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cc2e2fdebd77159b7a14ee45c9dbb3f1d202e8e7ccc14e4cda78c006a7a78a9" +checksum = "cf863c5b86e90e51c18ed08cfd8e21f9cfa60122d60d6364cde7083bf6de837c" +dependencies = [ + "solana-account 4.3.2", + "solana-clock", + "solana-precompile-error", + "solana-pubkey 4.2.1", +] [[package]] name = "solana-svm-feature-set" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ada78631678a5a5139d6491bb8729143192c6afd30945dd8cddd974b174d7f7" +checksum = "580d385250ddc3826e5d082b221d9d1047bddcc63ee18313f14dcafb95fdcae5" [[package]] name = "solana-svm-log-collector" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ce188c2c438ced63a975af79f06db2ff5accaf1a4027a26e35783be566f6070" +checksum = "4f97c2c829a06a1b3bdbad1f770891768c1f0005b322acd7c192ad92157fe525" dependencies = [ "log", ] [[package]] name = "solana-svm-measure" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea64909ba06fa651c95c4db35614430b1a0bc722e51996e97b5b779e3528bad" +checksum = "79ec1451e86552456f1e9a1cc7ffafea01ba3383d8246ba636a11cf286da9fc3" [[package]] name = "solana-svm-timings" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8a05b09e2caac9b4d7c35c5997d754433e15ee5f506509117eb77032e1718ac" +checksum = "e33a2692a88fabf56275bb40c39596d6e550a43f6e56b77fa6f0468e0affd977" dependencies = [ "eager", "enum-iterator", - "solana-pubkey 3.0.0", + "solana-pubkey 4.2.1", ] [[package]] name = "solana-svm-transaction" -version = "3.1.14" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be3250a278a769ba59059e13d0f16c2aba0ca1de7595fb0e02556091751560c8" +checksum = "736d2cec944c6f8f298a7bd8ada5eb318cca9ab859281b1300842fa0e9a25afa" dependencies = [ - "solana-hash 3.1.0", + "solana-hash 4.5.0", "solana-message", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-sdk-ids", "solana-signature", "solana-transaction", ] [[package]] name = "solana-svm-type-overrides" -version = "3.1.14" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74a3ba41956ba930a335589eedf0784dfa4be0527ef236df8ad3996a26b5f19f" +dependencies = [ + "rand 0.9.5", +] + +[[package]] +name = "solana-syscalls" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b78cd0bfb102d4197ce8c590f800a119ba0d358369ca57b0f66e94d1317fd0e" +checksum = "d31c37dc2425afc13ddb2fc8365db8dbd02ac860a454c25b3897831036a64dd8" dependencies = [ - "rand 0.8.6", + "bincode", + "libsecp256k1", + "num-traits", + "solana-account 4.3.2", + "solana-account-info", + "solana-blake3-hasher", + "solana-bls12-381-syscall", + "solana-bn254", + "solana-clock", + "solana-cpi", + "solana-curve25519", + "solana-hash 4.5.0", + "solana-hash-512", + "solana-instruction 3.4.1", + "solana-keccak-hasher", + "solana-poseidon", + "solana-program-entrypoint", + "solana-program-runtime", + "solana-pubkey 4.2.1", + "solana-sbpf", + "solana-sdk-ids", + "solana-secp256k1-recover", + "solana-sha256-hasher 3.1.0", + "solana-sha512-hasher", + "solana-stable-layout", + "solana-stake-interface 4.3.0", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-type-overrides", + "solana-sysvar 4.1.0", + "solana-sysvar-id", + "solana-transaction-context", + "thiserror 2.0.20", + "wincode", ] [[package]] @@ -6011,7 +6324,7 @@ dependencies = [ "num-traits", "serde", "serde_derive", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-msg 3.1.0", "solana-program-error 3.0.1", "solana-pubkey 3.0.0", @@ -6027,35 +6340,34 @@ dependencies = [ "serde", "serde_derive", "solana-address 2.6.1", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-msg 3.1.0", "solana-program-error 3.0.1", + "wincode", ] [[package]] name = "solana-system-program" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b4b6faeddf5a62c06991a9a077fd1097da6867060f884595a659b3b24dc3a4a" +checksum = "2610e0b091b920da610ad3e5ba850530702f5ac911b4e9dc5ab9a025a772138a" dependencies = [ "bincode", "log", - "serde", - "solana-account", + "solana-account 4.3.2", "solana-bincode", "solana-fee-calculator", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-nonce", "solana-nonce-account", "solana-packet", "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "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 3.1.14", + "solana-system-interface 3.2.0", + "solana-sysvar 4.1.0", + "solana-transaction-context", ] [[package]] @@ -6070,31 +6382,31 @@ dependencies = [ "serde", "serde_derive", "solana-account-info", - "solana-clock 3.1.0", + "solana-clock", "solana-define-syscall 4.0.1", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-calculator", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-last-restart-slot", "solana-program-entrypoint", "solana-program-error 3.0.1", "solana-program-memory", - "solana-pubkey 4.2.0", + "solana-pubkey 4.2.1", "solana-rent 3.1.0", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", - "solana-slot-hashes 3.0.2", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-slot-hashes", "solana-slot-history", "solana-sysvar-id", ] [[package]] name = "solana-sysvar" -version = "4.0.0" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1632b69b4f72489db5949a10e8308c229dfa003f99ecaa7477b376807c7b81f4" +checksum = "ada7045bbfdd802af08fbc9c7e2b56ddabb20599d22e4c3840fcef5e7afb8324" dependencies = [ "base64 0.22.1", "bincode", @@ -6104,24 +6416,27 @@ dependencies = [ "serde", "serde_derive", "solana-account-info", - "solana-clock 3.1.0", - "solana-define-syscall 5.1.0", + "solana-clock", + "solana-define-syscall 5.2.0", "solana-epoch-rewards", "solana-epoch-schedule", "solana-fee-calculator", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-get-sysvar", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-last-restart-slot", "solana-program-entrypoint", "solana-program-error 3.0.1", "solana-program-memory", - "solana-pubkey 4.2.0", - "solana-rent 4.2.1", - "solana-sdk-ids 3.1.0", - "solana-sdk-macro 3.0.1", - "solana-slot-hashes 3.0.2", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-slot-hashes", "solana-slot-history", + "solana-stake-history", "solana-sysvar-id", + "wincode", ] [[package]] @@ -6131,70 +6446,53 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17358d1e9a13e5b9c2264d301102126cf11a47fd394cdf3dec174fe7bc96e1de" dependencies = [ "solana-address 2.6.1", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", ] [[package]] name = "solana-transaction" -version = "3.1.0" +version = "4.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96697cff5075a028265324255efed226099f6d761ca67342b230d09f72cc48d2" +checksum = "a8008008a75246adaf8b67411093a6d78db8232c74b00eff6041fd1da73679e7" dependencies = [ - "bincode", "serde", "serde_derive", "solana-address 2.6.1", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-instruction-error", "solana-message", "solana-sanitize 3.0.1", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", "solana-short-vec", "solana-signature", "solana-signer", "solana-transaction-error", + "wincode", ] [[package]] name = "solana-transaction-context" -version = "3.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a3c3a69688293a195b02c60a5384d855b8de19981f404c71ccb9e7f139b98f" -dependencies = [ - "bincode", - "serde", - "solana-account", - "solana-instruction 3.4.0", - "solana-instructions-sysvar", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", - "solana-sbpf 0.13.1", - "solana-sdk-ids 3.1.0", -] - -[[package]] -name = "solana-transaction-context" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ee065d9e0a7d374c012d541083b1e72832a7f016ac2ab493f535d07fa89c26d" +checksum = "64d61811155533aebcf806e694d3ed91be7fc168dc9bdcf25e8eb98b9234c7c3" dependencies = [ "bincode", "serde", - "solana-account", - "solana-instruction 3.4.0", - "solana-instructions-sysvar", - "solana-pubkey 4.2.0", - "solana-rent 3.1.0", - "solana-sbpf 0.14.4", - "solana-sdk-ids 3.1.0", + "solana-account 4.3.2", + "solana-instruction 3.4.1", + "solana-instructions-sysvar 4.0.0", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sbpf", + "solana-sdk-ids", ] [[package]] name = "solana-transaction-error" -version = "3.2.1" +version = "3.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2441d6dcd51100e7d97c3fb3b723e08aa701066ff7afc00026fd8d8e222cb95b" +checksum = "054e54d15164b0c34cb744600a1a0330e9fd97a12d979f2eb95904c807a07713" dependencies = [ "serde", "serde_derive", @@ -6204,9 +6502,9 @@ dependencies = [ [[package]] name = "solana-transaction-status-client-types" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14125d6b1dffa49b12adea3b763eff35ab83ad2aaff27dacee6ea2c9068a3256" +checksum = "723bb4c23d2b7d0c6bf0fca14637d1e3a802258270ff8dd481fc4a7c67463019" dependencies = [ "base64 0.22.1", "bincode", @@ -6215,62 +6513,38 @@ dependencies = [ "serde_json", "solana-account-decoder-client-types", "solana-commitment-config", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-message", - "solana-pubkey 4.2.0", "solana-reward-info", "solana-signature", "solana-transaction", - "solana-transaction-context 4.0.0-rc.0", + "solana-transaction-context", "solana-transaction-error", - "thiserror 2.0.18", + "thiserror 2.0.20", + "wincode", ] [[package]] name = "solana-version" -version = "4.0.0-rc.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05a72745825b1cf786bfd14024a0f52e15b5b95c7eb58152af6608804cd0fa95" +checksum = "5a367a57e23f545ad859f4dd5b9273f5b6159675c458a47f03f9ca503630485e" dependencies = [ - "agave-feature-set 4.0.0-rc.0", - "rand 0.9.4", + "agave-feature-set", + "rand 0.9.5", "semver", "serde", "solana-sanitize 3.0.1", "solana-serde-varint", + "solana-wincode-varint", + "wincode", ] [[package]] name = "solana-vote-interface" -version = "4.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6e123e16bfdd7a81d71b4c4699e0b29580b619f4cd2ef5b6aae1eb85e8979f" -dependencies = [ - "bincode", - "cfg_eval", - "num-derive", - "num-traits", - "serde", - "serde_derive", - "serde_with", - "solana-clock 3.1.0", - "solana-hash 3.1.0", - "solana-instruction 3.4.0", - "solana-instruction-error", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", - "solana-sdk-ids 3.1.0", - "solana-serde-varint", - "solana-serialize-utils", - "solana-short-vec", - "solana-system-interface 2.0.0", -] - -[[package]] -name = "solana-vote-interface" -version = "5.1.1" +version = "6.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d444ce30b6b4f9c281ba06061ea96638d063b53c2171b1e41ba02ebff79ed28f" +checksum = "13a7a204b455a53fe8c9a26a6885391a5896835e06694dbe0cf37c580f82f128" dependencies = [ "bincode", "cfg_eval", @@ -6279,13 +6553,13 @@ dependencies = [ "serde", "serde_derive", "serde_with", - "solana-clock 3.1.0", - "solana-hash 4.4.0", - "solana-instruction 3.4.0", + "solana-clock", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-instruction-error", - "solana-pubkey 4.2.0", - "solana-rent 4.2.1", - "solana-sdk-ids 3.1.0", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", "solana-serde-varint", "solana-serialize-utils", "solana-short-vec", @@ -6294,62 +6568,78 @@ dependencies = [ [[package]] name = "solana-vote-program" -version = "3.1.14" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4164d0eb4760cbdb3dd46457999dba735079774381fe4042a70ec7484930a297" +checksum = "69c6faf8370369c45bc14eeca8dc0249450b940b57dcfcec0103403f9feaf88a" dependencies = [ - "agave-feature-set 3.1.14", + "agave-feature-set", "bincode", "log", - "num-derive", - "num-traits", - "serde", - "solana-account", + "solana-account 4.3.2", "solana-bincode", - "solana-clock 3.1.0", + "solana-bls-signatures", + "solana-clock", "solana-epoch-schedule", - "solana-hash 3.1.0", - "solana-instruction 3.4.0", - "solana-keypair", + "solana-hash 4.5.0", + "solana-instruction 3.4.1", "solana-packet", "solana-program-runtime", - "solana-pubkey 3.0.0", - "solana-rent 3.1.0", - "solana-sdk-ids 3.1.0", - "solana-signer", - "solana-slot-hashes 3.0.2", - "solana-transaction", - "solana-transaction-context 3.1.14", - "solana-vote-interface 4.0.4", - "thiserror 2.0.18", + "solana-pubkey 4.2.1", + "solana-rent 4.3.0", + "solana-sdk-ids", + "solana-slot-hashes", + "solana-system-interface 3.2.0", + "solana-transaction-context", + "solana-vote-interface", +] + +[[package]] +name = "solana-wincode-varint" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6679e72a01dcfe7ff180f0e9d3a0d165e4e9664426930014f2702e7571c259c7" +dependencies = [ + "wincode", ] [[package]] name = "solana-zero-copy" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea15126ebdc7e270c50d43884369af9f51d2308156d46a18e351522a164844d" +checksum = "bd3183a7934dd7e6490ae86732616cd70361f5ab9401b9a375ab62f7fa17b112" dependencies = [ - "borsh", "bytemuck", "bytemuck_derive", ] [[package]] -name = "solana-zk-elgamal-proof-program" -version = "3.1.14" +name = "solana-zk-elgamal-proof-interface" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f30c80edc4aac841745f7e93bbf1afc27d2b496b8ae9fe9777935151cb9352" +checksum = "d8da7f01db2148a1dc16261ff1dc6f3930a1e255a33cece4f1b56658694f27f7" dependencies = [ - "agave-feature-set 3.1.14", "bytemuck", + "bytemuck_derive", "num-derive", "num-traits", - "solana-instruction 3.4.0", + "solana-address 2.6.1", + "solana-instruction 3.4.1", + "solana-sdk-ids", + "solana-zk-sdk-pod", +] + +[[package]] +name = "solana-zk-elgamal-proof-program" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d55e2d0d7f884295989dae8b7e0b6d7a46d87ed2d917113007383261e5e93d" +dependencies = [ + "bytemuck", + "solana-instruction 3.4.1", "solana-program-runtime", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", "solana-svm-log-collector", - "solana-zk-sdk", + "solana-zk-sdk 5.0.1", ] [[package]] @@ -6370,47 +6660,30 @@ dependencies = [ "merlin", "num-derive", "num-traits", - "rand 0.8.6", + "rand 0.8.8", "serde", "serde_derive", "serde_json", "sha3", "solana-derivation-path", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-sdk-ids", "solana-seed-derivable", "solana-seed-phrase", "solana-signature", "solana-signer", "subtle", - "thiserror 2.0.18", + "thiserror 2.0.20", "wasm-bindgen", "zeroize", ] [[package]] -name = "solana-zk-token-proof-program" -version = "3.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "962938a9994cc6d54b46b5f0d6a978024f4847272f560f8f11edd1575a0d8e8f" -dependencies = [ - "agave-feature-set 3.1.14", - "bytemuck", - "num-derive", - "num-traits", - "solana-instruction 3.4.0", - "solana-program-runtime", - "solana-sdk-ids 3.1.0", - "solana-svm-log-collector", - "solana-zk-token-sdk", -] - -[[package]] -name = "solana-zk-token-sdk" -version = "3.1.14" +name = "solana-zk-sdk" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e5fe47f0389206960e272a6f1af3b06c2b32551be77f9e4254564b6d1177b83" +checksum = "09670ff59f60e6ddc2209c2e4353992a9b9f01d4e244f3e9d67bd5146e33d388" dependencies = [ "aes-gcm-siv", "base64 0.22.1", @@ -6418,28 +6691,50 @@ dependencies = [ "bytemuck", "bytemuck_derive", "curve25519-dalek", - "itertools 0.12.1", + "itertools 0.14.0", "merlin", "num-derive", "num-traits", - "rand 0.8.6", + "rand 0.8.8", "serde", + "serde_derive", "serde_json", "sha3", - "solana-curve25519", + "solana-address 2.6.1", "solana-derivation-path", - "solana-instruction 3.4.0", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", + "solana-instruction 3.4.1", + "solana-sdk-ids", "solana-seed-derivable", "solana-seed-phrase", "solana-signature", "solana-signer", "subtle", - "thiserror 2.0.18", + "thiserror 2.0.20", "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.20", +] + +[[package]] +name = "solana-zk-token-proof-program" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc32fcd9ff8bb90837755deccefdb20518484626c0a9d0649a36e5fcb0fcf520" +dependencies = [ + "solana-program-runtime", +] + [[package]] name = "spki" version = "0.7.3" @@ -6470,7 +6765,7 @@ checksum = "d9e8418ea6269dcfb01c712f0444d2c75542c04448b480e87de59d2865edc750" dependencies = [ "quote", "spl-discriminator-syn", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -6482,7 +6777,7 @@ dependencies = [ "proc-macro2", "quote", "sha2 0.10.9", - "syn 2.0.118", + "syn 2.0.119", "thiserror 1.0.69", ] @@ -6498,11 +6793,10 @@ dependencies = [ [[package]] name = "spl-pod" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9c6e142cdf1e7e77f480053ec9f0ce989890768ddf91f619b50f39d1b456f5" +checksum = "4efaa79ec81a614ae4263c92481ba1444d01e5e1efcdaf92b7f48a5b1b3e282d" dependencies = [ - "borsh", "bytemuck", "bytemuck_derive", "num-derive", @@ -6512,67 +6806,58 @@ dependencies = [ "solana-program-option", "solana-pubkey 3.0.0", "solana-zero-copy", - "solana-zk-sdk", - "thiserror 2.0.18", + "solana-zk-sdk 4.0.0", + "thiserror 2.0.20", ] [[package]] name = "spl-token-2022-interface" -version = "2.1.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fcd81188211f4b3c8a5eba7fd534c7142f9dd026123b3472492782cc72f4dc6" +checksum = "821d96d034ea31c4965d182c742153c491ae0abee531331b55771086c5030d86" dependencies = [ "arrayref", "bytemuck", + "getrandom 0.2.17", "num-derive", "num-traits", "num_enum", "solana-account-info", - "solana-instruction 3.4.0", + "solana-address 2.6.1", + "solana-instruction 3.4.1", + "solana-nullable", "solana-program-error 3.0.1", "solana-program-option", "solana-program-pack", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "solana-zk-sdk", - "spl-pod", + "solana-sdk-ids", + "solana-zero-copy", + "solana-zk-elgamal-proof-interface", + "solana-zk-sdk-pod", "spl-token-confidential-transfer-proof-extraction", - "spl-token-confidential-transfer-proof-generation", "spl-token-group-interface", "spl-token-metadata-interface", "spl-type-length-value", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] name = "spl-token-confidential-transfer-proof-extraction" -version = "0.5.1" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879a9ebad0d77383d3ea71e7de50503554961ff0f4ef6cbca39ad126e6f6da3a" +checksum = "0c1a845ec724e807643a04f1d43439ee3571dd913848112ac76aa90b850eaf7c" dependencies = [ "bytemuck", "solana-account-info", + "solana-address 2.6.1", "solana-curve25519", - "solana-instruction 3.4.0", - "solana-instructions-sysvar", + "solana-instruction 3.4.1", + "solana-instructions-sysvar 3.0.1", "solana-msg 3.1.0", "solana-program-error 3.0.1", - "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "solana-zk-sdk", - "spl-pod", - "thiserror 2.0.18", -] - -[[package]] -name = "spl-token-confidential-transfer-proof-generation" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0cd59fce3dc00f563c6fa364d67c3f200d278eae681f4dc250240afcfe044b1" -dependencies = [ - "curve25519-dalek", - "solana-zk-sdk", - "thiserror 2.0.18", + "solana-sdk-ids", + "solana-zk-elgamal-proof-interface", + "solana-zk-sdk-pod", + "thiserror 2.0.20", ] [[package]] @@ -6586,51 +6871,52 @@ dependencies = [ "num-traits", "num_enum", "solana-address 2.6.1", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-nullable", "solana-program-error 3.0.1", "solana-zero-copy", "spl-discriminator", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] name = "spl-token-interface" -version = "2.0.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c564ac05a7c8d8b12e988a37d82695b5ba4db376d07ea98bc4882c81f96c7f3" +checksum = "7143c4e676984047a400e2fbd7ac29a1659f2b1b52b897cfde19316b562e4589" dependencies = [ "arrayref", "bytemuck", "num-derive", "num-traits", "num_enum", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", "solana-program-error 3.0.1", "solana-program-option", "solana-program-pack", "solana-pubkey 3.0.0", - "solana-sdk-ids 3.1.0", - "thiserror 2.0.18", + "solana-sdk-ids", + "thiserror 2.0.20", ] [[package]] name = "spl-token-metadata-interface" -version = "0.8.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c467c7c3bd056f8fe60119e7ec34ddd6f23052c2fa8f1f51999098063b72676" +checksum = "3d3d96f175e7022ff200464dfa75a3708a4e9b70c83c4ecd04fe52ee479f4fef" dependencies = [ "borsh", "num-derive", "num-traits", + "num_enum", + "solana-address 2.6.1", "solana-borsh", - "solana-instruction 3.4.0", + "solana-instruction 3.4.1", + "solana-nullable", "solana-program-error 3.0.1", - "solana-pubkey 3.0.0", "spl-discriminator", - "spl-pod", "spl-type-length-value", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] @@ -6647,7 +6933,7 @@ dependencies = [ "solana-program-error 3.0.1", "solana-zero-copy", "spl-discriminator", - "thiserror 2.0.18", + "thiserror 2.0.20", ] [[package]] @@ -6687,9 +6973,20 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.118" +version = "2.0.119" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ae57f904213ebb649ce6895b8a66c66f0203b9319718f69a5612a065b1422" +checksum = "12df2e0110f65b775f769bb17ef989067a1d931b2eb822bd4346631eeada89f9" dependencies = [ "proc-macro2", "quote", @@ -6719,7 +7016,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -6744,10 +7041,16 @@ dependencies = [ ] [[package]] -name = "target-triple" -version = "1.0.0" +name = "tap" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "591ef38edfb78ca4771ee32cf494cb8771944bee237a9b91fc9c1424ac4b777b" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "target-tuple" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876fef147edbcbddc8ac5cbbba92c7b86519e314e86638596c09673b2ed01e7f" [[package]] name = "tarpc" @@ -6761,7 +7064,7 @@ dependencies = [ "humantime", "opentelemetry", "pin-project", - "rand 0.8.6", + "rand 0.8.8", "serde", "static_assertions", "tarpc-plugins", @@ -6817,11 +7120,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.18" +version = "2.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" +checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f" dependencies = [ - "thiserror-impl 2.0.18", + "thiserror-impl 2.0.20", ] [[package]] @@ -6832,34 +7135,43 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "thiserror-impl" -version = "2.0.18" +version = "2.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" +checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] name = "thread_local" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +checksum = "1ad99c4c6d32803332c548b1af0540b357b3f5fc0be8f6c6bfe8b2e6ae784070" dependencies = [ "cfg-if", ] +[[package]] +name = "threadpool" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +dependencies = [ + "num_cpus", +] + [[package]] name = "tinystr" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" +checksum = "b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643" dependencies = [ "displaydoc", "zerovec", @@ -6867,9 +7179,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.11.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" +checksum = "4cf0ded5c4e56918d8f8a339e1bb67d038d3bc6d144ac407904015ba2e4cde9b" dependencies = [ "tinyvec_macros", ] @@ -6882,9 +7194,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.52.3" +version = "1.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" +checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" dependencies = [ "bytes", "libc", @@ -6892,20 +7204,20 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.4", + "socket2 0.6.5", "tokio-macros", "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.7.0" +version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" +checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] [[package]] @@ -6930,11 +7242,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.4" +version = "0.26.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" +checksum = "b0c85f2c3ef0b1cd58b36682f4b17aaa995f0e5db534d85692b4903abce21f67" dependencies = [ - "rustls 0.23.41", + "rustls 0.23.44", "tokio", ] @@ -6971,51 +7283,55 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.18" +version = "0.7.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" +checksum = "494815d09bf52b5548659851081238f0ca39ff638363907596da739561c62c52" dependencies = [ "bytes", "futures-core", "futures-sink", + "libc", "pin-project-lite", "tokio", ] [[package]] name = "toml" -version = "0.8.23" +version = "0.9.12+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" +checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" dependencies = [ - "serde", - "serde_spanned 0.6.9", - "toml_datetime 0.6.11", - "toml_edit 0.22.27", + "indexmap", + "serde_core", + "serde_spanned", + "toml_datetime 0.7.5+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 0.7.15", ] [[package]] name = "toml" -version = "1.1.2+spec-1.1.0" +version = "1.1.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" +checksum = "920602543f0911ab71da12c50d59701da54c196d1a2bf5cb4b75667f137a406a" dependencies = [ "indexmap", "serde_core", - "serde_spanned 1.1.1", + "serde_spanned", "toml_datetime 1.1.1+spec-1.1.0", "toml_parser", "toml_writer", - "winnow 1.0.3", + "winnow 1.0.4", ] [[package]] name = "toml_datetime" -version = "0.6.11" +version = "0.7.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -7029,50 +7345,30 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.27" +version = "0.25.14+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" -dependencies = [ - "indexmap", - "serde", - "serde_spanned 0.6.9", - "toml_datetime 0.6.11", - "toml_write", - "winnow 0.7.15", -] - -[[package]] -name = "toml_edit" -version = "0.25.12+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2153edc6955a6c354fad8f5efd38b6a8769bdccf9fe50f8e1329f81b0baa5d7" +checksum = "d2195eec204e2764644a4ea619704f9fbe5e0673038eded55ad9956f24fca0cc" dependencies = [ "indexmap", "toml_datetime 1.1.1+spec-1.1.0", "toml_parser", - "winnow 1.0.3", + "winnow 1.0.4", ] [[package]] name = "toml_parser" -version = "1.1.2+spec-1.1.0" +version = "1.1.3+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" +checksum = "1d38ac1cf9b95face32296c0a3ede1fdc270627c9d9c02a7274dd6d960dc4d56" dependencies = [ - "winnow 1.0.3", + "winnow 1.0.4", ] -[[package]] -name = "toml_write" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" - [[package]] name = "toml_writer" -version = "1.1.1+spec-1.1.0" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" +checksum = "7d56353a2a665ad0f41a421187180aab746c8c325620617ad883a99a1cbe66d2" [[package]] name = "tower" @@ -7096,16 +7392,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" dependencies = [ "async-compression", - "bitflags 2.13.0", + "bitflags 2.13.2", "bytes", "futures-core", "futures-util", - "http 1.4.2", - "http-body 1.0.1", + "http 1.5.0", + "http-body 1.1.0", "http-body-util", "pin-project-lite", "tokio", - "tokio-util 0.7.18", + "tokio-util 0.7.19", "tower", "tower-layer", "tower-service", @@ -7144,7 +7440,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -7189,17 +7485,17 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "trybuild" -version = "1.0.117" +version = "1.0.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0710d4dfbeae4f9c390baa784c49858a7468fa433f3fe5d0ec5ebef651cf59f9" +checksum = "c0cabaa10be1917331a313866bd94526343e03c77bcf69144b62b072ad35d47c" dependencies = [ "glob", "serde", "serde_derive", "serde_json", - "target-triple", + "target-tuple", "termcolor", - "toml 1.1.2+spec-1.1.0", + "toml 1.1.6+spec-1.1.0", ] [[package]] @@ -7343,12 +7639,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.11.1+wasi-snapshot-preview1" @@ -7366,9 +7656,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.125" +version = "0.2.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ddb3f79143bced6de84270411622a2699cee572fc0875aeaf1e7867cf9fca1a" +checksum = "aecb87a33d3b0c5e3b7aa46336eaf486cffafbd281b195e4c8b80d50df2351bf" dependencies = [ "cfg-if", "once_cell", @@ -7379,9 +7669,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.75" +version = "0.4.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "503b14d284f2c8dac03b819967e155ea753f573586193b2b2c95990cb5d69280" +checksum = "6ef4c5d3d2cdf5c54f4231181768f5510842e350db025faf1f7163b1030ed928" dependencies = [ "js-sys", "wasm-bindgen", @@ -7389,9 +7679,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.125" +version = "0.2.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e21a184b13fb19e157296e2c46056aec9092264fab83e4ba59e68c61b323c3d" +checksum = "a690d511e3c1a8b3a55e33511e3c2c00c78415cd23650f32b808627f5696b9ed" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7399,22 +7689,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.125" +version = "0.2.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fecefd9c35bd935a20fc3fc344b5f29138961e4f47fb03297d88f2587afb5ebd" +checksum = "411e4887f0071ef2d2164a9d5fdf2d20efbef78fccd3a78b0c10a1dc5295e48a" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.125" +version = "0.2.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23939e44bb9a5d7576fa2b563dc2e136628f1224e88a8deed09e04858b77871f" +checksum = "81941cd78d0c92026c33e5e01312845a4cb1e9af3407f9134b100dd03144103e" dependencies = [ "unicode-ident", ] @@ -7434,9 +7724,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.102" +version = "0.3.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6430a72df5eb332242960fe84b3002a241163998241eb596d4f739b9757061d" +checksum = "9fbddc4a036f00ec4f18c83445bd3115cb306a91da554919a099d9222fe4a7f8" dependencies = [ "js-sys", "wasm-bindgen", @@ -7454,9 +7744,9 @@ dependencies = [ [[package]] name = "webpki-root-certs" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d46a5a140e6f7afeccd8eae97eff335163939eac8b929834875168b29b3d267" +checksum = "b96554aa2acc8ccdb7e1c9a58a7a68dd5d13bccc69cd124cb09406db612a1c9b" dependencies = [ "rustls-pki-types", ] @@ -7469,9 +7759,9 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "webpki-roots" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf85cb06032201fa7c6f829d7db5a7e5aa45bcc0655327713065f6f0576731bf" +checksum = "7dcd9d09a39985f5344844e66b0c530a33843579125f23e21e9f0f220850f22a" dependencies = [ "rustls-pki-types", ] @@ -7513,10 +7803,11 @@ version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "66d967db7705dc29120bb6e8ce5b5a2e27734ed5976d1c904e95bd238d1c3c5a" dependencies = [ + "bv", "pastey", "proc-macro2", "quote", - "thiserror 2.0.18", + "thiserror 2.0.20", "wincode-derive", ] @@ -7529,7 +7820,7 @@ dependencies = [ "darling 0.23.0", "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -7691,15 +7982,12 @@ name = "winnow" version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" -dependencies = [ - "memchr", -] [[package]] name = "winnow" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0592e1c9d151f854e6fd382574c3a0855250e1d9b2f99d9281c6e6391af352f1" +checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81" dependencies = [ "memchr", ] @@ -7722,9 +8010,18 @@ checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e" [[package]] name = "writeable" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" +checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc" + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] [[package]] name = "yoke" @@ -7745,28 +8042,28 @@ checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.52" +version = "0.8.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce1022995ff5ff5d841ad7d994facc23098cd40152f2c1d11cd607c6f530653f" +checksum = "d35102a9f36d089ccae9e4c6802bc118be4487b80aaffc0ab4e0cf5ce92d2873" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.52" +version = "0.8.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ae7f38b72ec2a254e2b87ef277cf2cd4fb97cbebf944faa6f33354da0867930" +checksum = "146c01f5ab44258da43cf276c74a2763db2ff3969c9c652c3f2de07041d0b2bc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] @@ -7786,7 +8083,7 @@ checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", "synstructure", ] @@ -7807,14 +8104,14 @@ checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 2.0.119", ] [[package]] name = "zerotrie" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" +checksum = "4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f" dependencies = [ "displaydoc", "yoke", @@ -7823,9 +8120,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.6" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" +checksum = "bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8" dependencies = [ "yoke", "zerofrom", @@ -7834,20 +8131,26 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.3" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" +checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.118", + "syn 3.0.5", ] +[[package]] +name = "zlib-rs" +version = "0.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34b31d188d9d685a4f9c7b46d6e36631b07058d2cfe190267adce54dc230bf12" + [[package]] name = "zmij" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" [[package]] name = "zstd" @@ -7860,18 +8163,18 @@ dependencies = [ [[package]] name = "zstd-safe" -version = "7.2.4" +version = "7.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d" +checksum = "64d80649ab6db9d9f6f9c80a40becd948eda4714a0a5ac8c4d157a32231c7882" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.16+zstd.1.5.7" +version = "2.1.0+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" +checksum = "0ef0a8027ec3ee71300ab3bcbcd0393f434aa72b91ca6d635a39941deae8eea0" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index 4ddb2ec..5e2402c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,32 +48,32 @@ solana-program = "4.0" solana-pubkey = "4.2" solana-cpi = "3.1" solana-msg = { version = "3.1" } -solana-sysvar = { version = "4.0" } +solana-sysvar = { version = "4.1" } solana-program-error = { version = "3.0" } -solana-define-syscall = { version = "5.1" } +solana-define-syscall = { version = "5.2" } solana-account-info = { version = "3.1" } -solana-clock = { version = "3.0" } +solana-clock = { version = "3.1" } solana-loader-v3-interface = { version = "8.0" } solana-instruction = "3.4" solana-system-interface = { version = "3.2" } # Solana RPC / client stack (for light-client) -solana-rpc-client = "4.0.0-rc.0" -solana-rpc-client-api = "4.0.0-rc.0" -solana-account-decoder-client-types = "4.0.0-rc.0" -solana-transaction-status-client-types = "4.0.0-rc.0" -solana-banks-client = { version = "4.0.0-rc.0", features = ["agave-unstable-api"] } -solana-message = "3.1" -solana-transaction = "3.1" -solana-transaction-error = "3.0" -solana-hash = "4.3" +solana-rpc-client = "4.2" +solana-rpc-client-api = "4.2" +solana-account-decoder-client-types = "4.2" +solana-transaction-status-client-types = "4.2" +solana-banks-client = { version = "4.2", features = ["agave-unstable-api"] } +solana-message = "4.4" +solana-transaction = "4.1" +solana-transaction-error = "3.3" +solana-hash = "4.5" solana-signature = "3.4" solana-commitment-config = "3.1" -solana-account = "3.4" +solana-account = "4.3" solana-keypair = "3.1.2" solana-compute-budget-interface = "3.0" # SPL -spl-token-2022-interface = "2.0" +spl-token-2022-interface = "3.1" spl-pod = "0.7" # Pinocchio @@ -81,7 +81,7 @@ pinocchio = { version = "0.9" } pinocchio-system = { version = "0.3.0" } # Anchor -anchor-lang = { version = "1.0.2" } +anchor-lang = { version = "1.2.0" } # Anchor compatibility (Anchor 1.0 uses borsh 1.x) borsh = { version = "1.5", default-features = false, features = ["derive"] } @@ -120,9 +120,10 @@ base64 = "0.13" futures = "0.3.31" smallvec = "1.15" serde_json = "1.0" +bincode = "1.3" lazy_static = "1.5.0" reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] } -litesvm = "0.12" +litesvm = "0.16" photon-api = "0.56.0" # Light Protocol (published crates) @@ -131,18 +132,18 @@ light-poseidon = { version = "0.4.0" } light-program-profiler = { version = "0.1.0" } # Light Protocol (local crates) -light-hasher = { path = "hasher", version = "6.0.1", default-features = false } +light-hasher = { path = "hasher", version = "7.0.0", default-features = false } light-macros = { path = "macros", version = "3.0.0" } -light-sdk-macros = { path = "sdk-macros", version = "0.24.0" } -light-sdk = { path = "sdk", version = "0.24.0", default-features = false } -light-sdk-types = { path = "sdk-types", version = "0.24.0", default-features = false } -light-account-checks = { path = "account-checks", version = "0.9.0", default-features = false } +light-sdk-macros = { path = "sdk-macros", version = "0.25.0" } +light-sdk = { path = "sdk", version = "0.25.0", default-features = false } +light-sdk-types = { path = "sdk-types", version = "0.25.0", default-features = false } +light-account-checks = { path = "account-checks", version = "0.10.0", default-features = false } light-zero-copy = { path = "zero-copy", version = "0.7.0", default-features = false } light-zero-copy-derive = { path = "zero-copy-derive", version = "0.7.0" } -light-concurrent-merkle-tree = { path = "concurrent-merkle-tree", version = "6.0.0" } -light-indexed-merkle-tree = { path = "indexed-merkle-tree", version = "6.0.0" } -light-indexed-array = { path = "indexed-array", version = "0.4.0" } -light-merkle-tree-metadata = { path = "merkle-tree-metadata", version = "0.12.0" } -light-merkle-tree-reference = { path = "merkle-tree-reference", version = "5.0.0" } -light-event = { path = "event", version = "0.24.0" } -light-prover-client = { path = "prover-client", version = "9.0.0" } +light-concurrent-merkle-tree = { path = "concurrent-merkle-tree", version = "7.0.0" } +light-indexed-merkle-tree = { path = "indexed-merkle-tree", version = "7.0.0" } +light-indexed-array = { path = "indexed-array", version = "0.5.0" } +light-merkle-tree-metadata = { path = "merkle-tree-metadata", version = "0.13.0" } +light-merkle-tree-reference = { path = "merkle-tree-reference", version = "6.0.0" } +light-event = { path = "event", version = "0.25.0" } +light-prover-client = { path = "prover-client", version = "10.0.0" } diff --git a/account-checks/Cargo.toml b/account-checks/Cargo.toml index 5b4cf28..5e7e3b7 100644 --- a/account-checks/Cargo.toml +++ b/account-checks/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-account-checks" -version = "0.9.0" +version = "0.10.0" description = "Checks for solana accounts." readme = "README.md" repository = "https://github.com/Lightprotocol/light-protocol" diff --git a/client/Cargo.toml b/client/Cargo.toml index 2a6e809..c02df40 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-client" -version = "0.24.1" +version = "0.25.0" edition = "2021" license = "Apache-2.0" repository = "https://github.com/lightprotocol/light-protocol" @@ -32,7 +32,7 @@ solana-account = { workspace = true } solana-keypair = { workspace = true } solana-compute-budget-interface = { workspace = true } solana-banks-client = { workspace = true, optional = true } -solana-address-lookup-table-interface = { version = "2.2.1", features = [ +solana-address-lookup-table-interface = { version = "3.1", features = [ "bytemuck", "bincode", ] } @@ -67,8 +67,14 @@ futures = { workspace = true } smallvec = { workspace = true } serde_json = { workspace = true } +bincode = { workspace = true } tracing = { workspace = true } lazy_static = { workspace = true } rand = { workspace = true } # Tests are in program-tests/client-test/tests/light-client.rs + +[dev-dependencies] +agave-feature-set = "4.2" +solana-signer = "3" +solana-system-interface = { workspace = true, features = ["bincode"] } diff --git a/client/src/indexer/mod.rs b/client/src/indexer/mod.rs index 4debb3a..1f7155a 100644 --- a/client/src/indexer/mod.rs +++ b/client/src/indexer/mod.rs @@ -19,8 +19,8 @@ pub use types::{ InputQueueData, InterfaceTreeInfo, MerkleProof, MerkleProofWithContext, NewAddressProofWithContext, NextTreeInfo, OutputQueueData, OwnerBalance, ProofOfLeaf, QueueElementsResult, QueueInfo, QueueInfoResult, QueueLeafIndex, RootIndex, - SignatureWithMetadata, SolanaAccountData, StateMerkleTreeAccounts, StateQueueData, TokenBalance, - TreeInfo, ValidityProofWithContext, + SignatureWithMetadata, SolanaAccountData, StateMerkleTreeAccounts, StateQueueData, + TokenBalance, TreeInfo, ValidityProofWithContext, }; mod options; pub use options::*; diff --git a/client/src/indexer/photon_indexer.rs b/client/src/indexer/photon_indexer.rs index 06cbd16..31a1416 100644 --- a/client/src/indexer/photon_indexer.rs +++ b/client/src/indexer/photon_indexer.rs @@ -1644,4 +1644,3 @@ impl PhotonIndexer { .await } } - diff --git a/client/src/indexer/types/proof.rs b/client/src/indexer/types/proof.rs index 3473e3b..005e482 100644 --- a/client/src/indexer/types/proof.rs +++ b/client/src/indexer/types/proof.rs @@ -1,6 +1,6 @@ use light_sdk::instruction::PackedAccounts; -use light_sdk_types::lca::instruction_data::compressed_proof::CompressedProof; use light_sdk::instruction::{PackedAddressTreeInfo, PackedStateTreeInfo, ValidityProof}; +use light_sdk_types::lca::instruction_data::compressed_proof::CompressedProof; use solana_pubkey::Pubkey; use super::{ diff --git a/client/src/rpc/client.rs b/client/src/rpc/client.rs index 3bd4d95..772a871 100644 --- a/client/src/rpc/client.rs +++ b/client/src/rpc/client.rs @@ -6,11 +6,11 @@ use std::{ use async_trait::async_trait; use borsh::BorshDeserialize; use bs58; -use light_sdk_types::lca::TreeType; use light_event::{ event::{BatchPublicTransactionEvent, PublicTransactionEvent}, parse::event_from_light_transaction, }; +use light_sdk_types::lca::TreeType; use solana_account::Account; use solana_clock::Slot; use solana_commitment_config::CommitmentConfig; @@ -36,7 +36,12 @@ use crate::rpc::get_light_state_tree_infos::{ }; use crate::{ indexer::{photon_indexer::PhotonIndexer, Indexer, TreeInfo}, - rpc::{errors::RpcError, merkle_tree::MerkleTreeExt, Rpc}, + rpc::{ + errors::RpcError, + merkle_tree::MerkleTreeExt, + tx_v1::{build_v1_transaction, TransactionConfig}, + Rpc, + }, }; /// V2 batched state trees. @@ -243,10 +248,38 @@ impl LightClient { latest_blockhash, ); + let (signature, slot) = self.process_transaction_with_context(transaction).await?; + + self.fetch_batched_events(instructions_vec.as_slice(), signature, slot) + } + + async fn _create_and_send_v1_transaction_with_batched_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, Signature, Slot)>, RpcError> { + let latest_blockhash = self.client.get_latest_blockhash()?; + let transaction = + build_v1_transaction(instructions, payer, signers, latest_blockhash, config)?; + let (signature, slot) = self - .process_transaction_with_context(transaction.clone()) + .process_versioned_transaction_with_context(transaction) .await?; + self.fetch_batched_events(instructions, signature, slot) + } + + /// Fetches the confirmed transaction `signature` and parses Light events + /// from `instructions_vec` (the outer instructions as sent) and the inner + /// instructions reported by the RPC. + fn fetch_batched_events( + &self, + instructions_vec: &[Instruction], + signature: Signature, + slot: Slot, + ) -> Result, Signature, Slot)>, RpcError> { let mut vec = Vec::new(); let mut vec_accounts = Vec::new(); let mut program_ids = Vec::new(); @@ -266,7 +299,7 @@ impl LightClient { let rpc_transaction_config = RpcTransactionConfig { encoding: Some(UiTransactionEncoding::Base64), commitment: Some(self.client.commitment()), - ..Default::default() + max_supported_transaction_version: Some(1), }; let transaction = self .client @@ -319,20 +352,35 @@ impl LightClient { ) })?; vec.push(data); + let program_id = account_keys + .get(ui_compiled_instruction.program_id_index as usize) + .ok_or_else(|| { + RpcError::CustomError( + "Instruction program id index out of bounds".to_string(), + ) + })?; program_ids.push(light_sdk_types::lca::Pubkey::new_from_array( - account_keys[ui_compiled_instruction.program_id_index as usize] - .to_bytes(), + program_id.to_bytes(), )); - vec_accounts.push( - accounts - .iter() - .map(|x| { - light_sdk_types::lca::Pubkey::new_from_array( - account_keys[(*x) as usize].to_bytes(), - ) - }) - .collect(), - ); + let instruction_accounts = accounts + .iter() + .map(|x| { + account_keys + .get(*x as usize) + .map(|key| { + light_sdk_types::lca::Pubkey::new_from_array( + key.to_bytes(), + ) + }) + .ok_or_else(|| { + RpcError::CustomError( + "Instruction account index out of bounds" + .to_string(), + ) + }) + }) + .collect::, RpcError>>()?; + vec_accounts.push(instruction_accounts); } UiInstruction::Parsed(_) => { println!("Parsed instructions are not implemented yet"); @@ -373,12 +421,45 @@ impl LightClient { latest_blockhash, ); + let (signature, slot) = self.process_transaction_with_context(transaction).await?; + + self.parse_event_from_instructions::(instructions_vec.as_slice(), signature, slot) + } + + async fn _create_and_send_v1_transaction_with_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, RpcError> + where + T: BorshDeserialize + Send + Debug, + { + let latest_blockhash = self.client.get_latest_blockhash()?; + let transaction = + build_v1_transaction(instructions, payer, signers, latest_blockhash, config)?; + let (signature, slot) = self - .process_transaction_with_context(transaction.clone()) + .process_versioned_transaction_with_context(transaction) .await?; + self.parse_event_from_instructions::(instructions, signature, slot) + } + + /// Tries to deserialize `T` from the data of each outer instruction and, + /// failing that, from the inner instructions of the confirmed transaction. + fn parse_event_from_instructions( + &self, + instructions: &[Instruction], + signature: Signature, + slot: Slot, + ) -> Result, RpcError> + where + T: BorshDeserialize + Send + Debug, + { let mut parsed_event = None; - for instruction in &transaction.message.instructions { + for instruction in instructions { let ix_data = instruction.data.clone(); match T::deserialize(&mut &instruction.data[..]) { Ok(e) => { @@ -414,7 +495,7 @@ impl LightClient { let rpc_transaction_config = RpcTransactionConfig { encoding: Some(UiTransactionEncoding::Base64), commitment: Some(self.client.commitment()), - ..Default::default() + max_supported_transaction_version: Some(1), }; let transaction = self .client @@ -767,7 +848,7 @@ impl Rpc for LightClient { RpcTransactionConfig { encoding: Some(UiTransactionEncoding::Base64), commitment: Some(self.client.commitment()), - ..Default::default() + max_supported_transaction_version: Some(1), }, ) .map_err(RpcError::from)? @@ -812,7 +893,10 @@ impl Rpc for LightClient { ._create_and_send_transaction_with_batched_event(instructions, payer, signers) .await?; - let event = parsed_event.map(|(e, signature, slot)| (e[0].event.clone(), signature, slot)); + let event = parsed_event.and_then(|(e, signature, slot)| { + e.first() + .map(|first| (first.event.clone(), signature, slot)) + }); Ok(event) } @@ -826,6 +910,54 @@ impl Rpc for LightClient { .await } + async fn create_and_send_v1_transaction_with_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, RpcError> + where + T: BorshDeserialize + Send + Debug, + { + self._create_and_send_v1_transaction_with_event::(instructions, payer, signers, config) + .await + } + + async fn create_and_send_v1_transaction_with_batched_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, Signature, Slot)>, RpcError> { + self._create_and_send_v1_transaction_with_batched_event( + instructions, + payer, + signers, + config, + ) + .await + } + + async fn process_versioned_transaction_with_context( + &mut self, + transaction: VersionedTransaction, + ) -> Result<(Signature, Slot), RpcError> { + self.retry(|| async { + let signature = self.client.send_and_confirm_transaction(&transaction)?; + let sig_info = self.client.get_signature_statuses(&[signature])?; + let slot = sig_info + .value + .first() + .and_then(|s| s.as_ref()) + .map(|s| s.slot) + .ok_or_else(|| RpcError::CustomError("Failed to get slot".into()))?; + Ok((signature, slot)) + }) + .await + } + /// Creates and sends a versioned transaction with address lookup tables. /// /// `address_lookup_tables` must contain pre-fetched `AddressLookupTableAccount` values @@ -993,7 +1125,6 @@ impl Rpc for LightClient { tree_type: TreeType::AddressV2, } } - } impl MerkleTreeExt for LightClient {} diff --git a/client/src/rpc/indexer.rs b/client/src/rpc/indexer.rs index e4cb68a..27a56e5 100644 --- a/client/src/rpc/indexer.rs +++ b/client/src/rpc/indexer.rs @@ -5,9 +5,10 @@ use super::LightClient; use crate::indexer::{ Address, AddressWithTree, CompressedAccount, GetCompressedAccountsByOwnerConfig, GetCompressedTokenAccountsByOwnerOrDelegateOptions, Hash, Indexer, IndexerError, - IndexerRpcConfig, Items, ItemsWithCursor, MerkleProof, NewAddressProofWithContext, OwnerBalance, - PaginatedOptions, QueueElementsResult, QueueElementsV2Options, QueueInfoResult, QueueLeafIndex, - Response, RetryConfig, SignatureWithMetadata, TokenBalance, ValidityProofWithContext, + IndexerRpcConfig, Items, ItemsWithCursor, MerkleProof, NewAddressProofWithContext, + OwnerBalance, PaginatedOptions, QueueElementsResult, QueueElementsV2Options, QueueInfoResult, + QueueLeafIndex, Response, RetryConfig, SignatureWithMetadata, TokenBalance, + ValidityProofWithContext, }; #[async_trait] diff --git a/client/src/rpc/mod.rs b/client/src/rpc/mod.rs index 724a71c..74c1ddc 100644 --- a/client/src/rpc/mod.rs +++ b/client/src/rpc/mod.rs @@ -14,3 +14,10 @@ pub mod get_light_state_tree_infos; pub mod lut; pub use lut::load_lookup_table; + +pub mod tx_v1; +pub use tx_v1::{ + build_v1_transaction, default_tx_config, with_defaults, TransactionConfig, + DEFAULT_COMPUTE_UNIT_LIMIT, DEFAULT_LOADED_ACCOUNTS_DATA_SIZE_LIMIT, MAX_LEGACY_TX_SIZE, + MAX_TX_V1_SIZE, +}; diff --git a/client/src/rpc/rpc_trait.rs b/client/src/rpc/rpc_trait.rs index bcb8300..86bfbac 100644 --- a/client/src/rpc/rpc_trait.rs +++ b/client/src/rpc/rpc_trait.rs @@ -19,7 +19,10 @@ use solana_transaction_status_client_types::TransactionStatus; use super::client::RpcUrl; use crate::{ indexer::{Indexer, TreeInfo}, - rpc::errors::RpcError, + rpc::{ + errors::RpcError, + tx_v1::{build_v1_transaction, TransactionConfig}, + }, }; #[derive(Debug, Clone)] @@ -176,6 +179,17 @@ pub trait Rpc: Send + Sync + Debug + 'static { transaction: Transaction, ) -> Result<(Signature, Slot), RpcError>; + /// Sends and confirms a versioned transaction, returning the signature and + /// the slot it landed in. + async fn process_versioned_transaction_with_context( + &mut self, + transaction: VersionedTransaction, + ) -> Result<(Signature, Slot), RpcError> { + let signature = self.process_versioned_transaction(transaction).await?; + let slot = self.get_transaction_slot(&signature).await?; + Ok((signature, slot)) + } + async fn create_and_send_transaction_with_event( &mut self, instructions: &[Instruction], @@ -207,6 +221,51 @@ pub trait Rpc: Send + Sync + Debug + 'static { address_lookup_tables: &'a [AddressLookupTableAccount], ) -> Result; + /// Creates, signs and sends a transaction v1 (SIMD-0385). + /// + /// A v1 transaction may be up to 4,096 bytes. It has no address lookup + /// tables, and its compute budget comes from `config` instead of + /// ComputeBudget instructions: do not include those in `instructions`. + /// When `config.compute_unit_limit` is `None` the client applies + /// [`crate::rpc::DEFAULT_COMPUTE_UNIT_LIMIT`]. `config.priority_fee` is a + /// total in lamports. + /// + /// The cluster rejects v1 transactions until the `enable_tx_v1` feature + /// gate is active. + async fn create_and_send_v1_transaction<'a>( + &'a mut self, + instructions: &'a [Instruction], + payer: &'a Pubkey, + signers: &'a [&'a Keypair], + config: TransactionConfig, + ) -> Result { + let blockhash = self.get_latest_blockhash().await?.0; + let transaction = build_v1_transaction(instructions, payer, signers, blockhash, config)?; + self.process_versioned_transaction(transaction).await + } + + /// Transaction v1 counterpart of `create_and_send_transaction_with_event`. + /// See [`Rpc::create_and_send_v1_transaction`] for the v1 rules. + async fn create_and_send_v1_transaction_with_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, RpcError> + where + T: BorshDeserialize + Send + Debug; + + /// Transaction v1 counterpart of `create_and_send_transaction_with_batched_event`. + /// See [`Rpc::create_and_send_v1_transaction`] for the v1 rules. + async fn create_and_send_v1_transaction_with_batched_event( + &mut self, + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + config: TransactionConfig, + ) -> Result, Signature, Slot)>, RpcError>; + async fn create_and_send_transaction_with_public_event( &mut self, instruction: &[Instruction], diff --git a/client/src/rpc/tx_v1.rs b/client/src/rpc/tx_v1.rs new file mode 100644 index 0000000..ef4400c --- /dev/null +++ b/client/src/rpc/tx_v1.rs @@ -0,0 +1,94 @@ +//! Transaction v1 (SIMD-0385) helpers. +//! +//! A v1 transaction may be up to [`MAX_TX_V1_SIZE`] bytes instead of the +//! [`MAX_LEGACY_TX_SIZE`] bytes allowed for legacy and v0 transactions. +//! Two differences matter when building one: +//! +//! - There are no address lookup tables. Every account is a static key. +//! - The compute budget is not expressed as ComputeBudget instructions but +//! carried in a [`TransactionConfig`] inside the message header. Do not +//! prepend `ComputeBudgetInstruction`s to a v1 instruction list. +//! +//! `TransactionConfig::priority_fee` is a total in lamports, not a price per +//! compute unit. +//! +//! A cluster rejects v1 transactions until the `enable_tx_v1` feature gate is +//! active. + +use solana_hash::Hash; +use solana_instruction::Instruction; +use solana_keypair::Keypair; +pub use solana_message::v1::TransactionConfig; +use solana_message::{v1, VersionedMessage}; +use solana_pubkey::Pubkey; +use solana_transaction::versioned::VersionedTransaction; + +use crate::rpc::errors::RpcError; + +/// Maximum serialized size of a transaction v1 in bytes (SIMD-0296). +pub const MAX_TX_V1_SIZE: usize = 4096; + +/// Maximum serialized size of a legacy or v0 transaction in bytes. +pub const MAX_LEGACY_TX_SIZE: usize = 1232; + +/// Compute unit limit the client applies when the caller does not set one. +/// Matches the limit the legacy send paths request via ComputeBudget instructions. +pub const DEFAULT_COMPUTE_UNIT_LIMIT: u32 = 1_000_000; + +/// Returns a [`TransactionConfig`] with the client's default compute unit and +/// loaded-accounts limits and no priority fee. +pub fn default_tx_config() -> TransactionConfig { + with_defaults(TransactionConfig::default()) +} + +/// Maximum bytes of account data a transaction may load. Applied when the +/// caller does not set `loaded_accounts_data_size_limit`. +pub const DEFAULT_LOADED_ACCOUNTS_DATA_SIZE_LIMIT: u32 = 64 * 1024 * 1024; + +/// Fills in defaults for the limits a v1 message treats as zero when unset. +/// +/// In a v1 message `compute_unit_limit: None` means zero compute units and +/// `loaded_accounts_data_size_limit: None` means zero bytes of account data, +/// either of which fails every instruction. Legacy transactions get runtime +/// defaults for both; this restores that behavior. +pub fn with_defaults(config: TransactionConfig) -> TransactionConfig { + TransactionConfig { + compute_unit_limit: config + .compute_unit_limit + .or(Some(DEFAULT_COMPUTE_UNIT_LIMIT)), + loaded_accounts_data_size_limit: config + .loaded_accounts_data_size_limit + .or(Some(DEFAULT_LOADED_ACCOUNTS_DATA_SIZE_LIMIT)), + ..config + } +} + +/// Compiles `instructions` into a signed transaction v1. +/// +/// Returns `RpcError::TransactionBuildError` when the message cannot be +/// compiled and `RpcError::SigningError` when signing fails. +pub fn build_v1_transaction( + instructions: &[Instruction], + payer: &Pubkey, + signers: &[&Keypair], + recent_blockhash: Hash, + config: TransactionConfig, +) -> Result { + let message = v1::Message::try_compile_with_config( + payer, + instructions, + recent_blockhash, + with_defaults(config), + ) + .map_err(|e| RpcError::TransactionBuildError(format!("Failed to compile v1 message: {e}")))?; + + VersionedTransaction::try_new(VersionedMessage::V1(message), signers) + .map_err(|e| RpcError::SigningError(e.to_string())) +} + +/// Serialized size in bytes of `transaction`, as it would travel over the wire. +pub fn serialized_size(transaction: &VersionedTransaction) -> Result { + bincode::serialized_size(transaction) + .map(|size| size as usize) + .map_err(|e| RpcError::CustomError(format!("Failed to serialize transaction: {e}"))) +} diff --git a/client/tests/tx_v1.rs b/client/tests/tx_v1.rs new file mode 100644 index 0000000..701222c --- /dev/null +++ b/client/tests/tx_v1.rs @@ -0,0 +1,172 @@ +//! Transaction v1 (SIMD-0385) tests against LiteSVM. +//! +//! Requires the `program-test` feature, which pulls in litesvm. +#![cfg(feature = "program-test")] + +use agave_feature_set::enable_tx_v1; +use light_client::rpc::{ + build_v1_transaction, default_tx_config, with_defaults, RpcError, TransactionConfig, + DEFAULT_COMPUTE_UNIT_LIMIT, DEFAULT_LOADED_ACCOUNTS_DATA_SIZE_LIMIT, MAX_LEGACY_TX_SIZE, + MAX_TX_V1_SIZE, +}; +use litesvm::LiteSVM; +use solana_instruction::Instruction; +use solana_keypair::Keypair; +use solana_message::VersionedMessage; +use solana_pubkey::Pubkey; +use solana_signer::Signer; +use solana_transaction::{versioned::VersionedTransaction, Transaction}; + +/// Above the rent-exempt minimum for a zero-data account, so recipients survive. +const TRANSFER_LAMPORTS: u64 = 1_000_000; + +/// LiteSVM with the `enable_tx_v1` feature gate active. +/// +/// LiteSVM itself does not enforce the gate (a validator rejects v1 +/// transactions before they reach the SVM), so this mirrors the cluster state +/// the client will see rather than being required for execution. +fn svm_with_tx_v1() -> LiteSVM { + let mut feature_set = LiteSVM::mainnet_feature_set(); + feature_set.activate(&enable_tx_v1::id(), 0); + LiteSVM::new().with_feature_set(feature_set) +} + +/// `count` transfers from `payer` to fresh recipients. Each adds a 32-byte +/// static key plus instruction overhead, so enough of them exceed 1,232 bytes. +fn transfer_instructions(payer: &Pubkey, count: usize) -> (Vec, Vec) { + let recipients: Vec = (0..count).map(|_| Pubkey::new_unique()).collect(); + let instructions = recipients + .iter() + .map(|to| solana_system_interface::instruction::transfer(payer, to, TRANSFER_LAMPORTS)) + .collect(); + (instructions, recipients) +} + +fn serialized_len(transaction: &VersionedTransaction) -> usize { + bincode::serialize(transaction) + .expect("serialize versioned transaction") + .len() +} + +#[test] +fn v1_transaction_above_legacy_limit_executes() { + let mut svm = svm_with_tx_v1(); + let payer = Keypair::new(); + svm.airdrop(&payer.pubkey(), 1_000_000_000) + .expect("airdrop"); + + // 30 transfers: about 30 * 32 bytes of keys plus 30 * ~15 bytes of + // compiled instructions, well past the legacy limit. + let (instructions, recipients) = transfer_instructions(&payer.pubkey(), 30); + let blockhash = svm.latest_blockhash(); + + let legacy_len = bincode::serialize(&Transaction::new_signed_with_payer( + &instructions, + Some(&payer.pubkey()), + &[&payer], + blockhash, + )) + .expect("serialize legacy transaction") + .len(); + assert!( + legacy_len > MAX_LEGACY_TX_SIZE, + "test instructions must not fit a legacy transaction, got {legacy_len} bytes" + ); + + let transaction = build_v1_transaction( + &instructions, + &payer.pubkey(), + &[&payer], + blockhash, + TransactionConfig::default(), + ) + .expect("build v1 transaction"); + + let size = serialized_len(&transaction); + assert!( + size > MAX_LEGACY_TX_SIZE && size <= MAX_TX_V1_SIZE, + "v1 transaction size {size} not in ({MAX_LEGACY_TX_SIZE}, {MAX_TX_V1_SIZE}]" + ); + + let result = svm.send_transaction(transaction); + assert!(result.is_ok(), "v1 transaction failed: {:?}", result.err()); + + let balances: Vec = recipients + .iter() + .map(|to| svm.get_account(to).map(|a| a.lamports).unwrap_or(0)) + .collect(); + assert_eq!(balances, vec![TRANSFER_LAMPORTS; recipients.len()]); +} + +#[test] +fn v1_transaction_carries_config_in_message() { + let payer = Keypair::new(); + let (instructions, _) = transfer_instructions(&payer.pubkey(), 1); + let config = TransactionConfig { + priority_fee: Some(5_000), + compute_unit_limit: Some(200_000), + loaded_accounts_data_size_limit: Some(1_000_000), + heap_size: None, + }; + + let transaction = build_v1_transaction( + &instructions, + &payer.pubkey(), + &[&payer], + LiteSVM::new().latest_blockhash(), + config, + ) + .expect("build v1 transaction"); + + let message = match &transaction.message { + VersionedMessage::V1(message) => message, + other => panic!("expected a v1 message, got {other:?}"), + }; + assert_eq!(message.config, config); + assert_eq!( + transaction.version(), + solana_transaction::versioned::TransactionVersion::Number(1) + ); + // No ComputeBudget instructions are added to a v1 message. + assert_eq!(message.instructions.len(), instructions.len()); +} + +#[test] +fn v1_defaults_fill_zero_limits() { + let filled = with_defaults(TransactionConfig::default()); + assert_eq!( + filled, + TransactionConfig { + priority_fee: None, + compute_unit_limit: Some(DEFAULT_COMPUTE_UNIT_LIMIT), + loaded_accounts_data_size_limit: Some(DEFAULT_LOADED_ACCOUNTS_DATA_SIZE_LIMIT), + heap_size: None, + } + ); + assert_eq!(default_tx_config(), filled); + + let explicit = TransactionConfig { + priority_fee: Some(1), + compute_unit_limit: Some(2), + loaded_accounts_data_size_limit: Some(3), + heap_size: Some(64 * 1024), + }; + assert_eq!(with_defaults(explicit), explicit); +} + +#[test] +fn v1_build_fails_without_payer_signature() { + let payer = Keypair::new(); + let other = Keypair::new(); + let (instructions, _) = transfer_instructions(&payer.pubkey(), 1); + + let err = build_v1_transaction( + &instructions, + &payer.pubkey(), + &[&other], + LiteSVM::new().latest_blockhash(), + TransactionConfig::default(), + ) + .expect_err("signing with the wrong key must fail"); + assert!(matches!(err, RpcError::SigningError(_)), "{err:?}"); +} diff --git a/concurrent-merkle-tree/Cargo.toml b/concurrent-merkle-tree/Cargo.toml index 32e8b0a..d4b88b1 100644 --- a/concurrent-merkle-tree/Cargo.toml +++ b/concurrent-merkle-tree/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-concurrent-merkle-tree" -version = "6.0.0" +version = "7.0.0" edition = "2021" description = "Concurrent Merkle tree implementation" readme = "README.md" diff --git a/event/Cargo.toml b/event/Cargo.toml index 026de1d..44cee69 100644 --- a/event/Cargo.toml +++ b/event/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-event" -version = "0.24.0" +version = "0.25.0" description = "Event types and utilities for Light Protocol" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/hasher/Cargo.toml b/hasher/Cargo.toml index 668fb3d..23c8b58 100644 --- a/hasher/Cargo.toml +++ b/hasher/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-hasher" -version = "6.0.1" +version = "7.0.0" description = "Trait for generic usage of hash functions on Solana" readme = "README.md" repository = "https://github.com/Lightprotocol/light-protocol" diff --git a/indexed-array/Cargo.toml b/indexed-array/Cargo.toml index 6c28c6a..20501f8 100644 --- a/indexed-array/Cargo.toml +++ b/indexed-array/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-indexed-array" -version = "0.4.0" +version = "0.5.0" description = "Implementation of indexed (and concurrent) Merkle tree in Rust" readme = "README.md" repository = "https://github.com/Lightprotocol/light-protocol" diff --git a/indexed-merkle-tree/Cargo.toml b/indexed-merkle-tree/Cargo.toml index afb8543..8805998 100644 --- a/indexed-merkle-tree/Cargo.toml +++ b/indexed-merkle-tree/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-indexed-merkle-tree" -version = "6.0.0" +version = "7.0.0" description = "Implementation of indexed (and concurrent) Merkle tree in Rust" readme = "README.md" repository = "https://github.com/Lightprotocol/light-protocol" diff --git a/merkle-tree-metadata/Cargo.toml b/merkle-tree-metadata/Cargo.toml index 1dbe1a3..897bc05 100644 --- a/merkle-tree-metadata/Cargo.toml +++ b/merkle-tree-metadata/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-merkle-tree-metadata" -version = "0.12.0" +version = "0.13.0" description = "Merkle tree metadata for light-concurrent-merkle-tree, light-indexed-merkle-tree, light-batched-merkle-tree." readme = "README.md" repository = "https://github.com/Lightprotocol/light-protocol" diff --git a/merkle-tree-reference/Cargo.toml b/merkle-tree-reference/Cargo.toml index 7261252..45b28bd 100644 --- a/merkle-tree-reference/Cargo.toml +++ b/merkle-tree-reference/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-merkle-tree-reference" -version = "5.0.0" +version = "6.0.0" description = "Non-sparse reference Merkle tree implementation" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/prover-client/Cargo.toml b/prover-client/Cargo.toml index 8270d22..e910bfc 100644 --- a/prover-client/Cargo.toml +++ b/prover-client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-prover-client" -version = "9.0.0" +version = "10.0.0" description = "Crate for interacting with Light Protocol circuits" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/scripts/publish.sh b/scripts/publish.sh index 60ee427..c60dffc 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -28,26 +28,53 @@ elif [ -n "${1:-}" ]; then exit 1 fi +# Return 0 if crate $1 at version $2 is already on crates.io, by reading the +# sparse index (https://doc.rust-lang.org/cargo/reference/registry-index.html). +published_on_crates_io() { + local name="$1" version="$2" path + case "${#name}" in + 1) path="1/$name" ;; + 2) path="2/$name" ;; + 3) path="3/${name:0:1}/$name" ;; + *) path="${name:0:2}/${name:2:2}/$name" ;; + esac + curl -sf -A "light-sdks-publish" "https://index.crates.io/$path" \ + | jq -e --arg v "$version" 'select(.vers == $v)' >/dev/null 2>&1 +} + # Collect publishable workspace members (publish field absent => publishable; -# `publish = false` shows up as an empty array in cargo metadata). +# `publish = false` shows up as an empty array in cargo metadata) and drop the +# ones whose current version is already on crates.io, so a single-crate bump +# publishes only that crate. # Note: avoid `mapfile` (bash 4+) so this runs on macOS's default bash 3.2. PKGS=() -while IFS= read -r line; do - PKGS+=("$line") +SKIPPED=() +while IFS=$'\t' read -r name version; do + if published_on_crates_io "$name" "$version"; then + SKIPPED+=("$name@$version") + else + PKGS+=("$name@$version") + fi done < <( cargo metadata --no-deps --format-version 1 \ - | jq -r '.packages[] | select(.publish == null) | .name' \ + | jq -r '.packages[] | select(.publish == null) | "\(.name)\t\(.version)"' \ | sort ) +if [ "${#SKIPPED[@]}" -gt 0 ]; then + echo "Already on crates.io, skipping (${#SKIPPED[@]}):" + printf ' %s\n' "${SKIPPED[@]}" + echo "" +fi + if [ "${#PKGS[@]}" -eq 0 ]; then - echo "No publishable workspace crates found." >&2 - exit 1 + echo "Nothing to publish: every workspace crate version is already on crates.io." + exit 0 fi PKG_ARGS=() for pkg in "${PKGS[@]}"; do - PKG_ARGS+=(-p "$pkg") + PKG_ARGS+=(-p "${pkg%@*}") done echo "=========================================" diff --git a/sdk-macros/Cargo.toml b/sdk-macros/Cargo.toml index fd3b80c..2ff07ad 100644 --- a/sdk-macros/Cargo.toml +++ b/sdk-macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk-macros" -version = "0.24.0" +version = "0.25.0" description = "Macros for Programs using the Light SDK for ZK Compression " repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-types/Cargo.toml b/sdk-types/Cargo.toml index 1b3151a..497ce73 100644 --- a/sdk-types/Cargo.toml +++ b/sdk-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk-types" -version = "0.24.0" +version = "0.25.0" edition = "2021" license = "Apache-2.0" repository = "https://github.com/lightprotocol/light-protocol" diff --git a/sdk/Cargo.toml b/sdk/Cargo.toml index e8c32cc..e7dcce2 100644 --- a/sdk/Cargo.toml +++ b/sdk/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk" -version = "0.24.0" +version = "0.25.0" description = "Rust SDK for ZK Compression on Solana" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0"