Skip to content

Commit

Permalink
chore(sui): replace array versions with a mapping of version number t…
Browse files Browse the repository at this point in the history
…o package id (#496)

Co-authored-by: Blockchain Guy <[email protected]>
  • Loading branch information
npty and blockchainguyy authored Jan 24, 2025
1 parent d7e8dee commit 233a70f
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 9 deletions.
4 changes: 3 additions & 1 deletion sui/deploy-contract.js
Original file line number Diff line number Diff line change
Expand Up @@ -315,7 +315,9 @@ async function deploy(keypair, client, supportedContract, config, chain, options
// Update chain configuration with deployed contract address
chain.contracts[packageName] = {
address: published.packageId,
versions: [published.packageId],
versions: {
0: published.packageId,
},
};

chain.contracts[packageName].structs = await getStructs(client, published.packageId);
Expand Down
6 changes: 4 additions & 2 deletions sui/utils/upgrade-utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,11 @@ async function upgradePackage(client, keypair, packageToUpgrade, contractConfig,
},
});

const packageId = (result.objectChanges?.filter((a) => a.type === 'published') ?? [])[0].packageId;
const publishedObject = result.objectChanges.find((change) => change.type === 'published');
const packageId = publishedObject.packageId;
contractConfig.address = packageId;
contractConfig.versions.push(packageId);
const versionNumber = parseInt(publishedObject.version) - 1;
contractConfig.versions[versionNumber] = publishedObject.packageId;
const [upgradeCap] = getObjectIdsByObjectTypes(result, [`${suiPackageAddress}::package::UpgradeCap`]);
contractConfig.objects.UpgradeCap = upgradeCap;

Expand Down
11 changes: 5 additions & 6 deletions sui/utils/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -93,14 +93,13 @@ const checkSuiVersionMatch = () => {
}
};

const readMoveToml = (moveDir) => {
return fs.readFileSync(`${__dirname}/../../node_modules/@axelar-network/axelar-cgp-sui/move/${moveDir}/Move.toml`, 'utf8');
};

const readMovePackageName = (moveDir) => {
try {
const moveToml = fs.readFileSync(
`${__dirname}/../../node_modules/@axelar-network/axelar-cgp-sui/move/${moveDir}/Move.toml`,
'utf8',
);

const { package: movePackage } = toml.parse(moveToml);
const { package: movePackage } = toml.parse(readMoveToml(moveDir));

return movePackage.name;
} catch (err) {
Expand Down

0 comments on commit 233a70f

Please sign in to comment.