All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Note: Version 0 of Semantic Versioning is handled differently from version 1 and above. The minor version will be incremented upon a breaking change and the patch version will be incremented for features.
commit : a44923c33414f16fa0f378fb99c22b46de00ef74
- prio : Adding prioritization fees library PR
- cluster-endpoints : GRPC optimizations PR
- quic : Fixing MTU bug PR
- cluster-endpoints : Adding GRPC multiplexing PR
- stake-vote : Calculating stake votes and leader schedule in lite-rpc PR
commit : 3cdab51676a4b1bfb5b41739a383e30cd8a1c73c
- core : Refactored out solana rpc client from the core library. PR
- services : Refactored out solana rpc client from the services library. PR
- cluster-endpoints : Created cluster endpoint library and added rpc polling PR
- cluster-endpoints : Added grpc support in cluster endpoints. PR
- proxy : Added lite-rpc quic proxy which will act as a TPU forwarding proxy for multiple lite-rpc clients. PR PR PR
- Using counting semaphore for block polling. PR
- Changing algorithm for replay so that replay is done in linearly increasing time. PR
- Unistream connection counting semaphore is now held by each connection. PR
- Adding history libraries and block storing strategies. PR
- Avoid sending transactions in TPUClient for which have expired blockheight. PR
commit : 70eb250b103c64a0e5a3159c9493e87003d046a4
- lite-rpc : Added restart logic.
- metrics : added more counters for related to failure of services during restart.
- tpu-client : sending transaction using multiple quic connections.
- tpu-client : removed pubsub of slot and implementing force polling using rpc.
commit: c1eed987f29417f8a3b8d147f43a112388f02e4f
- postgres : removing postgres dependency on core and services
- all: refactored notification so that they do not fail, making the lite-rpc code and services work with other projects.
commit: fffb302ce6f01ab0522a4ab23be60394bb9aa40f
- all: Seperating services that can be used by other projects into a library and creating a solana-lite-rpc-services package
- rpc: Creating a custom TPU Client instead of using solana TPU client more suitable for lite-rpc loads PR
- metrics: Adding metrics related to custom tpu client bf5841f
commit: dc75e0e57386ce272bc22aa8fcfe35a0d8ce0eb0
Initial release.
- rpc: Json rpc implementation using jsonrpsee crate to provide frontend to send and confirm transactions
- pubsub: A websocket implementation to subscribe to signature updates
- block-listening: A mechanism to get blocks from the RPC and read them to extract transaction data
- tpu-client: Mechanisms related to sending transaction to the cluster leaders
- postgres: Saving transaction and block data into postgres
- metrics: Updates related to metrics used for graphana and prometheus
- core: Core library,
- services: Services library
- lite-rpc: The lite rpc binary
- cluster-endpoints : Cluster endpoints library.
- proxy : Lite-rpc QUIC proxy to act as a forwarder
- prio : Prioritization fees libarary
- stake-vote : Stake vote library