Commit Graph
78 Commits
Author SHA1 Message Date
Estereg c2f2113211 feat(pumpfun): align IDL for V2, Mayhem & Cashback
Update BondingCurve & Global structs, fix account mappings (Create/Buy/Sell), improve trade event merging, add missing fields to create events, and fix create_v2 user mapping.
2026-02-21 09:51:02 +00:00
Estereg b4ae02c956 build(deps): upgrade dependencies to latest compatible versions 2026-02-20 19:38:54 +00:00
WoodandCursor fee154e506 chore: bump version to 1.2.1
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-21 02:38:52 +08:00
WoodandCursor 308a1b594e Align PumpFun with IDL and sol-parser-sdk; fix warnings; use English comments
- Sync IDL from sol-parser-sdk (pumpfun, pump_amm, add raydium_amm_v4)
- PumpFun CreateEvent: add is_cashback_enabled to CreateToken/CreateV2, parse in log decode and merge
- PumpFun TradeEvent: add ix_name, mayhem_mode, cashback_fee_basis_points, cashback, is_cashback_coin; fix Borsh size 250->274 for fixed fields; parse extension after 274
- Fix deprecation: enable solana-entry feature agave-unstable-api
- Remove unused import wide::CmpEq in simd_utils
- Replace all Chinese comments in modified code with English

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-20 00:29:01 +08:00
ysq c9364c7eee chore: bump version to 1.2.0 2026-01-27 22:23:58 +08:00
OpenMindTehandGitHub 2931373ff5 fix: add no-entrypoint feature to spl-token dependencies to resolve linker conflict
When building examples, the linker fails with multiple definition of entrypoint error because both spl-token and spl-token-2022 define the entrypoint() function by default.

Error:
error: ld returned 1 exit status
multiple definition of 'entrypoint'
spl_token-*.rlib: previous definition here

This SDK is an off-chain client library, not an on-chain program deployed to validators. The entrypoint() function is only needed for on-chain Solana programs. Client libraries only need the types and structs for parsing account data.

Fix: Add no-entrypoint feature to exclude the entrypoint symbol from compilation.

Before:
spl-token = "9.0.0"
spl-token-2022 = "10.0.0"

After:
spl-token = { version = "9.0.0", default-features = false, features = ["no-entrypoint"] }
spl-token-2022 = { version = "10.0.0", default-features = false, features = ["no-entrypoint"] }
2026-01-13 12:48:40 +03:00
ysq da4f8f8423 chore: bump version to 1.1.6 2025-12-14 20:59:23 +08:00
ysq 8cc5b7083b chore(deps): upgrade Solana and SIMD dependencies to latest versions
- Upgrade Solana dependencies from 3.0.0 to 3.1.4
- Upgrade solana-hash to 4.0.1
- Update spl-token and spl-token-2022 to latest versions
- Update other dependencies (yellowstone-grpc, rustls, wide, etc.)
- Fix wide library API changes: replace cmp_eq() with simd_eq()
2025-12-14 19:16:03 +08:00
ysq 5e222bf38a chore: bump version to 1.1.5
Update package version from 1.1.4 to 1.1.5 in Cargo.toml and documentation.
This release includes recent improvements from merged pull requests:
- Increase minimum accounts check from 11 to 13 for PumpSwap parser
- Refactor event parser core implementation
2025-11-19 21:13:40 +08:00
ysq 329405e23f chore: bump version to 1.1.4 and fix subscription filter keys 2025-11-16 23:30:51 +08:00
ysq 4b019e5e01 feat: add Compute Budget Program instruction parsing support
Add support for parsing SetComputeUnitLimit and SetComputeUnitPrice instructions from Solana's Compute Budget Program. Update event parser to handle compute budget instructions and bump version to 1.1.3.
2025-11-16 22:49:37 +08:00
ysq 1ec7f845a5 feat: upgrade to v1.1.2 2025-11-10 23:19:03 +08:00
ysq 9e4f71dbb2 feat: support Pump.fun V2 (Mayhem Mode) and update protocol structures for Nov 11 breaking changes 2025-11-09 23:30:48 +08:00
ysq 3a9fed4a9c feat: upgrade to v1.1.0 2025-11-06 23:20:52 +08:00
ysq f85581ec61 refactor: upgrade to v1.0.0 with enum-based event architecture 2025-10-12 22:38:50 +08:00
ysq bb927628b2 feat: upgrade to Solana SDK v3.0.0 and
modernize dependencies

  - Upgrade all Solana SDK dependencies
  from v2.3.x to v3.0.0
  - Update yellowstone-grpc dependencies
   from v8.0.0 to v9.0.0
  - Upgrade tonic from v0.12.3 to
  v0.14.2 with transport features
  - Update prost and prost-types to
  v0.14.1
  - Add solana-commitment-config and
  tonic-prost dependencies
  - Migrate from solana-sdk::instruction
   to message::compiled_instruction
  - Update imports for SPL token pack
  compatibility
  - Fix type compatibility issues with
  new gRPC and protobuf versions
  - Regenerate proto files with updated
  codegen and server implementations
2025-09-26 23:59:06 +08:00
ysq 938039adee feat: upgrade to v0.4.13 2025-09-20 00:22:44 +08:00
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 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
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 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 d955cec83f feat: upgrade to v0.4.5 2025-09-10 11:54:59 +08:00
ysq e3b763f0ca feat: upgrade to v0.4.4 2025-09-10 10:50:33 +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 4902c34bfa feat: add common account event parser with SPL token support 2025-09-03 17:19:35 +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 b535bdf052 perf: Major event processing system refactor for improved performance 2025-08-29 14:59:16 +08:00
ysq dee683396d perf: Refactor event processing system for better performance 2025-08-26 17:57:39 +08: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