Commit Graph

74 Commits

Author SHA1 Message Date
Ali Behjati 5e45146acb feat(hermes): add out of order subscription
Also improve the readiness probe

Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-09-19 15:54:33 +02:00
Ali Behjati 7d7e09fe3a refactor(hermes): update tests 2023-09-19 13:08:11 +02:00
Ali Behjati 3a9df67ef2 refactor(hermes): move wormhole out of aggregate 2023-09-19 13:08:11 +02:00
Ali Behjati 09e2b17d1c refactor(hermes): rename store to aggregate 2023-09-19 13:08:11 +02:00
Reisen cbeada6c6d refactor(hermes): introduce Benchmarks trait 2023-09-19 13:08:11 +02:00
Reisen 263b80b1f7 refactor(hermes): introduce CacheStore 2023-09-19 13:08:11 +02:00
Reisen e144dd2bd0 refactor(hermes): removed `impl Store` 2023-09-19 13:08:11 +02:00
Ali Behjati 28f9b39444 doc(hermes): update readme 2023-09-13 10:31:32 +02:00
Ali Behjati 518ab13e03 refactor(hermes): use tokio sync primitives in p2p 2023-09-08 16:17:06 +02:00
Ali Behjati 7dc0cb80bf feat(hermes): add benchmarks for histroical data 2023-09-08 15:35:58 +02:00
Ali Behjati ed505d9e53 fix(hermes): improve tracing logs
- Add EnvFilter to respect RUST_LOG
- Disable ANSI if stderr is not a terminal
2023-09-05 19:12:14 +02:00
Reisen 860178f057 feat(hermes): add tracing 2023-09-05 13:50:20 +01:00
Reisen 0559b45936 feat(hermes): add datadog profiling 2023-09-01 11:58:43 +01:00
Reisen 85d5170ddb chore(hermes): visual clean up of Cargo.toml 2023-08-30 11:37:44 +01:00
Reisen ac8895cada ci: bump hermes version 2023-08-28 12:18:43 +02:00
Reisen 98f8ccb614 feat(hermes): add global info level logging for libp2p 2023-08-28 11:15:21 +01:00
Reisen 5edcce4530 refactor(hermes): clean exit 2023-08-26 12:02:28 +01:00
Reisen 71ce45698b refactor(hermes): move rpc endpoints into submodules 2023-08-21 15:06:43 +01:00
Reisen b74df4ff17 refactor(hermes): pass run args as struct, add docstrings
In some cases arguments are passed and renamed (see `api_addr -> rpc_addr`) or
are unnecesarily converted (see `api_addr.to_string()` -> `api_addr.parse()`.
In the future, we are likely to add many more arguments to Hermes as well, so
this commit moves them into a separate struct which is forwarded throughout the
application instead.

The struct's are cloned, but only happens during launch of a hermes service
component so the cost doesn't matter.
2023-08-21 13:43:44 +01:00
Ali Behjati 0682cc9b67 fix(hermes): handle rare cases on update data
Fix hermes construct_update_data to support generating update_data
for more than 255 messages. This is very unlikely to happen in normal
cases but the way WS <> store interact can cause this to happen when
a WS client subscribes to all price feeds.
2023-08-17 18:30:39 +03:30
Ali Behjati f36bd21f31 fix(hermes): handle non-existent ids on ws 2023-08-12 15:19:34 +03:30
Ali Behjati 1ed8b673f9 fix(hermes): use compatible ws format as xc-server 2023-08-09 12:57:18 +03:30
Ali Behjati 04b31f17c5 fix(hermes): send close message on WS closure
Some WS clients were receiving "Abnormal Connection Closure" errors.
This commit fixes the issue by sending specific close message upon
receiving close message from client. This commit also refactors the
ws.rs code by making it simpler and using tokio::time::Interval
instead of a manually implemented interval. Lastly, it updates the
axum package to include newer patches.
2023-08-08 18:57:06 +03:30
Jayant Krishnamurthy 99f1b6e950
[hermes] Finish up docs (#1002)
* docs

* stuff

* comment
2023-08-03 09:24:31 -07:00
Jayant Krishnamurthy cb49236a58
[hermes] Document most of the endpoints (#997)
* add rough docs for most stuff

* cleanup

* bunch of docs

* bunch of docs

* gr
2023-08-02 19:25:30 -07:00
Jayant Krishnamurthy 07b01118d2
[hermes] Add docs for 1 method (#995)
* doc this one method

* revert
2023-07-29 21:11:03 -07:00
Jayant Krishnamurthy 61e29ac166
[hermes] add utoipa for API docs (#990)
* [hermes] add utoipa for docs

* fix build

* format
2023-07-27 11:29:56 -07:00
Ali Behjati 9e4242a20e doc(hermes): update readme instructions 2023-07-27 18:31:42 +03:30
Ali Behjati 5f11c3d042 fix(hermes): fix rust version 2023-07-27 18:31:42 +03:30
Ali Behjati c1517349f8
test(hermes): add tests for store (#985) 2023-07-27 12:28:12 +03:30
Ali Behjati ec6378676c chore(hermes): version bump 2023-07-26 12:23:12 +03:30
Ali Behjati 4fba5d4f1b chore(hermes): update crates 2023-07-26 12:23:12 +03:30
Ali Behjati 6a4b812ea3 refactor(hermes): remove Storage trait indirection
- Remove Storage trait and LocalStorage and implement everything on Storage struct
- Remove update_accumulator_state and break it down to accumulator_messages and
wormhole_merkle_state
2023-07-26 12:23:12 +03:30
Reisen 8c342c2ae0 fix: bump cargo and go versions to fix memory/compile issue 2023-07-21 16:56:46 +01:00
Ali Behjati 96cb221a3a
[hermes] Fix concurrency issue (#925) 2023-06-28 12:30:06 +02:00
Ali Behjati dfc2df779c
[hermes] Use raw_message for future-compatibility (#913) 2023-06-23 19:31:44 +02:00
Ali Behjati d07cc9d1ea
[hermes] Add storage tests + refactor (#907)
* [hermes] Add storage tests + refactor

* Bump pythnet_sdk version + update cosmwasm

* Address review feedbacks
2023-06-22 14:38:56 +01:00
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