solanaj
solanaj copied to clipboard
Version 2.0 Discussion
Requirements:
Architecture:
- Replace Exception-based code with Optionals, remove try-catch from normal code flow.
- Evaluate different Websocket libraries
- Support for importing/signing/sending raw transactions (Base64/bytes)
- Support for durable nonces
- Mechanism for auto-reconnect on Websockets + re-subscribe to dropped subscriptions
- SOCKS proxy support
APIs:
- Coverage of the newer APIs
- Support ALTs (Address Lookup Tables)
GetProgramAccounts:
- Support pagination using
dataSize = 0
- Support for importing/signing/sending raw transactions (Base64/bytes)
- Support for durable nonces
- Mechanism for auto-reconnect on Websockets + re-subscribe to dropped subscriptions
- Websocket automatic reconnect on close
- SOCKS proxy support
Support for VersionedTransactions - attempting to modify existing code as we speak. Hopefully a PR isn't too far down the road.
In 1.18.0-staging branch, I've implemented:
- SOCKS proxy support
- WebSocket auto-reconnect and auto-resubscribe.
- WebSocket unsubscribe APIs
2.0 will have breaking changes, if we switch away from Exception-driven code.
Closing this issue in favor of separate issues/tickets for each feature.
Remaining work to be spun out:
GetProgramAccounts:
- Support pagination using
dataSize = 0
APIs:
- Support ALTs (Address Lookup Tables)
- Replace Exception-based code with Optionals, remove try-catch from normal code flow. (This will be V2/major version upgrade.)
- Support for importing/signing/sending raw transactions (Base64/bytes)