Commit Graph

37 Commits

Author SHA1 Message Date
Ali Behjati 26f3fc3653
[hermes] Add health probe (#899)
* [hermes] Add health probe

* Address feedbacks

* Address feedbacks
2023-06-19 19:25:29 +02:00
Ali Behjati b596090bd8
[hermes] Switch to message structs in pythnet_sdk (#897) 2023-06-19 18:21:39 +02:00
Ali Behjati 4c2dfad755
[hermes] fix cors bug (#896)
* Fix cors policy error

* Bump version

* Remove unused dependencies
2023-06-19 17:15:12 +02:00
Reisen 2b829f36a0
feat: guardian source from ethereum to pythnet (#894) 2023-06-16 15:48:36 +02:00
Ali Behjati 29dad7acc7
[hermes] Add get_price_feed endpoint (#883) 2023-06-13 17:24:13 +02:00
Ali Behjati f394d9e761
[hermes] Fix memory leak (#881) 2023-06-13 17:11:47 +02:00
Reisen 54b59e6644 fix: whitespace 2023-06-12 12:05:57 +01:00
Reisen 034dc15cfa feat: add go profiling 2023-06-12 12:05:57 +01:00
Reisen cf7c6839eb address feedback 2023-06-05 15:19:48 +01:00
Ali Behjati 3a1b2a36b3 Address comments 2023-06-05 15:19:48 +01:00
Reisen 468817c5bc Update p2p.go to use tabs 2023-06-05 15:19:48 +01:00
Ali Behjati 417fa50f14 Add Dockerfile + CI release action 2023-06-05 15:19:48 +01:00
Ali Behjati 02de29624c Add vaa cache 2023-06-05 15:19:48 +01:00
Ali Behjati 04806a551e Refactor 2023-06-05 15:19:48 +01:00
Ali Behjati 4fa9304b4f Move Message type extensions to pyth-client 2023-06-05 15:19:48 +01:00
Ali Behjati c707e42fb8 More refactor 2023-06-05 15:19:48 +01:00
Ali Behjati 9dd1520a25 Small refactor 2023-06-05 15:19:48 +01:00
Ali Behjati 23340d5e6c Clippy 2023-06-05 15:19:48 +01:00
Reisen 454cd03b90 updates 2023-06-05 15:19:48 +01:00
Reisen 065fba29b1 feat: correct wire format definitions 2023-06-05 15:19:48 +01:00
Reisen a1dff0f5ac feat: add serializers for pyth formats
feat: use pythnet serialization in hermes

Fix vaa validation

Clippy

Update config names

Wrap Store with Arc

Store works perfectly without Arc as all it's elements are behind an Arc
or something similar to that, however a developer might make
mistake to add a field and missing it.

Improve error handling

Update metadata struct

Add metadata

Update Eth listener

Pin wormhole to a version

Fix ws dispatcher

fix: blocking in go recv corrupts tokio runtime

Make network <> store message passing non-blocking

Update logs and revert debug changes
2023-06-05 15:19:48 +01:00
Ali Behjati 8aeef6e6bd Add vaa verification 2023-06-05 15:19:48 +01:00
Ali Behjati d77070feae clippy 2023-06-05 15:19:48 +01:00
Ali Behjati d70119c067 Use pyth-oracle types 2023-06-05 15:19:48 +01:00
Ali Behjati 15e35aa300 Fix wormhole message parsing 2023-06-05 15:19:48 +01:00
Ali Behjati fca22a5b2e Fix pythnet listner 2023-06-05 15:19:48 +01:00
Ali Behjati ec5ad5fe79 Use slot for pending accumulations 2023-06-05 15:19:48 +01:00
Ali Behjati 05bd9b4be7 Use wormhole sdk 2023-06-05 15:19:48 +01:00
Ali Behjati d93154a58d Fix ping problem from client 2023-06-05 15:19:48 +01:00
Ali Behjati 866eace744 Add initial version 2023-06-05 15:19:48 +01:00
Ali Behjati 8a5a74ec34
[hermes] Add WS (#773)
* [hermes] Add WS

* Address Jayant comments

* Update hermes/src/network/rpc/ws.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* Address David comments

---------

Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-05-01 19:05:15 +02:00
Thomaz Leite 04b1a21dfe
[hermes] Pass Wormhole arguments from command line or env. vars (#769)
* Format p2p.go

* Pass Wormhole arguments from command line or env. vars

* Remove forget calls and let memory be freed (also remove confusing comment)

* Use proper types on command line arguments
2023-04-19 17:04:30 -03:00
Ali Behjati c951ff634a
[hermes] Improve latest feeds rest api (#752)
* [hermes] Improve latest feeds rest api

This change adds verbose and binary option to latest_price_feeds
endpoint. Unfortunately it exposes many internal information which
required touching different components to expose batch_vaa specific
information. The code is now coupled to batch_vaa and we need to
refactor it when we add other proof types (and eventually remove it when
it get deprecated).

* Update hermes/src/network/rpc/rest.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* Update hermes/src/network/rpc/rest.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* Fix merge

---------

Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-04-18 18:14:07 +02:00
Ali Behjati 3ad3a46b1d
[hermes] add get price feed ids + refactor (#747)
* [Hermes] Add get price feed ids + refactor

* Address feedbacks
2023-04-18 17:50:34 +02:00
Ali Behjati 32596d5d4e
[hermes] Add more rest api methods (#746)
* [hermes] Add more rest api methods

Add many of the price service apis. Per David suggestion, we do
validation in parsing instead of doing it later. I didn't find
any suitable library to deserialize our hex format so I created
a macro to implement it because we use it in a couple of places.
I tried making a generic HexInput but couldn't make it working
(and I need other crates like generic_array for it which makes
the code more complex)

* Address feedbacks
2023-04-18 17:20:11 +02:00
Ali Behjati 1af86140f1
[hermes] Add basic structure for price store and rpc (#717)
Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-03-30 14:27:02 +02:00
Reisen 3f56b3064d
[hermes] Rename from price service and add README. (#705)
* pyth-node: rename from price service and document

* pyth_node: Add visual architecture to README.
2023-03-21 14:36:13 +00:00