Commit Graph

100 Commits

Author SHA1 Message Date
Csongor Kiss bfd4ba40ef
terra/doc: add some implementation notes (#3597) 2023-12-13 17:21:34 +00:00
Csongor Kiss bd62e27789
terra: migrate to cosmwasm 1.1.0 (#3138)
* terra/contracts: migrate to cosmwasm 1.1.0

use `classic-bindings` crate instead of terra-cosmwasm.
This is the updated version that calls the correct query post chain upgrade

* terra/Dockerfile: update workspace optimizer

* terra: label is now required on instantiate

* terra: accept either 32 or 20 byte addresses

* terra: update devnet terra classic

* node/cosmwasm: always CW >1

* tilt: re-introduce terra classic tests

* terra: make get_address support both 20 and 32 byte addresses

* terra: fix tests to account for burn tax

Since the tests are now ran against the new LocalTerra which has burn
tax, the transaction results are different from before

* terra/token-bridge: check first 12 bytes to determine native denoms

* terra/token-bridge: simplify conditional

---------

Co-authored-by: Evan Gray <battledingo@gmail.com>
2023-12-13 16:27:17 +00:00
Csongor Kiss 71cae152e5
terra: delete migration (#3601)
Co-authored-by: Evan Gray <battledingo@gmail.com>
2023-12-12 21:50:59 +00:00
Csongor Kiss 6fa6a2d0c1 terra: delete nft bridge
This was never deployed, and has become a maintenance burden with the
new cosmwasm 1.0 migration that Terra classic mainnet has recently gone through.
2023-12-06 20:40:17 +00:00
Csongor Kiss 47faf43355 terra/contracts/README.md: update maintenance info 2023-12-06 20:40:17 +00:00
Nikhil Suri 6fd43d11ae
terra: change nft-bridge name to nft-bridge-terra (#2607)
* terra: change nft-bridge name to nft-bridge-terra for compatibility with solana nft-bridge package

* change nft_bridge.wasm to nft_bridge_terra.wasm in deploy script
2023-04-11 18:48:23 -04:00
A5 Pickle aee8720163 terra: fix clippy error 2023-01-26 18:36:03 -06:00
omahs ce1f3adc23 Fix: minor typo
Fix: minor typo
2023-01-11 14:25:55 -05:00
Nikhil Suri ee2b6d0c17 cosmwasm: wormhole: remove unecessary cast to usize 2022-12-15 14:51:54 -05:00
Chirantan Ekbote f7cc16aa91 terra: Fix clippy warnings 2022-10-28 14:35:44 -04:00
Chirantan Ekbote 68ae3ff6cd terra: Fix formatting
Also disable the unstable options in rustfmt.toml.
2022-10-28 14:35:44 -04:00
Csongor Kiss 37ee5cf4a4 terra: Add fromAddress to payload 3 2022-09-27 12:19:25 -04:00
Csongor Kiss d0900c791a terra/token-bridge: fix lunc tax deduction 2022-09-27 11:54:47 -04:00
Csongor Kiss ca43f8629a
terra: Check that bytes32 fits into 20 bytes before truncating (#1458) 2022-08-23 21:13:30 +02:00
Csongor Kiss 3e63590c10 terra: Don't migrate wrapped assets for now
See comment in the code for more context
2022-08-10 22:19:16 +01:00
Csongor Kiss 9c9f5b4b23 terra/token_bridge: fixed wrapped asset ids
The wrapped assets on terra have been migrated to code id 767, but the
config wasn't updated to store this new code id, so newly created
wrapped assets all use an older code id. This patch upgrades all wrapped
assets to 767 and changes the config so future wrapped assets also use
that code id.

Also added a new function `migrate_wrapped_assets` so this task can be
done in the future in a less error-prone way.
2022-08-08 12:42:32 -05:00
Csongor Kiss aea76be327 terra: Ensure that recipient address is 32 bytes.
Before this check, users were able to lose funds by sending money to an
address that's shorter than 32 bytes.
This commit is essentially a backport of the fix from the new cosmwasm contract.
2022-08-08 12:12:14 -05:00
Kevin Peters 910eb0f3e0 fix terra classic native token parsing
when a native denom is received (complete transfer native),
check if the token chain is terra classic
2022-08-03 12:02:02 -05:00
Csongor Kiss f50586ad86 cosmwasm: move chain id and fee denom to storage
Prior to this change, these values were hardcode in the contract, as
the only supported chain was terra 2. This change allows the contract to
be deployed to other cosmwasm chains without having to recompile the
contract for each one.

The migration code ensures that terra2 is upgraded appropriately.
2022-07-20 16:09:39 -04:00
Csongor Kiss d8e7a5f93f terra/token_bridge: transfer with payload
Also rename terra token-bridge package so it's unique Otherwise cargo
can't find it externally, and confuses it with the solana one.
2022-05-11 21:24:36 -04:00
Chirantan Ekbote e907a05b1e sdk, terra: Fix tests and add them to CI
The terra tests had bit rotted quite terribly. It seems no one has run
them in almost a year because the API changed with the 0.14 release of
cosmwasm_vm in April, 2021.

Completely remove cosmwasm_vm from dev-dependencies.  The tests aren't
doing anything that requires interacting with the wasm code and can just
test the relevant functions directly.

Once this goes in the tests should be running in the CI so hopefully no
one will be able to push any more breaking changes.

commit-id:537d95e6
2022-04-20 09:46:51 +09:00
Chirantan Ekbote 5e4bf02014
terra-nft: Remove unused dependencies (#982) 2022-04-12 09:36:45 +02:00
Chirantan Ekbote 4d0e3b9030
terra: contracts: fix clippy warnings (#983) 2022-03-30 11:01:43 +01:00
Chirantan Ekbote 1ae8ee4913 terra: Send relayer fee to message sender
This was incorrectly sending the fee to the recipient.
2022-03-29 00:30:35 +09:00
Evan Gray a3272dce4a remove pyth2wormhole 2022-03-07 10:23:34 -05: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
Csongor Kiss 0044bb5e44 terra/token_bridge: remove migration code
This migration handler has successfuly completed (txn:
67E8FCFF48EEFE11BF6A975E621B6866BA930F9D2A85BC9AC5A70F009EE354C7) so
we can remove it.
2022-01-28 10:44:10 +00:00
Csongor Kiss 52562cacb0 terra/token_bridge: reentrancy protection
commit-id:2c0bdfaf
2022-01-28 10:44:10 +00:00
Csongor Kiss 5d90af5195
terra/token_bridge: fix cw20 migrations (#745)
commit-id:c8aac03a
2022-01-20 19:06:34 +00:00
Reisen e561d6de02 sdk: fixes to types and builds
Change-Id: I10b753450445cc021dbeb9f28ddb0384070e9635
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
Csongor Kiss 7e212fa739
terra/nft_bridge: Implement nft-bridge for terra (#698)
commit-id:0b547fa5
2022-01-07 16:47:33 +01:00
Csongor Kiss 089d7cde97
terra/nft_bridge: Implement cw721-wrapped (#697)
Wrapped NFT contract

commit-id:42e63984
2022-01-07 16:46:06 +01:00
Csongor Kiss 40837778a7
terra/nft_bridge: vendor cw721 and cw721-base (#696)
The most recent released versions of these libraries use a different
version of the cosmwasm than the rest of the wormhole projects, which
leads to a linker error. So we vendor these libraries and downgrade
their cosmwasm-std dependency to match the rest.

commit-id:a1a5c20b
2022-01-07 16:43:53 +01:00
Hendrik Hofstadt 91b58d7b64 fix: Use price id instead of product id in pyth on terra
Change-Id: Ic567803fd2bf798e0e4150c2a123bbc4788535f0
2021-12-29 20:57:54 -05:00
Evan Gray 98cb787512 terra: fix tax calculation on withdraw_tokens 2021-12-23 15:03:04 -05:00
Hendrik Hofstadt a91fe7797d
Pyth to Wormhole on Terra (#629)
* More checks in P2W on Terra

Change-Id: Icbe5d75504f947b741cee1c797740b71456964fe

* Auto-deploy P2W on Terra

Change-Id: I202536fd278aca938e3b8b3cb0a4ceeca314158f

* Don't do replay protection on price updates

We already use the sequence number for replay and rollback protection and can save storage this way

Change-Id: I9e655956aab1ed8dd86b9d821ece2f57900f6c78
2021-12-22 12:22:08 +01:00
Hendrik Hofstadt 0c747199ab Implement pyth2wormhole for Terra
Change-Id: I3c206cf9850818c1fc012a593ad057e07b5dfa3e
2021-12-02 14:56:02 +00:00
Reisen 7415fda312 terra/token_bridge: migration prep
Change-Id: I3bc054265e6296ce2fa4191c0395ca8531b0f4a8
2021-10-29 16:51:34 +00:00
Reisen c832b123fc terra: cw20 migrations
Change-Id: I3c75291a0d3016a197a15d9ee0717b16b3b479d3
2021-10-27 19:55:42 +00:00
Reisen 17ba6b12d0 terra: post migration fee change
Change-Id: I9e1517cf3038f80836b58810e11bddc1b58e6fbf
2021-10-19 15:25:01 +00:00
Reisen fc1c91a4b4 terra/token_bridge: set code_id to deployed cw20_wrapped
Change-Id: I275cb38a049290e8399f3fdc5f304c3fc12551f6
2021-10-11 16:53:07 +00:00
Reisen ddf43b85d7 terra: migrations for lower bridge fee
Change-Id: Ic83b321d42c9148f3915a365d195298ff052eda2
2021-10-11 16:32:56 +00:00
Reisen 91087bdb66 terra/token_bridge: allow newer sequenced vaa metadata
Change-Id: Ie81584abe6671595118082796df57bcea75a8fd3
2021-10-11 16:24:36 +00:00
Reisen e2a16b6756 terra: migrations for cw20
Change-Id: I201021ed763e8b94a2d029d79ba5ce7e3d3868e3
2021-10-11 16:21:33 +00:00
Reisen b9a61a152e terra/token_bridge: remove tax from native transfers
Change-Id: Ia40808508c08b13a2f1bd1b43c0102eabb2c54f6
2021-10-05 14:57:16 +00:00
Reisen 3607884556 terra/token_bridge: upgradability
Change-Id: Ib41583c0d99aad0e77fb970bc9ee0f7be56f6b4e
2021-10-05 10:41:09 +00:00
Reisen b662de4efb terra: columbus-5 contracts by default
Change-Id: I007689b032c6182e35421b47b56787a657a6919c
2021-10-04 16:41:31 +00:00
Reisen d2c976b04c terra/token_bridge: subtract tax from deposited tokens
Change-Id: Ib1647a4b3757054fc91fe4dd51317a5095a526a2
2021-10-04 16:41:31 +00:00
Reisen 56c1b43280 bridge_ui: deposit tokens in terra flow
Change-Id: If64963644e638dbb24c1334eebbc207b415e5a3a
2021-10-04 16:41:31 +00:00