Commit Graph

97 Commits

Author SHA1 Message Date
Kirill Fomichev 604add3080
grpc, proto: add unary is_blockhash_valid (#132) 2023-05-26 14:11:58 -04:00
Kirill Fomichev 6812298fbc
grpc, proto: add getVersion (#130) 2023-05-25 13:11:05 -04:00
Kirill Fomichev 968dce9463
grpc, proto: add commitment level (#128) 2023-05-25 11:31:08 -04:00
Kirill Fomichev 8ee39a04b5
plugin: remove connection after disconnect (#127)
* change clippy rule

* plugin: remove connection after disconnect
2023-05-23 10:51:24 +08:00
Kirill Fomichev 8942390e9c
rust client: add unary methods to example (#126) 2023-05-22 19:50:22 -04:00
Kirill Fomichev f43140ea7f
ci: add tests check to clippy (#125) 2023-05-22 15:54:36 -04:00
cairo 02a94d926a
feat: add ping,get_latest_blockhash,get_block_height,get_slot for yellowstone-grpc-client 2023-05-23 00:58:59 +08:00
cairo 58120e7c7a
111 add logical and to transaction subscriptiosn (#121)
* feat: #111 - Add account_required logic to FilterTransactions

* test: Test empty parameters for account and transactions.

* feat: #111 test cases
2023-05-16 22:57:57 +08:00
cairo 61f4d436e6
114 the grpc framework supports non streaming methods getlatestblockhash (#117)
* feat: unary Ping method for geyser_server

* fix: variables can be used directly in the `format!` string

* feat: Geyser server getLatestBlockhash method

* fix: use RwLock from tokio

by fanatid:
I think it's better to use RwLock from tokio, everything what we have is async

* feat: #112 getBlockHeight & getSlot

* use RwLock and mpsc (#118)

---------

Co-authored-by: Kirill Fomichev <fanatid@ya.ru>
2023-05-10 09:52:26 +08:00
cairo 4cbb353be3
feat: #115 (#116) 2023-05-03 01:29:59 +08:00
Linus Kendall 8f2c50d589
Update README.md (#108) 2023-04-10 19:41:27 +02:00
Linus Kendall cdbb4697a4
Make clippy happy (#107) 2023-04-10 11:47:59 +02:00
Linus Kendall f3bcaecf96
Bump version (#106) 2023-04-10 10:47:25 +02:00
Linus Kendall 802236793c
Fix xtoken length (#105)
* Allow user defined TlsConfig

Let user deifne custom TlsConfig.

* Remove failing x-token lengths

X-Tokens can be different lengths so we should just check that it's longer than 0.
2023-04-10 10:44:56 +02:00
Kirill Fomichev fc3f82ac04
geyser: impl default filters limit in config (#103) 2023-03-27 16:18:31 -03:00
Kirill Fomichev ef39ed3836
fix release ci (#102) 2023-03-26 22:25:52 -03:00
Kirill Fomichev e342e0b4e5
add memcmp/datasize filter to accounts (#101) 2023-03-26 21:40:39 -03:00
Linus Kendall 8c4f71648c
Allow user defined TlsConfig (#98)
Co-authored-by: Kirill Fomichev <fanatid@ya.ru>
2023-03-21 19:28:46 -03:00
Kirill Fomichev bbb5a2d9cc
re-export prost and tonic in proto crate (#100) 2023-03-21 17:56:53 -03:00
Kirill Fomichev b7a1b8a996
add required field description to Cargo.toml (#96) 2023-03-20 21:04:09 -03:00
Kirill Fomichev 5b0897a958
change crates prefix to yellowstone (#95)
Co-authored-by: shuimuliang <shuimuliang@gmail.com>
2023-03-20 20:40:32 -03:00
Linus Kendall ef20cc551d
Update README.md (#93) 2023-03-20 16:40:48 +01:00
Kirill Fomichev 5f61fe3208
move examples, new proto crate (#92)
* move examples

* move proto to separate crate

* use proto crate

* move config-check

* small fixes
2023-03-20 03:27:26 +08:00
Kirill Fomichev 0ffb9c5a73
add rust client lib (#91)
Thanks for the pr.
The WebSocket proxy also needs it.
2023-03-17 11:59:54 +08:00
Kirill Fomichev 80005d93bf
remove outdated Cargo.lock files (#89) 2023-03-13 18:24:35 -03:00
Linus Kendall 2c5d620ef5
Don't close streams (#85)
* Fix resubscriptions in golang

* Remove disconnection of stream to allow updates

* Add resub parameter

* Added a resub parameter
2023-03-13 17:21:28 +05:30
Linus Kendall 1783283ae4
Remove old golang proto (#86) 2023-03-09 18:18:43 +05:30
Kirill Fomichev 9f36593e49
add resubscribe example to rust client (#83) 2023-03-08 17:40:21 -03:00
Kirill Fomichev 09db6c6bf9
Update solana =1.15.2 (#79)
Co-authored-by: linuskendall <git@linuskendall.com>
2023-03-08 11:50:03 -03:00
Kirill Fomichev ebc23b38d3
ci: add Cargo.lock check (#73) 2023-03-03 21:24:39 -03:00
cairo c4487d891c
fix: allow optional x-token in rust client (#72)
* fix: allow optional x-token in rust client

---------

Co-authored-by: Kirill Fomichev <fanatid@ya.ru>
2023-03-03 16:16:13 -03:00
Linus Kendall 1aa1884e5c
ci: switch to Github's runners (#81) 2023-03-03 14:50:42 -03:00
cairo 19073fa1dd
feat: #48 (#56)
* feat: #48

demo project (server + client Check, client Watch)
https://github.com/shuimuliang/codebase-rs/tree/main/grpc_health

* chore: resolve conflict with main branch Cargo.toml
2023-02-24 13:01:10 +05:30
Linus Kendall 119f3be1b6
Update README.md (#78) 2023-02-23 19:02:50 +05:30
Linus Kendall a8563325c0
Update README.md (#77) 2023-02-23 19:02:27 +05:30
Linus Kendall 22974ae0c8
Update README.md (#76) 2023-02-23 19:01:19 +05:30
Linus Kendall 844bab62b5
Update README.md (#75) 2023-02-23 19:00:38 +05:30
Linus Kendall fb3b9fbf23
Update README.md (#74) 2023-02-23 18:37:34 +05:30
Linus Kendall cb0d2265ad
Fix workflows for rleease (#64) 2023-02-23 12:55:04 +05:30
Kirill Fomichev e65d02b1e1
Remove not required dependencies from Cargo.toml (#69) 2023-02-22 23:59:21 -03:00
Linus Kendall 77d75a9fb7
Adds Apache 2.0 License (#67)
* Adds Apache 2.0 License

* Update LICENSE

* Update LICENSE

* Update LICENSE

* Update README.md
2023-02-22 23:42:37 +05:30
Linus Kendall 7d7056e043
Update README.md (#66) 2023-02-22 17:44:56 +05:30
Linus Kendall c27d18bab0
Update README.md (#65)
Adds readme updates.
2023-02-22 17:42:13 +05:30
cairo dfcf417f85
chore: mv client.rs into rust dir (#62)
* chore: mv client.rs into rust dir

i think the best practice is:
a Cargo.toml inlcude just [workspace]
libsolana_geyser_grpc in 'cargo new lib_geyser_grpc'
client in 'cargo new client'

finally the dir is
/Cargo.toml
/lib_geyser_grpc/Cargo.toml
/lib_geyser_grpc/src/
/client/Cargo.toml
/client/src/client.rs

* Moved rust code to subprojects/workspace (#63)

* Moved to submodules

* Moved config-check binary path

---------

Co-authored-by: Linus Kendall <git@linuskendall.com>
2023-02-22 17:28:41 +05:30
Linus Kendall adc60a9c99
Updated golang client (#58)
* Updated golang client

Golang client now works with the bidi stream and provide similar command line arugments to the Rust client.

* Added keepalive params

* Make the golang args standardized with the rust lcient

See #44.

* Make endpoint parsing follow our standard format

Parses endpoint as URL instead of host:port combo.
2023-02-22 17:27:48 +05:30
Nikita Baksalyar 15640975c7
Fix JS and TS clients compatibility with older Nodejs versions (#60) 2023-02-22 15:06:34 +05:30
Nikita Baksalyar d58c3f6a51
Add simple TypeScript client (#41)
* Add simple TypeScript client #39

* Unify endpoint format for JS & TS clients #44

Use a URL schema to determine secure connections (http://endpoint or https://endpoint)

* Detect the https protocol correctly

* Fix nodejs and typescript clients

Close the write stream after sending a request so that the gRPC server doesn't time out.
2023-02-17 12:08:06 +05:30
cairo ad73f64a8a
Tonic retry client (#53)
* Feat: client with default retry policy

Once the server connection is broken, client will reconnect to the server, then retry to send payload SubscribeRequest to server

* Refactor: backoff as default crates, simplify cargo.toml

---------

Co-authored-by: Nikita Baksalyar <nikita.baksalyar@gmail.com>
2023-02-17 12:06:50 +05:30
Kirill Fomichev 00ba4e96da
Change release name in CI (#50) 2023-02-09 23:29:05 -03:00
Kirill Fomichev 0581dc4227
Fix deps for v0.5.2+solana.1.14.15 (#49) 2023-02-09 22:59:13 -03:00