Пост
Поделитесь своими знаниями.
How to handle function signature changes in SUI Move Package
I'm working on a SUI Move package and encountered an error when I tried to change a function signature. The error message is 'PackageUpgradeError { upgrade_error: IncompatibleUpgrade }'. How can I upgrade the package with the new function signature without causing errors?
- Move CLI
Ответы
1Нельзя вносить изменения в сигнатуры функций непосредственно при обновлении пакета SUI Move. Вместо этого можно добавить новую функцию с нужной подписью и логикой, но удалить старую функцию нельзя. Удаление или изменение существующих сигнатур функций в обновлениях не поддерживается, так как это может нарушить совместимость с существующими пакетами или данными, зависящими от старых определений функций. Полезным решением является создание вспомогательной функции или оболочки, включающей новые функции. Дополнительные сведения см. в официальной документации по обновлениям пакетов SUI Move: https://docs.sui.io/concepts/sui-move-concepts/packages/upgrade#upgrade-requirements
Знаете ответ?
Пожалуйста, войдите в систему и поделитесь им.
Move is an executable bytecode language used to implement custom transactions and smart contracts.