314 Commits

Author SHA1 Message Date
0xfnzero 02c8a6d168 Release solana-streamer 1.5.2 v1.5.2 2026-05-26 21:23:27 +08:00
0xfnzero 8b967f58d6 Release solana-streamer-sdk 1.5.1 v1.5.1 2026-05-26 07:22:21 +08:00
0xfnzero 8972d83492 Release streamer with parser SDK 0.5 v1.5.0 2026-05-26 00:19:07 +08:00
0xfnzero 6149ae2987 Integrate CLMM accounts and optimize ordered buffers v1.4.14 2026-05-26 00:03:22 +08:00
0xfnzero 983aedf27c Integrate Raydium CLMM upgraded parser events v1.4.13 2026-05-25 23:06:44 +08:00
0xfnzero 0875ec1a9d Use sol-parser-sdk 0.4.17 v1.4.12 2026-05-25 19:18:54 +08:00
0xfnzero eb1324d402 Use crates.io sol-parser-sdk dependency 2026-05-25 03:54:25 +08:00
0xfnzero 108b9a616f Release solana-streamer-sdk v1.4.11 v1.4.11 2026-05-25 03:38:28 +08:00
0xfnzero aaa10a69f7 Release parser SDK bridge updates v1.4.10 2026-05-25 01:48:41 +08:00
0xfnzero 45ab6eb061 Fix grpc subscription cleanup and API compatibility 2026-05-25 00:41:25 +08:00
0xfnzero 3cd3517d3e Merge pull request #70 from 0xfnzero/fix-grpc-reconnect-bad-protobuf
# Conflicts:
#	src/streaming/grpc/pool.rs
2026-05-25 00:35:22 +08:00
0xfnzero 41187ff84f Update parser dependency and release 1.4.9 v1.4.9 2026-05-21 17:48:52 +08:00
0xfnzero 79ffd856e0 Update sol-parser-sdk dependency to v0.4.13 2026-05-21 02:13:41 +08:00
0xfnzero 1beb07befa Release solana-streamer-sdk v1.4.8
Update sol-parser-sdk dependency to v0.4.12.
v1.4.8
2026-05-20 19:43:41 +08:00
mooncitydev 3c7bf52e01 fix grpc reconnect after stream death and skip bad protobuf updates
clear active_subscription when the yellowstone stream task exits or subscribe fails, so callers are not stuck on "already subscribed" after a disconnect.

replace unwrap/expect in grpc pool parsing with validation and skip malformed account or transaction updates instead of panicking the whole stream.
2026-05-19 04:26:51 -07:00
0xfnzero 5494fd5fb3 Release solana-streamer-sdk v1.4.7 v1.4.7 2026-05-19 00:27:06 +08:00
0xfnzero ea0f9b9145 Release solana-streamer-sdk v1.4.6 v1.4.6 2026-05-18 01:53:25 +08:00
0xfnzero b60838a840 Propagate PumpFun instruction amount fields v1.4.5 2026-05-17 21:32:48 +08:00
0xfnzero c0883dfc7b Release solana-streamer-sdk v1.4.4
Update English and Chinese README installation versions.

Document current SDK-backed gRPC and ShredStream usage.

Depend on sol-parser-sdk v0.4.9 from crates.io.
v1.4.4
2026-05-16 07:14:14 +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.
v1.4.3
2026-05-16 06:45:35 +08:00
0xfnzero 55e6bc6459 fix: route streamer grpc parsing through sol-parser-sdk v1.4.2 2026-05-16 02:09:16 +08:00
0xfnzero d2630d4980 fix: support yellowstone grpc proto 12.4 account filters v1.4.1 2026-05-16 01:56:17 +08:00
0xfnzero 741778a82f examples: update for SDK-backed streamer API 2026-05-15 07:46:29 +08:00
0xfnzero ba86cfcd1b release: prepare solana-streamer v1.4.0 v1.4.0 2026-05-15 05:16:25 +08:00
0xfnzero ab84249f4a feat: bridge streamer to sol-parser-sdk 2026-05-15 05:09:29 +08:00
0xfnzero e29a2e4f5a docs: add donation wallet address to READMEs 2026-05-14 19:33:33 +08:00
Wood e2cceb01d2 Update README.md 2026-04-29 21:33:14 +08:00
Wood 409685c668 Merge pull request #69 from itsA-D/b/fix_build
Fix spl-token-2022 dependency pin for build failure
2026-04-26 22:13:35 +08:00
itsA-D f669d74c35 Fix spl-token-2022 dependency pin 2026-04-23 15:12:43 +05:30
0xfnzero 99412460c4 Add project logo to README
- Add Logo.png to project root
- Update README.md to display logo with 400px width

🤖 Generated with [Qoder][https://qoder.com]
2026-04-07 21:39:13 +08:00
Wood 93fe39f380 Merge pull request #68 from mooncitydev/subscription-cleanups-and-ci
simplify grpc subscription option checks and add github ci workflow
2026-04-07 21:28:01 +08:00
mooncitydev 01701e97fc simplify grpc subscription option checks and add github ci workflow
Made-with: Cursor
2026-04-04 04:25:17 +09: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
0xfnzero b593605dbd fix(deps): pin spl-token-group-interface to 0.7.1 for spl-token-2022 10.0.0
spl-token-group-interface 0.7.2 changed TokenGroup.update_authority to
MaybeNull<Pubkey>, while spl-token-2022 10.0.0 still expects
OptionalNonZeroPubkey, causing E0308 build failures. Pinning to 0.7.1
aligns transitive deps until upstream publishes a compatible release.

Made-with: Cursor
2026-04-03 12:57:54 +08:00
Wood 3fe529ea3b fix: clamp inner_index (i64) to i32 range when computing current_inner_idx
Avoid overflow/truncation when inner_index is outside i32 range in both
gRPC and standard instruction parsing paths.

Made-with: Cursor
2026-03-09 10:31:16 +08:00
Wood 7a0a95a2f7 Merge pull request #65 from Estereg/dev-work
refactor: streaming core cleanup, deduplication and dependency simplification
2026-03-09 10:25:32 +08:00
Wood a3f879bda0 Merge branch 'main' into dev-work 2026-03-09 10:25:22 +08:00
Wood 6e5e378247 fix: post-merge robustness - global_state cleanup count, swap bounds, blockhash & i32 index
- global_state: only decrement signature_count when remove() actually removed entry
- types: bounds-check program_id_index and account indices in swap extraction
- types: require data.len() >= 9/12 before slicing token instruction data
- types: use i32 for current_index and safe skip count to avoid i8 truncation/UB
- event_parser: encode recent_blockhash only when len() == 32; pass i32 to swap parsers

Made-with: Cursor
2026-03-09 10:23:33 +08:00
Wood 6508d3b2fc Merge branch 'main' into dev-work 2026-03-09 10:15:55 +08:00
Wood adb4cfc52d Merge PR #65: refactor streaming core cleanup and dependency simplification 2026-03-09 10:10:24 +08:00
Estereg dad231a26b refactor: remove bs58 dependency and use solana_sdk program ID constants
- Remove standalone bs58 dependency and rely on the solana_sdk re-export
- Switch system and token program IDs to the idiomatic spl_token / solana_sdk constants
- Use pubkey! and LazyLock for cleaner program ID initialization
- Alias solana_entry::Entry as SolanaEntry to avoid a naming conflict with gRPC types
- Remove unused FromStr imports and some redundant logic
2026-03-08 16:47:09 +00:00
Wood bdf984f2c1 chore: release v1.3.0
Made-with: Cursor
2026-03-09 00:41:28 +08:00
Wood 766899deb6 Merge pull request #64 from Estereg/main
refactor: modernize stack and migrate to std primitives
2026-03-09 00:21:53 +08:00
Wood ba058c53e1 docs: update example table in README/README_CN; add parse/debug/grpc examples (PumpFun, PumpSwap, Meteora DAMM)
Made-with: Cursor
2026-03-08 23:11:11 +08:00
Estereg 8469b7eec5 Merge branch '0xfnzero:main' into dev-work 2026-03-08 03:41:13 -03:00
Estereg 8d8a79d2e4 Merge branch '0xfnzero:main' into main 2026-03-08 03:41:05 -03:00
Wood 20a1048020 feat(pumpfun): parse 17th instruction account (account field)
- Add PumpFunTradeEvent.account: Option<Pubkey> for the 17th instruction
  account (index 16), labeled as 'Account' on block explorers.
- Fill account in parse_buy_instruction, parse_buy_exact_sol_in_instruction,
  and parse_sell_instruction when accounts.get(16) is present.
- Merge account from CPI log event into instruction event when merging.

Made-with: Cursor
2026-03-08 11:08:46 +08:00
Estereg 1a225870a9 Merge branch '0xfnzero:main' into dev-work 2026-03-07 14:43:25 -03:00
Estereg 6ac36664b2 Merge branch '0xfnzero:main' into main 2026-03-07 14:43:18 -03:00
Wood 2da2b06e1f refactor(events): recent_blockhash as base58 string (same as signature)
- EventMetadata.recent_blockhash: Option<Vec<u8>> -> Option<String>
- Add bs58 dependency; gRPC path: bs58::encode message bytes
- VersionedTransaction path: use Hash::to_string() (base58)
- parse_events_from_grpc_instruction/parse_events_from_instruction: accept Option<&str>

Made-with: Cursor
2026-03-07 20:24:46 +08:00