diff --git a/.github/workflows/release_cli.yaml b/.github/workflows/release_cli.yaml index 0bf272a6..1dcfa7b0 100644 --- a/.github/workflows/release_cli.yaml +++ b/.github/workflows/release_cli.yaml @@ -63,6 +63,10 @@ jobs: platform: windows target: x86_64-pc-windows-msvc architecture: x64 + - os: macos-latest + platform: darwin + target: x86_64-apple-darwin + architecture: x64 - os: macos-latest platform: darwin target: aarch64-apple-darwin @@ -113,7 +117,7 @@ jobs: echo "SDKROOT=$(xcrun -sdk macosx --show-sdk-path)" >> $GITHUB_ENV echo "MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx --show-sdk-platform-version)" >> $GITHUB_ENV - - name: Configure openssl (macos) + - name: Configure openssl (macos x64) if: matrix.os == 'macos-latest' && matrix.architecture == 'x64' run: | brew install openssl@1.1 @@ -121,12 +125,21 @@ jobs: echo "OPENSSL_INCLUDE_DIR=$(brew --prefix openssl@1.1)/include" >> $GITHUB_ENV echo "OPENSSL_LIB_DIR=$(brew --prefix openssl@1.1)/lib" >> $GITHUB_ENV + - name: Configure openssl (macos arm64) + if: matrix.os == 'macos-latest' && matrix.architecture == 'arm64' + run: | + brew install openssl@1.1 + echo "OPENSSL_DIR=$(brew --prefix openssl@1.1)" >> $GITHUB_ENV + echo "OPENSSL_INCLUDE_DIR=$(brew --prefix openssl@1.1)/include" >> $GITHUB_ENV + echo "OPENSSL_LIB_DIR=$(brew --prefix openssl@1.1)/lib" >> $GITHUB_ENV + - name: Install LLVM (macOS) if: matrix.os == 'macos-latest' run: | brew install llvm echo "LIBCLANG_PATH=$(brew --prefix llvm)/lib" >> $GITHUB_ENV echo "BINDGEN_EXTRA_CLANG_ARGS=-I$(xcrun --show-sdk-path)/usr/include" >> $GITHUB_ENV + echo "LLVM_CONFIG_PATH=$(brew --prefix llvm)/bin/llvm-config" >> $GITHUB_ENV - name: Install LLVM/Clang (Linux) if: matrix.os == 'ubuntu-22.04' @@ -182,11 +195,21 @@ jobs: run: cargo build --release --locked --target ${{ matrix.target }} --features supervisor_ui --features version_check --features subgraph - - name: Build - Cargo (Unix) - if: matrix.os != 'windows-latest' + - name: Build - Cargo (macOS x64) + if: matrix.os == 'macos-latest' && matrix.architecture == 'x64' run: cargo build --release --locked --target ${{ matrix.target }} --features supervisor_ui --features version_check --features subgraph + - name: Build - Cargo (macOS ARM64) + if: matrix.os == 'macos-latest' && matrix.architecture == 'arm64' + run: + cargo build --release --locked --target ${{ matrix.target }} --features supervisor_ui --features version_check --features subgraph + + - name: Build - Cargo (Linux) + if: matrix.os == 'ubuntu-22.04' + run: + cargo build --release --locked --target ${{ matrix.target }} --features supervisor_ui --features version_check --features subgraph --features geyser_plugin + # Don't compress for Windows because winget can't yet unzip files - name: Compress cargo artifact (not windows) if: matrix.os != 'windows-latest' diff --git a/.github/workflows/docker.yml b/.github/workflows/release_image.yml similarity index 88% rename from .github/workflows/docker.yml rename to .github/workflows/release_image.yml index 312186c1..936829dc 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/release_image.yml @@ -1,9 +1,6 @@ name: Build and Push Docker Image on: - push: - branches: - - main release: types: [published] @@ -36,12 +33,10 @@ jobs: with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | - type=ref,event=branch - type=ref,event=pr type=semver,pattern={{version}} type=semver,pattern={{major}}.{{minor}} type=semver,pattern={{major}} - type=raw,value=latest,enable={{is_default_branch}} + type=raw,value=latest - name: Build and push Docker image uses: docker/build-push-action@v5 diff --git a/Cargo.lock b/Cargo.lock index 4a4c6119..64c4325d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -290,11 +290,11 @@ dependencies = [ [[package]] name = "agave-feature-set" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e35cc5b8887b993ba4975a23b6e098ee10db50e8e23ee3a9523035b7ca35b53b" +checksum = "25cd46ff4df0c1312818efb24123680a5f5a32ef6d7f1df8bbd3902c75a8721a" dependencies = [ - "ahash", + "ahash 0.8.12", "solana-epoch-schedule", "solana-hash", "solana-pubkey", @@ -304,9 +304,9 @@ dependencies = [ [[package]] name = "agave-geyser-plugin-interface" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1d86d04e054b285bbcba500237ed31fe2e12d97678814cb91647d0e1b810e0c" +checksum = "8899780dc6c7659a0a7a5e25b0ac484a8190c3c750fffd4771f8e0f65f1aa5b3" dependencies = [ "log 0.4.28", "solana-clock", @@ -318,9 +318,9 @@ dependencies = [ [[package]] name = "agave-io-uring" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9baa3925045a36b33bc9372857ac30706e3578f4e6258e811c51b897fd18f44f" +checksum = "798939642dd08c3841ea19244feb2805d05ecc34680c9dae99bf26ec2a6ed987" dependencies = [ "io-uring", "libc", @@ -331,9 +331,9 @@ dependencies = [ [[package]] name = "agave-precompiles" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3ed7e34efadfb4c7c18c12e8594ce01d8ea85a09cbad0c180e316f41e83e064" +checksum = "af27cc423e02b3cdcaa26a5372c95bff7b76288a4ccd86d5946b24e5a4119bbe" dependencies = [ "agave-feature-set", "bincode", @@ -353,9 +353,9 @@ dependencies = [ [[package]] name = "agave-reserved-account-keys" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685cb445fe51b7b8a914d1b7dd5a0ea0b106fb8ea9454e84c4cd726a5d87c571" +checksum = "6a24c61dba2e1f283e88d31a7efda64b9e00f60d26ecaf8d78055c7bdd6d4ba5" dependencies = [ "agave-feature-set", "solana-pubkey", @@ -364,9 +364,9 @@ dependencies = [ [[package]] name = "agave-transaction-view" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f03b445b2c9c4f6438d977f996780806339ae9bbc4bcc9af8bbd9ddc1148778a" +checksum = "7e56f62d16b3a8238310e823569469f65b46a923a1ba392ee8971bdc2f8b659a" dependencies = [ "solana-hash", "solana-message", @@ -378,6 +378,17 @@ dependencies = [ "solana-svm-transaction", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom 0.2.16", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.12" @@ -445,12 +456,6 @@ dependencies = [ "serde", ] -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - [[package]] name = "android_system_properties" version = "0.1.5" @@ -839,13 +844,50 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +[[package]] +name = "autotools" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef941527c41b0fc0dd48511a8154cd5fc7e29200a0ff8b7203c5d777dbc795cf" +dependencies = [ + "cc", +] + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core 0.3.4", + "bitflags 1.3.2", + "bytes 1.10.1", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.32", + "itoa", + "matchit 0.7.3", + "memchr", + "mime", + "percent-encoding 2.3.2", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper 0.1.2", + "tower 0.4.13", + "tower-layer", + "tower-service", +] + [[package]] name = "axum" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "021e862c184ae977658b36c4500f7feac3221ca5da43e3f25bd04ab6c79a29b5" dependencies = [ - "axum-core", + "axum-core 0.5.2", "axum-macros", "bytes 1.10.1", "form_urlencoded", @@ -856,7 +898,7 @@ dependencies = [ "hyper 1.7.0", "hyper-util", "itoa", - "matchit", + "matchit 0.8.4", "memchr", "mime", "percent-encoding 2.3.2", @@ -868,12 +910,29 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tower", + "tower 0.5.2", "tower-layer", "tower-service", "tracing", ] +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes 1.10.1", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + [[package]] name = "axum-core" version = "0.5.2" @@ -905,6 +964,20 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "backoff" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" +dependencies = [ + "futures-core", + "getrandom 0.2.16", + "instant", + "pin-project-lite", + "rand 0.8.5", + "tokio", +] + [[package]] name = "backtrace" version = "0.3.75" @@ -990,6 +1063,24 @@ dependencies = [ "serde", ] +[[package]] +name = "bindgen" +version = "0.72.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" +dependencies = [ + "bitflags 2.9.4", + "cexpr", + "clang-sys", + "itertools 0.13.0", + "proc-macro2", + "quote", + "regex", + "rustc-hash 2.1.1", + "shlex", + "syn 2.0.106", +] + [[package]] name = "bitflags" version = "1.3.2" @@ -1314,6 +1405,15 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + [[package]] name = "cfg-if" version = "0.1.10" @@ -1345,17 +1445,25 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.41" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ - "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "serde", "wasm-bindgen", - "windows-link 0.1.3", + "windows-link 0.2.0", +] + +[[package]] +name = "chrono-humanize" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799627e6b4d27827a814e837b9d8a504832086081806d45b1afa34dc982b023b" +dependencies = [ + "chrono", ] [[package]] @@ -1377,6 +1485,31 @@ dependencies = [ "inout", ] +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", +] + +[[package]] +name = "clap" +version = "2.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" +dependencies = [ + "ansi_term", + "atty", + "bitflags 1.3.2", + "strsim 0.8.0", + "textwrap 0.11.0", + "unicode-width 0.1.14", + "vec_map", +] + [[package]] name = "clap" version = "3.2.25" @@ -1386,7 +1519,7 @@ dependencies = [ "bitflags 1.3.2", "clap_lex 0.2.4", "indexmap 1.9.3", - "textwrap", + "textwrap 0.16.2", ] [[package]] @@ -1408,7 +1541,7 @@ dependencies = [ "anstream", "anstyle", "clap_lex 0.7.5", - "strsim", + "strsim 0.11.1", ] [[package]] @@ -1561,15 +1694,15 @@ dependencies = [ [[package]] name = "console" -version = "0.16.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e09ced7ebbccb63b4c65413d821f2e00ce54c5ca4514ddc6b3c892fdbcbc69d" +checksum = "b430743a6eb14e9764d4260d4c0d8123087d504eeb9c48f2b2a5e810dd369df4" dependencies = [ "encode_unicode", "libc", "once_cell", "unicode-width 0.2.0", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -1665,6 +1798,18 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "core_affinity" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f8a03115cc34fb0d7c321dd154a3914b3ca082ccc5c11d91bf7117dbbe7171f" +dependencies = [ + "kernel32-sys", + "libc", + "num_cpus", + "winapi 0.2.8", +] + [[package]] name = "cpufeatures" version = "0.2.17" @@ -1812,12 +1957,13 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.4.7" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f93780a459b7d656ef7f071fe699c4d3d2cb201c4b24d085b6ddc505276e73" +checksum = "881c5d0a13b2f1498e2306e82cbada78390e152d4b1378fb28a84f4dcd0dc4f3" dependencies = [ + "dispatch", "nix", - "windows-sys 0.59.0", + "windows-sys 0.61.0", ] [[package]] @@ -1868,7 +2014,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "804169db156b21258a2545757336922d93dfa229892c75911a0ad141aa0ff241" dependencies = [ - "petgraph", + "petgraph 0.8.2", ] [[package]] @@ -1891,7 +2037,7 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", + "strsim 0.11.1", "syn 2.0.106", ] @@ -2023,6 +2169,18 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "dialoguer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59c6f2989294b9a498d3ad5491a79c6deb604617378e1cdc4bfc1c1361fe2f87" +dependencies = [ + "console 0.15.11", + "shell-words", + "tempfile", + "zeroize", +] + [[package]] name = "dialoguer" version = "0.11.0" @@ -2148,6 +2306,16 @@ dependencies = [ "dirs-sys 0.5.0", ] +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if 1.0.3", + "dirs-sys-next", +] + [[package]] name = "dirs-sys" version = "0.4.1" @@ -2172,6 +2340,23 @@ dependencies = [ "windows-sys 0.61.0", ] +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users 0.4.6", + "winapi 0.3.9", +] + +[[package]] +name = "dispatch" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" + [[package]] name = "displaydoc" version = "0.2.5" @@ -2311,9 +2496,9 @@ dependencies = [ [[package]] name = "enum-iterator-derive" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b" +checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", @@ -2362,12 +2547,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -2403,6 +2588,15 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" +[[package]] +name = "fast-math" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2465292146cdfc2011350fe3b1c616ac83cf0faeedb33463ba1c332ed8948d66" +dependencies = [ + "ieee754", +] + [[package]] name = "fastbloom" version = "0.14.0" @@ -2494,6 +2688,12 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "fixedbitset" version = "0.5.7" @@ -2561,6 +2761,12 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28dd6caf6059519a65843af8fe2a3ae298b14b80179855aeb4adc2c1934ee619" +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + [[package]] name = "fsevent-sys" version = "4.1.0" @@ -2765,7 +2971,7 @@ dependencies = [ "js-sys", "libc", "r-efi", - "wasi 0.14.3+wasi-0.2.4", + "wasi 0.14.5+wasi-0.2.4", "wasm-bindgen", ] @@ -2775,6 +2981,12 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +[[package]] +name = "glob" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" + [[package]] name = "globset" version = "0.4.16" @@ -2788,6 +3000,25 @@ dependencies = [ "regex-syntax", ] +[[package]] +name = "goauth" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8af59a261bcf42f45d1b261232847b9b850ba0a1419d6100698246fb66e9240" +dependencies = [ + "arc-swap", + "futures 0.3.31", + "log 0.4.28", + "reqwest 0.11.27", + "serde", + "serde_derive", + "serde_json", + "simpl", + "smpl_jwt", + "time", + "tokio", +] + [[package]] name = "governor" version = "0.6.3" @@ -2878,7 +3109,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.11.0", + "indexmap 2.11.1", "slab", "tokio", "tokio-util 0.7.16", @@ -2897,7 +3128,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.3.1", - "indexmap 2.11.0", + "indexmap 2.11.1", "slab", "tokio", "tokio-util 0.7.16", @@ -2918,6 +3149,9 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.8", +] [[package]] name = "hashbrown" @@ -2925,7 +3159,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash", + "ahash 0.8.12", ] [[package]] @@ -2934,7 +3168,7 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash", + "ahash 0.8.12", "allocator-api2", ] @@ -2973,6 +3207,30 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "headers" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270" +dependencies = [ + "base64 0.21.7", + "bytes 1.10.1", + "headers-core", + "http 0.2.12", + "httpdate", + "mime", + "sha1", +] + +[[package]] +name = "headers-core" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" +dependencies = [ + "http 0.2.12", +] + [[package]] name = "heck" version = "0.3.3" @@ -3015,6 +3273,19 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hidapi" +version = "2.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03b876ecf37e86b359573c16c8366bc3eba52b689884a0fc42ba3f67203d2a8b" +dependencies = [ + "cc", + "cfg-if 1.0.3", + "libc", + "pkg-config", + "windows-sys 0.48.0", +] + [[package]] name = "hifijson" version = "0.2.3" @@ -3103,6 +3374,15 @@ dependencies = [ "hmac 0.8.1", ] +[[package]] +name = "home" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +dependencies = [ + "windows-sys 0.59.0", +] + [[package]] name = "http" version = "0.2.12" @@ -3224,6 +3504,24 @@ dependencies = [ "want", ] +[[package]] +name = "hyper-proxy" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca815a891b24fdfb243fa3239c86154392b0953ee584aa1a2a1f66d20cbe75cc" +dependencies = [ + "bytes 1.10.1", + "futures 0.3.31", + "headers", + "http 0.2.12", + "hyper 0.14.32", + "hyper-tls 0.5.0", + "native-tls", + "tokio", + "tokio-native-tls", + "tower-service", +] + [[package]] name = "hyper-rustls" version = "0.24.2" @@ -3256,7 +3554,32 @@ dependencies = [ ] [[package]] -name = "hyper-tls" +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper 0.14.32", + "pin-project-lite", + "tokio", + "tokio-io-timeout", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes 1.10.1", + "hyper 0.14.32", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "hyper-tls" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" @@ -3309,7 +3632,7 @@ dependencies = [ "js-sys", "log 0.4.28", "wasm-bindgen", - "windows-core", + "windows-core 0.61.2", ] [[package]] @@ -3445,6 +3768,12 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "ieee754" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c" + [[package]] name = "im" version = "15.1.0" @@ -3499,12 +3828,13 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.11.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" +checksum = "206a8042aec68fa4a62e8d3f7aa4ceb508177d9324faf261e1959e495b7a1921" dependencies = [ "equivalent", "hashbrown 0.15.5", + "rayon", "serde", ] @@ -3527,7 +3857,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70a646d946d06bedbbc4cac4c218acf4bbf2d87757a784857025f4d447e4e1cd" dependencies = [ - "console 0.16.0", + "console 0.16.1", "portable-atomic", "unicode-width 0.2.0", "unit-prefix", @@ -3730,10 +4060,10 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fe95ec3c24af3fd9f3dd1091593f5e49b003a66c496a8aa39d764d0a06ae17b" dependencies = [ - "ahash", + "ahash 0.8.12", "dyn-clone", "hifijson", - "indexmap 2.11.0", + "indexmap 2.11.1", "jaq-syn", "once_cell", "serde_json", @@ -3955,7 +4285,7 @@ dependencies = [ "auto_enums", "fnv", "futures 0.3.31", - "indexmap 2.11.0", + "indexmap 2.11.1", "juniper_codegen", "serde", "smartstring", @@ -4105,6 +4435,15 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" +[[package]] +name = "lazy-lru" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a35523c6dfa972e1fd19132ef647eff4360a6546c6271807e1327ca6e8797f96" +dependencies = [ + "hashbrown 0.15.5", +] + [[package]] name = "lazy_static" version = "1.5.0" @@ -4150,6 +4489,20 @@ dependencies = [ "redox_syscall 0.5.17", ] +[[package]] +name = "librocksdb-sys" +version = "0.17.3+10.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cef2a00ee60fe526157c9023edab23943fae1ce2ab6f4abb2a807c1746835de9" +dependencies = [ + "bindgen", + "bzip2-sys", + "cc", + "libc", + "libz-sys", + "lz4-sys", +] + [[package]] name = "libsecp256k1" version = "0.3.5" @@ -4279,6 +4632,17 @@ version = "0.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64804cc6a5042d4f05379909ba25b503ec04e2c082151d62122d5dcaa274b961" +[[package]] +name = "libz-sys" +version = "1.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b70e7a7df205e92a1a4cd9aaae7898dac0aa555503cc0a649494d0d60e7651d" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + [[package]] name = "light-poseidon" version = "0.2.0" @@ -4299,9 +4663,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" @@ -4312,15 +4676,14 @@ checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" [[package]] name = "litesvm" version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b57cf6c4dac872c3e0e1f2f6f9cfd4e09143d6af04acf2fd34394a3041b0468" +source = "git+https://github.com/txtx/litesvm.git?branch=fix%2Frelax-deps#744cf68d46819ac1d605101ddb4528e1ed3b0bb7" dependencies = [ "agave-feature-set", "agave-precompiles", "agave-reserved-account-keys", "ansi_term", "bincode", - "indexmap 2.11.0", + "indexmap 2.11.1", "itertools 0.14.0", "log 0.4.28", "qualifier_attr", @@ -4415,6 +4778,15 @@ version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +[[package]] +name = "lru" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" +dependencies = [ + "hashbrown 0.12.3", +] + [[package]] name = "lru" version = "0.12.5" @@ -4464,6 +4836,12 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" +[[package]] +name = "matchit" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" + [[package]] name = "matchit" version = "0.8.4" @@ -4655,6 +5033,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "multimap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" + [[package]] name = "mustache" version = "0.9.0" @@ -5049,7 +5433,7 @@ dependencies = [ "mio 0.6.23", "mio-extras", "rand 0.7.3", - "sha-1", + "sha-1 0.8.2", "slab", "url 2.5.7", ] @@ -5259,18 +5643,48 @@ dependencies = [ "sha2 0.10.9", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset 0.4.2", + "indexmap 2.11.1", +] + [[package]] name = "petgraph" version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "54acf3a685220b533e437e264e4d932cfbdc4cc7ec0cd232ed73c08d03b8a7ca" dependencies = [ - "fixedbitset", + "fixedbitset 0.5.7", "hashbrown 0.15.5", - "indexmap 2.11.0", + "indexmap 2.11.1", "serde", ] +[[package]] +name = "pin-project" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "pin-project-lite" version = "0.2.16" @@ -5371,6 +5785,16 @@ dependencies = [ "termtree", ] +[[package]] +name = "prettyplease" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86" +dependencies = [ + "proc-macro2", + "syn 1.0.109", +] + [[package]] name = "primitive-types" version = "0.13.1" @@ -5453,6 +5877,69 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "prost" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" +dependencies = [ + "bytes 1.10.1", + "prost-derive", +] + +[[package]] +name = "prost-build" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" +dependencies = [ + "bytes 1.10.1", + "heck 0.4.1", + "itertools 0.10.5", + "lazy_static", + "log 0.4.28", + "multimap", + "petgraph 0.6.5", + "prettyplease", + "prost", + "prost-types", + "regex", + "syn 1.0.109", + "tempfile", + "which", +] + +[[package]] +name = "prost-derive" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" +dependencies = [ + "anyhow", + "itertools 0.10.5", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "prost-types" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13" +dependencies = [ + "prost", +] + +[[package]] +name = "protobuf-src" +version = "1.1.0+21.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7ac8852baeb3cc6fb83b93646fb93c0ffe5d14bf138c945ceb4b9948ee0e3c1" +dependencies = [ + "autotools", +] + [[package]] name = "qstring" version = "0.7.2" @@ -5693,7 +6180,7 @@ dependencies = [ "indoc", "instability", "itertools 0.13.0", - "lru", + "lru 0.12.5", "paste", "strum 0.26.3", "unicode-segmentation", @@ -5770,6 +6257,21 @@ dependencies = [ "thiserror 2.0.16", ] +[[package]] +name = "reed-solomon-erasure" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7263373d500d4d4f505d43a2a662d475a894aa94503a1ee28e9188b5f3960d4f" +dependencies = [ + "cc", + "libc", + "libm", + "lru 0.7.8", + "parking_lot 0.11.2", + "smallvec", + "spin", +] + [[package]] name = "ref-cast" version = "1.0.24" @@ -5841,10 +6343,12 @@ dependencies = [ "http-body 0.4.6", "hyper 0.14.32", "hyper-rustls 0.24.2", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log 0.4.28", "mime", + "native-tls", "once_cell", "percent-encoding 2.3.2", "pin-project-lite", @@ -5856,6 +6360,7 @@ dependencies = [ "sync_wrapper 0.1.2", "system-configuration 0.5.1", "tokio", + "tokio-native-tls", "tokio-rustls 0.24.1", "tower-service", "url 2.5.7", @@ -5885,7 +6390,7 @@ dependencies = [ "http-body-util", "hyper 1.7.0", "hyper-rustls 0.27.7", - "hyper-tls", + "hyper-tls 0.6.0", "hyper-util", "js-sys", "log 0.4.28", @@ -5904,7 +6409,7 @@ dependencies = [ "tokio-native-tls", "tokio-rustls 0.26.2", "tokio-util 0.7.16", - "tower", + "tower 0.5.2", "tower-http", "tower-service", "url 2.5.7", @@ -5957,7 +6462,7 @@ name = "rmcp" version = "0.1.5" source = "git+https://github.com/modelcontextprotocol/rust-sdk?rev=ff71a526156e6c9409c450f71eccd6aced9bc339#ff71a526156e6c9409c450f71eccd6aced9bc339" dependencies = [ - "axum", + "axum 0.8.4", "base64 0.22.1", "bytes 1.10.1", "chrono", @@ -5993,6 +6498,37 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "rocksdb" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26ec73b20525cb235bad420f911473b69f9fe27cc856c5461bccd7e4af037f43" +dependencies = [ + "libc", + "librocksdb-sys", +] + +[[package]] +name = "rpassword" +version = "7.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66d4c8b64f049c6721ec8ccec37ddfc3d641c4a7fca57e8f2a89de509c73df39" +dependencies = [ + "libc", + "rtoolbox", + "windows-sys 0.59.0", +] + +[[package]] +name = "rtoolbox" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7cc970b249fbe527d6e02e0a227762c9108b2f49d81094fe357ffc6d14d7f6f" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + [[package]] name = "rust-embed" version = "8.7.2" @@ -6078,15 +6614,15 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.8" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ "bitflags 2.9.4", "errno", "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.60.2", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.0", ] [[package]] @@ -6124,7 +6660,7 @@ dependencies = [ "openssl-probe", "rustls-pki-types", "schannel", - "security-framework 3.3.0", + "security-framework 3.4.0", ] [[package]] @@ -6161,7 +6697,7 @@ dependencies = [ "rustls-native-certs", "rustls-platform-verifier-android", "rustls-webpki 0.103.4", - "security-framework 3.3.0", + "security-framework 3.4.0", "security-framework-sys", "webpki-root-certs", "windows-sys 0.59.0", @@ -6217,11 +6753,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.0", ] [[package]] @@ -6313,9 +6849,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80fb1d92c5028aa318b4b8bd7302a5bfcf48be96a37fc6fc790f806b0004ee0c" +checksum = "60b369d18893388b345804dc0007963c99b7d665ae71d275812d828c6f089640" dependencies = [ "bitflags 2.9.4", "core-foundation 0.10.1", @@ -6326,9 +6862,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" dependencies = [ "core-foundation-sys", "libc", @@ -6404,7 +6940,7 @@ version = "1.0.143" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.1", "itoa", "memchr", "ryu", @@ -6452,7 +6988,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.11.0", + "indexmap 2.11.1", "schemars 0.9.0", "schemars 1.0.4", "serde", @@ -6474,13 +7010,26 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "serde_yaml" +version = "0.9.34+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +dependencies = [ + "indexmap 2.11.1", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + [[package]] name = "serde_yml" version = "0.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e76bab63c3fd98d27c17f9cbce177f64a91f5e69ac04cafe04e1bb25d1dc3c" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.1", "itoa", "libyml", "log 0.4.28", @@ -6503,6 +7052,19 @@ dependencies = [ "opaque-debug 0.2.3", ] +[[package]] +name = "sha-1" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if 1.0.3", + "cpufeatures", + "digest 0.9.0", + "opaque-debug 0.3.1", +] + [[package]] name = "sha1" version = "0.10.6" @@ -6623,6 +7185,12 @@ version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" +[[package]] +name = "simpl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a30f10c911c0355f80f1c2faa8096efc4a58cdf8590b954d5b395efa071c711" + [[package]] name = "simple_asn1" version = "0.6.3" @@ -6745,6 +7313,22 @@ dependencies = [ "version_check", ] +[[package]] +name = "smpl_jwt" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b6ff8c21c74ce7744643a7cddbb02579a44f1f77e4316bff1ddb741aca8ac9" +dependencies = [ + "base64 0.13.1", + "log 0.4.28", + "openssl", + "serde", + "serde_derive", + "serde_json", + "simpl", + "time", +] + [[package]] name = "socket2" version = "0.5.10" @@ -6765,6 +7349,21 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "soketto" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" +dependencies = [ + "base64 0.13.1", + "bytes 1.10.1", + "futures 0.3.31", + "httparse", + "log 0.4.28", + "rand 0.8.5", + "sha-1 0.9.8", +] + [[package]] name = "solana-account" version = "2.2.1" @@ -6785,9 +7384,9 @@ dependencies = [ [[package]] name = "solana-account-decoder" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5963fbe3e1099613c270fd5ebc0ff5c6e88a2bea2505b6e348daa0466282cd6" +checksum = "2b28a45ffb68d666fbc1c44d28915e52a4d7635d08b79c544af0b363b23c0177" dependencies = [ "Inflector", "base64 0.22.1", @@ -6828,9 +7427,9 @@ dependencies = [ [[package]] name = "solana-account-decoder-client-types" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59f2101f4cc33e3fbfc8d1d23ea35d8532d6f1fa6a7c7081742e886f98f33126" +checksum = "2dd980b9d9eb77995beff21b1198d7c56664e96536a42097ea63a7835b6b5fca" dependencies = [ "base64 0.22.1", "bs58", @@ -6857,12 +7456,12 @@ dependencies = [ [[package]] name = "solana-accounts-db" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c1896bbe7e8d2cba017f4b44bbb535b8ed55a4645c5b97a7d2ded9564e8e9ac" +checksum = "8c5c00e301e9fc2614870be8e8c3e4e8510de9a75ec88eda77b33ad72deb6eaa" dependencies = [ "agave-io-uring", - "ahash", + "ahash 0.8.12", "bincode", "blake3", "bv", @@ -6871,7 +7470,7 @@ dependencies = [ "bzip2", "crossbeam-channel", "dashmap", - "indexmap 2.11.0", + "indexmap 2.11.1", "io-uring", "itertools 0.12.1", "log 0.4.28", @@ -6982,6 +7581,21 @@ dependencies = [ "solana-sanitize", ] +[[package]] +name = "solana-bloom" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce0841913fbcb6fece37a47032d5a6e88c664df05c9ade43f67ce030678280a1" +dependencies = [ + "bv", + "fnv", + "rand 0.8.5", + "serde", + "serde_derive", + "solana-sanitize", + "solana-time-utils", +] + [[package]] name = "solana-bn254" version = "2.2.2" @@ -7009,9 +7623,9 @@ dependencies = [ [[package]] name = "solana-bpf-loader-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3683aa9cca66ebf45f700336127c7375c5117ecec9060bf1baf5209601c5331" +checksum = "8c5a033e2cc31317f75c38c32d0d7f104dfa77a71a09a7fa1c5f3501f57c26b3" dependencies = [ "bincode", "libsecp256k1 0.6.0", @@ -7056,9 +7670,9 @@ dependencies = [ [[package]] name = "solana-bucket-map" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e741372956b0c16e7afc6e9417c1780240f6f9a3651c8ebea87c85095e393f" +checksum = "ce40527d5002173f3d6f53d7db5a14f10bbe74aba6390a1c2bc77945829ab1e0" dependencies = [ "bv", "bytemuck", @@ -7075,9 +7689,9 @@ dependencies = [ [[package]] name = "solana-builtins" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16594c9f661decb9e562ab459f7ddf587654159dd757bb17a08814534809c42d" +checksum = "a174c341e0a52a7e84a4fee995f977adb92610c9b3abf256acb7b6184370de35" dependencies = [ "agave-feature-set", "solana-bpf-loader-program", @@ -7096,12 +7710,12 @@ dependencies = [ [[package]] name = "solana-builtins-default-costs" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75c73a28594da1aac17ce9641830a48c1bc7dd7156db16ba939eb6811b4ee1b" +checksum = "829bba32da99c98f2c27ea18466a6d9f31a4aaa50d5e472a5726954c7f80651a" dependencies = [ "agave-feature-set", - "ahash", + "ahash 0.8.12", "log 0.4.28", "solana-bpf-loader-program", "solana-compute-budget-program", @@ -7114,24 +7728,68 @@ dependencies = [ ] [[package]] -name = "solana-client" -version = "2.3.7" +name = "solana-clap-utils" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c4a1e134e7f683fca78ff3912f1590858b51f6a64aad417d30baca8926ed2fd" +checksum = "5e2fe66b1c965d0623046253ee4eb96356ede1e1caf1527191c8599c721c51d1" dependencies = [ - "async-trait", - "bincode", - "dashmap", - "futures 0.3.31", - "futures-util", - "indexmap 2.11.0", - "indicatif 0.17.11", - "log 0.4.28", - "quinn", - "rayon", - "solana-account", - "solana-client-traits", - "solana-commitment-config", + "chrono", + "clap 2.34.0", + "rpassword", + "solana-clock", + "solana-cluster-type", + "solana-commitment-config", + "solana-derivation-path", + "solana-hash", + "solana-keypair", + "solana-message", + "solana-native-token 2.2.2", + "solana-presigner", + "solana-pubkey", + "solana-remote-wallet", + "solana-seed-phrase", + "solana-signature", + "solana-signer", + "thiserror 2.0.16", + "tiny-bip39", + "uriparse", + "url 2.5.7", +] + +[[package]] +name = "solana-cli-config" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48ea0c21e0bd209fdb5276efadd158cae47a69826db6e34acf851875e945443d" +dependencies = [ + "dirs-next", + "serde", + "serde_derive", + "serde_yaml", + "solana-clap-utils", + "solana-commitment-config", + "url 2.5.7", +] + +[[package]] +name = "solana-client" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67544470e5b1318700049dccde03d83f2ef9ed577690cc7c025ba10f9c94056" +dependencies = [ + "async-trait", + "bincode", + "dashmap", + "futures 0.3.31", + "futures-util", + "indexmap 2.11.1", + "indicatif 0.17.11", + "log 0.4.28", + "quinn", + "rayon", + "solana-account", + "solana-client-traits", + "solana-commitment-config", "solana-connection-cache", "solana-epoch-info", "solana-hash", @@ -7216,9 +7874,9 @@ dependencies = [ [[package]] name = "solana-compute-budget" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ca5c1ad02e159d1c1d7c79e698a4d3399f22a6a43943032a478b6adc6b359f" +checksum = "0605a23cd945361be07353d98a4cb17e0ea966d9533dc51ad1e137dcccef264b" dependencies = [ "solana-fee-structure", "solana-program-runtime", @@ -7226,9 +7884,9 @@ dependencies = [ [[package]] name = "solana-compute-budget-instruction" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08018e73a6c7e9948cbcb7e7528bd6ae72fc5733344d11038663a3aa7e8d1aeb" +checksum = "eb00f2f2f85447cbee3059b9f4e1e0967730b754d1af761005a3bfa8b01bc186" dependencies = [ "agave-feature-set", "log 0.4.28", @@ -7260,9 +7918,9 @@ dependencies = [ [[package]] name = "solana-compute-budget-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721657cd1f8022e36338ca93f01843f39404a4223c37b7c025116fff172d7a4f" +checksum = "b4ae4f094815778a2ee9d432423002cde0f2d1774c3ebba0eb1aab59834254fa" dependencies = [ "solana-program-runtime", ] @@ -7282,15 +7940,15 @@ dependencies = [ [[package]] name = "solana-connection-cache" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be7fcabde8fdaa5a0e6fbbd0ed4cd07e5754e7d187b69be663811c236b891961" +checksum = "772385fb1d28eb36476a02f892011aa472bf975742ad7b0727be5ac24a08711e" dependencies = [ "async-trait", "bincode", "crossbeam-channel", "futures-util", - "indexmap 2.11.0", + "indexmap 2.11.1", "log 0.4.28", "rand 0.8.5", "rayon", @@ -7305,12 +7963,12 @@ dependencies = [ [[package]] name = "solana-cost-model" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eedb024203ce2ef73bf90f10cc6249402b41a1d9421f01a1d8272defe60b33d" +checksum = "b78487bf7e6705966b492db0f6ad01987aebe946d71f535d06a1e469c949f614" dependencies = [ "agave-feature-set", - "ahash", + "ahash 0.8.12", "log 0.4.28", "solana-bincode", "solana-borsh", @@ -7347,9 +8005,9 @@ dependencies = [ [[package]] name = "solana-curve25519" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b162f50499b391b785d57b2f2c73e3b9754d88fd4894bef444960b00bda8dcca" +checksum = "8ae1f4d4aeca2150abd9c731d23ff6c157af0d6828c1c17a3fc22b1a7804c8ee" dependencies = [ "bytemuck", "bytemuck_derive", @@ -7400,6 +8058,32 @@ dependencies = [ "solana-sdk-ids", ] +[[package]] +name = "solana-entry" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d94fe35e611fc0ae9cea35f935bc3ed909f8858643404d56ad941e387f02de00" +dependencies = [ + "bincode", + "crossbeam-channel", + "dlopen2", + "log 0.4.28", + "rand 0.8.5", + "rayon", + "serde", + "solana-hash", + "solana-measure", + "solana-merkle-tree", + "solana-metrics", + "solana-packet", + "solana-perf", + "solana-rayon-threadlimit", + "solana-runtime-transaction", + "solana-sha256-hasher", + "solana-transaction", + "solana-transaction-error", +] + [[package]] name = "solana-epoch-info" version = "2.2.1" @@ -7469,6 +8153,39 @@ dependencies = [ "thiserror 2.0.16", ] +[[package]] +name = "solana-faucet" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd49569366d48e1bff445839d3d4ce05621da0a52d59162d289999df45959f30" +dependencies = [ + "bincode", + "clap 2.34.0", + "crossbeam-channel", + "log 0.4.28", + "serde", + "serde_derive", + "solana-clap-utils", + "solana-cli-config", + "solana-hash", + "solana-instruction", + "solana-keypair", + "solana-logger", + "solana-message", + "solana-metrics", + "solana-native-token 2.2.2", + "solana-packet", + "solana-pubkey", + "solana-signer", + "solana-system-interface", + "solana-system-transaction", + "solana-transaction", + "solana-version", + "spl-memo", + "thiserror 2.0.16", + "tokio", +] + [[package]] name = "solana-feature-gate-interface" version = "2.2.2" @@ -7494,7 +8211,7 @@ version = "2.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93b93971e289d6425f88e6e3cb6668c4b05df78b3c518c249be55ced8efd6b6d" dependencies = [ - "ahash", + "ahash 0.8.12", "lazy_static", "solana-epoch-schedule", "solana-hash", @@ -7504,9 +8221,9 @@ dependencies = [ [[package]] name = "solana-fee" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84f835d9020fc0129593cb5e76daa8f8a4edaf916fc2ae0148a23fe56c220337" +checksum = "a23e748e67258263cbb943f81f5503af802a60599bc105e1ef7772a736b31688" dependencies = [ "agave-feature-set", "solana-fee-structure", @@ -7533,7 +8250,7 @@ dependencies = [ "serde", "serde_derive", "solana-message", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", ] [[package]] @@ -7566,6 +8283,103 @@ dependencies = [ "solana-time-utils", ] +[[package]] +name = "solana-geyser-plugin-manager" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d6c1a1de538935f5c80d9e157d6cc032618e5ebfcf480f65153213194d90f8f" +dependencies = [ + "agave-geyser-plugin-interface", + "bs58", + "crossbeam-channel", + "json5", + "jsonrpc-core", + "libloading", + "log 0.4.28", + "serde_json", + "solana-account", + "solana-accounts-db", + "solana-clock", + "solana-entry", + "solana-ledger", + "solana-measure", + "solana-metrics", + "solana-pubkey", + "solana-rpc", + "solana-runtime", + "solana-signature", + "solana-transaction", + "solana-transaction-status", + "thiserror 2.0.16", + "tokio", +] + +[[package]] +name = "solana-gossip" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b388f9e9ae477e2ac44a5db3c55d80b41f99e4d00d9f3c4653a49a74d8390974" +dependencies = [ + "agave-feature-set", + "arrayvec", + "assert_matches", + "bincode", + "bv", + "clap 2.34.0", + "crossbeam-channel", + "flate2", + "indexmap 2.11.1", + "itertools 0.12.1", + "log 0.4.28", + "lru 0.7.8", + "num-traits", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rayon", + "serde", + "serde-big-array", + "serde_bytes", + "serde_derive", + "siphasher 1.0.1", + "solana-bloom", + "solana-clap-utils", + "solana-client", + "solana-clock", + "solana-connection-cache", + "solana-entry", + "solana-epoch-schedule", + "solana-hash", + "solana-keypair", + "solana-ledger", + "solana-logger", + "solana-measure", + "solana-metrics", + "solana-native-token 2.2.2", + "solana-net-utils", + "solana-packet", + "solana-perf", + "solana-pubkey", + "solana-quic-definitions", + "solana-rayon-threadlimit", + "solana-rpc-client", + "solana-runtime", + "solana-sanitize", + "solana-serde-varint", + "solana-sha256-hasher", + "solana-short-vec", + "solana-signature", + "solana-signer", + "solana-streamer", + "solana-time-utils", + "solana-tpu-client", + "solana-transaction", + "solana-version", + "solana-vote", + "solana-vote-program", + "static_assertions", + "thiserror 2.0.16", +] + [[package]] name = "solana-hard-forks" version = "2.2.1" @@ -7674,13 +8488,13 @@ dependencies = [ [[package]] name = "solana-keypair" -version = "2.2.3" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd3f04aa1a05c535e93e121a95f66e7dcccf57e007282e8255535d24bf1e98bb" +checksum = "3dbb7042c2e0c561afa07242b2099d55c57bd1b1da3b6476932197d84e15e3e4" dependencies = [ + "bs58", "ed25519-dalek", "ed25519-dalek-bip32", - "five8", "rand 0.7.3", "solana-derivation-path", "solana-pubkey", @@ -7706,9 +8520,9 @@ dependencies = [ [[package]] name = "solana-lattice-hash" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8f3b668f433cd8716b2db7f58682abc8f7cc876dbe86f27620abb91fa13e4e5" +checksum = "6562b781b48b3365f593d478a9f75be70906d9f96ca432e2bc14d0088fa41dab" dependencies = [ "base64 0.22.1", "blake3", @@ -7716,6 +8530,103 @@ dependencies = [ "bytemuck", ] +[[package]] +name = "solana-ledger" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5e03b09b552ebdda454c984bbd0a6d2ec6129c690480f5f85f788e169da987e" +dependencies = [ + "agave-feature-set", + "agave-reserved-account-keys", + "anyhow", + "assert_matches", + "bincode", + "bitflags 2.9.4", + "bzip2", + "chrono", + "chrono-humanize", + "crossbeam-channel", + "dashmap", + "eager", + "fs_extra", + "futures 0.3.31", + "itertools 0.12.1", + "lazy-lru", + "libc", + "log 0.4.28", + "lru 0.7.8", + "mockall", + "num_cpus", + "num_enum", + "prost", + "qualifier_attr", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rayon", + "reed-solomon-erasure", + "rocksdb", + "scopeguard", + "serde", + "serde_bytes", + "sha2 0.10.9", + "solana-account", + "solana-account-decoder", + "solana-accounts-db", + "solana-address-lookup-table-interface", + "solana-bpf-loader-program", + "solana-clock", + "solana-cost-model", + "solana-entry", + "solana-epoch-schedule", + "solana-genesis-config", + "solana-hash", + "solana-instruction", + "solana-keypair", + "solana-measure", + "solana-message", + "solana-metrics", + "solana-native-token 2.2.2", + "solana-net-utils", + "solana-packet", + "solana-perf", + "solana-program-runtime", + "solana-pubkey", + "solana-rayon-threadlimit", + "solana-runtime", + "solana-runtime-transaction", + "solana-seed-derivable", + "solana-sha256-hasher", + "solana-shred-version", + "solana-signature", + "solana-signer", + "solana-stake-interface", + "solana-stake-program", + "solana-storage-bigtable", + "solana-storage-proto", + "solana-streamer", + "solana-svm", + "solana-svm-transaction", + "solana-system-interface", + "solana-system-transaction", + "solana-time-utils", + "solana-timings", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "solana-transaction-status", + "solana-vote", + "solana-vote-program", + "static_assertions", + "strum 0.24.1", + "strum_macros 0.24.3", + "tar", + "tempfile", + "thiserror 2.0.16", + "tokio", + "tokio-stream", + "trees", +] + [[package]] name = "solana-loader-v2-interface" version = "2.2.1" @@ -7762,9 +8673,9 @@ dependencies = [ [[package]] name = "solana-loader-v4-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfbb2ff7b431e9beb683287d5d0c1fedce60c92ac78ccc0fe86e5e363949f044" +checksum = "4c2b7513adc4457337508fa15d7e276d6099aab5d79a3c6ccc98cb2f3c45579e" dependencies = [ "log 0.4.28", "qualifier_attr", @@ -7787,9 +8698,9 @@ dependencies = [ [[package]] name = "solana-log-collector" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3560dcb42a0317610a0e226553ef7cad28063cf4082e94bd51b28f449eb79a" +checksum = "41bf2787d94d109672fcc89e04811b32670e6568cc7946134e52aa240f17d99c" dependencies = [ "log 0.4.28", ] @@ -7809,9 +8720,20 @@ dependencies = [ [[package]] name = "solana-measure" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e0e02388fa871b8b42c59ff5f7123370c47a5f389f8e773b4c5402c20ec7e04" +checksum = "99fcd5a5fb34dbbc9f871c233665ddb34bd3911e0ccd648d541bc4c1fcf67700" + +[[package]] +name = "solana-merkle-tree" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7644235fb5c0641c53267f87637b9e2e9189dd3b2751cc58aa9f17fcf6f8e28" +dependencies = [ + "fast-math", + "solana-hash", + "solana-sha256-hasher", +] [[package]] name = "solana-message" @@ -7838,9 +8760,9 @@ dependencies = [ [[package]] name = "solana-metrics" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1f79991e14c635e76ec1d61061305e4e0e6649e213bff2e1b92c59a789bc652" +checksum = "1c5a60445a879608d83a66e73da2b3aabf8c5dd54762e65b8208189254e32818" dependencies = [ "crossbeam-channel", "gethostname", @@ -7863,9 +8785,9 @@ dependencies = [ [[package]] name = "solana-native-token" -version = "2.3.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61515b880c36974053dd499c0510066783f0cc6ac17def0c7ef2a244874cf4a9" +checksum = "307fb2f78060995979e9b4f68f833623565ed4e55d3725f100454ce78a99a1a3" [[package]] name = "solana-native-token" @@ -7875,9 +8797,9 @@ checksum = "ae8dd4c280dca9d046139eb5b7a5ac9ad10403fbd64964c7d7571214950d758f" [[package]] name = "solana-net-utils" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f0d5d50fa415f82d18f2b610b7d6d1e747ebe4d2955e977d007e16f3af8d77" +checksum = "180e9fec751ff15385a31dbfe2d67e422eaf761a2777aa36f66d4e68fabc680e" dependencies = [ "anyhow", "bincode", @@ -7958,11 +8880,11 @@ dependencies = [ [[package]] name = "solana-perf" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee5e3e876ebce18775e8264b4673f45c2b5990e726a45a7f0cd9f3bd6cb1403" +checksum = "8d4687da06c87ad12e3d9f2d1e30d09c965d3bebc502ba0ed45c5fae7e6557d4" dependencies = [ - "ahash", + "ahash 0.8.12", "bincode", "bv", "bytes 1.10.1", @@ -7988,6 +8910,30 @@ dependencies = [ "solana-time-utils", ] +[[package]] +name = "solana-poh" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "073a3201b399750cc8c95ce552f7a22400095710b99256cbd6c20fcb9192426a" +dependencies = [ + "core_affinity", + "crossbeam-channel", + "log 0.4.28", + "qualifier_attr", + "solana-clock", + "solana-entry", + "solana-hash", + "solana-ledger", + "solana-measure", + "solana-metrics", + "solana-poh-config", + "solana-pubkey", + "solana-runtime", + "solana-time-utils", + "solana-transaction", + "thiserror 2.0.16", +] + [[package]] name = "solana-poh-config" version = "2.2.1" @@ -8000,9 +8946,9 @@ dependencies = [ [[package]] name = "solana-poseidon" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a34309a2d552e2ecaa137c54dc5d7169396efb4661d8aa6ad5672918d5861e0a" +checksum = "2e24ade89814c9a85ad75741a84d4f64aecc7526d55b85ec4b6a5787b22d6018" dependencies = [ "ark-bn254", "light-poseidon", @@ -8099,7 +9045,7 @@ dependencies = [ "solana-loader-v4-interface", "solana-message", "solana-msg", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-nonce", "solana-program-entrypoint", "solana-program-error", @@ -8182,9 +9128,9 @@ dependencies = [ [[package]] name = "solana-program-runtime" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dac7cb2bb398019a3a23b71828c9ba66a6390cd557b402759a5261ec82e4a928" +checksum = "4241dfe2431c8952c14dc7c6a55165c1610578bac2342483670e026d508a6eda" dependencies = [ "base64 0.22.1", "bincode", @@ -8252,9 +9198,9 @@ dependencies = [ [[package]] name = "solana-pubsub-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b90bcec41efc8ed9e6b765e043e9fb5984b5c3fbf16f4d2c1dc827fd4b35e2" +checksum = "27274b34e59a3e119ab99d158190a8f19256d54863c3a715428cdb09bb5d3c57" dependencies = [ "crossbeam-channel", "futures-util", @@ -8279,9 +9225,9 @@ dependencies = [ [[package]] name = "solana-quic-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f5c70a7b38bf0b672f51a718c4b377adf0ae218d8d576024e7c3ed00e7ee86" +checksum = "e835ea8dc69e5467db84094401681287d8a554eb4dabb4f6fc5baed0fa856185" dependencies = [ "async-lock", "async-trait", @@ -8309,18 +9255,18 @@ dependencies = [ [[package]] name = "solana-quic-definitions" -version = "2.3.1" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf0d4d5b049eb1d0c35f7b18f305a27c8986fc5c0c9b383e97adaa35334379e" +checksum = "e606feac5110eb5d8afaa43ccaeea3ec49ccec36773387930b5ba545e745aea2" dependencies = [ "solana-keypair", ] [[package]] name = "solana-rayon-threadlimit" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee3a2eac4ab76fc2e269d5b7e84d6e728b5b2ea30644e61182471bf4e0c4b44d" +checksum = "4a8d20965e564e4bd6f8e90f6863fe75d9ae8096d897e1db6bfb7e2e36ccfcb8" dependencies = [ "num_cpus", ] @@ -8336,6 +9282,30 @@ dependencies = [ "solana-program", ] +[[package]] +name = "solana-remote-wallet" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34ce3c0d279796f7c590ea4ffd7bd66d49c79e2ba963fad0bbf3d72306af9633" +dependencies = [ + "console 0.15.11", + "dialoguer 0.10.4", + "hidapi", + "log 0.4.28", + "num-derive", + "num-traits", + "parking_lot 0.12.4", + "qstring", + "semver", + "solana-derivation-path", + "solana-offchain-message", + "solana-pubkey", + "solana-signature", + "solana-signer", + "thiserror 2.0.16", + "uriparse", +] + [[package]] name = "solana-rent" version = "2.2.1" @@ -8398,11 +9368,97 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "solana-rpc" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93a485dc45ea7ecb2456a73d7efea3d4500acf49e3996a13225cc7028fecbd01" +dependencies = [ + "agave-feature-set", + "base64 0.22.1", + "bincode", + "bs58", + "crossbeam-channel", + "dashmap", + "itertools 0.12.1", + "jsonrpc-core", + "jsonrpc-core-client", + "jsonrpc-derive", + "jsonrpc-http-server", + "jsonrpc-pubsub", + "libc", + "log 0.4.28", + "rayon", + "regex", + "serde", + "serde_derive", + "serde_json", + "soketto", + "solana-account", + "solana-account-decoder", + "solana-accounts-db", + "solana-client", + "solana-clock", + "solana-commitment-config", + "solana-entry", + "solana-epoch-info", + "solana-epoch-rewards-hasher", + "solana-epoch-schedule", + "solana-faucet", + "solana-genesis-config", + "solana-gossip", + "solana-hash", + "solana-keypair", + "solana-ledger", + "solana-measure", + "solana-message", + "solana-metrics", + "solana-native-token 2.2.2", + "solana-perf", + "solana-poh", + "solana-poh-config", + "solana-program-pack", + "solana-pubkey", + "solana-quic-definitions", + "solana-rayon-threadlimit", + "solana-rpc-client-api", + "solana-runtime", + "solana-runtime-transaction", + "solana-send-transaction-service", + "solana-signature", + "solana-signer", + "solana-slot-history", + "solana-stake-program", + "solana-storage-bigtable", + "solana-streamer", + "solana-svm", + "solana-system-interface", + "solana-system-transaction", + "solana-sysvar", + "solana-time-utils", + "solana-tpu-client", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "solana-transaction-status", + "solana-validator-exit", + "solana-version", + "solana-vote", + "solana-vote-program", + "spl-generic-token", + "spl-token 8.0.0", + "spl-token-2022 8.0.1", + "stream-cancel", + "thiserror 2.0.16", + "tokio", + "tokio-util 0.7.16", +] + [[package]] name = "solana-rpc-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40231712d6f1e5833ff1e101954786cbd0b5301098ea42384f7bb3e553085852" +checksum = "f2d97d33a491892b9e436001498419515a180d23b99c5ddf1179f90d4e1ea943" dependencies = [ "async-trait", "base64 0.22.1", @@ -8440,9 +9496,9 @@ dependencies = [ [[package]] name = "solana-rpc-client-api" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a1be31922f97505007ccf969828b34e8dc43ce434a17f970b0edea8f0e66777" +checksum = "54353c9d80d125f247559e219ee72364ccc04cf1bc5c6dcdb2b53db849ce52bc" dependencies = [ "anyhow", "jsonrpc-core", @@ -8462,9 +9518,9 @@ dependencies = [ [[package]] name = "solana-rpc-client-nonce-utils" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2bd5b1ccc7fc945a9b0adad091836ee18b7688afd6979889849d5404254a14f" +checksum = "45e8d4e8db013846030a10fcb232bd9ace17c7c23abe793347b4ed02eaec8339" dependencies = [ "solana-account", "solana-commitment-config", @@ -8479,9 +9535,9 @@ dependencies = [ [[package]] name = "solana-rpc-client-types" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e82a9b71f023a4bd511088f22e3c1f0e226a6e2e94b0656776509f234dd223a" +checksum = "14b7c7bdfe2a08bfbfed79a381960dbabbc0283636be16338d2ed191cd0acdaa" dependencies = [ "base64 0.22.1", "bs58", @@ -8505,14 +9561,14 @@ dependencies = [ [[package]] name = "solana-runtime" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6c416cf6f9a1bff7dca25234406b4c776ea97de18cb89ba4bf987578cd32918" +checksum = "b52ffd4eb0586e47b699fabcfee8e0a7ad54fcab834e8f26e49183a5be778f2d" dependencies = [ "agave-feature-set", "agave-precompiles", "agave-reserved-account-keys", - "ahash", + "ahash 0.8.12", "aquamarine", "arrayref", "assert_matches", @@ -8583,7 +9639,7 @@ dependencies = [ "solana-measure", "solana-message", "solana-metrics", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-nohash-hasher", "solana-nonce", "solana-nonce-account", @@ -8642,9 +9698,9 @@ dependencies = [ [[package]] name = "solana-runtime-transaction" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ace4ea88917f5984c18d177854e002900b4942eaa5d4c4b38ca0df5b58d23ad" +checksum = "9b05259e3c1cd5bb490d2dac248641e9179e3377a22167e3c6f0383eb418f6d8" dependencies = [ "agave-transaction-view", "log 0.4.28", @@ -8715,7 +9771,7 @@ dependencies = [ "solana-instruction", "solana-keypair", "solana-message", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-nonce-account", "solana-offchain-message", "solana-packet", @@ -8847,6 +9903,34 @@ dependencies = [ "sha2 0.10.9", ] +[[package]] +name = "solana-send-transaction-service" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0d0548218d8de51039025cb6b44d34a4f73408a94aca793b102fbc924a0ff03" +dependencies = [ + "async-trait", + "crossbeam-channel", + "itertools 0.12.1", + "log 0.4.28", + "solana-client", + "solana-clock", + "solana-connection-cache", + "solana-hash", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-nonce-account", + "solana-pubkey", + "solana-quic-definitions", + "solana-runtime", + "solana-signature", + "solana-time-utils", + "solana-tpu-client-next", + "tokio", + "tokio-util 0.7.16", +] + [[package]] name = "solana-serde" version = "2.2.1" @@ -8878,9 +9962,9 @@ dependencies = [ [[package]] name = "solana-sha256-hasher" -version = "2.3.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa3feb32c28765f6aa1ce8f3feac30936f16c5c3f7eb73d63a5b8f6f8ecdc44" +checksum = "0037386961c0d633421f53560ad7c80675c0447cba4d1bb66d60974dd486c7ea" dependencies = [ "sha2 0.10.9", "solana-define-syscall", @@ -8992,9 +10076,9 @@ dependencies = [ [[package]] name = "solana-stake-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5810d9257db488570977cf57a7734f45e829bf00f0a3179fac57f901172064e" +checksum = "2d70d68ccad3e7954516c7157aeef0bacef66812597c2b6c363ba7934a9f8cfd" dependencies = [ "agave-feature-set", "bincode", @@ -9006,7 +10090,7 @@ dependencies = [ "solana-genesis-config", "solana-instruction", "solana-log-collector", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-packet", "solana-program-runtime", "solana-pubkey", @@ -9019,11 +10103,78 @@ dependencies = [ "solana-vote-interface", ] +[[package]] +name = "solana-storage-bigtable" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d160704effe8bdee63e9432803b856e6ee3fd3d443b1febd97e70d922f31fcde" +dependencies = [ + "agave-reserved-account-keys", + "backoff", + "bincode", + "bytes 1.10.1", + "bzip2", + "enum-iterator", + "flate2", + "futures 0.3.31", + "goauth", + "http 0.2.12", + "hyper 0.14.32", + "hyper-proxy", + "log 0.4.28", + "openssl", + "prost", + "prost-types", + "serde", + "serde_derive", + "smpl_jwt", + "solana-clock", + "solana-message", + "solana-metrics", + "solana-pubkey", + "solana-serde", + "solana-signature", + "solana-storage-proto", + "solana-time-utils", + "solana-transaction", + "solana-transaction-error", + "solana-transaction-status", + "thiserror 2.0.16", + "tokio", + "tonic", + "zstd 0.13.3", +] + +[[package]] +name = "solana-storage-proto" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2afd7310401a04a36f5dee18f9a7256b797e84d6c9aa7827cd284d5bedbf1e1" +dependencies = [ + "bincode", + "bs58", + "prost", + "protobuf-src", + "serde", + "solana-account-decoder", + "solana-hash", + "solana-instruction", + "solana-message", + "solana-pubkey", + "solana-serde", + "solana-signature", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "solana-transaction-status", + "tonic-build", +] + [[package]] name = "solana-streamer" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f55673d787ef1478fa2939801e8bde7cb4ed38a99ff3d5541c2d159a06904f3" +checksum = "ca145c96e2246807a9a57de0df99884d7704c88937ca37bf1dd1d1be9be3aea7" dependencies = [ "async-channel", "bytes 1.10.1", @@ -9033,7 +10184,7 @@ dependencies = [ "futures-util", "governor", "histogram", - "indexmap 2.11.0", + "indexmap 2.11.1", "itertools 0.12.1", "libc", "log 0.4.28", @@ -9068,12 +10219,11 @@ dependencies = [ [[package]] name = "solana-svm" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80abd376f5f4bdcfd690accb447a3b8b1cf5b24c0cc345993a2759b234d11a6e" +checksum = "f5dfa94f881af63fc3cdc7caf6b8beb9fdc9fa2a4977b3bd9447e27a5b5cbb25" dependencies = [ - "ahash", - "itertools 0.12.1", + "ahash 0.8.12", "log 0.4.28", "percentage", "serde", @@ -9100,7 +10250,6 @@ dependencies = [ "solana-rent-collector", "solana-rent-debits", "solana-sdk-ids", - "solana-slot-hashes", "solana-svm-callback", "solana-svm-feature-set", "solana-svm-rent-collector", @@ -9117,9 +10266,9 @@ dependencies = [ [[package]] name = "solana-svm-callback" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "921ca8c29cda72f16b49dff70cd87e87d9058a69804926f459e0b8584d621985" +checksum = "85bdf2ccb4d9e6977a728b88113fb912713082b40e15e8ebac6d6c9c0daac1f9" dependencies = [ "solana-account", "solana-precompile-error", @@ -9128,15 +10277,15 @@ dependencies = [ [[package]] name = "solana-svm-feature-set" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e65361fa1fb2a123319df6d9694c1c5ca20e555cda18eb1f953babf32e4cddd4" +checksum = "356b396cc4fdef70ec85672633ca247e811bafa73268f7da031d51311dfcf819" [[package]] name = "solana-svm-rent-collector" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20f1d3196d0c586fa43ab7f80143a248ccc262b9175be2ea5ab637caf2d02ca4" +checksum = "f8f7238029c382425cb29f9b01b14230e1038b968688c43eec520e11cd26aa27" dependencies = [ "solana-account", "solana-clock", @@ -9150,9 +10299,9 @@ dependencies = [ [[package]] name = "solana-svm-transaction" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e6f46c247cb7a345e72468ba2bcdf69d464f8fdae7bf6366cd31d6e2d7692d6" +checksum = "f50a2daa2466a418739ecaf58d2620eac8c407a1bd86f1ae6003388126b0e726" dependencies = [ "solana-hash", "solana-message", @@ -9180,9 +10329,9 @@ dependencies = [ [[package]] name = "solana-system-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42817e69449ea37ddc6556a3086152069ac9330d061f0948e66b7b30ac396903" +checksum = "50df0463f67c2470f6b27afdc4ddfa15f61bc560ab8d428a753472dca12173b9" dependencies = [ "bincode", "log 0.4.28", @@ -9269,9 +10418,9 @@ dependencies = [ [[package]] name = "solana-thin-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25571fe8261c632206373ccbf35edf12a476405264a0d0829adf65202c0e1c17" +checksum = "379c459531396a1db5bf6b8981b35edc5a3ba0928c38c12df563076c5a68e67c" dependencies = [ "bincode", "log 0.4.28", @@ -9304,9 +10453,9 @@ checksum = "6af261afb0e8c39252a04d026e3ea9c405342b08c871a2ad8aa5448e068c784c" [[package]] name = "solana-timings" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d70d69d9f5683bffe3e43590ef62a016c239e3b3466e31b3840e0eb64a808db" +checksum = "c7133038d3afecf03cb8dcd2c8c391428c7f523b7d2790af0b8b2750a1a9b171" dependencies = [ "eager", "enum-iterator", @@ -9315,9 +10464,9 @@ dependencies = [ [[package]] name = "solana-tls-utils" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbab408af08c4b0dc103b608f053e8bf7aec9f18a20da79fb98ccf35950ee468" +checksum = "4756cc4a47c0cccdbb5c9b45be48286d8be166647b24ddd71ba1ca1b04fec5e0" dependencies = [ "rustls 0.23.31", "solana-keypair", @@ -9328,14 +10477,14 @@ dependencies = [ [[package]] name = "solana-tpu-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc8ccdb1b26950de965860e02285361c48563d3b5eef64166fe45b5b9245e1b" +checksum = "60c4b9fb845ca7693944b2bc4cfa1f76b30b6dd9af0100a930653031edea3d2a" dependencies = [ "async-trait", "bincode", "futures-util", - "indexmap 2.11.0", + "indexmap 2.11.1", "indicatif 0.17.11", "log 0.4.28", "rayon", @@ -9360,11 +10509,38 @@ dependencies = [ "tokio", ] +[[package]] +name = "solana-tpu-client-next" +version = "2.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b45edf613cf88babf5ef18e092b19e8105ffc8957446c06b63b647d6c8f46738" +dependencies = [ + "async-trait", + "log 0.4.28", + "lru 0.7.8", + "quinn", + "rustls 0.23.31", + "solana-clock", + "solana-connection-cache", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-quic-definitions", + "solana-rpc-client", + "solana-streamer", + "solana-time-utils", + "solana-tls-utils", + "solana-tpu-client", + "thiserror 2.0.16", + "tokio", + "tokio-util 0.7.16", +] + [[package]] name = "solana-transaction" -version = "2.2.3" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80657d6088f721148f5d889c828ca60c7daeedac9a8679f9ec215e0c42bcbf41" +checksum = "abec848d081beb15a324c633cd0e0ab33033318063230389895cae503ec9b544" dependencies = [ "bincode", "serde", @@ -9389,9 +10565,9 @@ dependencies = [ [[package]] name = "solana-transaction-context" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aefd75e49dd990f7fdbe562a539a7b046a839aadf43843845d766a2a6a2adfef" +checksum = "a852ad0f1b1afa8fa4191456db568f2a31651095edd43949fd821766a573f827" dependencies = [ "bincode", "serde", @@ -9418,9 +10594,9 @@ dependencies = [ [[package]] name = "solana-transaction-metrics-tracker" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ffbcb223e76a4e8389f32d447f9d5d68ce0947ba0a3b7db83141085d68c8f3" +checksum = "041af8813f1533f20a077659274066b0f2e2eb905a4819a94a427827311efcc3" dependencies = [ "base64 0.22.1", "bincode", @@ -9434,9 +10610,9 @@ dependencies = [ [[package]] name = "solana-transaction-status" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287a86e28777cdc8c0745ff5700a2c3741a2a7a72a347a93815e832adfe39dc5" +checksum = "84c94755a0369455a73cac71af4e0e3186201c44c9e867cbd402f7d165be9a14" dependencies = [ "Inflector", "agave-reserved-account-keys", @@ -9478,9 +10654,9 @@ dependencies = [ [[package]] name = "solana-transaction-status-client-types" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e91068d54435121280c4a2f1c280d8d18381e3ccf54057c4530f40f26c2be1c" +checksum = "d69b97bca4631ff662b3ef479a386107c7e9693ffc98453d1bc3ff5b69437659" dependencies = [ "base64 0.22.1", "bincode", @@ -9501,18 +10677,18 @@ dependencies = [ [[package]] name = "solana-type-overrides" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4789b860088a5d108c9961de6c24008f6310aaae676445d37d40a75d8b55647b" +checksum = "b4be5aea5b83592c1222dfb0b15a3a1401fdcae39d2c0a0d4f6e5dc322f4edbe" dependencies = [ "rand 0.8.5", ] [[package]] name = "solana-udp-client" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42f000524bb38b5af2e0fba649bc3d10b0e8e0dd833dc11389a91e955cb6c54" +checksum = "03084960095476f4507c91983f9ca7bbe4dd335e13e32921f5507f609f6c4f56" dependencies = [ "async-trait", "solana-connection-cache", @@ -9526,9 +10702,9 @@ dependencies = [ [[package]] name = "solana-unified-scheduler-logic" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7919d719f697d6a8cae7c2d4372777f9c717cd08fac5f9023c61d3a6e2a7eb9" +checksum = "e442cb8d1f705026c02d339d183459b96df4f27d91be6459a210466b2dadc923" dependencies = [ "assert_matches", "solana-pubkey", @@ -9546,9 +10722,9 @@ checksum = "7bbf6d7a3c0b28dd5335c52c0e9eae49d0ae489a8f324917faf0ded65a812c1d" [[package]] name = "solana-version" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4607a9de98043bcf7db9e5d90b31fefb728c80eec901595b6931d7cdc1558b2" +checksum = "f3f0024066f478e28850a0c6e890e668ad6762b768b0e5444802aadda26a359c" dependencies = [ "agave-feature-set", "rand 0.8.5", @@ -9561,9 +10737,9 @@ dependencies = [ [[package]] name = "solana-vote" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73033bbc54597353f4acd74fb4e14a529f93331089a7d12c21bf9122c6db3957" +checksum = "08ec5fc4835ac374830552e1a5786c24d154388df9d3d96566bdfd5de1dd9215" dependencies = [ "itertools 0.12.1", "log 0.4.28", @@ -9613,9 +10789,9 @@ dependencies = [ [[package]] name = "solana-vote-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5775e5665d04ac576c08c0614b32410dcdc46012ca6ac4910b4bd82ba38a71" +checksum = "cb98f08fd81ac3c36b85fa780379a31decd74fc54b51be6dac4b77b3cc42fa65" dependencies = [ "agave-feature-set", "bincode", @@ -9647,9 +10823,9 @@ dependencies = [ [[package]] name = "solana-zk-elgamal-proof-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9b084cb82e20660b079150ae079cdf1ae71c85f3c95f56daee9a5e73fbfb510" +checksum = "c816d250483eec59a33ff6c861981f6b99d98f80575e81547f4884700d007f8e" dependencies = [ "agave-feature-set", "bytemuck", @@ -9664,9 +10840,9 @@ dependencies = [ [[package]] name = "solana-zk-sdk" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bb171c0f76c420a7cb6aabbe5fa85a1a009d5bb4009189c43e1a03aff9446d7" +checksum = "b2001caf41b765b258f3afec77709280f67498d8efd8e4a92e33d21aab60b6ba" dependencies = [ "aes-gcm-siv", "base64 0.22.1", @@ -9700,9 +10876,9 @@ dependencies = [ [[package]] name = "solana-zk-token-proof-program" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc711a3c144df1699239f2c411c9efdccbbd6da27a46723b4ba76de86f278246" +checksum = "84c6df1dd2a8e4c78fe27fd98eb61d1d33f98dde306e59fd770d82019e881b59" dependencies = [ "agave-feature-set", "bytemuck", @@ -9717,9 +10893,9 @@ dependencies = [ [[package]] name = "solana-zk-token-sdk" -version = "2.3.7" +version = "2.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0131dcac71c6d63f781354a2aa6a46c89a56a04b438b725ca811a465b90ad506" +checksum = "e9a5fb9fc8c436a7161d255f653872ab9c308f49e901f688873334c8df65506f" dependencies = [ "aes-gcm-siv", "base64 0.22.1", @@ -9763,6 +10939,12 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + [[package]] name = "spinning_top" version = "0.3.0" @@ -10142,7 +11324,7 @@ dependencies = [ "solana-decode-error", "solana-instruction", "solana-msg", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-program-entrypoint", "solana-program-error", "solana-program-memory", @@ -10451,6 +11633,23 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "stream-cancel" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f9fbf9bd71e4cf18d68a8a0951c0e5b7255920c0cd992c4ff51cddd6ef514a3" +dependencies = [ + "futures-core", + "pin-project", + "tokio", +] + +[[package]] +name = "strsim" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" + [[package]] name = "strsim" version = "0.11.1" @@ -10529,7 +11728,7 @@ dependencies = [ "crossbeam", "crossterm", "ctrlc", - "dialoguer", + "dialoguer 0.11.0", "dirs 6.0.0", "fern", "hiro-system-kit", @@ -10601,6 +11800,7 @@ dependencies = [ "libloading", "litesvm", "log 0.4.28", + "reqwest 0.12.23", "serde", "serde_bytes", "serde_derive", @@ -10616,10 +11816,11 @@ dependencies = [ "solana-compute-budget-interface", "solana-epoch-info", "solana-epoch-schedule", + "solana-geyser-plugin-manager", "solana-hash", "solana-keypair", "solana-message", - "solana-native-token 2.3.0", + "solana-native-token 2.2.2", "solana-packet", "solana-program-runtime", "solana-pubkey", @@ -10688,7 +11889,7 @@ dependencies = [ name = "surfpool-mcp" version = "0.10.7" dependencies = [ - "axum", + "axum 0.8.4", "bs58", "crossbeam-channel", "hiro-system-kit", @@ -10902,24 +12103,24 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.21.0" +version = "3.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e" +checksum = "84fa4d11fadde498443cca10fd3ac23c951f0dc59e080e9f4b93d4df4e4eea53" dependencies = [ "fastrand", "getrandom 0.3.3", "once_cell", - "rustix 1.0.8", - "windows-sys 0.60.2", + "rustix 1.1.2", + "windows-sys 0.61.0", ] [[package]] name = "term" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a43bddab41f8626c7bdaab872bbba75f8df5847b516d77c569c746e2ae5eb746" +checksum = "2111ef44dae28680ae9752bb89409e7310ca33a8c621ebe7b106cf5c928b3ac0" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -10992,6 +12193,15 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "textwrap" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" +dependencies = [ + "unicode-width 0.1.14", +] + [[package]] name = "textwrap" version = "0.16.2" @@ -11163,6 +12373,16 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "tokio-io-timeout" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bd86198d9ee903fedd2f9a2e72014287c0d9167e4ae43b5853007205dda1b76" +dependencies = [ + "pin-project-lite", + "tokio", +] + [[package]] name = "tokio-macros" version = "2.5.0" @@ -11265,6 +12485,7 @@ checksum = "14307c986784f72ef81c89db7d9e28d6ac26d16213b109ea501696195e6e3ce5" dependencies = [ "bytes 1.10.1", "futures-core", + "futures-io", "futures-sink", "pin-project-lite", "tokio", @@ -11285,7 +12506,7 @@ version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.1", "serde", "serde_spanned", "toml_datetime", @@ -11307,7 +12528,7 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.1", "serde", "serde_spanned", "toml_datetime", @@ -11321,6 +12542,50 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" +[[package]] +name = "tonic" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a" +dependencies = [ + "async-stream", + "async-trait", + "axum 0.6.20", + "base64 0.21.7", + "bytes 1.10.1", + "futures-core", + "futures-util", + "h2 0.3.27", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.32", + "hyper-timeout", + "percent-encoding 2.3.2", + "pin-project", + "prost", + "rustls-pemfile", + "tokio", + "tokio-rustls 0.24.1", + "tokio-stream", + "tower 0.4.13", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tonic-build" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6fdaae4c2c638bb70fe42803a26fbd6fc6ac8c72f5c59f67ecc2a2dcabf4b07" +dependencies = [ + "prettyplease", + "proc-macro2", + "prost-build", + "quote", + "syn 1.0.109", +] + [[package]] name = "totp-rs" version = "5.7.0" @@ -11334,6 +12599,26 @@ dependencies = [ "sha2 0.10.9", ] +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand 0.8.5", + "slab", + "tokio", + "tokio-util 0.7.16", + "tower-layer", + "tower-service", + "tracing", +] + [[package]] name = "tower" version = "0.5.2" @@ -11363,7 +12648,7 @@ dependencies = [ "http-body 1.0.1", "iri-string", "pin-project-lite", - "tower", + "tower 0.5.2", "tower-layer", "tower-service", ] @@ -11441,6 +12726,12 @@ dependencies = [ "tracing-log", ] +[[package]] +name = "trees" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0de5f738ceab88e2491a94ddc33c3feeadfa95fedc60363ef110845df12f3878" + [[package]] name = "try-lock" version = "0.2.5" @@ -11488,9 +12779,9 @@ dependencies = [ [[package]] name = "txtx-addon-kit" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18b700205c62dd7fd655c0431119dab48567af11da18b77f784f47af4da87515" +checksum = "8441e41091d714fc5f0cf4c22138d22ba2187e4386cd250b7cdf4783fad8151e" dependencies = [ "crossbeam-channel", "dirs 5.0.1", @@ -11501,7 +12792,7 @@ dependencies = [ "hex", "highway", "hmac 0.12.1", - "indexmap 2.11.0", + "indexmap 2.11.1", "indoc", "jaq-interpret", "keccak-hash", @@ -11523,9 +12814,9 @@ dependencies = [ [[package]] name = "txtx-addon-network-svm" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8534deb9623fd9739618a7d1fb90bef59162833be62f9600a09062305735d919" +checksum = "d5ae7503e3b984ba2033a89d0b5f2b9f2064be107673a5f1fe3f955a23e171e7" dependencies = [ "async-recursion", "bincode", @@ -11552,9 +12843,9 @@ dependencies = [ [[package]] name = "txtx-addon-network-svm-types" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca69900cbf06b8c4445c5b1ddb9d0eed1da7d75538183c18d0bffd5e55c20002" +checksum = "c5c46936867bcc9fe0eccf8c4d956a20b17a2598240c4e6e330ad97392662df8" dependencies = [ "anchor-lang-idl", "borsh 1.5.7", @@ -11579,9 +12870,9 @@ dependencies = [ [[package]] name = "txtx-cloud" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2c9353a14cf1dc4d28fb8a687e406f24cc361ea51f47c028e794c0fc13525b4" +checksum = "567301e4a33011bb412fd4a645823b637d43dfb5be0730b8043003744582485e" dependencies = [ "actix-cors", "actix-web", @@ -11590,7 +12881,7 @@ dependencies = [ "base64 0.22.1", "clap 4.5.47", "clap_generate", - "dialoguer", + "dialoguer 0.11.0", "dirs 5.0.1", "graphql_client", "hiro-system-kit", @@ -11609,9 +12900,9 @@ dependencies = [ [[package]] name = "txtx-core" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "055cdeb620fd0f99c81564ffab6785c7d645083d9bcc5629a6023b22853292ef" +checksum = "4ee8f9230fb46561fb856e8249062a3df1f9b12e7e79b2c6d6fb5e96e5b9f3bd" dependencies = [ "base64 0.22.1", "better-debug", @@ -11624,7 +12915,7 @@ dependencies = [ "lazy_static", "libsecp256k1 0.7.2", "mustache", - "petgraph", + "petgraph 0.8.2", "ripemd", "serde", "serde_derive", @@ -11638,9 +12929,9 @@ dependencies = [ [[package]] name = "txtx-gql" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5006fcbd075e1515218002347125b5d22006b6b10c9ce071487ec9786b1af8d9" +checksum = "ef7e4495ce5b24398e2f2a1e1d7fd5342065c877a1ee8fe4e9ae5614ebbf7419" dependencies = [ "async-stream", "futures 0.3.31", @@ -11653,9 +12944,9 @@ dependencies = [ [[package]] name = "txtx-supervisor-ui" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e7f69761b0439b4bb84c859a278484be9f6237d1e0717abe086222a1fddd9f7" +checksum = "912b0240620927783fceed7129651eb7fd9c8d4fa7afed787420b38d53477b2a" dependencies = [ "actix-cors", "actix-web", @@ -11716,9 +13007,9 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-normalization" @@ -11789,6 +13080,12 @@ dependencies = [ "void", ] +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + [[package]] name = "untrusted" version = "0.9.0" @@ -11876,6 +13173,12 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + [[package]] name = "vecmap-rs" version = "0.2.3" @@ -11927,9 +13230,18 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.3+wasi-0.2.4" +version = "0.14.5+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4494f6290a82f5fe584817a676a34b9d6763e8d9d18204009fb31dceca98fd4" +dependencies = [ + "wasip2", +] + +[[package]] +name = "wasip2" +version = "1.0.0+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a51ae83037bdd272a9e28ce236db8c07016dd0d50c27038b3f407533c030c95" +checksum = "03fa2761397e5bd52002cd7e73110c71af2109aca4e521a9f40473fe685b0a24" dependencies = [ "wit-bindgen", ] @@ -12059,6 +13371,18 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix 0.38.44", +] + [[package]] name = "winapi" version = "0.2.8" @@ -12089,11 +13413,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -12108,7 +13432,7 @@ version = "0.58.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" dependencies = [ - "windows-core", + "windows-core 0.58.0", "windows-targets 0.52.6", ] @@ -12118,13 +13442,26 @@ version = "0.58.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" dependencies = [ - "windows-implement", - "windows-interface", + "windows-implement 0.58.0", + "windows-interface 0.58.0", "windows-result 0.2.0", "windows-strings 0.1.0", "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement 0.60.0", + "windows-interface 0.59.1", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + [[package]] name = "windows-implement" version = "0.58.0" @@ -12136,6 +13473,17 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "windows-implement" +version = "0.60.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "windows-interface" version = "0.58.0" @@ -12147,6 +13495,17 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "windows-interface" +version = "0.59.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "windows-link" version = "0.1.3" @@ -12525,9 +13884,9 @@ dependencies = [ [[package]] name = "wit-bindgen" -version = "0.45.0" +version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052283831dbae3d879dc7f51f3d92703a316ca49f91540417d38591826127814" +checksum = "5c573471f125075647d03df72e026074b7203790d41351cd6edc96f46bcccd36" [[package]] name = "writeable" @@ -12570,7 +13929,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af3a19837351dc82ba89f8a125e22a3c475f05aba604acc023d62b2739ae2909" dependencies = [ "libc", - "rustix 1.0.8", + "rustix 1.1.2", ] [[package]] @@ -12599,18 +13958,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index d615475b..9b545fa0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ resolver = "2" [workspace.dependencies] agave-feature-set = "2.3.7" -agave-geyser-plugin-interface = "2.3.7" +agave-geyser-plugin-interface = "2.3.8" agave-precompiles = "2.3.7" agave-reserved-account-keys = "2.3.7" anchor-lang-idl = "0.1.2" @@ -41,8 +41,9 @@ hex = "0.4.3" hiro-system-kit = { version = "0.3.4" } ipc-channel = "0.19.0" itertools = "0.14.0" -# litesvm = { path = "../litesvm/crates/litesvm", features = ["nodejs-internal"] } -litesvm = { version = "0.7.0", features = ["nodejs-internal"] } +# litesvm = { path = "../txtx-litesvm/crates/litesvm", features = ["nodejs-internal"] } +# litesvm = { version = "0.7.0", features = ["nodejs-internal"] } +litesvm = { git = "https://github.com/txtx/litesvm.git", branch = "fix/relax-deps", features = ["nodejs-internal"] } reqwest = { version = "0.12.18", features = ["blocking", "json"] } serde = "1.0.217" serde_bytes = "0.11.17" @@ -60,18 +61,18 @@ solana-commitment-config = "2.2.1" solana-compute-budget-interface = "2.2.1" solana-epoch-info = { version = "2.2.1", features = ["serde"] } solana-epoch-schedule = "2.2.1" -# solana-geyser-plugin-manager = "=2.3.7" +solana-geyser-plugin-manager = { version = "2.3.8" } solana-hash = "2.3.0" -solana-keypair = "2.2.1" +solana-keypair = "^2.2" solana-message = { version = "2.3.0", features = ["serde"] } solana-native-token = "2.2.2" solana-packet = "2.2.1" -solana-program-runtime = "2.3.7" +solana-program-runtime = "2.3.8" solana-pubkey = { version = "2.3.0", features = ["serde"] } -solana-rpc-client = "2.3.7" -solana-rpc-client-api = "2.3.7" -solana-runtime = "2.3.7" -solana-sdk = "2.3.0" +solana-rpc-client = "2.3.8" +solana-rpc-client-api = "2.3.8" +solana-runtime = "2.3.8" +solana-sdk = "2.3.1" solana-sdk-ids = "2.2.1" solana-signature = { version = "2.3.0", features = ["serde"] } solana-signer = "2.2.1" diff --git a/crates/cli/src/cli/mod.rs b/crates/cli/src/cli/mod.rs index 56fe60c4..d5fab49b 100644 --- a/crates/cli/src/cli/mod.rs +++ b/crates/cli/src/cli/mod.rs @@ -265,7 +265,7 @@ impl StartSimnet { airdrop_addresses.push(pubkey.pubkey()); } Err(_) => { - events.push(SimnetEvent::warn(format!( + events.push(SimnetEvent::info(format!( "No keypair found at provided path {}; skipping airdrop for that keypair", path.display() ))); diff --git a/crates/cli/src/cli/simnet/mod.rs b/crates/cli/src/cli/simnet/mod.rs index 67c6e329..b0c1b953 100644 --- a/crates/cli/src/cli/simnet/mod.rs +++ b/crates/cli/src/cli/simnet/mod.rs @@ -46,6 +46,13 @@ pub async fn handle_start_local_surfnet_command( cmd: &StartSimnet, ctx: &Context, ) -> Result<(), String> { + if !cmd.plugin_config_path.is_empty() && !cfg!(feature = "geyser-plugin") { + return Err( + "Recompile surfpool and enable the feature 'geyser-plugin' to load geyser plugins" + .to_string(), + ); + } + // We start the simnet as soon as possible, as it needs to be ready for deployments let (surfnet_svm, simnet_events_rx, geyser_events_rx) = SurfnetSvm::new(); let (simnet_commands_tx, simnet_commands_rx) = crossbeam::channel::unbounded(); diff --git a/crates/cli/src/runbook/mod.rs b/crates/cli/src/runbook/mod.rs index ad994919..ea0257c3 100644 --- a/crates/cli/src/runbook/mod.rs +++ b/crates/cli/src/runbook/mod.rs @@ -450,7 +450,7 @@ pub async fn configure_supervised_execution( let len = block_store.len(); block_store.insert(len, new_block.clone()); } - BlockEvent::RunbookCompleted => { + BlockEvent::RunbookCompleted(_) => { let _ = simnet_events_tx.send(SimnetEvent::info("Runbook completed")); } BlockEvent::Error(new_block) => { diff --git a/crates/cli/src/tui/simnet.rs b/crates/cli/src/tui/simnet.rs index 6970e915..736a93ad 100644 --- a/crates/cli/src/tui/simnet.rs +++ b/crates/cli/src/tui/simnet.rs @@ -429,8 +429,11 @@ fn run_app(terminal: &mut Terminal, mut app: App) -> io::Result<( handles.push(selector.recv(rx)); } } - let oper = selector.try_select(); - if let Ok(oper) = oper { + + loop { + let Ok(oper) = selector.try_select() else { + break; + }; match oper.index() { 0 => match oper.recv(&app.simnet_events_rx) { Ok(event) => match &event { @@ -644,14 +647,15 @@ fn run_app(terminal: &mut Terminal, mut app: App) -> io::Result<( }, } } - _ => {} + _ => break, }, Err(_) => { deployment_completed = true; + break; } }, } - }; + } } for event in new_events { @@ -659,7 +663,7 @@ fn run_app(terminal: &mut Terminal, mut app: App) -> io::Result<( app.tail(); } - if event::poll(Duration::from_millis(25))? { + if event::poll(Duration::from_millis(50))? { if let Event::Key(key_event) = event::read()? { if key_event.kind == KeyEventKind::Press { use KeyCode::*; @@ -714,7 +718,6 @@ fn run_app(terminal: &mut Terminal, mut app: App) -> io::Result<( app.update_blink_state(); terminal.draw(|f| ui(f, &mut app))?; } - Ok(()) } fn ui(f: &mut Frame, app: &mut App) { diff --git a/crates/core/Cargo.toml b/crates/core/Cargo.toml index 7cfef622..df344aa9 100644 --- a/crates/core/Cargo.toml +++ b/crates/core/Cargo.toml @@ -37,6 +37,7 @@ jsonrpc-pubsub = "18.0.0" jsonrpc-ws-server = "18.0.0" litesvm = { workspace = true } log = "0.4.22" +reqwest = "0.12" serde = { workspace = true } serde_bytes = { workspace = true } serde_derive = { workspace = true } # must match the serde version, see https://github.com/serde-rs/serde/issues/2584#issuecomment-1685252251 @@ -89,7 +90,7 @@ txtx-addon-network-svm-types = { workspace = true } uuid = "1.7.0" blake3 = "1.8.2" anyhow = "1.0.98" -# solana-geyser-plugin-manager = { version = "2.3.7", optional = true } +solana-geyser-plugin-manager = { workspace = true, optional = true } [dev-dependencies] test-case = "^3.3.1" @@ -97,10 +98,9 @@ test-log = "0.2.18" [features] ignore_tests_ci = [] -geyser-plugin = [] # ["solana-geyser-plugin-manager"] +geyser-plugin = ["solana-geyser-plugin-manager"] subgraph = ["surfpool-subgraph"] # [patch.crates-io] # Force solana-sha256-hasher to version 2.3.0 to resolve dependency conflicts # solana-sha256-hasher = { git = "https://github.com/anza-xyz/solana-sdk.git", tag = "sha256-hasher@v2.3.0" } - diff --git a/crates/core/src/runloops/mod.rs b/crates/core/src/runloops/mod.rs index 0bfc162a..9cb18d4c 100644 --- a/crates/core/src/runloops/mod.rs +++ b/crates/core/src/runloops/mod.rs @@ -68,7 +68,7 @@ pub async fn start_local_surfnet_runloop( let remote_rpc_client = match simnet.offline_mode { true => None, - false => Some(SurfnetRemoteClient::new( + false => Some(SurfnetRemoteClient::new_unsafe( &simnet .remote_rpc_url .as_ref() @@ -310,8 +310,8 @@ fn start_geyser_runloop( #[cfg(feature = "geyser-plugin")] for plugin_config_path in plugin_config_paths.into_iter() { let plugin_manifest_location = FileLocation::from_path(plugin_config_path); - let contents = plugin_manifest_location.read_content_as_utf8()?; - let result: serde_json::Value = match json5::from_str(&contents) { + let config_file = plugin_manifest_location.read_content_as_utf8()?; + let result: serde_json::Value = match json5::from_str(&config_file) { Ok(res) => res, Err(e) => { let error = format!("Unable to read manifest: {}", e); @@ -319,10 +319,11 @@ fn start_geyser_runloop( return Err(error) } }; - let (plugin_name, plugin_dylib_path) = match (result.get("name").map(|p| p.as_str()), result.get("libpath").map(|p| p.as_str())) { - (Some(Some(name)), Some(Some(libpath))) => (name, libpath), + + let plugin_dylib_path = match result.get("libpath").map(|p| p.as_str()) { + Some(Some(name)) => name, _ => { - let error = format!("Unable to retrieve dylib: {}", plugin_manifest_location); + let error = format!("Plugin config file should include a 'libpath' field: {}", plugin_manifest_location); let _ = simnet_events_tx.send(SimnetEvent::error(error.clone())); return Err(error) } @@ -335,7 +336,7 @@ fn start_geyser_runloop( let lib = match Library::new(&plugin_dylib_location.to_string()) { Ok(lib) => lib, Err(e) => { - let _ = simnet_events_tx.send(SimnetEvent::ErrorLog(Local::now(), format!("Unable to load plugin {}: {}", plugin_name, e.to_string()))); + let _ = simnet_events_tx.send(SimnetEvent::ErrorLog(Local::now(), format!("Unable to load plugin {}: {}", plugin_dylib_location.to_string(), e.to_string()))); continue; } }; @@ -346,7 +347,15 @@ fn start_geyser_runloop( (Box::from_raw(plugin_raw), lib) }; indexing_enabled = true; - plugin_manager.plugins.push(LoadedGeyserPlugin::new(lib, plugin, Some(plugin_name.to_string()))); + + let mut plugin = LoadedGeyserPlugin::new(lib, plugin, None); + if let Err(e) = plugin.on_load(&plugin_manifest_location.to_string(), false) { + let error = format!("Unable to load plugin:: {}", e.to_string()); + let _ = simnet_events_tx.send(SimnetEvent::error(error.clone())); + return Err(error) + } + + plugin_manager.plugins.push(plugin); } let ipc_router = RouterProxy::new(); @@ -547,6 +556,7 @@ async fn start_http_rpc_server_runloop( .spawn(move || { let server = match ServerBuilder::new(io) .cors(DomainsValidation::Disabled) + .threads(6) .start_http(&server_bind) { Ok(server) => server, diff --git a/crates/core/src/surfnet/remote.rs b/crates/core/src/surfnet/remote.rs index 7d536742..3545a002 100644 --- a/crates/core/src/surfnet/remote.rs +++ b/crates/core/src/surfnet/remote.rs @@ -4,7 +4,7 @@ use serde_json::json; use solana_account::Account; use solana_client::{ nonblocking::rpc_client::RpcClient, - rpc_client::GetConfirmedSignaturesForAddress2Config, + rpc_client::{GetConfirmedSignaturesForAddress2Config, RpcClientConfig}, rpc_config::{ RpcAccountInfoConfig, RpcBlockConfig, RpcLargestAccountsConfig, RpcProgramAccountsConfig, RpcSignaturesForAddressConfig, RpcTokenAccountsFilter, RpcTransactionConfig, @@ -39,9 +39,7 @@ pub struct SurfnetRemoteClient { impl Clone for SurfnetRemoteClient { fn clone(&self) -> Self { let remote_rpc_url = self.client.url(); - SurfnetRemoteClient { - client: RpcClient::new(remote_rpc_url), - } + SurfnetRemoteClient::new_unsafe(remote_rpc_url) } } @@ -57,10 +55,23 @@ impl SomeRemoteCtx for Option { } impl SurfnetRemoteClient { - pub fn new(remote_rpc_url: &str) -> Self { - SurfnetRemoteClient { - client: RpcClient::new(remote_rpc_url.to_string()), - } + pub fn new(remote_rpc_url: U) -> Self { + let client = RpcClient::new(remote_rpc_url.to_string()); + SurfnetRemoteClient { client } + } + + pub fn new_unsafe(remote_rpc_url: U) -> Self { + use reqwest; + use solana_rpc_client::http_sender::HttpSender; + let client = reqwest::Client::builder() + .danger_accept_invalid_certs(true) + .tls_built_in_root_certs(false) + .tls_built_in_webpki_certs(false) + .build() + .expect("unable to clone http client"); + let http_sender = HttpSender::new_with_client(remote_rpc_url, client); + let client = RpcClient::new_sender(http_sender, RpcClientConfig::default()); + SurfnetRemoteClient { client } } pub async fn get_epoch_info(&self) -> SurfpoolResult { diff --git a/crates/mcp/src/helpers.rs b/crates/mcp/src/helpers.rs index 7124a6cc..ce54f342 100644 --- a/crates/mcp/src/helpers.rs +++ b/crates/mcp/src/helpers.rs @@ -1,6 +1,6 @@ use std::net::TcpListener; -use solana_sdk::rpc_port::DEFAULT_RPC_PORT; +use surfpool_types::DEFAULT_RPC_PORT; pub fn is_port_available(port: u16) -> bool { TcpListener::bind(("127.0.0.1", port)).is_ok() diff --git a/examples/hello-geyser/Cargo.toml b/examples/hello-geyser/Cargo.toml index 125ff670..283f7442 100644 --- a/examples/hello-geyser/Cargo.toml +++ b/examples/hello-geyser/Cargo.toml @@ -7,5 +7,5 @@ edition = "2021" crate-type = ["cdylib", "rlib"] [dependencies] -agave-geyser-plugin-interface = "2.3.1" +agave-geyser-plugin-interface = "2.3.8" solana-program = "2.3.1"