From bed44890cbf7b2f6f8b469cc6860d532cc56ebf8 Mon Sep 17 00:00:00 2001 From: Dmitriy Date: Mon, 13 May 2024 18:06:52 +0300 Subject: [PATCH] Feat fuels 0.60 (#6) * Upgrade to fuels-0.61.0 * Downgrade fuels to 0.57 * Upgrade to forc 0.56 & fuels-rs 0.60 --- Cargo.toml | 2 +- contract/Forc.lock | 38 +++++++++++++----------------- contract/Forc.toml | 5 ++-- contract/out/debug/token-abi.json | 19 ++++++++++++--- contract/out/debug/token.bin | Bin 9096 -> 66188 bytes contract/src/main.sw | 9 +++---- src/constants.rs | 2 +- src/token_utils.rs | 12 ++++------ tests/harness.rs | 4 ++-- 9 files changed, 48 insertions(+), 43 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 72f4598..8b7b7c9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ description = "Sway token standard SRC-20 rust sdk" [dependencies] dotenv = "0.15.0" -fuels = { version = "0.55.0", features = ["fuel-core-lib"] } +fuels = { version = "0.60.0", features = ["fuel-core-lib"] } rand = "0.8.5" serde = "1.0.197" serde_json = "1.0.114" diff --git a/contract/Forc.lock b/contract/Forc.lock index 380cec9..b698b31 100644 --- a/contract/Forc.lock +++ b/contract/Forc.lock @@ -1,41 +1,35 @@ -[[package]] -name = "asset" -source = "git+https://github.com/FuelLabs/sway-libs?tag=v0.19.0#dcbbec000a9051e71c0c21f4b720eebbb55c199a" -dependencies = [ - "src7", - "std", -] - [[package]] name = "core" -source = "path+from-root-566CA1D5F8BEAFBF" +source = "path+from-root-CC7184DF2EE4172B" [[package]] -name = "src20" -source = "git+https://github.com/FuelLabs/sway-standards?tag=v0.3.3#4198b4b07449ad16104cc8a0501f3013670fdcfd" +name = "standards" +source = "git+https://github.com/FuelLabs/sway-standards?tag=v0.4.1#0a6f3ba0bce036a0ce61f15ed4480c71af32d3aa" dependencies = ["std"] [[package]] -name = "src3" -source = "git+https://github.com/FuelLabs/sway-standards?tag=v0.3.3#4198b4b07449ad16104cc8a0501f3013670fdcfd" -dependencies = ["std"] - -[[package]] -name = "src7" -source = "git+https://github.com/FuelLabs/sway-standards?tag=v0.3.3#4198b4b07449ad16104cc8a0501f3013670fdcfd" +name = "standards" +source = "git+https://github.com/FuelLabs/sway-standards?tag=v0.4.3#6f63eb7dff2458a7d976184e565b5cbf26f61da2" dependencies = ["std"] [[package]] name = "std" -source = "git+https://github.com/fuellabs/sway?tag=v0.49.3#0dc6570377ee9c4a6359ade597fa27351e02a728" +source = "git+https://github.com/fuellabs/sway?rev#850a2c48ddac019aa04bf7f5c1319381edc53fea" dependencies = ["core"] +[[package]] +name = "sway_libs" +source = "git+https://github.com/FuelLabs/sway-libs?tag=v0.21.0#6a227ed34c86fe1ebd334dbdfeccf66c43e3915b" +dependencies = [ + "standards git+https://github.com/FuelLabs/sway-standards?tag=v0.4.3#6f63eb7dff2458a7d976184e565b5cbf26f61da2", + "std", +] + [[package]] name = "token" source = "member" dependencies = [ - "asset", - "src20", - "src3", + "standards git+https://github.com/FuelLabs/sway-standards?tag=v0.4.1#0a6f3ba0bce036a0ce61f15ed4480c71af32d3aa", "std", + "sway_libs", ] diff --git a/contract/Forc.toml b/contract/Forc.toml index cc880b7..6474823 100644 --- a/contract/Forc.toml +++ b/contract/Forc.toml @@ -5,6 +5,5 @@ license = "Apache-2.0" name = "token" [dependencies] -asset = { git = "https://github.com/FuelLabs/sway-libs", tag = "v0.19.0" } -src20 = { git = "https://github.com/FuelLabs/sway-standards", tag = "v0.3.3" } -src3 = { git = "https://github.com/FuelLabs/sway-standards", tag = "v0.3.3"} +sway_libs = { git = "https://github.com/FuelLabs/sway-libs", tag = "v0.21.0" } +standards = { git = "https://github.com/FuelLabs/sway-standards", tag = "v0.4.1" } diff --git a/contract/out/debug/token-abi.json b/contract/out/debug/token-abi.json index 1576f2b..b308e43 100644 --- a/contract/out/debug/token-abi.json +++ b/contract/out/debug/token-abi.json @@ -1,4 +1,5 @@ { + "encoding": "1", "types": [ { "typeId": 0, @@ -77,7 +78,7 @@ "type": "struct Address", "components": [ { - "name": "value", + "name": "bits", "type": 1, "typeArguments": null } @@ -89,7 +90,7 @@ "type": "struct AssetId", "components": [ { - "name": "value", + "name": "bits", "type": 1, "typeArguments": null } @@ -118,7 +119,7 @@ "type": "struct ContractId", "components": [ { - "name": "value", + "name": "bits", "type": 1, "typeArguments": null } @@ -321,6 +322,10 @@ "typeArguments": null }, "attributes": [ + { + "name": "payable", + "arguments": [] + }, { "name": "storage", "arguments": [ @@ -373,6 +378,14 @@ "type": 2, "typeArguments": [] } + }, + { + "logId": 1, + "loggedType": { + "name": "", + "type": 2, + "typeArguments": [] + } } ], "messagesTypes": [], diff --git a/contract/out/debug/token.bin b/contract/out/debug/token.bin index 43e4ddc83d6cacecd249b27720850f3a3bd85eb8..70987143ea2c5c7797a20361dd0e7b6bb571537c 100644 GIT binary patch literal 66188 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 Syxr1fwn?)cF>, + pub token_contract: TokenContract, } impl Asset { @@ -36,13 +36,11 @@ impl Asset { amount: u64, ) -> Result, fuels::types::errors::Error> { let symbol_hash = get_symbol_hash(&self.symbol); - self.token_contract_instance - .as_ref() - .unwrap() + self.token_contract .methods() .mint(Identity::Address(recipient), symbol_hash, amount) .append_variable_outputs(1) - .with_tx_policies(TxPolicies::default().with_gas_price(1)) + .with_tx_policies(TxPolicies::default().with_tip(1)) .call() .await } @@ -69,7 +67,7 @@ impl Asset { asset_id, decimals: config.decimals, symbol: config.symbol, - token_contract_instance: Option::Some(instance), + token_contract: instance, } } } @@ -83,7 +81,7 @@ pub async fn deploy_token_contract(wallet: &WalletUnlocked) -> TokenContract