140 Commits

Author SHA1 Message Date
ysq 674465548b refactor(event_parser): optimize instruction parsing with better error handling
- Fix borrowing conflicts and boundary conditions
- Improve accounts array expansion logic
- Refactor inner instruction processing flow
2025-09-15 22:44:47 +08:00
ysq 4dd19d6ca1 feat: upgrade to v0.4.11 2025-09-15 00:01:07 +08:00
ysq 317e990ed2 feat: upgrade to v0.4.10 2025-09-14 23:26:21 +08:00
ysq 7aad371076 Merge commit 'b577d115d65b39993060c32e9c7eeda0c82137c7' 2025-09-14 01:13:32 +08:00
ysq a76563314f refactor: overhaul event parser architecture for better performance
- Centralize event parsing logic and remove factory pattern
- Add high-performance clock module to reduce latency
- Consolidate protocol parsers with unified interface
- Introduce account pubkey caching and streamline traits
- Remove deprecated macro-based and multi-protocol implementations
2025-09-14 01:13:11 +08:00
sgxiang b577d115d6 Update README.md 2025-09-13 21:10:29 +08:00
ysq 9c311f63c1 refactor: migrate from slot-based to signature-based global state
Replace slot-based storage with signature-based storage in GlobalState
for improved transaction-level precision and developer address tracking.

- Update GlobalState structure and APIs
- Modify event processors to use transaction signatures
- Maintain lock-free performance characteristics
2025-09-13 17:10:58 +08:00
ysq 3cfc85ea9d feat: add Bonk Token2022 initialization support
Add support for Token2022 standard in Bonk protocol event parsing,
including new event type, discriminator, and instruction parser.
2025-09-13 00:13:17 +08:00
ysq 26dc717cd7 docs: Update Readme 2025-09-10 23:39:16 +08:00
ysq 7de075d771 docs: Update Readme 2025-09-10 23:26:20 +08:00
ysq 5ea536bef6 feat: refactor subscription API with multi-filter support
- Support multiple transaction/account filters as vectors
- Add Token2022 extended state parsing
- Add pumpswap pool monitoring example
- Enhance AccountFilter with memcmp filters

BREAKING CHANGE: API signature changes for subscription methods
2025-09-10 23:21:08 +08:00
ysq 304c943d79 docs: Update Readme 2025-09-10 17:35:48 +08:00
ysq 9a48c6cbfb docs: Update Readme 2025-09-10 17:17:03 +08:00
ysq d955cec83f feat: upgrade to v0.4.5 2025-09-10 11:54:59 +08:00
ysq 0c07c4d9ee refactor: enhance account event parser with more precise event classification
- Rename CommonAccountEvent to TokenAccountEvent for better semantic clarity
- Rename AccountNonce to NonceAccount for consistent naming convention
- Add MintInfoEvent type to support SPL Token Mint account parsing
- Enhance parse_token_account_event to automatically detect and parse Mint accounts
- Update all example code to use new event types and structures
- Improve event type semantics for better developer experience
2025-09-09 23:42:35 +08:00
ysq 528003a688 feat(examples): add nonce and token balance monitoring capabilities
- feat(examples): add nonce_listen_example for nonce account tracking
- feat(examples): add token_balance_listen_example for balance monitoring
- feat(parser): implement NonceAccountEvent with nonce state parsing
- feat(types): add AccountNonce event type to filtering system
- docs: update README with new monitoring examples
- chore: bump version to 0.4.2
2025-09-09 21:24:21 +08:00
ysq 2e8c0a1ee5 refactor: separate examples and improve docs
- Split main.rs into focused grpc_example.rs and shred_example.rs
- Add example overview table and dynamic subscription docs
- Improve documentation structure and user experience
2025-09-09 18:21:26 +08:00
ysq 1060b04b12 refactor: simplify event API method names for better ergonomics
- Rename verbose method names to shorter, clearer alternatives
- program_received_time_us() → recv_us()
- program_handle_time_consuming_us() → handle_us()
- instruction_outer_index() → outer_index()
- instruction_inner_index() → inner_index()
- Update all implementations across event parsers and processors

Improves developer experience while maintaining semantic clarity.
2025-09-03 15:49:50 +08:00
ysq 07bb110dc0 feat: upgrade to v0.4.0 2025-08-31 22:26:35 +08:00
ysq 74781e5cbe perf: implement SIMD-accelerated event processing and optimize streaming performance
- Add SIMD utilities for fast byte array comparison and discriminator matching
- Optimize event processor with batch processing and memory pool
- Refactor global state management with concurrent data structures
- Remove deprecated batch processing module
- Enhance metrics collection with reduced overhead
- Improve parser efficiency across all protocol implementations
- Add performance benchmarking dependencies (criterion, wide)
- Update documentation and examples for new architecture

Performance improvements:
- SIMD-accelerated byte operations for instruction parsing
- Concurrent HashMap (DashMap) for better multi-threading
- Optimized memory allocation patterns
- Reduced lock contention in event processing pipeline

Breaking changes: Removed batch.rs module, updated parser interfaces
2025-08-31 22:18:18 +08:00
ysq 52a489ae80 Merge commit 'ab0200c2ec7e7ed76afafc5cfa8440f61052d0fb' into perf/improve 2025-08-29 16:45:22 +08:00
ysq b535bdf052 perf: Major event processing system refactor for improved performance 2025-08-29 14:59:16 +08:00
ioxde 1e6841149d feat: add dynamic subscription management with runtime filter updates
- Add update_subscription() for runtime filter updates without reconnection
  - BREAKING: Return subscription request from subscribe_with_request()
  - Implement Default trait for EventTypeFilter
  - Add comprehensive dynamic_subscription example
2025-08-26 19:07:13 -07:00
ysq f87f3dd7f3 feat: update PumpSwap event parser with token program fields 2025-08-24 23:14:51 +08:00
ysq a1a453fe05 feat(bonk): Enhanced Bonk protocol event parsing support
- Updated BonkTradeEvent struct with new fields: global_config, platform_config, system_program, platform_associated_account, and creator_associated_account
- Modified account parsing logic in parser to support the new account fields
- Updated account count check from 11 to 18 to accommodate the new protocol structure
- Bumped version from 0.3.8 to 0.3.9
2025-08-22 21:21:08 +08:00
ysq e6912a8915 fix: Upgrade to v0.3.8 and fix parsing security issues
- Upgrade to version 0.3.8
- Add data length validation to prevent out-of-bounds access
- Fix boundary check issues in all protocol parsers
2025-08-22 17:58:57 +08:00
ysq 92fd3ad5f4 feat: upgrade to v0.3.7 2025-08-22 15:19:11 +08:00
ysq 9ec7194d2a feat: add subscription management and graceful shutdown support (v0.3.6)
- Add SubscriptionHandle for managing stream lifecycle
- Implement graceful shutdown with stop() methods
- Update documentation with new features
- Bump version to 0.3.6
2025-08-21 15:47:31 +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 915209abd8 fix: use fixed-size slices for protocol data parsing
- Improve borsh deserialization safety across all protocol decoders
- Add MarketState support for raydium_amm_v4
- Prevent buffer overflow in data decoding operations
2025-08-19 17:37:17 +08:00
ysq a9ceaa55d3 feat: refactor shred streaming with modular architecture 2025-08-18 01:08:12 +08:00
ysq ea7ecd1d0c feat: enhance event filtering and monitoring system
- Add EventTypeFilter for precise event type filtering
- Refactor metrics to track events by type (tx/account/block)
- Add parser caching for improved performance
- Enhance gRPC subscription management
- Update examples and type definitions
2025-08-16 14:48:51 +08:00
ysq 89f4a85a11 feat: upgrade to v0.3.1 with enhanced PumpFun event parser 2025-08-13 23:48:02 +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 c753c8418d feat: upgrade to v0.2.4 2025-08-12 11:34:26 +08:00
ysq 5d1efa3c1e feat: upgrade to v0.2.3 2025-08-12 10:31:55 +08:00
ysq 9dfa295133 feat: upgrade to v0.2.2 2025-08-12 10:24:49 +08:00
ysq 8e3d64a09c feat: Add Raydium AMM V4 support and enhance protocol parsers
- Add complete Raydium AMM V4 protocol integration
- Enhance PumpFun, CLMM, CPMM event parsing
- Refactor parser architecture for better extensibility
- Update documentation and examples
2025-08-11 22:02:09 +08:00
ysq 97faba9406 feat: Major refactor with batch processing and performance optimization
- Refactor streaming architecture with modular grpc components
- Add batch processing system with backpressure strategies
- Implement performance monitoring and metrics collection
- Add multi-protocol parser with block metadata support
- Enhance configuration system with preset profiles
- Add parse_tx_events example and update documentation
- Optimize yellowstone_grpc client complexity
2025-08-11 01:04:16 +08:00
ysq 87465cbfdb feat: upgrade to Solana 2.3.x and fix event parsing
- Bump version to 0.1.11
- Upgrade Solana deps to 2.3.x, yellowstone-grpc to 8.0.0
- Fix inner instruction indexing and timestamp handling
- Improve PumpFun/PumpSwap parser program ID support
2025-08-05 18:23:01 +08:00
ysq f700481f1f chore: release v0.1.10 with event ID generation and cache fixes 2025-08-05 14:40:07 +08:00
wood 03699b036f update readme 2025-08-05 01:07:57 +08:00
wood d68bdc1d76 fix channel is full 2025-08-04 21:30:55 +08:00
ysq 109c50cf06 feat: add Bonk migration events and bump to v0.1.9
- Add BonkMigrateToAmmEvent and BonkMigrateToCpswapEvent
- Update parsers and event handlers
- Add rustfmt.toml configuration
- Update documentation and examples
2025-08-03 21:59:08 +08:00
wood 4c90931e28 events optimization 2025-08-03 05:37:04 +08:00
ysq 2cbab93346 feat: upgrade to v0.1.8 and add volume accumulator support
- Bump version from 0.1.7 to 0.1.8
- Update version references in README.md and README_CN.md
- Add global_volume_accumulator and user_volume_accumulator fields to PumpFunTradeEvent
- Fix account index mapping in trade parser (creator_vault index adjusted from 8 to 9)

This update introduces volume accumulator support for PumpFun protocol event parsing,
aligning with the latest protocol account structure changes.
2025-08-01 22:56:31 +08:00
ysq 3e41481cfa chore: bump version to 0.1.7
- Improve index parsing logic with better error handling
2025-07-29 23:11:20 +08:00
ysq 0a4be48b99 feat: add event processing time tracking (v0.1.6)
- Add processing duration monitoring
- Update all protocol parser interfaces
- Improve PumpFun dev address detection
- Bump version to 0.1.6
2025-07-29 14:48:43 +08:00
ysq 2e864dd14e feat(api): Upgrade to v0.1.5 with improved event subscription API
This update includes the following improvements:
- Version upgraded to 0.1.5
- Added subscribe_events_v2 API with more granular account filtering
- Marked original subscribe_events API as deprecated
- Fixed bug
2025-07-26 17:11:28 +08:00
ysq cef54e7373 feat: Upgrade SDK to version 0.1.4 and optimize event handling mechanism
1. Version upgrade: SDK version updated from 0.1.3 to 0.1.4
2. Remove BlockMetaEvent: Delete unnecessary block metadata event type and related code
3. Optimize event handling: Add block_time and block_time_ms fields to each event
4. Code optimization: Improve code formatting and structure
5. Example updates: Update example code and usage instructions in README
2025-07-25 16:43:06 +08:00