* Fix fee calculation on injective price pusher
We used an optimization to calculate the update fee based on the number of VAAs. This used to be true before the accumulator messages but now since both formats can be used, it is not obvious what the final fee would be. We can again try to optimize this code and reduce rpc calls by replicating the fee calculation logic from the smart contract, but for now we have rolled back to the unoptimized version.
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.
* Use arrays instead of separate files per config
* Remove redundant endpoint on cosmwasm
* Add functions for upgrading the wormhole guardian sets
* Add wormhole contract management on evm and cosmwasm
* Add getter functions to check what sort of wormhole-deployment is used
* Reorganize contract manager package to be used via other packages
* Remove .env files per network and create a script that outputs the same file
* Use env variables in truffle config and output config in deployments
* Add executeUpdatePriceFeed to contract interface
* Add update pricefeed script
* Add saving functionality to store
* Save new contract configs automatically on Evm
* Make deploy script use the create-env.js internally
* Add utility function to get implementation address for Evm Proxy contracts
* Add shimmer testnet and replace evmos nunfunctional rpc
* New procedure for contract verification
* Update docs and remove duplicate configurations
* Remove shimmer configs
* Read default data source configs via contract manager
* Remove flattened contract before compiling/deploying
* get accumulator message from hermes price service
* ts parse_vaa_bytes_from_accumulator_message utility
* update registry to point to latest pyth package ID (assert_only passes)
* - set data sources governance test in set_data_sources.move
- make some helper functions in pyth.move public
- test file for update price feed using accumulator messages
* tests for governance actions
* - on-chain test for parsing acc message
- fix utility for parsing accumulator message VAA off-chain (on client-side)
- almost get client-side acummulator price update working
* clean up pyth_update_price_feed_using_accumulator_message.ts script
* more clean-up and pre-commit run --all-files
* revert changes to instructions.ts and package-lock.json
* - updated newly created price info object addresses
- fix bug in hot potato vector destroy function (specify type arg)
- price update using accumulator on client side works!
* edit
* format
* - update testnet accumulator message update test
- clean up ts files
* more clean up
* clean up
* optke3 -> mysten
* premitoio
precommit run all files
* edit
* rename update_price_feeds to the more specific update_price_feed_using_accumulator_message
* revert contract changes
* edit sign_governance_msg script
* run precommit on all files
* edit
* remove sdk folder
In our previous release this function was an entry function by mistake.
Now in order to keep our abi backward compatible, we need to keep it as entry function.
In order to allow the newer aptos cli to ignore this issue, we decorate it with `legacy_entry_fun`
* Better errors
* Better variable typing
* Upgrade cli with more straightforward flow
* Remove unnecessary configs and distinguish between deployer contract and signer
* Convert the named-addresses argument to 3 separate options with default values
* Add README
* Add stable testnet contracts
* Fix bug in creating InjectiveExecutor from mnemonic
* Import only from root library
* Code verification on proposals for cosmwasm
* Minimal script to upload wasm codes
* Use the netwrok parameter for InjectiveChain executor instead of endpoints
- 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
* Add evm contract infos + minor improvements
* Throw error if chainId is invalid instead of using 0 silently
* Add wormholeChainName property for chains to use in governance actions
* Return all signatures upon proposal execution
* Unify privateKey schema for contract manager
* Implement getLastExecutedGovernanceSequence for all contract types
* Unify getPriceFeed interface between contracts
* Add update price feed for evm
* Adjust gasPrice on evm
* Add setter for datasources + add global chain for universal governance instructions
* Add utility function to execute arbitrary governance Vaa
* Remove redundant contract
* Better error message when gas is not enough on deployment
* Add aptos mainnet config
* Restore sui override of setFee governance message generation
* Export executeVaa function
* Address PR feedbacks
* More documentation and cleanup
* Remove INFURA_KEY logic and replace RPC endpoints with public ones
* EVMContract -> EvmContract, EVMChain -> EvmChain
* Make executeUpdatePriceFeed interface on cosmos similar to evm
* Better error message and more comment regarding gas
* Remove fetching proposal internals on page load
Without the internals we can not show the verified/voted icons in the proposals page,
therefore we have to remove them
* Refactor squads creation based on wallet
Previously there was a logic to use a separate wallet for proposeSquads
but now it is removed and we can unify vote/propose squads
* Disable propose button if no action and show hint
* Expose refresh functionality on multisig proposals
* Fetch instructions within proposal and calculate voted/verified properties inside
* Extract WormholeInstructionView as a separate component
Moved some name mappings to pythContext so we don't need prop drilling
* Add support for parsing governance instructions + minor refactors
* Add ability to show / approve upgrade proposals
* fix buttons overflow
* Use the actual targetChainId instead of relying on the cluster context for instruction visualization
* Do not fetch the data again if the multisigCluster remains the same
---------
Co-authored-by: Daniel Chew <cctdaniel@outlook.com>