diff --git a/contract_manager/package.json b/contract_manager/package.json index ba0fec46..0ea29795 100644 --- a/contract_manager/package.json +++ b/contract_manager/package.json @@ -23,7 +23,7 @@ "dependencies": { "@certusone/wormhole-sdk": "^0.9.8", "@coral-xyz/anchor": "^0.29.0", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@mysten/sui.js": "^0.49.1", "@pythnetwork/cosmwasm-deploy-tools": "*", "@pythnetwork/entropy-sdk-solidity": "*", diff --git a/contract_manager/scripts/common.ts b/contract_manager/scripts/common.ts index 7374953b..d7157f15 100644 --- a/contract_manager/scripts/common.ts +++ b/contract_manager/scripts/common.ts @@ -72,7 +72,7 @@ export const COMMON_DEPLOY_OPTIONS = { chain: { type: "array", demandOption: true, - desc: "Chain to upload the contract on. Can be one of the evm chains available in the store", + desc: "Chain to upload the contract on. Can be one of the chains available in the store", }, "deployment-type": { type: "string", diff --git a/contract_manager/scripts/sync_wormhole_guardian_set.ts b/contract_manager/scripts/sync_wormhole_guardian_set.ts new file mode 100644 index 00000000..4fcf58d8 --- /dev/null +++ b/contract_manager/scripts/sync_wormhole_guardian_set.ts @@ -0,0 +1,69 @@ +import yargs from "yargs"; +import { hideBin } from "yargs/helpers"; +import { + CosmWasmPriceFeedContract, + DefaultStore, + EvmPriceFeedContract, + toPrivateKey, +} from "../src"; + +const parser = yargs(hideBin(process.argv)) + .usage("Update the guardian set in stable networks. Usage: $0") + .options({ + "private-key": { + type: "string", + demandOption: true, + desc: "Private key to sign the transactions with", + }, + chain: { + type: "array", + desc: "Can be one of the chains available in the store", + }, + }); + +async function main() { + const argv = await parser.argv; + + const privateKey = toPrivateKey(argv.privateKey); + const chains = argv.chain; + + for (const contract of Object.values(DefaultStore.contracts)) { + // We are currently only managing wormhole receiver contracts in EVM and + // CosmWasm and Solana-based networks. The rest of the networks are + // managed by the guardians themselves and they should be the ones updating + // the guardian set. + // TODO: Solana-based receivers have their script in their rust cli. Add + // support for Solana-based networks here once they are added to the + // contract manager. + if ( + contract instanceof CosmWasmPriceFeedContract || + contract instanceof EvmPriceFeedContract + ) { + if (chains && !chains.includes(contract.getChain().getId())) { + continue; + } + + try { + console.log("------------------------------------"); + const wormhole = await contract.getWormholeContract(); + + // TODO: This is a temporary workaround to skip contracts that are in beta channel + // We should have a better way to handle this + if ((await wormhole.getCurrentGuardianSetIndex()) === 0) { + continue; + } + + console.log( + `Current Guardianset for ${contract.getId()}: ${await wormhole.getCurrentGuardianSetIndex()}` + ); + + await wormhole.syncMainnetGuardianSets(privateKey); + console.log(`Updated Guardianset for ${contract.getId()}`); + } catch (e) { + console.error(`Error updating Guardianset for ${contract.getId()}`, e); + } + } + } +} + +main(); diff --git a/contract_manager/src/chains.ts b/contract_manager/src/chains.ts index a7ee6976..87a6e412 100644 --- a/contract_manager/src/chains.ts +++ b/contract_manager/src/chains.ts @@ -408,11 +408,10 @@ export class EvmChain extends Chain { const GAS_ESTIMATE_MULTIPLIER = 2; const gasEstimate = await transactionObject.estimateGas(txParams); // Some networks like Filecoin do not support the normal transaction type and need a type 2 transaction. - // To send a type 2 transaction, remove the ``gasPrice`` field and add the `type` field with the value - // `0x2` to the transaction configuration parameters. + // To send a type 2 transaction, remove the ``gasPrice`` field. return transactionObject.send({ gas: gasEstimate * GAS_ESTIMATE_MULTIPLIER, - gasPrice: await this.getGasPrice(), + gasPrice: Number(await this.getGasPrice()), ...txParams, }); } diff --git a/contract_manager/src/contracts/cosmwasm.ts b/contract_manager/src/contracts/cosmwasm.ts index fd9f485e..e66aae62 100644 --- a/contract_manager/src/contracts/cosmwasm.ts +++ b/contract_manager/src/contracts/cosmwasm.ts @@ -211,7 +211,9 @@ export class CosmWasmPriceFeedContract extends PriceFeedContract { })) as Record; const config = { config_v1: JSON.parse(allStates["\x00\tconfig_v1"]), - contract_version: JSON.parse(allStates["\x00\x10contract_version"]), + contract_version: allStates["\x00\x10contract_version"] + ? JSON.parse(allStates["\x00\x10contract_version"]) + : undefined, }; return config; } diff --git a/contract_manager/src/contracts/wormhole.ts b/contract_manager/src/contracts/wormhole.ts index 61eef32e..6eab542f 100644 --- a/contract_manager/src/contracts/wormhole.ts +++ b/contract_manager/src/contracts/wormhole.ts @@ -33,6 +33,7 @@ export abstract class WormholeContract { "010000000001007ac31b282c2aeeeb37f3385ee0de5f8e421d30b9e5ae8ba3d4375c1c77a86e77159bb697d9c456d6f8c02d22a94b1279b65b0d6a9957e7d3857423845ac758e300610ac1d2000000030001000000000000000000000000000000000000000000000000000000000000000400000000000005390000000000000000000000000000000000000000000000000000000000436f7265020000000000011358cc3ae5c097b213ce3c81979e1b9f9570746aa5ff6cb952589bde862c25ef4392132fb9d4a42157114de8460193bdf3a2fcf81f86a09765f4762fd1107a0086b32d7a0977926a205131d8731d39cbeb8c82b2fd82faed2711d59af0f2499d16e726f6b211b39756c042441be6d8650b69b54ebe715e234354ce5b4d348fb74b958e8966e2ec3dbd4958a7cdeb5f7389fa26941519f0863349c223b73a6ddee774a3bf913953d695260d88bc1aa25a4eee363ef0000ac0076727b35fbea2dac28fee5ccb0fea768eaf45ced136b9d9e24903464ae889f5c8a723fc14f93124b7c738843cbb89e864c862c38cddcccf95d2cc37a4dc036a8d232b48f62cdd4731412f4890da798f6896a3331f64b48c12d1d57fd9cbe7081171aa1be1d36cafe3867910f99c09e347899c19c38192b6e7387ccd768277c17dab1b7a5027c0b3cf178e21ad2e77ae06711549cfbb1f9c7a9d8096e85e1487f35515d02a92753504a8d75471b9f49edb6fbebc898f403e4773e95feb15e80c9a99c8348d", "01000000010d0012e6b39c6da90c5dfd3c228edbb78c7a4c97c488ff8a346d161a91db067e51d638c17216f368aa9bdf4836b8645a98018ca67d2fec87d769cabfdf2406bf790a0002ef42b288091a670ef3556596f4f47323717882881eaf38e03345078d07a156f312b785b64dae6e9a87e3d32872f59cb1931f728cecf511762981baf48303668f0103cef2616b84c4e511ff03329e0853f1bd7ee9ac5ba71d70a4d76108bddf94f69c2a8a84e4ee94065e8003c334e899184943634e12043d0dda78d93996da073d190104e76d166b9dac98f602107cc4b44ac82868faf00b63df7d24f177aa391e050902413b71046434e67c770b19aecdf7fce1d1435ea0be7262e3e4c18f50ddc8175c0105d9450e8216d741e0206a50f93b750a47e0a258b80eb8fed1314cc300b3d905092de25cd36d366097b7103ae2d184121329ba3aa2d7c6cc53273f11af14798110010687477c8deec89d36a23e7948feb074df95362fc8dcbd8ae910ac556a1dee1e755c56b9db5d710c940938ed79bc1895a3646523a58bc55f475a23435a373ecfdd0107fb06734864f79def4e192497362513171530daea81f07fbb9f698afe7e66c6d44db21323144f2657d4a5386a954bb94eef9f64148c33aef6e477eafa2c5c984c01088769e82216310d1827d9bd48645ec23e90de4ef8a8de99e2d351d1df318608566248d80cdc83bdcac382b3c30c670352be87f9069aab5037d0b747208eae9c650109e9796497ff9106d0d1c62e184d83716282870cef61a1ee13d6fc485b521adcce255c96f7d1bca8d8e7e7d454b65783a830bddc9d94092091a268d311ecd84c26010c468c9fb6d41026841ff9f8d7368fa309d4dbea3ea4bbd2feccf94a92cc8a20a226338a8e2126cd16f70eaf15b4fc9be2c3fa19def14e071956a605e9d1ac4162010e23fcb6bd445b7c25afb722250c1acbc061ed964ba9de1326609ae012acdfb96942b2a102a2de99ab96327859a34a2b49a767dbdb62e0a1fb26af60fe44fd496a00106bb0bac77ac68b347645f2fb1ad789ea9bd76fb9b2324f25ae06f97e65246f142df717f662e73948317182c62ce87d79c73def0dba12e5242dfc038382812cfe00126da03c5e56cb15aeeceadc1e17a45753ab4dc0ec7bf6a75ca03143ed4a294f6f61bc3f478a457833e43084ecd7c985bf2f55a55f168aac0e030fc49e845e497101626e9d9a5d9e343f00010000000000000000000000000000000000000000000000000000000000000004c1759167c43f501c2000000000000000000000000000000000000000000000000000000000436f7265020000000000021358cc3ae5c097b213ce3c81979e1b9f9570746aa5ff6cb952589bde862c25ef4392132fb9d4a42157114de8460193bdf3a2fcf81f86a09765f4762fd1107a0086b32d7a0977926a205131d8731d39cbeb8c82b2fd82faed2711d59af0f2499d16e726f6b211b39756c042441be6d8650b69b54ebe715e234354ce5b4d348fb74b958e8966e2ec3dbd4958a7cd66b9590e1c41e0b226937bf9217d1d67fd4e91f574a3bf913953d695260d88bc1aa25a4eee363ef0000ac0076727b35fbea2dac28fee5ccb0fea768eaf45ced136b9d9e24903464ae889f5c8a723fc14f93124b7c738843cbb89e864c862c38cddcccf95d2cc37a4dc036a8d232b48f62cdd4731412f4890da798f6896a3331f64b48c12d1d57fd9cbe7081171aa1be1d36cafe3867910f99c09e347899c19c38192b6e7387ccd768277c17dab1b7a5027c0b3cf178e21ad2e77ae06711549cfbb1f9c7a9d8096e85e1487f35515d02a92753504a8d75471b9f49edb6fbebc898f403e4773e95feb15e80c9a99c8348d", "01000000020d00ce45474d9e1b1e7790a2d210871e195db53a70ffd6f237cfe70e2686a32859ac43c84a332267a8ef66f59719cf91cc8df0101fd7c36aa1878d5139241660edc0010375cc906156ae530786661c0cd9aef444747bc3d8d5aa84cac6a6d2933d4e1a031cffa30383d4af8131e929d9f203f460b07309a647d6cd32ab1cc7724089392c000452305156cfc90343128f97e499311b5cae174f488ff22fbc09591991a0a73d8e6af3afb8a5968441d3ab8437836407481739e9850ad5c95e6acfcc871e951bc30105a7956eefc23e7c945a1966d5ddbe9e4be376c2f54e45e3d5da88c2f8692510c7429b1ea860ae94d929bd97e84923a18187e777aa3db419813a80deb84cc8d22b00061b2a4f3d2666608e0aa96737689e3ba5793810ff3a52ff28ad57d8efb20967735dc5537a2e43ef10f583d144c12a1606542c207f5b79af08c38656d3ac40713301086b62c8e130af3411b3c0d91b5b50dcb01ed5f293963f901fc36e7b0e50114dce203373b32eb45971cef8288e5d928d0ed51cd86e2a3006b0af6a65c396c009080009e93ab4d2c8228901a5f4525934000b2c26d1dc679a05e47fdf0ff3231d98fbc207103159ff4116df2832eea69b38275283434e6cd4a4af04d25fa7a82990b707010aa643f4cf615dfff06ffd65830f7f6cf6512dabc3690d5d9e210fdc712842dc2708b8b2c22e224c99280cd25e5e8bfb40e3d1c55b8c41774e287c1e2c352aecfc010b89c1e85faa20a30601964ccc6a79c0ae53cfd26fb10863db37783428cd91390a163346558239db3cd9d420cfe423a0df84c84399790e2e308011b4b63e6b8015010ca31dcb564ac81a053a268d8090e72097f94f366711d0c5d13815af1ec7d47e662e2d1bde22678113d15963da100b668ba26c0c325970d07114b83c5698f46097010dc9fda39c0d592d9ed92cd22b5425cc6b37430e236f02d0d1f8a2ef45a00bde26223c0a6eb363c8b25fd3bf57234a1d9364976cefb8360e755a267cbbb674b39501108db01e444ab1003dd8b6c96f8eb77958b40ba7a85fefecf32ad00b7a47c0ae7524216262495977e09c0989dd50f280c21453d3756843608eacd17f4fdfe47600001261025228ef5af837cb060bcd986fcfa84ccef75b3fa100468cfd24e7fadf99163938f3b841a33496c2706d0208faab088bd155b2e20fd74c625bb1cc8c43677a0163c53c409e0c5dfa000100000000000000000000000000000000000000000000000000000000000000046c5a054d7833d1e42000000000000000000000000000000000000000000000000000000000436f7265020000000000031358cc3ae5c097b213ce3c81979e1b9f9570746aa5ff6cb952589bde862c25ef4392132fb9d4a42157114de8460193bdf3a2fcf81f86a09765f4762fd1107a0086b32d7a0977926a205131d8731d39cbeb8c82b2fd82faed2711d59af0f2499d16e726f6b211b39756c042441be6d8650b69b54ebe715e234354ce5b4d348fb74b958e8966e2ec3dbd4958a7cd15e7caf07c4e3dc8e7c469f92c8cd88fb8005a2074a3bf913953d695260d88bc1aa25a4eee363ef0000ac0076727b35fbea2dac28fee5ccb0fea768eaf45ced136b9d9e24903464ae889f5c8a723fc14f93124b7c738843cbb89e864c862c38cddcccf95d2cc37a4dc036a8d232b48f62cdd4731412f4890da798f6896a3331f64b48c12d1d57fd9cbe7081171aa1be1d36cafe3867910f99c09e347899c19c38192b6e7387ccd768277c17dab1b7a5027c0b3cf178e21ad2e77ae06711549cfbb1f9c7a9d8096e85e1487f35515d02a92753504a8d75471b9f49edb6fbebc898f403e4773e95feb15e80c9a99c8348d", + "01000000030d03d4a37a6ff4361d91714730831e9d49785f61624c8f348a9c6c1d82bc1d98cadc5e936338204445c6250bb4928f3f3e165ad47ca03a5d63111168a2de4576856301049a5df10464ea4e1961589fd30fc18d1970a7a2ffaad617e56a0f7777f25275253af7d10a0f0f2494dc6e99fc80e444ab9ebbbee252ded2d5dcb50cbf7a54bb5a01055f4603b553b9ba9e224f9c55c7bca3da00abb10abd19e0081aecd3b352be061a70f79f5f388ebe5190838ef3cd13a2f22459c9a94206883b739c90b40d5d74640006a8fade3997f650a36e46bceb1f609edff201ab32362266f166c5c7da713f6a19590c20b68ed3f0119cb24813c727560ede086b3d610c2d7a1efa66f655bad90900080f5e495a75ea52241c59d145c616bfac01e57182ad8d784cbcc9862ed3afb60c0983ccbc690553961ffcf115a0c917367daada8e60be2cbb8b8008bac6341a8c010935ab11e0eea28b87a1edc5ccce3f1fac25f75b5f640fe6b0673a7cd74513c9dc01c544216cf364cc9993b09fda612e0cd1ced9c00fb668b872a16a64ebb55d27010ab2bc39617a2396e7defa24cd7c22f42dc31f3c42ffcd9d1472b02df8468a4d0563911e8fb6a4b5b0ce0bd505daa53779b08ff660967b31f246126ed7f6f29a7e000bdb6d3fd7b33bdc9ac3992916eb4aacb97e7e21d19649e7fa28d2dd6e337937e4274516a96c13ac7a8895da9f91948ea3a09c25f44b982c62ce8842b58e20c8a9000d3d1b19c8bb000856b6610b9d28abde6c35cb7705c6ca5db711f7be96d60eed9d72cfa402a6bfe8bf0496dbc7af35796fc768da51a067b95941b3712dce8ae1e7010ec80085033157fd1a5628fc0c56267469a86f0e5a66d7dede1ad4ce74ecc3dff95b60307a39c3bfbeedc915075070da30d0395def9635130584f709b3885e1bdc0010fc480eb9ee715a2d151b23722b48b42581d7f4001fc1696c75425040bfc1ffc5394fe418adb2b64bd3dc692efda4cc408163677dbe233b16bcdabb853a20843301118ee9e115e1a0c981f19d0772b850e666591322da742a9a12cce9f52a5665bd474abdd59c580016bee8aae67fdf39b315be2528d12eec3a652910e03cc4c6fa3801129d0d1e2e429e969918ec163d16a7a5b2c6729aa44af5dccad07d25d19891556a79b574f42d9adbd9e2a9ae5a6b8750331d2fccb328dd94c3bf8791ee1bfe85aa00661e99781981faea00010000000000000000000000000000000000000000000000000000000000000004fd4c6c55ec8dfd342000000000000000000000000000000000000000000000000000000000436f726502000000000004135893b5a76c3f739645648885bdccc06cd70a3cd3ff6cb952589bde862c25ef4392132fb9d4a42157114de8460193bdf3a2fcf81f86a09765f4762fd1107a0086b32d7a0977926a205131d8731d39cbeb8c82b2fd82faed2711d59af0f2499d16e726f6b211b39756c042441be6d8650b69b54ebe715e234354ce5b4d348fb74b958e8966e2ec3dbd4958a7cd15e7caf07c4e3dc8e7c469f92c8cd88fb8005a2074a3bf913953d695260d88bc1aa25a4eee363ef0000ac0076727b35fbea2dac28fee5ccb0fea768eaf45ced136b9d9e24903464ae889f5c8a723fc14f93124b7c738843cbb89e864c862c38cddcccf95d2cc37a4dc036a8d232b48f62cdd4731412f4890da798f6896a3331f64b48c12d1d57fd9cbe7081171aa1be1d36cafe3867910f99c09e347899c19c38192b6e7387ccd768277c17dab1b7a5027c0b3cf178e21ad2e77ae06711549cfbb1f9c7a9d8096e85e1487f35515d02a92753504a8d75471b9f49edb6fbebc898f403e4773e95feb15e80c9a99c8348d", ]; const currentIndex = await this.getCurrentGuardianSetIndex(); for (let i = currentIndex; i < MAINNET_UPGRADE_VAAS.length; i++) { diff --git a/contract_manager/store/chains/EvmChains.yaml b/contract_manager/store/chains/EvmChains.yaml index f882368b..51abe2b2 100644 --- a/contract_manager/store/chains/EvmChains.yaml +++ b/contract_manager/store/chains/EvmChains.yaml @@ -39,11 +39,6 @@ rpcUrl: https://evm-t3.cronos.org networkId: 338 type: EvmChain -- id: zksync_goerli - mainnet: false - rpcUrl: https://zksync2-testnet.zksync.dev - networkId: 280 - type: EvmChain - id: canto_testnet mainnet: false rpcUrl: https://canto-testnet.plexnode.wtf @@ -51,7 +46,7 @@ type: EvmChain - id: polygon_zkevm_testnet mainnet: false - rpcUrl: https://rpc.public.zkevm-test.net/ + rpcUrl: https://rpc.public.zkevm-test.net networkId: 1442 type: EvmChain - id: polygon_blackberry @@ -82,7 +77,7 @@ type: EvmChain - id: neon mainnet: true - rpcUrl: https://neon-proxy-mainnet.solana.p2p.org + rpcUrl: https://neon-evm.drpc.org networkId: 245022934 type: EvmChain - id: fantom @@ -174,11 +169,6 @@ rpcUrl: https://evm.confluxrpc.org networkId: 1030 type: EvmChain -- id: optimism_goerli - mainnet: false - rpcUrl: https://rpc.ankr.com/optimism_testnet - networkId: 420 - type: EvmChain - id: celo mainnet: true rpcUrl: https://forno.celo.org @@ -289,7 +279,7 @@ type: EvmChain - id: horizen_eon mainnet: true - rpcUrl: https://eon-rpc.horizenlabs.io/ethv1 + rpcUrl: https://rpc.ankr.com/horizen_eon networkId: 7332 type: EvmChain - id: horizen_gobi @@ -334,7 +324,7 @@ type: EvmChain - id: manta_testnet mainnet: false - rpcUrl: https://pacific-rpc.testnet.manta.network/http + rpcUrl: https://manta-pacific-testnet.drpc.org networkId: 3441005 type: EvmChain - id: manta_sepolia @@ -393,14 +383,14 @@ networkId: 1116 type: EvmChain nativeToken: CORE -- id: tomochain +- id: viction mainnet: true - rpcUrl: https://rpc.tomochain.com + rpcUrl: https://viction.blockpi.network/v1/rpc/public networkId: 88 type: EvmChain -- id: tomochain_testnet +- id: viction_testnet mainnet: false - rpcUrl: https://rpc.testnet.tomochain.com + rpcUrl: https://rpc-testnet.viction.xyz networkId: 89 type: EvmChain - id: mode_testnet diff --git a/contract_manager/store/contracts/EvmPriceFeedContracts.yaml b/contract_manager/store/contracts/EvmPriceFeedContracts.yaml index 78b419fe..7f178665 100644 --- a/contract_manager/store/contracts/EvmPriceFeedContracts.yaml +++ b/contract_manager/store/contracts/EvmPriceFeedContracts.yaml @@ -97,7 +97,7 @@ - chain: coredao address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729" type: EvmPriceFeedContract -- chain: tomochain +- chain: viction address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729" type: EvmPriceFeedContract - chain: arbitrum_sepolia @@ -142,9 +142,6 @@ - chain: meter_testnet address: "0x5a71C07a0588074443545eE0c08fb0375564c3E4" type: EvmPriceFeedContract -- chain: optimism_goerli - address: "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21" - type: EvmPriceFeedContract - chain: shimmer_testnet address: "0x8D254a21b3C86D32F7179855531CE99164721933" type: EvmPriceFeedContract @@ -169,9 +166,6 @@ - chain: coredao_testnet address: "0x8D254a21b3C86D32F7179855531CE99164721933" type: EvmPriceFeedContract -- chain: tomochain_testnet - address: "0x5D289Ad1CE59fCC25b6892e7A303dfFf3a9f7167" - type: EvmPriceFeedContract - chain: cronos_testnet address: "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320" type: EvmPriceFeedContract @@ -202,9 +196,6 @@ - chain: neon_devnet address: "0x0708325268dF9F66270F1401206434524814508b" type: EvmPriceFeedContract -- chain: zksync_goerli - address: "0x8739d5024B5143278E2b15Bd9e7C26f6CEc658F1" - type: EvmPriceFeedContract - chain: optimism_sepolia address: "0x0708325268dF9F66270F1401206434524814508b" type: EvmPriceFeedContract diff --git a/governance/xc_admin/packages/xc_admin_common/src/chains.ts b/governance/xc_admin/packages/xc_admin_common/src/chains.ts index 04a2ff44..ea1b5bee 100644 --- a/governance/xc_admin/packages/xc_admin_common/src/chains.ts +++ b/governance/xc_admin/packages/xc_admin_common/src/chains.ts @@ -53,7 +53,7 @@ export const RECEIVER_CHAINS = { zetachain: 60034, astar_zkevm: 60035, coredao: 60036, - tomochain: 60037, + viction: 60037, stacks: 60038, mode: 60039, bttc: 60040, @@ -111,7 +111,7 @@ export const RECEIVER_CHAINS = { zetachain_testnet: 50035, astar_zkevm_testnet: 50036, coredao_testnet: 50037, - tomochain_testnet: 50038, + viction_testnet: 50038, stacks_testnet: 50039, mode_testnet: 50040, bttc_testnet: 50041, diff --git a/package-lock.json b/package-lock.json index 51b6f8a9..a126f604 100644 --- a/package-lock.json +++ b/package-lock.json @@ -832,7 +832,7 @@ "dependencies": { "@certusone/wormhole-sdk": "^0.9.8", "@coral-xyz/anchor": "^0.29.0", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@mysten/sui.js": "^0.49.1", "@pythnetwork/cosmwasm-deploy-tools": "*", "@pythnetwork/entropy-sdk-solidity": "*", @@ -1087,18 +1087,43 @@ "optional": true }, "contract_manager/node_modules/@injectivelabs/networks": { - "version": "1.0.68", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.0.68.tgz", - "integrity": "sha512-CcWcLaRX1lJQyYs97+PPDmMaEFcXQgt/WjQ5raamcbQugJwMa/byC4eS18DZ0tIIZ24CoD+79zbgHDzfoe6/qg==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.14.6.tgz", + "integrity": "sha512-O1IkPFJl8ThNL6N+k/9OimrgCYsSWQ8A1FtVMXSQge+0QRZsDKSpRmQRwE601otXXauO31nOUct5AaiWPffXVQ==", "hasInstallScript": true, "dependencies": { - "@injectivelabs/exceptions": "^1.0.42", - "@injectivelabs/ts-types": "^1.0.27", - "@injectivelabs/utils": "^1.0.59", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "@injectivelabs/utils": "^1.14.6", "link-module-alias": "^1.2.0", "shx": "^0.3.2" } }, + "contract_manager/node_modules/@injectivelabs/networks/node_modules/@injectivelabs/utils": { + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.14.6.tgz", + "integrity": "sha512-5I0h4GiLB5PPTl+g2lpevRP+WScvEbntdkoUQVtAdHewl4kutd5p1Kcnoi1Nvpq+sz5N/e9qtBIRuyxG38akOg==", + "hasInstallScript": true, + "dependencies": { + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "axios": "^0.21.1", + "bignumber.js": "^9.0.1", + "http-status-codes": "^2.2.0", + "link-module-alias": "^1.2.0", + "shx": "^0.3.2", + "snakecase-keys": "^5.1.2", + "store2": "^2.12.0" + } + }, + "contract_manager/node_modules/@injectivelabs/networks/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, "contract_manager/node_modules/@injectivelabs/sdk-ts": { "version": "1.10.72", "resolved": "https://registry.npmjs.org/@injectivelabs/sdk-ts/-/sdk-ts-1.10.72.tgz", @@ -1144,20 +1169,6 @@ "snakecase-keys": "^5.4.1" } }, - "contract_manager/node_modules/@injectivelabs/sdk-ts/node_modules/@injectivelabs/networks": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.11.0.tgz", - "integrity": "sha512-0dtO/zZ8AzsxGInEWZ7tpOA0Q++M3FhAFxOWzhYC39ZeJlwHhEcYmvmhrGG5gRdus29XfFysRlaz3hyT3XH1Jg==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "@injectivelabs/exceptions": "^1.11.0", - "@injectivelabs/ts-types": "^1.11.0", - "@injectivelabs/utils": "^1.11.0", - "link-module-alias": "^1.2.0", - "shx": "^0.3.2" - } - }, "contract_manager/node_modules/@injectivelabs/sdk-ts/node_modules/@injectivelabs/utils": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.11.0.tgz", @@ -1200,6 +1211,7 @@ "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.10.12.tgz", "integrity": "sha512-c8al79nxIJgV1cBAdW2TPDGldj/8gm5k0h5TIN/AJs8/AeIjpTwwVGfLY3QvPOpRsxuQ9CjBkTXrAcSL1wwkcw==", "hasInstallScript": true, + "optional": true, "dependencies": { "@injectivelabs/exceptions": "^1.10.12", "@injectivelabs/ts-types": "^1.10.12", @@ -1216,6 +1228,7 @@ "version": "0.21.4", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "optional": true, "dependencies": { "follow-redirects": "^1.14.0" } @@ -57958,7 +57971,7 @@ "@cosmjs/cosmwasm-stargate": "^0.29.5", "@cosmjs/encoding": "^0.26.2", "@cosmjs/proto-signing": "^0.30.1", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@injectivelabs/sdk-ts": "1.0.354", "@ltd/j-toml": "^1.38.0", "@pythnetwork/price-service-client": "*", @@ -58112,14 +58125,14 @@ } }, "target_chains/cosmwasm/tools/node_modules/@injectivelabs/networks": { - "version": "1.0.68", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.0.68.tgz", - "integrity": "sha512-CcWcLaRX1lJQyYs97+PPDmMaEFcXQgt/WjQ5raamcbQugJwMa/byC4eS18DZ0tIIZ24CoD+79zbgHDzfoe6/qg==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.14.6.tgz", + "integrity": "sha512-O1IkPFJl8ThNL6N+k/9OimrgCYsSWQ8A1FtVMXSQge+0QRZsDKSpRmQRwE601otXXauO31nOUct5AaiWPffXVQ==", "hasInstallScript": true, "dependencies": { - "@injectivelabs/exceptions": "^1.0.42", - "@injectivelabs/ts-types": "^1.0.27", - "@injectivelabs/utils": "^1.0.59", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "@injectivelabs/utils": "^1.14.6", "link-module-alias": "^1.2.0", "shx": "^0.3.2" } @@ -58243,13 +58256,13 @@ } }, "target_chains/cosmwasm/tools/node_modules/@injectivelabs/utils": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.10.12.tgz", - "integrity": "sha512-c8al79nxIJgV1cBAdW2TPDGldj/8gm5k0h5TIN/AJs8/AeIjpTwwVGfLY3QvPOpRsxuQ9CjBkTXrAcSL1wwkcw==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.14.6.tgz", + "integrity": "sha512-5I0h4GiLB5PPTl+g2lpevRP+WScvEbntdkoUQVtAdHewl4kutd5p1Kcnoi1Nvpq+sz5N/e9qtBIRuyxG38akOg==", "hasInstallScript": true, "dependencies": { - "@injectivelabs/exceptions": "^1.10.12", - "@injectivelabs/ts-types": "^1.10.12", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", "axios": "^0.21.1", "bignumber.js": "^9.0.1", "http-status-codes": "^2.2.0", @@ -67292,7 +67305,7 @@ "@cosmjs/cosmwasm-stargate": "^0.29.5", "@cosmjs/encoding": "^0.26.2", "@cosmjs/proto-signing": "^0.30.1", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@injectivelabs/sdk-ts": "1.0.354", "@ltd/j-toml": "^1.38.0", "@pythnetwork/price-service-client": "*", @@ -67449,13 +67462,13 @@ } }, "@injectivelabs/networks": { - "version": "1.0.68", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.0.68.tgz", - "integrity": "sha512-CcWcLaRX1lJQyYs97+PPDmMaEFcXQgt/WjQ5raamcbQugJwMa/byC4eS18DZ0tIIZ24CoD+79zbgHDzfoe6/qg==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.14.6.tgz", + "integrity": "sha512-O1IkPFJl8ThNL6N+k/9OimrgCYsSWQ8A1FtVMXSQge+0QRZsDKSpRmQRwE601otXXauO31nOUct5AaiWPffXVQ==", "requires": { - "@injectivelabs/exceptions": "^1.0.42", - "@injectivelabs/ts-types": "^1.0.27", - "@injectivelabs/utils": "^1.0.59", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "@injectivelabs/utils": "^1.14.6", "link-module-alias": "^1.2.0", "shx": "^0.3.2" } @@ -67582,12 +67595,12 @@ } }, "@injectivelabs/utils": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.10.12.tgz", - "integrity": "sha512-c8al79nxIJgV1cBAdW2TPDGldj/8gm5k0h5TIN/AJs8/AeIjpTwwVGfLY3QvPOpRsxuQ9CjBkTXrAcSL1wwkcw==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.14.6.tgz", + "integrity": "sha512-5I0h4GiLB5PPTl+g2lpevRP+WScvEbntdkoUQVtAdHewl4kutd5p1Kcnoi1Nvpq+sz5N/e9qtBIRuyxG38akOg==", "requires": { - "@injectivelabs/exceptions": "^1.10.12", - "@injectivelabs/ts-types": "^1.10.12", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", "axios": "^0.21.1", "bignumber.js": "^9.0.1", "http-status-codes": "^2.2.0", @@ -81237,7 +81250,7 @@ "requires": { "@certusone/wormhole-sdk": "^0.9.8", "@coral-xyz/anchor": "^0.29.0", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@mysten/sui.js": "^0.49.1", "@pythnetwork/cosmwasm-deploy-tools": "*", "@pythnetwork/entropy-sdk-solidity": "*", @@ -81487,15 +81500,41 @@ "optional": true }, "@injectivelabs/networks": { - "version": "1.0.68", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.0.68.tgz", - "integrity": "sha512-CcWcLaRX1lJQyYs97+PPDmMaEFcXQgt/WjQ5raamcbQugJwMa/byC4eS18DZ0tIIZ24CoD+79zbgHDzfoe6/qg==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.14.6.tgz", + "integrity": "sha512-O1IkPFJl8ThNL6N+k/9OimrgCYsSWQ8A1FtVMXSQge+0QRZsDKSpRmQRwE601otXXauO31nOUct5AaiWPffXVQ==", "requires": { - "@injectivelabs/exceptions": "^1.0.42", - "@injectivelabs/ts-types": "^1.0.27", - "@injectivelabs/utils": "^1.0.59", + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "@injectivelabs/utils": "^1.14.6", "link-module-alias": "^1.2.0", "shx": "^0.3.2" + }, + "dependencies": { + "@injectivelabs/utils": { + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.14.6.tgz", + "integrity": "sha512-5I0h4GiLB5PPTl+g2lpevRP+WScvEbntdkoUQVtAdHewl4kutd5p1Kcnoi1Nvpq+sz5N/e9qtBIRuyxG38akOg==", + "requires": { + "@injectivelabs/exceptions": "^1.14.6", + "@injectivelabs/ts-types": "^1.14.6", + "axios": "^0.21.1", + "bignumber.js": "^9.0.1", + "http-status-codes": "^2.2.0", + "link-module-alias": "^1.2.0", + "shx": "^0.3.2", + "snakecase-keys": "^5.1.2", + "store2": "^2.12.0" + } + }, + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + } } }, "@injectivelabs/sdk-ts": { @@ -81542,19 +81581,6 @@ "snakecase-keys": "^5.4.1" }, "dependencies": { - "@injectivelabs/networks": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@injectivelabs/networks/-/networks-1.11.0.tgz", - "integrity": "sha512-0dtO/zZ8AzsxGInEWZ7tpOA0Q++M3FhAFxOWzhYC39ZeJlwHhEcYmvmhrGG5gRdus29XfFysRlaz3hyT3XH1Jg==", - "optional": true, - "requires": { - "@injectivelabs/exceptions": "^1.11.0", - "@injectivelabs/ts-types": "^1.11.0", - "@injectivelabs/utils": "^1.11.0", - "link-module-alias": "^1.2.0", - "shx": "^0.3.2" - } - }, "@injectivelabs/utils": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.11.0.tgz", @@ -81599,6 +81625,7 @@ "version": "1.10.12", "resolved": "https://registry.npmjs.org/@injectivelabs/utils/-/utils-1.10.12.tgz", "integrity": "sha512-c8al79nxIJgV1cBAdW2TPDGldj/8gm5k0h5TIN/AJs8/AeIjpTwwVGfLY3QvPOpRsxuQ9CjBkTXrAcSL1wwkcw==", + "optional": true, "requires": { "@injectivelabs/exceptions": "^1.10.12", "@injectivelabs/ts-types": "^1.10.12", @@ -81615,6 +81642,7 @@ "version": "0.21.4", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "optional": true, "requires": { "follow-redirects": "^1.14.0" } diff --git a/target_chains/cosmwasm/tools/package.json b/target_chains/cosmwasm/tools/package.json index 5f5aeecb..5c9efff3 100644 --- a/target_chains/cosmwasm/tools/package.json +++ b/target_chains/cosmwasm/tools/package.json @@ -14,10 +14,10 @@ "@cosmjs/cosmwasm-stargate": "^0.29.5", "@cosmjs/encoding": "^0.26.2", "@cosmjs/proto-signing": "^0.30.1", - "@injectivelabs/networks": "1.0.68", + "@injectivelabs/networks": "^1.14.6", "@injectivelabs/sdk-ts": "1.0.354", "@ltd/j-toml": "^1.38.0", - "xc_admin_common": "*", + "@pythnetwork/price-service-client": "*", "@terra-money/terra.js": "^3.1.3", "adm-zip": "^0.5.10", "chain-registry": "^1.6.0", @@ -26,8 +26,8 @@ "ethers": "^5.4.4", "node-downloader-helper": "^2.1.7", "osmojs": "^13.0.0-rc.7-i-alpha", - "yargs": "^17.0.1", - "@pythnetwork/price-service-client": "*" + "xc_admin_common": "*", + "yargs": "^17.0.1" }, "devDependencies": { "@types/adm-zip": "^0.5.0", diff --git a/target_chains/cosmwasm/tools/src/ci/deployer/injective.ts b/target_chains/cosmwasm/tools/src/ci/deployer/injective.ts index 0aa098d0..372ecf49 100644 --- a/target_chains/cosmwasm/tools/src/ci/deployer/injective.ts +++ b/target_chains/cosmwasm/tools/src/ci/deployer/injective.ts @@ -37,7 +37,13 @@ export class InjectiveDeployer implements Deployer { private async signAndBroadcastMsg( msg: Msgs, - fee = DEFAULT_STD_FEE + fee: { + amount: { + amount: string; + denom: string; + }[]; + gas: string; + } = DEFAULT_STD_FEE ): Promise { const networkInfo = getNetworkInfo(this.network);