Beitrag
Teile dein Wissen.
Wie stelle ich sicher, dass Deepbook v3 verwendet wird?
- Sui
Antworten
1Sie verwenden derzeit eine veraltete DeepBook-Funktion (deepbook::clob::place_limit_order
), die zu einer älteren Version des Protokolls gehört. Um zuDeepBook V3zu wechseln, müssen Sie Ihre Abhängigkeit so aktualisieren, dass sie auf Move.toml
die richtige Version des DeepBook-Pakets verweist. Außerdem müssen Sie alle alten Funktionsaufrufen durch die neue V3-kompatible API ersetzen. DeepBook V3 führt aktualisierte Module und Funktionsnamen ein, was bedeutet, dass es bei der Verwendung von V3 nicht nur darum geht, die Git-Referenz zu aktualisieren, sondern auch darum, die neuere Logik in Ihrem Move-Code aufzurufen.
Move.toml
Um sicherzustellen, dass du DeepBook V3 verwendest, aktualisiere deine Abhängigkeit wie folgt in deiner Datei:
[dependencies]
DeepBook = { git = "https://github.com/MystenLabs/deepbook-v3.git", rev = "main" }
Oder, wenn DeepBook V3 jetzt Teil des Haupt-Sui-Framework-Repos ist, sollten Sie auf das richtige Unterverzeichnis verweisen und ein Commit durchführen, das V3 enthält. Zum Beispiel:
[dependencies]
DeepBook = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/deepbook", rev = "framework/mainnet" }
Führen Sie nach dem Aktualisieren der Abhängigkeit Folgendes aus:
sui move build
Ersetzen Sie dann in Ihrem Move-Modul veraltete Aufrufe wie deepbook::clob::place_limit_order
durch die aktualisierte Funktion von DeepBook V3. Die neuesten Funktionsnamen und Nutzungsmuster finden Sie im DeepBook GitHub-Repository oder im Sui Framework Repo.
Suchen Sie immer nach aktualisierten Strukturdefinitionen oder neuen Transaktionsmustern. Verwenden Sie bei Bedarf einen Transaktionsblock wie diesen, um die aktualisierte Funktion in Ihrem Frontend aufzurufen:
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
],
});
Überprüfen Sie die neuesten DeepBook-Dokumente oder -Quellen, um die Argumenttypen und Zielfunktionsnamen zu überprüfen. Weitere Updates finden Sie unter https://docs.sui.io oder verfolgen Sie Probleme und Updates im DeepBook-Repo.
Weißt du die Antwort?
Bitte melde dich an und teile sie.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Verdiene deinen Anteil an 1000 Sui
Sammle Reputationspunkte und erhalte Belohnungen für deine Hilfe beim Wachstum der Sui-Community.
- Warum benötigt BCS eine genaue Feldreihenfolge für die Deserialisierung, wenn Move-Strukturen benannte Felder haben?53
- Fehler bei der Überprüfung mehrerer Quellen“ in den Veröffentlichungen des Sui Move-Moduls — Automatisierte Fehlerbehebung43
- Sui-Transaktion schlägt fehl: Objekte sind für eine andere Transaktion reserviert25
- Wie interagieren Fähigkeitsbeschränkungen mit dynamischen Feldern in heterogenen Sammlungen?05