Commit Graph
18 Commits
Author SHA1 Message Date
0xfnzero f1c6aecb3d fix(pumpswap): preserve upgraded event fields 2026-07-17 03:04:10 +08:00
0xfnzero aab0a3a143 feat(pumpswap): forward virtual quote reserve upgrade 2026-07-17 01:59:54 +08:00
0xfnzero aa065e7cae Release solana-streamer-sdk 1.5.11 2026-06-07 02:30:28 +08:00
0xfnzero 89bf36148f Release solana-streamer-sdk 1.5.10 2026-06-07 02:00:14 +08:00
0xfnzero ea0f9b9145 Release solana-streamer-sdk v1.4.6 2026-05-18 01:53:25 +08:00
0xfnzero 92bac16fd4 Release solana-streamer-sdk v1.4.3
Route gRPC, ShredStream, and account parsing through sol-parser-sdk.

Remove local protocol parsing implementations.

Depend on sol-parser-sdk v0.4.8 from crates.io.
2026-05-16 06:45:35 +08:00
0xfnzero ab84249f4a feat: bridge streamer to sol-parser-sdk 2026-05-15 05:09:29 +08:00
0xfnzero 7f505f0da5 feat(pumpswap): align pool account and events with cashback IDL
- Extend on-chain Pool layout (is_cashback_coin, 7-byte reserved, 244 bytes)
  with backward-compatible decode for 236-byte legacy accounts
- Decode Buy/Sell program logs manually: min_base_amount_out, ix_name,
  cashback fields; optional sell cashback when payload >= 368 bytes
- Set ix_name on buy / buy_exact_quote_in instructions; merge new fields
  in CPI log merger
- Add read_i64_le helper and pool layout unit test

Made-with: Cursor
2026-04-03 14:38:06 +08:00
vibes ed8831cc8a feat: Add support for buy_exact_sol_in and buy_exact_quote_in instructions
PumpFun and PumpSwap have additional buy instruction variants that were not being parsed:

- PumpFun: `buy_exact_sol_in` (discriminator: [56, 252, 116, 8, 158, 223, 205, 95])
- PumpSwap: `buy_exact_quote_in` (discriminator: [198, 46, 21, 82, 180, 217, 232, 112])

These discriminators are from the official PumpFun IDL:
https://github.com/pump-fun/pump-public-docs/tree/main/idl

Without this fix, approximately 4-5% of trades were being missed.
2026-01-06 10:14:06 +00:00
ysq fd180935f8 refactor: rename UnifiedEvent to DexEvent 2025-10-12 22:00:15 +08:00
ysq 312a675a40 refactor: restructure event handling from trait objects to enum pattern
- Convert UnifiedEvent from trait object (Box<dyn UnifiedEvent>) to concrete enum type
  - Remove match_event! macro in favor of native match expressions
  - Simplify event metadata access: event.event_type() -> event.metadata().event_type
  - Unify event callback signatures: Fn(Box<dyn UnifiedEvent>) -> Fn(UnifiedEvent)
  - Update all example code to use the new enum-based event system
  - Optimize type system to reduce runtime overhead and improve type safety

  Affected scope:
  - Core event parser and processor
  - All protocol event definitions (PumpFun, PumpSwap, Bonk, Raydium series, etc.)
  - gRPC and Shred streaming modules
  - All example code
2025-10-10 18:19:44 +08:00
ysq b71a83bf66 perf: add object pooling and enhanced metrics for streaming optimization
- Implement gRPC/shred connection pools for memory efficiency
- Add atomic processing time stats with auto-calibration clock
- Optimize event parsers and protocol handlers
- Refactor metrics system for advanced performance monitoring
2025-09-02 17:27:27 +08:00
ysq 218abd3aa4 perf: Major event processing system refactor for improved performance 2025-08-28 14:49:56 +08:00
ysq f87f3dd7f3 feat: update PumpSwap event parser with token program fields 2025-08-24 23:14:51 +08:00
ysq 372bb765af feat: enhance protocol event parsers and bump to v0.3.5
- Add creator_fee support to Bonk events
- Improve PumpFun/PumpSwap event parsing
- Update documentation and common types
2025-08-19 21:13:22 +08:00
ysq aee8921ad5 feat: Add account event parser and protocol type definitions
- Add account event parser (account_event_parser.rs) for account-level event handling
- Introduce type definitions for pumpfun, pumpswap, raydium_amm_v4, raydium_clmm, raydium_cpmm protocols
- Enhance event processor to support account event processing alongside transactions
- Improve subscription system with separate transaction and account filters
- Optimize parser configuration using Option types for cleaner code structure
- Update examples and documentation to reflect new capabilities

Changes include:
- 6 new types.rs files for protocol-specific data structures
- Updated event processor for account, transaction, and block meta events
- Refactored subscription manager with account filtering support
- Enhanced metrics and batch processing logic
2025-08-13 23:30:59 +08:00
ysq 9dfa295133 feat: upgrade to v0.2.2 2025-08-12 10:24:49 +08:00
ysq 9e34a01874 feat: refactor to multi-protocol event streaming system
Major architectural refactor, upgrading from simple logging system to comprehensive multi-protocol Solana DEX event streaming system:

 New Features:
- Support for 5 DEX protocols: PumpFun, PumpSwap, Bonk, Raydium CPMM, Raydium CLMM
- Implement unified event interface (UnifiedEvent trait) and event factory pattern
- Add dual streaming support: Yellowstone gRPC and ShredStream
- Add Chinese documentation (README_CN.md)

🏗️ Architectural Improvements:
- Refactor event parsing system with modular design
- Implement protocol-specific parsers and event types
- Optimize dependency management, update Cargo.toml
- Remove legacy logging modules, clean up redundant code

📊 Statistics:
- Added 46 files, 4511 lines of code
- Removed 1381 lines of legacy code
- Net addition of 3130 lines of code

Tech Stack:
- Rust async/await for asynchronous processing
- Protocol Buffers support
- Multi-protocol event parsing
- High-performance event stream subscription
2025-07-19 23:46:42 +08:00