Commit Graph

27 Commits

Author SHA1 Message Date
Reisen 7c037ed6fb fix: avoid EnumAccess deserialization paths 2023-06-26 14:12:55 +01:00
Mohammad Amin Khashkhashi Moghaddam 955c81b1cc
Make AccumulatorUpdateData deserialization accept minor version bumps (#909)
* Make AccumulatorUpdateData deserialization accept minor version increases

* Add test for additional bytes at the end of the message
2023-06-23 14:04:05 +01: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 b596090bd8
[hermes] Switch to message structs in pythnet_sdk (#897) 2023-06-19 18:21:39 +02:00
Mohammad Amin Khashkhashi Moghaddam 211bf02450
Implement accumulator updates for cosmwasm (#880)
* Implement accumulator updates for cosmwasm

* Update fee calculation logic for accumulator messages

The fee for accumulator messages is base fee times the number of messages
but the logic remains the same for the batch method
2023-06-13 12:59:29 +02:00
Mohammad Amin Khashkhashi Moghaddam 6014400205
Move message structures from pyth-client repo to pythnet-sdk (#867)
* Move message structures from pyth-client repo to pythnet-sdk

All rust based smart contracts could leverage these structures for deserializing
pyth messages. But having them in pyth-client makes all the smart contracts packages
depend on irrelevant packages such as solana libraries which caused dependency conflicts
With these structs moved here it would be easier to reuse them in other places

The custom (de)serialization logic remains in pyth-client since it was only to reduce binary size of the program deployed on mainnet/pythnet, therefore not necessary to be exposed here.

* Put arbitrary implementations behind quickcheck feature flag

* Expose magic variables and define them once
2023-06-12 19:34:08 +02:00
Ali Behjati 91ce66d19b
[pythnet-sdk] Update wh seq address comment (#879) 2023-06-12 12:57:47 -04:00
Mohammad Amin Khashkhashi Moghaddam e9aae684b1
Add support for 128bit numbers serde (#871)
* Add support for 128bit numbers serde

* Add comment for future plans on large integer serialization
2023-06-12 12:18:09 +02:00
Reisen 624222e0c8
[pythnet-sdk] Allow as_bytes()/to_bytes() for MerkleRoot/MerklePath (#866)
* feat: allow as_bytes() for MerkleRoot

* feat: add borsh serialization to merkle types
2023-06-08 18:16:25 +01:00
Ali Behjati 7847a79b6a
Update rustfmt (#864) 2023-06-08 15:07:15 +02:00
Reisen 0b7805f285 fix: expose MerkleTree as a real interface that is accumulator friendly 2023-06-08 12:16:50 +01:00
Ali Behjati 0330c9d387
[ci] Fix pre-commit (#863) 2023-06-08 09:45:14 +02:00
guibescos e39db174d0
[pythnet-sdk] Add merkleRoot (#858)
* Add merkleRoot

* Restore file
2023-06-07 12:09:34 +01:00
Mohammad Amin Khashkhashi Moghaddam f764fc8411
Bugfix for magic value check and additional serde test (#860) 2023-06-07 12:50:24 +02:00
Ali Behjati c19f519839 Implement useful methods on PrefixedVec 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 866eace744 Add initial version 2023-06-05 15:19:48 +01:00
Reisen af2d7b6e38 feat: add serializers for pyth formats 2023-05-31 16:20:49 +01:00
swimricky 3e5b4bb095
test(pythnet-sdk): add hardcoded expected pythtest accumulator sequence unit test (#846) 2023-05-30 11:17:46 -07:00
swimricky e670f57f89
feat(message-buffer): add init msg buffer pda to script, fix msg buffer pid (#845) 2023-05-26 11:37:06 -07:00
swimricky 8eba51d51b
build(pythnet-sdk): pin wormhole-sdk & serde_wormhole tag (#835) 2023-05-23 12:59:26 -04:00
Reisen 5ee1f20e73
[pythnet] Update serialization for MerkelPath/MerkleAccumulator (#830)
* feat: update serialization for MerkelPath/MerkleAccumulator

* Fix incorrect variable name.
2023-05-22 18:31:54 +01:00
swimricky 16baae6c99
fix(pythnet-sdk): fix modifiers (#809) 2023-05-09 09:22:12 -04:00
swimricky dab04d639b
[pythnet-sdk]: fix addresses & programIds in pythnet-sdk (#808)
* fix(pythnet-sdk): fix addresses & programIds in pythnet-sdk

* fix(pythnet-sdk): pin solana dev-dependency versions, fix visibility
2023-05-08 15:02:57 -04:00
Reisen 1902dbaa30
pythnet: replace pythnet_sdk with the right files (#803) 2023-05-05 21:04:49 +01:00
Reisen 677343c339
pythnet: move `pyth/` from pythnet and colocate other pythnet libs (#802) 2023-05-04 18:47:35 +01:00