Commit Graph

414 Commits

Author SHA1 Message Date
Stanisław Drozd bbad8fb544
pyth2wormhole: Add an is_active flag to on-chain config (#224)
* pyth2wormhole: Add an is_active flag to on-chain config

This new flag will help enable/disable attester contracts between deployments

* p2w-client: typo

* p2w-client: add is_active to init

* pyth2wormhole config.rs: mention removing old structs, reword

* pyth2wormhole: remove unused config data struct from migrate()

* pyth2wormhole migrate(): leave a note about AccountState::Uninitialized

* Update solana/pyth2wormhole/program/src/migrate.rs

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

* Update solana/pyth2wormhole/program/src/migrate.rs

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

* Update solana/pyth2wormhole/program/src/migrate.rs

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

* p2w program: missing deref typo

Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2022-06-22 13:37:15 +02:00
Stanisław Drozd c613271a93
Bump Solana to v1.10.13, bump borsh to v0.9.3, bump clap to v3.18 (#210)
* Bump Solana to v1.10.13, bump borsh to v0.9.3, bump clap to v3.18

commit-id:519b2a6d

* p2w-sdk/rust: update Cargo.lock

commit-id:b7945666
2022-05-17 08:53:30 +02:00
Stanisław Drozd c9ef5ec365
p2w-client: Implement basic unwindowed stats + change SOL commitment to Confirmed (#208)
This commit adds TPS, success/error rates and average same-batch
resend delays.

commit-id:e73abcf5
2022-05-16 13:40:30 +02:00
Stanisław Drozd 941017de4b
p2w-client: Implement additional trigger conditions (#207)
* p2w-client: Implement additional trigger conditions

From now on, we support price change by a given percentage as well as
publish time changes for triggering attestations.

commit-id:9bd145e1

* p2w-client: Harden price_pct_change for negative values

commit-id:cb679208

* p2w-client: Make sure we always update each symbol's state

commit-id:27f276dc

* p2w-client: include resend state lookups in the RPC interval setting

commit-id:68de125f

* p2w-client: Improve local symbol state handling, min interval=60s

With this change, we update local state only if we meet a
condition. Additionally, the publish_time change becomes a
configurable minimal delta.

commit-id:f8139cd6

* p2w-client: Fix a state update bug for state updates

commit-id:29f44a39
2022-05-12 14:39:49 +02:00
Stanisław Drozd 7b1dbc1938
p2w-client: Move batch state to a new module, harden status access (#205)
* p2w-client: Move batch state to a new module, harden status access

commit-id:8265cb5b

* Trigger CI

commit-id:be75d126
2022-05-11 18:02:59 +02:00
Stanisław Drozd a1e50ae636
Drozdziak1/p2w client sym groups (#199)
* pyth2wormhole-client: Implement and use daemon mode

commit-id:7001bdf7

* pyth2wormhole-client: harden CLI, simplify attestation loop

commit-id:ad5e4857

* pyth2wormhole-client: Refactor symbol config into groups

This commit implements the notion of a symbol group - a collection of
symbols that are attested according to the specified set of
condition. Currently, only an attestation frequency is supported. In
the future, this value will serve as a fallback for symbols that
rarely trip other conditions.

commit-id:cf19cc41

* p2w_autoattest.py: Use symbol groups in config

commit-id:1153c5f7

* Dockerfile.client: bump toolchain version to mitigate compiler error

The previous compiler version encountered a bug when building
pyth2wormhole-client for testing. The error message mentioned serde,
which is tested inside the `attestation_cfg.rs` module.

commit-id:61c12427

* p2w_autoattest.py: Add another test group

commit-id:2e29583c

* p2w-client: Get rid of sent_at, clarify messages, add status setter

commit-id:87653ab1
2022-05-06 18:29:47 +02:00
Stanisław Drozd 35912e874e
p2w-attest contract: disambiguate set-config types (#201)
* p2w-attest contract: disambiguate set-config types

commit-id:999f3954

* p2w-attest set-config: also print the same mismatched value

commit-id:732e2773
2022-05-05 13:40:02 +02:00
Stanisław Drozd 97ebef0c6c
pyth2wormhole-client: Implement and use daemon mode (#192)
* pyth2wormhole-client: Implement and use daemon mode

commit-id:7001bdf7

* pyth2wormhole-client: harden CLI, simplify attestation loop

commit-id:ad5e4857

* pyth2wormhole-client: Use requires_if for batch_interval/daemon

commit-id:0da03fd5
2022-05-02 13:08:03 +02:00
Ali Behjati 352fa64653
Merge Dev.v2 into main (#181)
* Move js sdk on p2w-sdk to js folder

Also modifies other dependencies to correct path

* Reversed removal of wasm build for nodejs

* Add newline to a file

* pyth2wormhole: Fix attestation validation bug

commit-id:567942d7

* Add p2w sdk

It uses Pyth clients structs and cleans some of definitions for Pyth2Wormhole structures.

* Add emitter type and add wasm function for it

- It requires solitaire and it requires nightly rust
- No logic is applied, code is from p2w solana contract. (Eventually will be removed from there)

* Add new line

* Move WASM gen docker to root

It is because wasm is going to be used for p2w-sdk too.

* Fix unchanged cache mount paths

* Move terra relayer into the repo

* Update readme

* p2w-client: Add lib target, make helpers into lib functions there

commit-id:3aeb9ee6

* pyth2wormhole-client: Implement retries

commit-id:462677a2

* Make p2w-sdk js use p2w-sdk rust wasm bindings (#65)

* Make p2w-sdk js use p2w-sdk rust wasm bindings (instead of solana contract bindings)
- Removes `wasm.rs` in solana contract too.

* p2w attester contract use p2w-sdk (#68)

* Make solana pyth2wormhole contract to use the sdk

* Use threadpool to set up price symbols (#69)

* Add solana feature flag for p2w sdk (#71)

* Pyth bridge terra contract support batch attestation + use p2w sdk (#72)

* Make terra contract to use pyth2wormhole-sdk and support batch attestation

* Update packages + code format

* Move terra dockerfile out to support third-party dependency

* pyth2wormhole-client: Add polling-based concurrent tx confirmation

commit-id:5d16d035

* chore: p2w spy guarding improve Dockerfile

* fix: p2w_autoattest don't die after initialization

also minimal formatting

* add P2W_EXIT_ON_ERROR

* set P2W_EXIT_ON_ERROR default to True

* Remove bool test

* hopefully this time.

* add tilt p2w-attest P2W_EXIT_ON_ERROR

* convert P2W_EXIT_ON_ERROR to "true"

* Fix pyth test publisher (#76)

* Fix test pyth publisher to actually publish price

- Uses newer pyth images and removes existing hacks for old versions. It essentially makes dockers cleaner.
- Also improve some adds in dockers to cache more efficiently

* Support Batch Price attestation for terra relay (#75)

* Support Batch Price attestation for terra relay

* Abehjati/update p2w sdk to pyth sdk (#83)

* Make p2w-sdk use pyth-sdk

* Correct test values to reflect .env.test

* update p2w sdk to use ema instead of twa (#84)

* Rename twa to ema in terra relay (#85)

* Bring PythStructs.PriceAttestation struct in line with new API

* Add ability to parse batch price attestations

* Pyth terra remove wormhole governance (#87)

* Pyth in terra: remove wormhole governance

* [WIP] p2w-relay-iface: Add NPM package with relayer interface PoC

commit-id:efcb9b34

* Define Pyth SDK Price struct

* Define internal PythStructs.PriceInfo struct

* Cache price updates in standardised PriceInfo format

* Cache price updates from batch attestations

* p2w-relay-iface -> p2w-relay-terra/src/relay/iface.ts

commit-id:ed9846e3

* p2w relay interface: remove config from Relay iface

commit-id:0359d886

* Remove now unnused parsePriceAttestation function

* Pyth terra bridge: add contract deployment script (#88)

* Add pyth deployment script

- Also updates build.sh to build pyth completely
- Add a readme for deployment guide

* Add test for partial update behaviour

* update p2w sdk to new pyth (#91)

* p2w-sdk/rust use pyth sdk solana v2

* Dockerfile.client: solana 1.8.1 -> 1.9.4

commit-id:643299d3

* p2w-terra-relay: ignore lib and node, own project dir in docker

commit-id:b084bc40

* p2w-terra-relay: iface.ts review nits, naive impl for Terra

commit-id:0ecbfdd6

* Terra contract public api (#79)

* Use pyth-sdk in terra contract
* Update terra contract according to agreed API
- Also adds v2 suffix to price_info key because this migration is breaking.

* p2w-terra-relay: apply review nits

commit-id:aec39c85

* p2w-terra-relay: make worker.ts generic w.r.t. Relay interface

commit-id:5937a08c

* terra.ts: add missing return statement

commit-id:ba0365e6

* Update worket to handle timeout in callback correctly (#97)

* Remove wormhole-based governance

* Remove now unused legacy governance state and variables

* Remove Pyth Implementation implementation

* p2w-terra-relay: run formatter

commit-id:df311e23

* p2w-terra-relay: apply review nits

commit-id:5034b061

* Run formatter to trigger CI

commit-id:7c643d79

* p2w-terra-relay: EVM boilerplate

commit-id:8ad73ded

* Remove old PythProxy inheritance hierarchy

* Remove now unnused initialized implementations map

* Remove old mock bridge implementation

* Remove dependency to wormhole sdk as path and cleanup wrong eth copies (#104)

* Dockerfile.pyth_relay: Fix lockfile issue in ethereum

This commit fixes a lockfile issue resulting from newer NPM in our
container.

Specifically, our Dockerfile is pinned, relaxes Ethereum's
lockfile (npm ci -> npm install) and hardens our lockfile (npm install
-> npm ci)

commit-id:3381c8ec

* p2w-terra-relay: Admit loss against mkdir -p

commit-id:3abdb58d

* Remove unused components from wormhole (#108)

* Remove unused components from wormhole

Removes the following:
- explorer
- e2e
- bridge_ui
- algorand stuff (teal dockerfile and third_party/algorand)
- ci_tests (testing directory)  which are for JS/Bridge UI

* Remove unused terra contracts (#109)

- Note: Terra contract addresses are changed by this PR due to deterministic ordering.
- Removed unused nft and token bridge, and migration contracts in Terra
- Modified documentation to remove info regarding removed contracts.(docs/devnet.md)

* Remove unused solana contracts and their wasm creations (#110)

Removes token bridge, nft bridge, migration. Also removes them from deployments and docs.

* Add fee estimate for terra relay (#112)

* Removes directores which are not related to p2w (#111)

Removes
- audits
- dashboards (dashboard is removed from Tilt)
- event_database (all of it's dependencies are removed from Tilt and it's not for p2w)
- lp_ui: a project (pressumably liquidity pool) not related to p2w
- sdk: wormhole sdk, p2w depends on it's npm package and there is no dependency to rust one
- spydk: it's not anywhere in p2w
- staging/algorand: these are for alrogrand which is not used in p2w
- whitepapers: these are for wormhole

* Add and update openzeppelin packages

* Add initializer to Pyth contract

* Add upgradable PythProxy contract

* Update tests to work with new proxy setup

* Update migrate script to work with new proxy setup

* Add tests for new proxy setup

* Inline PythStorage.Provider struct

* Make Pyth.verifyPythVM function internal

* Fix struct field names

* Rename Price to PriceFeed to be consistent with SDK

* Replace PythGetters.latestPriceInfo with Pyth.queryPriceFeed in public API

* p2w-terra-relay: Add a query() EVM call and Tilt boilerplate

commit-id:f97d0c16

* Clarify test comments

* Add health probe (#107)

* Rename PythProxy to PythUpgradable

* p2w-evm-relay: Backport the proxy address change from debug session

commit-id:55b63ed5

* p2w-terra-relay -> p2w-relay, split EVM relay into new service

commit-id:36d0db6e

* Tiltfile: typo

commit-id:3bbba986

* p2w-evm-relay.yaml: typo

commit-id:35c87c79

* p2w-evm-relay.yaml: typo 2: electric boogaloo

commit-id:40892265

* Add build folder to dockerignore

* Rename attestPriceBatch to updatePriceBatchFromVm

* Update comment on time check

* Trigger Build

* Tiltfile: Fix port forwards for p2w-evm-relay

commit-id:6e5e9c14

* p2w-relay: PythImplementation -> PythUpgradable

commit-id:bfea7eb5

* Remove unused Pyth Chain ID metadata

* Add the query() call

commit-id:02966ce5

* p2w-terra-relay: Fix evm.ts after contract rename

commit-id:87381bec

* Make truffle migrations directory configurable

* p2w-evm-relay: Fix wrong EVM contract ID, add a check for it

This commit takes care of an outdated pyth2wormhole EVM contract
address and implements a contract/non-contract check using
web3.eth.getCode() (empty for non-contracts).

This problem cost us several hours of debugging and resulted from an
EVM gotcha - a contract call to a non-contract address will simply
ignore the call payload and make a plain transfer. Additionally, ETH
accounts don't have a notion of initialization - used and unused
addresses are equally valid tx recipients. Resulting from both
properties, any unused address could potentially yield wrongly
successful calls, wasting funds and debug time over p2w-relay. Thus
the heuristic to protect us from this is to see if the address' code
storage is populated.

commit-id:b655a720

* p2w-relay: Also implement the contract check in EVM relay()

commit-id:e28709e5

* evm.ts: Fix wording in changed/unchanged logs

commit-id:13c81625

* Make terra relayer more resillient (#120)

- Increase retry attempts (4 to 6) and retry_delay (250ms to 1s) to be more resillient
  - This is because when account sequence mismatch happens it might take some time be fixed
- Removed estimate fee because it's being done in wallet.createAndSignTx (less requests)
- Improved logging on when error happens

* Update dockerfile to chown less files (#121)

* Update dockerfile to chown sooner

* p2w-relay: review nits

* p2w-evm-relay: make feed verification queries configurable

* p2w-relay: cache wormhole import

* p2w-relay: formatter, remove getcode() from relay(), add comments

commit-id:1a65c52c

* p2w-relay: typos and leftovers

commit-id:9b523b25

* Change websocket to json socket to support bsc testnet + improves env vars (#139)

* Change websocket to json socket to support bsc testnet + imporving env vars

* Add unit test to Pyth Terra Contract (#123)

* Add unit test to the terra contract

- Refactors the code into multiple functions to make unit testing easier
- Adds build and test of terra contract to CI according to #73

* p2w-relay: harden exception handling, yell about uncaught stuff

commit-id:24e14835

* p2w-relay: Correct outdated comment

commit-id:d0b57d33

* p2w-evm-relay: s/async (e)/(e)/

commit-id:11b3a474

* Modify proto docker and tiltfile to stop creating unnecessary files (#144)

* Remove sdk/spydk from wasm and remove buf gen web yaml (#145)

* Remove wormhole contract from wasm generation (#160)

* pyth2wormhole: Add num_publishers to libraries and contracts

commit-id:f7263eed

* pyth2wormhole: add max_num_publishers to cross-chain metadata

commit-id:7550fa50

* Move p2w relayer parsing to p2w sdk js (#162)

* Move Price Attestation parsing logic to the sdk

* pyth2wormhole: Add contract testing boilerplate for attest()

commit-id:51949fbe

* Create p2w-api base (from p2w-relay) (#142)

* Create p2w-api base (from p2w-relay)

* Refactor project structure

* Rename p2w to pyth price service (#166)

* Abehjati/price-service-add-rest-layer (#167)

* Add rest api for latest vaa

Co-authored-by: Stan Drozd <stan@nexantic.com>
Co-authored-by: Eran Davidovich <edavidovich@jumptrading.com>
Co-authored-by: Eran Davidovich <erancx@users.noreply.github.com>
Co-authored-by: Tom Pointon <tom@teepeestudios.net>
Co-authored-by: Stan Drozd <drozdziak1@gmail.com>
2022-04-11 18:15:20 +02:00
Stan Drozd 0642288697 pyth2wormhole: rustfmt --config-path solana/rustfmt.toml
commit-id:a4fae495
2022-02-28 12:29:58 +00:00
Stan Drozd 1e953e637f pyth2wormhole-client: make sure we raise batch errors on exit
commit-id:65022128
2022-02-24 19:40:04 +01:00
Stanisław Drozd 2ea41b8176
[WIP] Pr/drozdziak1/p2w batching/5e704f8b (#877)
* ethereum: p2w contract -> p2w emitter, fill in essential envs

Change-Id: I6fa9364a96738d2cc02ec829a31fedba0586d8e8

commit-id:0a56f1f8

* Add p2w-relay, a p2w-sdk integration test

commit-id:6bfab639

* p2w-sdk: Expand README

Change-Id: I17cb547d6aaddc240588923561c26d11a787df2e

commit-id:6ebd6a22

* p2w-sdk: don't build ETH contracts, only the types

Change-Id: I7cbd18328227700635d7688aa24a9671e8919fcd

commit-id:adf079f7

* p2w: configurability and sane envs

commit-id:f10fd90e

* Solitaire: Implement Option<T> support in structs

commit-id:31aa12d6

* bridge/governance.rs: Stop pestering about EMITTER_ADDRESS

commit-id:d5bd7234

* p2w-attest: price batching

This commit introduces support for multiple Pyth product/price pairs
per call. The initial maximum batch size is 5 and is enforced using a
`P2W_MAX_BATCH_SIZE` constant.

solana/pyth2wormhole/program:
* On-chain batching logic
* Batch message parsing logic

solana/pyth2wormhole/client:
* Off-chain batching logic - divides any number of symbols into
largest possible batches
* Use a multi-symbol config file instead of CLI arguments

third_party/pyth/p2w-sdk:
* Expose batch parsing logic

third_party/pyth/p2w-relay:
* Comment out target chain calls until ETH contract supports batching
* Test the batch parsing function

third_party/pyth/p2w_autoattest.py:
* Generate and use the symbol config file  with pyth2wormhole-client

third_party/pyth/pyth_publisher.py:
* Add a configurable number of mock Pyth symbols
* Adjust HTTP endpoint for multiple symbols

commit-id:73787a61

* p2w-attest: mention attestation size in batch

This commit ensures that no matter the attestation format, a batch
will never contain attestations of different sizes. This guarantee
enables forward compatibility by adding new constant-size fields at
the end of a batch at all times. An older implementation will simply
not consume the remaining newer values while respecting the stated
batch member alignment.

commit-id:210da230

* pyth2wormhole-client: use fresh blockhashes, harden batch errors

This commit makes sure we don't have to deal with expired transactions
due to stale blockhashes. The problem existed with larger symbol
configs as well as on Solana mainnet. Additionally, the attestation logic
now treats transaction errors as non-critical - a failure for a batch
does not prevent attestation attempts for batches farther in the queue

commit-id:5e704f8b
2022-02-23 19:12:16 +01:00
Leopold Schabel 44c1f9e6a9
solana: compile wasm and contracts with --locked (#874) 2022-02-18 12:48:10 +01:00
Leopold Schabel 870d15d483
*: bump pyth-client to 0.2.2 (#873)
The v2 branch on the Git origin disappeared. Use the crate instead.
Updated lockfiles using `cargo update -w`.

commit-id:d2655ef8
2022-02-18 00:01:13 -06:00
Evan Gray fce0708e11 feat: use sdk in js client 2022-02-14 07:56:38 -05:00
Kevin Peters e30f92b3e0 solana-program 1.9.4 wasm-bindgen workaround
wasm-bindgen 0.2.74 generates JavaScript bindings for SystemInstruction
exported from solana-program 1.9.4. The generated JavaScript references
a non-existent function (wasm.__wbg_systeminstruction_free) that
leads to an attempted import error when importing the wasm packed for
bundler. SystemInstruction isn't used in the sdk, so we remove the non-existent
function reference as a workaround.
2022-02-10 15:51:11 -05:00
Csongor Kiss dc2e6d8990
solana: add correct spl_token_metadata.so (#815)
Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
2022-02-03 19:10:16 +00:00
Hendrik Hofstadt 7edbbd3677 Update Solana to 1.9.4
Change-Id: I9c1ce5f25b21ca81599957a7faa730558d8fc03e
2022-02-02 11:31:33 -05:00
Reisen 3cd7ea173a solana: compile token metadata with 1.8.1 toolchain
Change-Id: Ifcfa984840a33326b3dbd59f23b6cf662651c2f8
2022-01-14 14:55:40 -05:00
Reisen e561d6de02 sdk: fixes to types and builds
Change-Id: I10b753450445cc021dbeb9f28ddb0384070e9635
2022-01-14 13:09:12 +00:00
Reisen 7f1c7ec62f solitaire: expose entrypoint and relax lifetimes
The current lifetimes 'a/'b restrict the &data and &program_id lifetimes which makes the
entrypoint unusable in solana_test_program's processor!() harness, which expects the more
relaxed (but equivelent for us) type of:

    fn processor<'a, 'b: 'a, 'c, 'd>(
      program_id: &'c Pubkey,
      accounts:   &'a [AccountInfo<'b>],
      data:       &'d [u8]
    )

It has no effect on our current programs.

Change-Id: Ia657462141165064c629fdff02b5ec451aab50f0
2022-01-14 13:09:12 +00:00
Reisen ee0fea0436 sdk: add underlying sdk for wormhole programs
Change-Id: I858f3e43e6458af51131de9165a63078e4bb024c
2022-01-14 13:09:12 +00:00
Reisen d21f08d2cb rust: rename wormhole libraries
Change-Id: I9bf5255c13b13d3724d7f8809489b04612b90747
2022-01-14 13:09:12 +00:00
Hendrik Hofstadt 32e9063910 Check whether vaa recipient matches the token account
Change-Id: Iab326cd735c764649dc031d813dbb8818d5e74f3
2022-01-13 14:07:40 +01:00
Stanisław Drozd 02a1dcecbc
solana: hide wasm-bindgen dependency behind the feature flag (#730)
commit-id:480d3b7a
2022-01-10 15:31:36 +01:00
Csongor Kiss 7e212fa739
terra/nft_bridge: Implement nft-bridge for terra (#698)
commit-id:0b547fa5
2022-01-07 16:47:33 +01:00
Chase Moran 2b00826847 update solana to 1.8.1 2021-12-29 21:07:55 -05:00
Leo b0ed42681d Use stable Buildkit syntax
We no longer need to be on an experimental branch - all the
Dockerfile features we need were released on 1.3.

commit-id:b083856a
2021-12-13 15:38:17 +01:00
Reisen 124efece2a solana/token_bridge: allow updating metadata
Change-Id: I34872eaa9e931d9698808cc658840a5885c3dc5f
2021-11-19 19:42:44 +00:00
Reisen d678cb4662 solana/token_bridge: prevent transfers to self chain
Change-Id: I0c97bf87e042c64a4b77cc359a1971912a247af8
2021-11-17 17:37:21 +00:00
Reisen 0d97a2e5a3 solana/token_bridge: prevent self attestations
Change-Id: Iac42e8dcc9f04c1035334ec021c7d4ab11857227
2021-11-17 16:20:20 +00:00
Hendrik Hofstadt 78547e23e6 Allow self registration on Solana
Change-Id: Ifc791036223e35af72a847f86ae1ddfd6b4d2173
2021-11-15 19:19:31 +01:00
Stan Drozd 05edb3d14f pyth2wormhole: rename p2w-client service to p2w-attest
Change-Id: I34a53146919c12ab41b958cc8cd57108ee509faa
2021-11-15 15:22:29 +00:00
Stan Drozd a8465ef791 pyth2wormhole: implement deserialization, print sequence
Change-Id: I39308ad6431df52f35a0496e71836497561640c5
2021-11-15 15:22:29 +00:00
Evan Gray c824a99636 sdk/js: attempt jest tests
Change-Id: I139153994604f0048f690b011048daec4d760a55
2021-11-05 19:53:00 +00:00
Evan Gray 57db7e7910 solana: pin wasm-pack version
Change-Id: Ic7bdb237fd43e5632c6dae9f669284fa5bcedc4b
2021-11-01 19:37:53 -04:00
justinschuldt e5045f1c8c devnet Explorer
- Add network switcher.
- Explorer landing page with light stats:
  - summary of recent messages per chain.
  - shows most recent messages, polls for updates.
- chain-details view.
- super basic message details view: json.
- runs in devnet.
- add network switcher to guardian-list page.
- links to native explorers (etherscan, etc.)
- polygon support
- animations when data updates

Change-Id: I26616afab551a7555421a45dee9f016beecbf93e
2021-10-27 21:15:47 +00:00
Reisen 6076f9acc4 solana/token_bridge: add custody_signer derive to wasm
Change-Id: I9dc9e5d80dce3e580257877b4640df3408b4b568
2021-10-04 16:40:06 +00:00
Hendrik Hofstadt 20ce9e1e5c Fix CPI poster
Change-Id: I5a1d13f5256cdb13a431d1bf5cb2c42506de9920
2021-10-01 09:03:25 +00:00
Hendrik Hofstadt 18f3262b89 Add second eth devnet to emulate bsc
Change-Id: Ia28078cdd843540bc6d5d2a3db4787637c752245
2021-09-30 15:00:27 +00:00
Reisen 49c3be0b79 solana/token-program: derive metadata address in client
Change-Id: Ia5e54725c13cc2725efa88b9848910829de48463
2021-09-28 16:01:21 +00:00
Hendrik Hofstadt 1421e5d76f Add derivation methods for claims and spl meta
Change-Id: I4e8056b37d441caf7bca94037585c37afe25cc24
2021-09-21 16:29:42 +02:00
Hendrik Hofstadt 3968b6eb7f Split nft transfer in 2 ixs
This also changes the required confirmation level to finalized

Change-Id: I4793619634e7bac587b20d2776c0b166b95a6de7
2021-09-21 15:29:40 +02:00
Hendrik Hofstadt 416a1e7227 Add a second test NFT on Solana
Change-Id: I7dce98cbc3df625d3ce071f179dc25cf873d2047
2021-09-21 11:21:12 +02:00
Hendrik Hofstadt 64b17d851a Encode mint in token ID on Solana
Change-Id: Ice9c2b64992e60bb8a0eb5d0a109043eda2d44ac
2021-09-20 15:56:39 +02:00
Hendrik Hofstadt 371c9b3dcc Resolve warnings in the NFT bridge
Change-Id: I6d5e5a7d66e8e35418eaf9346c53b3439314c9c5
2021-09-20 12:23:40 +02:00
Stan Drozd 3e96438f4e pyth2wormhole: initial SDK skeleton
Change-Id: I8697ced892a1bf69f948c9743741d32a442a402f
2021-09-16 13:15:13 +00:00
Chase Moran d8ad37d357 Allow migration liquidity removal
Change-Id: I9ec62ffa94b26ffd1776a2b76aa7586424a77b64
2021-09-13 18:55:25 +00:00
Reisen 88dfab6e29 solana/migration: mint tokens via share mint
Change-Id: Ibaf785d8a3004c424b40a3974a8de482545ed2d0
2021-09-13 15:06:01 +00:00
Reisen 654ccfaabf solana/migration: dont transfer dust into the pool
Change-Id: I1f7c5df4f959f1a084569ad92767b05264642ffe
2021-09-13 15:05:46 +00:00