diff --git a/mover/imdia/code/task1/Move.lock b/mover/imdia/code/task1/Move.lock new file mode 100644 index 000000000..527bd6edd --- /dev/null +++ b/mover/imdia/code/task1/Move.lock @@ -0,0 +1,34 @@ +# @generated by Move, please check-in and do not edit manually. + +[move] +version = 2 +manifest_digest = "2E267C18D553336099CDD31F7063857679825E46CD06EC67CC7F7FB0C20317C1" +deps_digest = "F8BBB0CCB2491CA29A3DF03D6F92277A4F3574266507ACD77214D37ECA3F3082" +dependencies = [ + { name = "Sui" }, +] + +[[move.package]] +name = "MoveStdlib" +source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/move-stdlib" } + +[[move.package]] +name = "Sui" +source = { git = "https://github.com/MystenLabs/sui.git", rev = "framework/testnet", subdir = "crates/sui-framework/packages/sui-framework" } + +dependencies = [ + { name = "MoveStdlib" }, +] + +[move.toolchain-version] +compiler-version = "1.28.4" +edition = "2024.beta" +flavor = "sui" + +[env] + +[env.testnet] +chain-id = "4c78adac" +original-published-id = "0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1" +latest-published-id = "0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1" +published-version = "1" diff --git a/mover/imdia/code/task1/Move.toml b/mover/imdia/code/task1/Move.toml new file mode 100644 index 000000000..e75e497eb --- /dev/null +++ b/mover/imdia/code/task1/Move.toml @@ -0,0 +1,37 @@ +[package] +name = "task1" +edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move +# license = "" # e.g., "MIT", "GPL", "Apache 2.0" +# authors = ["..."] # e.g., ["Joe Smith (joesmith@noemail.com)", "John Snow (johnsnow@noemail.com)"] + +[dependencies] +Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet" } + +# For remote import, use the `{ git = "...", subdir = "...", rev = "..." }`. +# Revision can be a branch, a tag, and a commit hash. +# MyRemotePackage = { git = "https://some.remote/host.git", subdir = "remote/path", rev = "main" } + +# For local dependencies use `local = path`. Path is relative to the package root +# Local = { local = "../path/to" } + +# To resolve a version conflict and force a specific version for dependency +# override use `override = true` +# Override = { local = "../conflicting/version", override = true } + +[addresses] +task1 = "0x0" + +# Named addresses will be accessible in Move as `@name`. They're also exported: +# for example, `std = "0x1"` is exported by the Standard Library. +# alice = "0xA11CE" + +[dev-dependencies] +# The dev-dependencies section allows overriding dependencies for `--test` and +# `--dev` modes. You can introduce test-only dependencies here. +# Local = { local = "../path/to/dev-build" } + +[dev-addresses] +# The dev-addresses section allows overwriting named addresses for the `--test` +# and `--dev` modes. +# alice = "0xB0B" + diff --git a/mover/imdia/code/task1/output.log b/mover/imdia/code/task1/output.log new file mode 100644 index 000000000..f66e24e60 --- /dev/null +++ b/mover/imdia/code/task1/output.log @@ -0,0 +1,143 @@ +Transaction Digest: EB4mqcWgSm6Qcfa85fvbAZuC7WLBvRQTFoiuXva6NDnk +╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ +│ Transaction Data │ +├──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Sender: 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc │ +│ Gas Owner: 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc │ +│ Gas Budget: 100000000 MIST │ +│ Gas Price: 1000 MIST │ +│ Gas Payment: │ +│ ┌── │ +│ │ ID: 0xb2f98213f4f3440aaffd10ef552220d7f69cc1518542f60eae0e694ebcd9b924 │ +│ │ Version: 1471191 │ +│ │ Digest: 9igNKGZkpFvx9qmMuuYvuFVTMCg9QurARAQ9aXhnMfxN │ +│ └── │ +│ │ +│ Transaction Kind: Programmable │ +│ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ +│ │ Input Objects │ │ +│ ├──────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ +│ │ 0 Pure Arg: Type: address, Value: "0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc" │ │ +│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │ +│ ╭─────────────────────────────────────────────────────────────────────────╮ │ +│ │ Commands │ │ +│ ├─────────────────────────────────────────────────────────────────────────┤ │ +│ │ 0 Publish: │ │ +│ │ ┌ │ │ +│ │ │ Dependencies: │ │ +│ │ │ 0x0000000000000000000000000000000000000000000000000000000000000001 │ │ +│ │ │ 0x0000000000000000000000000000000000000000000000000000000000000002 │ │ +│ │ └ │ │ +│ │ │ │ +│ │ 1 TransferObjects: │ │ +│ │ ┌ │ │ +│ │ │ Arguments: │ │ +│ │ │ Result 0 │ │ +│ │ │ Address: Input 0 │ │ +│ │ └ │ │ +│ ╰─────────────────────────────────────────────────────────────────────────╯ │ +│ │ +│ Signatures: │ +│ sLK3tKgn6lfBnjD6aFglB0EWtHuCXZCj7zKX/kfzoQIDRZz3AbnRkFgvJWLzqe2vISv0CW1X+865eMylMhL3Cg== │ +│ │ +╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭───────────────────────────────────────────────────────────────────────────────────────────────────╮ +│ Transaction Effects │ +├───────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Digest: EB4mqcWgSm6Qcfa85fvbAZuC7WLBvRQTFoiuXva6NDnk │ +│ Status: Success │ +│ Executed Epoch: 439 │ +│ │ +│ Created Objects: │ +│ ┌── │ +│ │ ID: 0x8d2dbba89dfe7e0af19b83e2ee97f5570ef4c81bebaeb76f914c0b5b071ac3c9 │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ Version: 1471192 │ +│ │ Digest: 2FAidTqWT8QcuCGb6yhGcbrUVCsr982ngXFNeXzKq9h7 │ +│ └── │ +│ ┌── │ +│ │ ID: 0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1 │ +│ │ Owner: Immutable │ +│ │ Version: 1 │ +│ │ Digest: HVoH1Ux2ffiGU4VTp2V7brcoJPYuM8x3s1BPQz5tQ1TC │ +│ └── │ +│ ┌── │ +│ │ ID: 0xf87409486065d6c21a5da84402bb038430164fec8b0365fc34af817be03f6568 │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ Version: 1471192 │ +│ │ Digest: 6Sn9zkucRAZh2yd5VNgcxZP2wvgLr2Q3XSwp9NniH5R2 │ +│ └── │ +│ Mutated Objects: │ +│ ┌── │ +│ │ ID: 0xb2f98213f4f3440aaffd10ef552220d7f69cc1518542f60eae0e694ebcd9b924 │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ Version: 1471192 │ +│ │ Digest: F7oAAVjPfbqsC28YkvCbDYoNWqPZxbjAHAcnbrJaFwk7 │ +│ └── │ +│ Gas Object: │ +│ ┌── │ +│ │ ID: 0xb2f98213f4f3440aaffd10ef552220d7f69cc1518542f60eae0e694ebcd9b924 │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ Version: 1471192 │ +│ │ Digest: F7oAAVjPfbqsC28YkvCbDYoNWqPZxbjAHAcnbrJaFwk7 │ +│ └── │ +│ Gas Cost Summary: │ +│ Storage Cost: 8785600 MIST │ +│ Computation Cost: 1000000 MIST │ +│ Storage Rebate: 978120 MIST │ +│ Non-refundable Storage Fee: 9880 MIST │ +│ │ +│ Transaction Dependencies: │ +│ 58LAir5DDFJ97j7M9gfgw6WCtvcSZFPBhndS4TH8Ck6M │ +│ HWaUuemDR4XMdUow7zgCohGMfuhqxqrnimLv7utXtjmg │ +╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─────────────────────────────╮ +│ No transaction block events │ +╰─────────────────────────────╯ + +╭──────────────────────────────────────────────────────────────────────────────────────────────────╮ +│ Object Changes │ +├──────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ Created Objects: │ +│ ┌── │ +│ │ ObjectID: 0x8d2dbba89dfe7e0af19b83e2ee97f5570ef4c81bebaeb76f914c0b5b071ac3c9 │ +│ │ Sender: 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ ObjectType: 0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1::hello::Hello │ +│ │ Version: 1471192 │ +│ │ Digest: 2FAidTqWT8QcuCGb6yhGcbrUVCsr982ngXFNeXzKq9h7 │ +│ └── │ +│ ┌── │ +│ │ ObjectID: 0xf87409486065d6c21a5da84402bb038430164fec8b0365fc34af817be03f6568 │ +│ │ Sender: 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ ObjectType: 0x2::package::UpgradeCap │ +│ │ Version: 1471192 │ +│ │ Digest: 6Sn9zkucRAZh2yd5VNgcxZP2wvgLr2Q3XSwp9NniH5R2 │ +│ └── │ +│ Mutated Objects: │ +│ ┌── │ +│ │ ObjectID: 0xb2f98213f4f3440aaffd10ef552220d7f69cc1518542f60eae0e694ebcd9b924 │ +│ │ Sender: 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ ObjectType: 0x2::coin::Coin<0x2::sui::SUI> │ +│ │ Version: 1471192 │ +│ │ Digest: F7oAAVjPfbqsC28YkvCbDYoNWqPZxbjAHAcnbrJaFwk7 │ +│ └── │ +│ Published Objects: │ +│ ┌── │ +│ │ PackageID: 0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1 │ +│ │ Version: 1 │ +│ │ Digest: HVoH1Ux2ffiGU4VTp2V7brcoJPYuM8x3s1BPQz5tQ1TC │ +│ │ Modules: hello │ +│ └── │ +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭───────────────────────────────────────────────────────────────────────────────────────────────────╮ +│ Balance Changes │ +├───────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ ┌── │ +│ │ Owner: Account Address ( 0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc ) │ +│ │ CoinType: 0x2::sui::SUI │ +│ │ Amount: -8807480 │ +│ └── │ +╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ diff --git a/mover/imdia/code/task1/sources/task1.move b/mover/imdia/code/task1/sources/task1.move new file mode 100644 index 000000000..b9bbcf417 --- /dev/null +++ b/mover/imdia/code/task1/sources/task1.move @@ -0,0 +1,19 @@ +/// Module: task1 +module task1::hello { + use std::ascii::{String, string}; + use sui::transfer::transfer; + use sui::tx_context::{sender}; + + public struct Hello has key { + id: UID, + say: String, + } + + fun init(ctx: &mut TxContext) { + let hello_move = Hello { + id: object::new(ctx), + say: string(b"imdia"), + }; + transfer(hello_move, sender(ctx)); + } +} diff --git a/mover/imdia/images/suiscan_imdia.png b/mover/imdia/images/suiscan_imdia.png new file mode 100644 index 000000000..aeec7e322 Binary files /dev/null and b/mover/imdia/images/suiscan_imdia.png differ diff --git a/mover/imdia/images/suiwallet_imdia.png b/mover/imdia/images/suiwallet_imdia.png new file mode 100644 index 000000000..ff6279cd8 Binary files /dev/null and b/mover/imdia/images/suiwallet_imdia.png differ diff --git a/mover/imdia/readme.md b/mover/imdia/readme.md new file mode 100644 index 000000000..f89a71c57 --- /dev/null +++ b/mover/imdia/readme.md @@ -0,0 +1,18 @@ +## 基本信息 +- Sui钱包地址: `0x78444b9e42a6f9bd2544e80656270bfba227d3238154bcded245192a362683bc` +> 首次参与需要完成第一个任务注册好钱包地址才被合并,并且后续学习奖励会打入这个地址 +- github: `imdia` + +## 个人简介 +- 工作经验: 1年 +- 技术栈: `Rust` `nodejs` `tailwindcss` `react` +- 多年web2开发经验,对Move特别感兴趣,想通过Move入门区块链 +- 联系方式: tg: `@Y8XwQ42qVvUxZGVh` + +## 任务 + +## 01 hello move +- [x] Sui cli version: sui 1.28.4-fc0623927416 +- [x] Sui钱包截图: ![Sui钱包截图](./images/suiwallet_imdia.png) +- [x] package id: 0xa4321e15d5b64ed525781b8be865f0ba8f4d3d3bdd1846a006bd8925509dbcb1 +- [x] package id 在 scan上的查看截图:![Scan截图](./images/suiscan_imdia.png)