Release solana-streamer-sdk 1.5.10

This commit is contained in:
0xfnzero
2026-06-07 02:00:14 +08:00
parent 28ffd0f566
commit 89bf36148f
8 changed files with 115 additions and 13 deletions
+15 -5
View File
@@ -124,30 +124,34 @@ Add the dependency to your `Cargo.toml`:
```toml
# Add to your Cargo.toml
solana-streamer-sdk = { path = "./solana-streamer", version = "1.5.9" }
solana-streamer-sdk = { path = "./solana-streamer", version = "1.5.10" }
```
### Use crates.io
```toml
# Add to your Cargo.toml
solana-streamer-sdk = "1.5.9"
solana-streamer-sdk = "1.5.10"
```
Parser backend features:
```toml
# Default: sol-parser-sdk parse-borsh backend
solana-streamer-sdk = "1.5.9"
solana-streamer-sdk = "1.5.10"
# Zero-copy parser backend for latency-sensitive bots
solana-streamer-sdk = { version = "1.5.9", default-features = false, features = ["sdk-parse-zero-copy"] }
solana-streamer-sdk = { version = "1.5.10", default-features = false, features = ["sdk-parse-zero-copy"] }
```
If both `sdk-parse-borsh` and `sdk-parse-zero-copy` are enabled, `sol-parser-sdk 0.5.9+` uses the zero-copy backend.
If both `sdk-parse-borsh` and `sdk-parse-zero-copy` are enabled, `sol-parser-sdk 0.5.10+` uses the zero-copy backend.
## 🔄 Migration Guide
### Upgrading to v1.5.10
Version 1.5.10 uses `sol-parser-sdk 0.5.10` from crates.io. PumpSwap `CreatePoolEvent` now matches the on-chain IDL: it exposes `is_mayhem_mode` but does not expose `is_cashback_coin`. To read the cashback flag, subscribe to `AccountPumpSwapPool` and use `PumpSwapPoolAccountEvent.pool.is_cashback_coin`. The PumpSwap CreatePool log payload length check now includes the final `is_mayhem_mode` byte.
### Upgrading to v1.5.9
Version 1.5.9 uses `sol-parser-sdk 0.5.9` from crates.io. It inherits the Yellowstone gRPC stop lifecycle fix: `stop()` now signals, aborts, and awaits the active subscription task, subscription lifecycle transitions are serialized, and gRPC stream errors are labeled as `Grpc Stream error` for easier log separation from ShredStream.
@@ -409,6 +413,7 @@ let event_type_filter = Some(EventTypeFilter::include_only(vec![
let event_type_filter = Some(EventTypeFilter::include_only(vec![
EventType::PumpFeesUpdateFeeShares,
EventType::PumpSwapCreatePool,
EventType::AccountPumpSwapPool,
EventType::PumpSwapDeposit,
EventType::PumpSwapWithdraw,
EventType::RaydiumCpmmInitialize,
@@ -423,6 +428,11 @@ let event_type_filter = Some(EventTypeFilter::include_only(vec![
]));
```
`PumpSwapCreatePool` follows the on-chain `CreatePoolEvent` IDL and includes
`is_mayhem_mode`, but it does not include `is_cashback_coin`. To read the
cashback flag, subscribe to `AccountPumpSwapPool` and use
`PumpSwapPoolAccountEvent.pool.is_cashback_coin`.
## Dynamic Subscription Management
Update subscription filters at runtime without reconnecting to the stream.