Пост
Поделитесь своими знаниями.
Как убедиться, что deepbook v3 используется?
- Sui
Ответы
1В настоящее время вы используете устаревшую функцию DeepBook (deepbook::clob::place_limit_order
), принадлежащую более старой версии протокола. Чтобы перейти наDeepBook V3, вам необходимо обновить зависимость, Move.toml
указав на правильную версию пакета DeepBook, а также заменить старые вызовы функций новым API, совместимым с версией 3. В DeepBook V3 представлены обновленные имена модулей и функций, а это значит, что использование версии 3 — это не только обновление справочника git, но и вызов новой логики в коде Move.
Move.toml
Чтобы убедиться, что вы используете DeepBook V3, обновите зависимость следующим образом в файле:
[dependencies]
DeepBook = { git = "https://github.com/MystenLabs/deepbook-v3.git", rev = "main" }
Или, если DeepBook V3 теперь является частью основного репозитория фреймворка Sui, вам следует указать правильный подкаталог и коммит, включающий версию 3. Например:
[dependencies]
DeepBook = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/deepbook", rev = "framework/mainnet" }
После обновления зависимости запустите:
sui move build
Затем в модуле Move замените устаревшие вызовы, например, deepbook::clob::place_limit_order
обновленной функцией DeepBook V3. Последние названия функций и шаблоны использования вы найдете в репозитории DeepBook на GitHub или в репозитории фреймворка Sui.
Всегда проверяйте наличие обновленных определений структур или новых шаблонов транзакций. При необходимости используйте такой блок транзакций для вызова обновленной функции во внешнем интерфейсе:
const tx = new TransactionBlock();
tx.moveCall({
target: '0xDeepBookPackage::v3_module::place_limit_order_v3',
arguments: [
tx.object('0xPool'),
tx.pure(1000), // price
tx.pure(50), // quantity
tx.pure(true), // is_bid
tx.pure(expiryTime), // expiration
tx.pure(0), // restriction
tx.object('0xClock'), // clock reference
],
});
Проверьте последние документы DeepBook или исходный код, чтобы проверить типы аргументов и имена целевых функций. Чтобы получать дальнейшие обновления, посетите https://docs.sui.io или отслеживайте проблемы и обновления в репозитории DeepBook.
Знаете ответ?
Пожалуйста, войдите в систему и поделитесь им.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Заработай свою долю из 1000 Sui
Зарабатывай очки репутации и получай награды за помощь в развитии сообщества Sui.

- ... SUIMeaning.Sui+22
- ... SUI0xduckmove+17
- ... SUIfomo on Sui+16
- ... SUIMoonBags+11
- ... SUIHaGiang+10
- ... SUI
- ... SUI
- Почему BCS требует точного порядка полей для десериализации, когда структуры Move содержат именованные поля?53
- «Ошибки проверки нескольких источников» в публикациях модуля Sui Move — автоматическое устранение ошибок43
- Сбой транзакции Sui: объекты, зарезервированные для другой транзакции25
- Как ограничения возможностей взаимодействуют с динамическими полями в гетерогенных коллекциях?05