v0.6.1
π Yellowstone Vixen v0.6.1 β Release Notes
β Highlights
- Introduced block-coordinator for complete and ordered slot processing
- Added Kafka sink with ordering and delivery guarantees
- Upgraded proc-macro + IDL system with optional proto compatibility
- Expanded stream capabilities and filtering model
- Reworked snapshot ingestion pipeline with backpressure support
- Added BPF loader parser and improved SPL parsing
- Improved observability, error handling, and concurrency
π§± Block Coordinator
New crate: yellowstone-vixen-block-coordinator
Summary
Combines Yellowstone gRPC stream with block engine data to construct complete blocks and emit fully ordered slot data.
Key Changes
- Transactional slot processing (#230)
- Handling incomplete slots (#233)
- Include failed transactions to avoid pipeline stalls (#200)
- Enforce
Processedcommitment (#199)
π‘ Stream Enhancements
Crate: yellowstone-vixen-stream
Improvements
- Multiple program subscriptions (#160)
- Consolidated filters into a single subscription (#192)
- Added
failedfield toTransactionPrefilter(#191)
𧬠Proc-Macro + IDL System
Crate: yellowstone-vixen-proc-macro
Enhancements
- Generated IDLs now support optional Protobuf compatibility via
protofeature (#212) - Proc-macro for generating parsers from Codama IDL (#161)
- Generated IDLs made public (#183)
- Protobuf compatibility for transactions and accounts (#197)
Improvements
- Support for
remaining_accounts(#207) - Support for nested vectors (#241)
- Program event proc-macro (#236)
- Accounts and args made non-optional (#213, #214)
- Improved developer experience (#217)
π§΅ Kafka Sink
New crate: yellowstone-vixen-kafka-sink
Features
- Ordered publishing aligned with block-coordinator (#202)
- SASL SCRAM-SHA-256 with TLS support (#225)
- Configurable compression (default: zstd) (#227)
- Public API soft-gated for account builder/parser (#211)
π¦ Snapshot Pipeline
Changes
- Reworked snapshot source (#165)
- Introduced bounded channels for backpressure (#162)
- Fixed filter preflight issues (#156)
- Exposed
SolanaSnapshotConfig(#154)
π Data Sources
Jetstream Source
- Added
yellowstone-vixen-jetstream-sourcecrate (#170) - Optimized ingestion pipeline (#237)
- Initial implementation reverted and reintroduced (#163, #166)
π Parsers
Additions
- BPF loader parser (#208)
Improvements
- SPL Token 2022 extensions (#159)
- Use
unpack_from_slicefor safer parsing (#155) - Parse only relevant program accounts (#239)
Fixes
βοΈ Pipeline & Concurrency
- Bounded channels for flow control (#162)
- Refactor consumption using
fume(#178) - Deterministic Kafka publishing (#202)
π Observability & Errors
π Yellowstone gRPC Source
Crate: yellowstone-vixen-yellowstone-grpc-source
Improvements
π Build & Tooling
- Workspace dependency unification (#131)
- Standardized Rust edition (#137)
- CI improvements and test execution (#195, #240)
- Nightly toolchain pinning (#206)
- Fixed missing system dependencies (#194)
New Contributors
- @lvboudre made their first contribution in #131
- @Kym0211 made their first contribution in #137
- @nooma-42 made their first contribution in #139
- @raunit-dev made their first contribution in #143
- @CanardMandarin made their first contribution in #147
- @vladdoster made their first contribution in #153
- @senzenn made their first contribution in #163
- @grooviegermanikus made their first contribution in #169
- @RedaRahmani made their first contribution in #177
- @hack-wrench made their first contribution in #183
- @kino-andrew made their first contribution in #190
- @the-orex made their first contribution in #203