diff --git a/Cargo.lock b/Cargo.lock index dcb9839a..cc839c63 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2601,14 +2601,6 @@ dependencies = [ "serde_yaml", ] -[[package]] -name = "enum-compat-util" -version = "0.1.0" -source = "git+https://github.com/mystenlabs/sui?rev=42ba6c0#42ba6c03128233cdeb3fc6e0a22dabd0bfc55385" -dependencies = [ - "serde_yaml", -] - [[package]] name = "enum_dispatch" version = "0.3.13" @@ -2734,57 +2726,6 @@ dependencies = [ "ascii_utils", ] -[[package]] -name = "fastcrypto" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e06674cac3bf7ec9a951971285e6051a45273dc4e265cca27c02a0d4ebcb46f8" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-secp256r1", - "ark-serialize", - "auto_ops", - "base64ct", - "bech32", - "bincode", - "blake2", - "blst", - "bs58 0.4.0", - "curve25519-dalek-ng", - "derive_more 0.99.19", - "digest 0.10.7", - "ecdsa 0.16.9", - "ed25519-consensus", - "elliptic-curve 0.13.8", - "fastcrypto-derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "generic-array", - "hex", - "hex-literal", - "hkdf", - "lazy_static", - "num-bigint 0.4.6", - "once_cell", - "p256", - "rand 0.8.5", - "readonly", - "rfc6979 0.4.0", - "rsa 0.8.2", - "schemars", - "secp256k1", - "serde", - "serde_json", - "serde_with", - "sha2 0.10.8", - "sha3", - "signature 2.2.0", - "static_assertions", - "thiserror 1.0.69", - "tokio", - "typenum", - "zeroize", -] - [[package]] name = "fastcrypto" version = "0.1.9" @@ -2891,18 +2832,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "fastcrypto-derive" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c0c2af2157f416cb885e11d36cd0de2753f6d5384752d364075c835f5f8f891" -dependencies = [ - "convert_case 0.6.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "fastcrypto-derive" version = "0.1.3" @@ -4838,51 +4767,16 @@ version = "0.0.3" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "anyhow", - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "enum-compat-util", "indexmap 2.8.0", "move-abstract-interpreter", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-proc-macros 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "ref-cast", - "serde", - "variant_count", -] - -[[package]] -name = "move-binary-format" -version = "0.0.3" -source = "git+https://github.com/mystenlabs/sui?rev=42ba6c0#42ba6c03128233cdeb3fc6e0a22dabd0bfc55385" -dependencies = [ - "anyhow", - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "move-proc-macros 0.1.0 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", + "move-core-types", + "move-proc-macros", "ref-cast", "serde", "variant_count", ] -[[package]] -name = "move-binding-derive" -version = "0.1.0" -source = "git+https://github.com/MystenLabs/move-binding.git?rev=99f68a28c2f19be40a09e5f1281af748df9a8d3e#99f68a28c2f19be40a09e5f1281af748df9a8d3e" -dependencies = [ - "bcs", - "fastcrypto 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "itertools 0.14.0", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "move-types", - "proc-macro2", - "quote", - "reqwest", - "serde", - "serde_json", - "sui-sdk-types 0.0.2", - "sui-transaction-builder 0.1.0", - "syn 2.0.100", -] - [[package]] name = "move-borrow-graph" version = "0.0.1" @@ -4895,9 +4789,9 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "anyhow", "bcs", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-types", "move-symbol-pool", "serde", @@ -4911,8 +4805,8 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "anyhow", "indexmap 2.8.0", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "petgraph 0.8.2", "serde-reflection", ] @@ -4924,10 +4818,10 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "move-abstract-interpreter", "move-abstract-stack", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-borrow-graph", "move-bytecode-verifier-meter", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-vm-config", "petgraph 0.8.2", ] @@ -4937,8 +4831,8 @@ name = "move-bytecode-verifier-meter" version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "move-vm-config", ] @@ -4953,8 +4847,8 @@ dependencies = [ "dirs-next", "hex", "insta", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "once_cell", "packed_struct", "serde", @@ -4977,15 +4871,15 @@ dependencies = [ "insta", "lsp-types 0.95.1", "move-abstract-interpreter", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-borrow-graph", "move-bytecode-source-map", "move-bytecode-verifier", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-to-bytecode", "move-ir-types", - "move-proc-macros 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-proc-macros", "move-symbol-pool", "once_cell", "petgraph 0.8.2", @@ -5006,36 +4900,12 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "anyhow", "bcs", - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "enum-compat-util", "ethnum", "hex", "indexmap 2.8.0", "leb128", - "move-proc-macros 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "num", - "once_cell", - "primitive-types", - "rand 0.8.5", - "ref-cast", - "serde", - "serde_bytes", - "serde_with", - "thiserror 1.0.69", - "uint", -] - -[[package]] -name = "move-core-types" -version = "0.0.4" -source = "git+https://github.com/mystenlabs/sui?rev=42ba6c0#42ba6c03128233cdeb3fc6e0a22dabd0bfc55385" -dependencies = [ - "anyhow", - "bcs", - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "ethnum", - "hex", - "leb128", - "move-proc-macros 0.1.0 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", + "move-proc-macros", "num", "once_cell", "primitive-types", @@ -5061,12 +4931,12 @@ dependencies = [ "indexmap 2.8.0", "lcov", "move-abstract-interpreter", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-source-map", "move-bytecode-verifier", "move-command-line-common", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-types", "move-trace-format", "petgraph 0.8.2", @@ -5084,11 +4954,11 @@ dependencies = [ "hex", "inline_colorization", "move-abstract-interpreter", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-source-map", "move-command-line-common", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-coverage", "move-ir-types", "move-symbol-pool", @@ -5105,9 +4975,9 @@ dependencies = [ "codespan-reporting", "itertools 0.10.5", "log", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-types", "move-model-2", "move-symbol-pool", @@ -5125,10 +4995,10 @@ dependencies = [ "anyhow", "codespan-reporting", "log", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-source-map", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-to-bytecode-syntax", "move-ir-types", "move-symbol-pool", @@ -5143,7 +5013,7 @@ dependencies = [ "anyhow", "hex", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-types", "move-symbol-pool", ] @@ -5155,7 +5025,7 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "hex", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-symbol-pool", "once_cell", "serde", @@ -5171,11 +5041,11 @@ dependencies = [ "codespan", "codespan-reporting", "indexmap 2.8.0", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-source-map", "move-command-line-common", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-disassembler", "move-ir-types", "move-symbol-pool", @@ -5194,12 +5064,12 @@ dependencies = [ "colored", "dunce", "itertools 0.10.5", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-source-map", "move-bytecode-utils", "move-command-line-common", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-disassembler", "move-docgen", "move-model-2", @@ -5225,17 +5095,7 @@ name = "move-proc-macros" version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "quote", - "syn 2.0.100", -] - -[[package]] -name = "move-proc-macros" -version = "0.1.0" -source = "git+https://github.com/mystenlabs/sui?rev=42ba6c0#42ba6c03128233cdeb3fc6e0a22dabd0bfc55385" -dependencies = [ - "enum-compat-util 0.1.0 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", + "enum-compat-util", "quote", "syn 2.0.100", ] @@ -5255,31 +5115,19 @@ name = "move-trace-format" version = "0.0.1" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "serde", "serde_json", "zstd 0.13.3", ] -[[package]] -name = "move-types" -version = "0.1.0" -source = "git+https://github.com/MystenLabs/move-binding.git?rev=99f68a28c2f19be40a09e5f1281af748df9a8d3e#99f68a28c2f19be40a09e5f1281af748df9a8d3e" -dependencies = [ - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=42ba6c0)", - "primitive-types", - "serde", - "sui-sdk-types 0.0.2", - "sui-transaction-builder 0.1.0", -] - [[package]] name = "move-vm-config" version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "once_cell", ] @@ -5302,8 +5150,8 @@ version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "anyhow", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "move-vm-profiler", "move-vm-types", "once_cell", @@ -5316,8 +5164,8 @@ version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "bcs", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "move-vm-profiler", "serde", "smallvec", @@ -5450,7 +5298,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "sui-sdk-types 0.0.2", + "sui-sdk-types 0.0.7 (git+https://github.com/mystenlabs/sui-rust-sdk?rev=048124e484f14b9bf2a402227c9bc255c7621bc1)", "tempfile", "thiserror 2.0.17", "tokio", @@ -5474,8 +5322,8 @@ dependencies = [ "diesel-async", "futures", "insta", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "mvr-schema", "mvr-types", "prometheus", @@ -5486,7 +5334,7 @@ dependencies = [ "sui-move-build", "sui-package-resolver", "sui-pg-db", - "sui-sdk-types 0.0.2", + "sui-sdk-types 0.0.7 (git+https://github.com/mystenlabs/sui-rust-sdk?rev=048124e484f14b9bf2a402227c9bc255c7621bc1)", "sui-types", "telemetry-subscribers", "thiserror 2.0.17", @@ -5512,10 +5360,8 @@ dependencies = [ "futures", "insta", "itertools 0.14.0", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-binding-derive", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-types", + "move-binary-format", + "move-core-types", "mvr-schema", "mvr-types", "prometheus", @@ -5527,9 +5373,8 @@ dependencies = [ "sui-indexer-alt-metrics", "sui-pg-db", "sui-rpc-api", - "sui-sdk-types 0.0.2", + "sui-sdk-types 0.0.5", "sui-storage", - "sui-transaction-builder 0.1.0", "sui-types", "telemetry-subscribers", "tokio", @@ -5558,7 +5403,7 @@ dependencies = [ "once_cell", "regex", "serde", - "sui-sdk-types 0.0.2", + "sui-sdk-types 0.0.7 (git+https://github.com/mystenlabs/sui-rust-sdk?rev=048124e484f14b9bf2a402227c9bc255c7621bc1)", "thiserror 2.0.17", ] @@ -8649,7 +8494,7 @@ dependencies = [ "serde_json", "sha2 0.10.8", "signature 2.2.0", - "sui-sdk-types 0.0.7", + "sui-sdk-types 0.0.7 (git+https://github.com/MystenLabs/sui-rust-sdk.git?rev=8eee97380cac1a1899d3cca427bde7ac906abdb9)", ] [[package]] @@ -8683,8 +8528,8 @@ version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "bcs", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "once_cell", "serde", "sui-types", @@ -8800,9 +8645,9 @@ dependencies = [ "anyhow", "bcs", "fastcrypto 0.1.9 (git+https://github.com/MystenLabs/fastcrypto?rev=204cd95e5a9f9a0d3d09c3c236dc5b2263c73fd3)", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "schemars", "serde", "serde_json", @@ -8841,10 +8686,10 @@ dependencies = [ "fastcrypto 0.1.9 (git+https://github.com/MystenLabs/fastcrypto?rev=204cd95e5a9f9a0d3d09c3c236dc5b2263c73fd3)", "itertools 0.13.0", "json_to_table", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-disassembler", "move-ir-types", "mysten-metrics", @@ -8906,12 +8751,12 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "anyhow", "fastcrypto 0.1.9 (git+https://github.com/MystenLabs/fastcrypto?rev=204cd95e5a9f9a0d3d09c3c236dc5b2263c73fd3)", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", "move-bytecode-verifier", "move-command-line-common", "move-compiler", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-ir-types", "move-package", "move-symbol-pool", @@ -8930,7 +8775,7 @@ version = "1.57.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "bcs", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "serde", "sui-types", "thiserror 1.0.69", @@ -8967,7 +8812,7 @@ version = "1.57.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "anyhow", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-package", "move-symbol-pool", "sui-framework-snapshot", @@ -8988,9 +8833,9 @@ dependencies = [ "bcs", "eyre", "lru 0.10.1", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-command-line-common", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "serde", "sui-types", "thiserror 1.0.69", @@ -9045,7 +8890,7 @@ source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067b dependencies = [ "clap", "fastcrypto 0.1.9 (git+https://github.com/MystenLabs/fastcrypto?rev=204cd95e5a9f9a0d3d09c3c236dc5b2263c73fd3)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-vm-config", "schemars", "serde", @@ -9079,7 +8924,7 @@ dependencies = [ "prost-types", "serde", "serde_json", - "sui-sdk-types 0.0.7", + "sui-sdk-types 0.0.7 (git+https://github.com/MystenLabs/sui-rust-sdk.git?rev=8eee97380cac1a1899d3cca427bde7ac906abdb9)", "tap", "tokio", "tonic 0.13.1", @@ -9101,8 +8946,8 @@ dependencies = [ "http", "itertools 0.13.0", "mime", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "mysten-network", "prometheus", "prost", @@ -9118,7 +8963,7 @@ dependencies = [ "sui-package-resolver", "sui-protocol-config", "sui-rpc", - "sui-sdk-types 0.0.7", + "sui-sdk-types 0.0.7 (git+https://github.com/MystenLabs/sui-rust-sdk.git?rev=8eee97380cac1a1899d3cca427bde7ac906abdb9)", "sui-types", "tap", "thiserror 1.0.69", @@ -9148,7 +8993,7 @@ dependencies = [ "futures", "futures-core", "jsonrpsee", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "reqwest", "serde", "serde_json", @@ -9159,7 +9004,7 @@ dependencies = [ "sui-json-rpc-api", "sui-json-rpc-types", "sui-keys", - "sui-transaction-builder 0.0.0", + "sui-transaction-builder", "sui-types", "thiserror 1.0.69", "tokio", @@ -9168,21 +9013,41 @@ dependencies = [ [[package]] name = "sui-sdk-types" -version = "0.0.2" -source = "git+https://github.com/mystenlabs/sui-rust-sdk?rev=86a9e06#86a9e06cde84671e96e776d926a85fc1f229314d" +version = "0.0.5" +source = "git+https://github.com/mystenlabs/sui-rust-sdk?rev=f0c8068#f0c8068f83475a14e10da5a27516e8ac8ac935b2" dependencies = [ "base64ct", "bcs", - "blake2", "bnum", "bs58 0.5.1", "hex", + "itertools 0.13.0", "roaring", "serde", "serde_derive", "serde_json", "serde_with", - "winnow 0.6.26", + "winnow", +] + +[[package]] +name = "sui-sdk-types" +version = "0.0.7" +source = "git+https://github.com/mystenlabs/sui-rust-sdk?rev=048124e484f14b9bf2a402227c9bc255c7621bc1#048124e484f14b9bf2a402227c9bc255c7621bc1" +dependencies = [ + "base64ct", + "bcs", + "bnum", + "bs58 0.5.1", + "bytes", + "bytestring", + "itertools 0.13.0", + "roaring", + "serde", + "serde_derive", + "serde_json", + "serde_with", + "winnow", ] [[package]] @@ -9203,7 +9068,7 @@ dependencies = [ "serde_derive", "serde_json", "serde_with", - "winnow 0.7.3", + "winnow", ] [[package]] @@ -9240,9 +9105,9 @@ dependencies = [ "itertools 0.13.0", "lru 0.10.1", "moka", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "mysten-metrics", "num_enum", "object_store", @@ -9275,28 +9140,14 @@ dependencies = [ "async-trait", "bcs", "futures", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", + "move-core-types", "sui-json", "sui-json-rpc-types", "sui-protocol-config", "sui-types", ] -[[package]] -name = "sui-transaction-builder" -version = "0.1.0" -source = "git+https://github.com/mystenlabs/sui-rust-sdk?rev=86a9e06#86a9e06cde84671e96e776d926a85fc1f229314d" -dependencies = [ - "base64ct", - "bcs", - "serde", - "serde_json", - "serde_with", - "sui-sdk-types 0.0.2", - "thiserror 2.0.17", -] - [[package]] name = "sui-types" version = "0.1.0" @@ -9325,9 +9176,9 @@ dependencies = [ "indexmap 2.8.0", "itertools 0.13.0", "lru 0.10.1", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-trace-format", "move-vm-profiler", "move-vm-test-utils", @@ -9364,7 +9215,7 @@ dependencies = [ "sui-macros", "sui-protocol-config", "sui-rpc", - "sui-sdk-types 0.0.7", + "sui-sdk-types 0.0.7 (git+https://github.com/MystenLabs/sui-rust-sdk.git?rev=8eee97380cac1a1899d3cca427bde7ac906abdb9)", "tap", "thiserror 1.0.69", "tonic 0.13.1", @@ -9379,11 +9230,11 @@ version = "0.1.0" source = "git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62#3b96ab72dd5db2fb800837d6067bf45839178b62" dependencies = [ "move-abstract-stack", - "move-binary-format 0.0.3 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-binary-format", "move-bytecode-utils", "move-bytecode-verifier", "move-bytecode-verifier-meter", - "move-core-types 0.0.4 (git+https://github.com/mystenlabs/sui?rev=3b96ab72dd5db2fb800837d6067bf45839178b62)", + "move-core-types", "move-vm-config", "sui-protocol-config", "sui-types", @@ -9934,7 +9785,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.7.3", + "winnow", ] [[package]] @@ -11211,15 +11062,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" -[[package]] -name = "winnow" -version = "0.6.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28" -dependencies = [ - "memchr", -] - [[package]] name = "winnow" version = "0.7.3" diff --git a/Cargo.toml b/Cargo.toml index abeff209..893f6d5d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,5 +48,6 @@ sui-storage = { git = "https://github.com/MystenLabs/sui.git", rev = "3b96ab72dd sui-field-count = { git = "https://github.com/MystenLabs/sui.git", rev = "3b96ab72dd5db2fb800837d6067bf45839178b62"} # New Rust SDK -sui-sdk-types = { git = "https://github.com/mystenlabs/sui-rust-sdk", package = "sui-sdk-types", rev="86a9e06"} +sui-sdk-types = { git = "https://github.com/mystenlabs/sui-rust-sdk", package = "sui-sdk-types", rev="048124e484f14b9bf2a402227c9bc255c7621bc1"} + insta = "1.43.2" diff --git a/crates/ci-tests/tests/snapshots/use_case_tester__cmd-mvr_search_@testingafreeclaim__upgraded.snap b/crates/ci-tests/tests/snapshots/use_case_tester__cmd-mvr_search_@testingafreeclaim__upgraded.snap index 574d6882..72a45cd1 100644 --- a/crates/ci-tests/tests/snapshots/use_case_tester__cmd-mvr_search_@testingafreeclaim__upgraded.snap +++ b/crates/ci-tests/tests/snapshots/use_case_tester__cmd-mvr_search_@testingafreeclaim__upgraded.snap @@ -7,7 +7,7 @@ expression: cmd_output Networks: mainnet - @testingafreeclaim/upgraded-demo -# -- +# Networks: mainnet Tip: You can find more information about a package by using: mvr resolve diff --git a/crates/mvr-api/src/data/name_analytics.rs b/crates/mvr-api/src/data/name_analytics.rs index c7e375ae..2e4b6a81 100644 --- a/crates/mvr-api/src/data/name_analytics.rs +++ b/crates/mvr-api/src/data/name_analytics.rs @@ -8,7 +8,7 @@ use diesel::{ }; use mvr_types::name::Name; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::errors::ApiError; @@ -21,12 +21,12 @@ use super::reader::Reader; /// The `NaiveDate` is the date of the analytics query, as we are caching the query on a daily basis /// per instance. #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct NameAnalyticsKey(pub Name, pub ObjectId, pub NaiveDate); +pub struct NameAnalyticsKey(pub Name, pub Address, pub NaiveDate); /// Similar operation with analytics, this returns the "count" of /// dependents using a package, across versions. #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct NameDependentsCountKey(pub Name, pub ObjectId, pub NaiveDate); +pub struct NameDependentsCountKey(pub Name, pub Address, pub NaiveDate); #[derive(Serialize, Deserialize, Clone, QueryableByName)] pub struct AnalyticsQueryResponse { @@ -100,7 +100,7 @@ impl Loader for Reader { for res in result.into_iter() { // SAFETY: We should never have a malformed package id in the database. - let obj_id = ObjectId::from_str(&res.package_id).unwrap(); + let obj_id = Address::from_str(&res.package_id).unwrap(); if let Some(key) = addr_name_mapping.get(&obj_id) { if let Some(v) = aggregated_values.get_mut(key) { diff --git a/crates/mvr-api/src/data/package_analytics.rs b/crates/mvr-api/src/data/package_analytics.rs index c9505f8a..ac2b3434 100644 --- a/crates/mvr-api/src/data/package_analytics.rs +++ b/crates/mvr-api/src/data/package_analytics.rs @@ -8,7 +8,7 @@ use diesel::{ ExpressionMethods, }; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::errors::ApiError; @@ -17,7 +17,7 @@ use super::reader::Reader; /// The `NaiveDate` is the date of the analytics query, as we are caching the query on a daily basis /// per instance. #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct PackageAnalyticsKey(pub ObjectId, pub NaiveDate); +pub struct PackageAnalyticsKey(pub Address, pub NaiveDate); #[derive(Serialize, Deserialize, Clone, Queryable)] pub struct PackageAnalytics { diff --git a/crates/mvr-api/src/data/package_dependencies.rs b/crates/mvr-api/src/data/package_dependencies.rs index 935a4532..3d9868de 100644 --- a/crates/mvr-api/src/data/package_dependencies.rs +++ b/crates/mvr-api/src/data/package_dependencies.rs @@ -4,7 +4,7 @@ use async_graphql::dataloader::Loader; use diesel::{ExpressionMethods, QueryDsl}; use mvr_schema::schema::package_dependencies; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::errors::ApiError; @@ -13,11 +13,11 @@ use super::reader::Reader; // This is a key to load all dependencies for a package. // Since there are system limits, we do not paginate this endpoint. #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct PackageDependenciesKey(pub ObjectId); +pub struct PackageDependenciesKey(pub Address); #[derive(Serialize, Deserialize, Clone)] pub struct PackageDependencies { - pub dependencies: Vec, + pub dependencies: Vec
, } impl Default for PackageDependencies { @@ -58,15 +58,15 @@ impl Loader for Reader { HashMap::new(), |mut acc, (package_id, dependency_package_id)| { acc.entry(PackageDependenciesKey( - // SAFETY: We know that the package_id is a valid ObjectId - ObjectId::from_str(package_id).unwrap(), + // SAFETY: We know that the package_id is a valid address + Address::from_str(package_id).unwrap(), )) .or_insert_with(|| PackageDependencies { dependencies: Vec::new(), }) - // SAFETY: We know that the dependency_package_id is a valid ObjectId + // SAFETY: We know that the dependency_package_id is a valid Address .dependencies - .push(ObjectId::from_str(&dependency_package_id).unwrap()); + .push(Address::from_str(&dependency_package_id).unwrap()); acc }, ); diff --git a/crates/mvr-api/src/data/package_dependents.rs b/crates/mvr-api/src/data/package_dependents.rs index d7f09e9f..c219809f 100644 --- a/crates/mvr-api/src/data/package_dependents.rs +++ b/crates/mvr-api/src/data/package_dependents.rs @@ -12,7 +12,7 @@ use diesel::{ use futures::future::try_join_all; use mvr_schema::schema; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{errors::ApiError, utils::pagination::PaginationLimit}; @@ -20,20 +20,20 @@ use super::reader::Reader; #[derive(Serialize, Deserialize, Debug, Default, Clone, Eq, PartialEq, Hash)] pub struct PackageDependentsCursor { - pub package_id: Option, + pub package_id: Option
, pub aggregated_total_calls: Option, } #[derive(Clone, Eq, PartialEq, Hash, Debug)] pub struct PackageDependentsKey( - pub ObjectId, + pub Address, pub PackageDependentsCursor, pub PaginationLimit, pub NaiveDate, ); #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct PackageDependentsCountKey(pub ObjectId, pub NaiveDate); +pub struct PackageDependentsCountKey(pub Address, pub NaiveDate); #[derive(Serialize, Deserialize, Clone, QueryableByName)] pub struct PackageDependent { diff --git a/crates/mvr-api/src/data/resolution_loader.rs b/crates/mvr-api/src/data/resolution_loader.rs index 0baf2398..09649154 100644 --- a/crates/mvr-api/src/data/resolution_loader.rs +++ b/crates/mvr-api/src/data/resolution_loader.rs @@ -9,7 +9,7 @@ use diesel::{ sql_types::{Array, BigInt, Text}, }; use mvr_types::name::VersionedName; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::errors::ApiError; @@ -30,7 +30,7 @@ pub struct NameResolution { #[derive(Clone, Eq, PartialEq, Debug)] pub struct ResolutionData { - pub id: ObjectId, + pub id: Address, pub version: i64, } @@ -83,7 +83,7 @@ impl Loader for Reader { .map(|name| { let mut versioned_name = VersionedName::from_str(&name.name)?; versioned_name.version = (name.version > 0).then_some(name.version as u64); - let object_id = ObjectId::from_str(&name.package_id).map_err(|e| { + let object_id = Address::from_str(&name.package_id).map_err(|e| { ApiError::BadRequest(format!( "Failed to parse package id: {e} {}", name.package_id diff --git a/crates/mvr-api/src/data/reverse_resolution_loader.rs b/crates/mvr-api/src/data/reverse_resolution_loader.rs index 80102c5b..16d9517d 100644 --- a/crates/mvr-api/src/data/reverse_resolution_loader.rs +++ b/crates/mvr-api/src/data/reverse_resolution_loader.rs @@ -6,7 +6,7 @@ use diesel::{ sql_types::{Array, Text}, }; use mvr_types::name::VersionedName; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::errors::ApiError; @@ -22,7 +22,7 @@ pub struct ReverseNameResolution { } #[derive(Clone, Eq, PartialEq, Hash, Debug)] -pub struct ReverseResolutionKey(pub ObjectId); +pub struct ReverseResolutionKey(pub Address); #[async_trait::async_trait] impl Loader for Reader { @@ -72,7 +72,7 @@ impl Loader for Reader { // SAFETY: We should never have a malformed name in the database. let versioned_name = VersionedName::from_str(&name.name)?; // SAFETY: We should never have a malformed package id in the database. - let object_id = ObjectId::from_str(&name.package_id).map_err(|e| { + let object_id = Address::from_str(&name.package_id).map_err(|e| { ApiError::BadRequest(format!( "Failed to parse package id: {e} {}", name.package_id diff --git a/crates/mvr-api/src/handlers/mod.rs b/crates/mvr-api/src/handlers/mod.rs index 4629820c..d165c693 100644 --- a/crates/mvr-api/src/handlers/mod.rs +++ b/crates/mvr-api/src/handlers/mod.rs @@ -4,7 +4,7 @@ use std::{collections::HashMap, sync::Arc}; use axum::{extract::State, http::StatusCode}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{ data::{app_state::AppState, resolution_loader::ResolutionData}, @@ -32,7 +32,7 @@ pub(crate) async fn health_check( Ok(StatusCode::OK) } -fn into_object_id_map(resolution: &HashMap) -> HashMap { +fn into_object_id_map(resolution: &HashMap) -> HashMap { resolution .iter() .map(|(k, v)| (k.clone(), v.id)) diff --git a/crates/mvr-api/src/handlers/names.rs b/crates/mvr-api/src/handlers/names.rs index 78f07615..b16d4b18 100644 --- a/crates/mvr-api/src/handlers/names.rs +++ b/crates/mvr-api/src/handlers/names.rs @@ -13,7 +13,7 @@ use futures::try_join; use mvr_types::name::VersionedName; use serde::{Deserialize, Serialize}; use serde_json::Value; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{ data::{ @@ -33,7 +33,7 @@ pub struct PackageByNameResponse { #[serde(flatten)] pub package_by_name_data: PackageByNameBaseData, pub version: i64, - pub package_address: ObjectId, + pub package_address: Address, } #[derive(Serialize, Deserialize, QueryableByName)] diff --git a/crates/mvr-api/src/handlers/package_address.rs b/crates/mvr-api/src/handlers/package_address.rs index 1ab068ae..14fc3aa2 100644 --- a/crates/mvr-api/src/handlers/package_address.rs +++ b/crates/mvr-api/src/handlers/package_address.rs @@ -7,7 +7,7 @@ use axum::{ use chrono::Local; use futures::try_join; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{ data::{ @@ -42,7 +42,7 @@ impl PackageAddress { Path(package_address): Path, State(app_state): State>, ) -> Result, ApiError> { - let object_id = ObjectId::from_str(&package_address) + let object_id = Address::from_str(&package_address) .map_err(|e| ApiError::BadRequest(format!("Invalid package address: {}", e)))?; let dependencies = app_state @@ -63,7 +63,7 @@ impl PackageAddress { Query(params): Query, State(app_state): State>, ) -> Result>, ApiError> { - let object_id = ObjectId::from_str(&package_address) + let object_id = Address::from_str(&package_address) .map_err(|e| ApiError::BadRequest(format!("Invalid package address: {}", e)))?; let limit = PaginationLimit::new(params.limit)?; @@ -89,7 +89,7 @@ impl PackageAddress { limit.get(), dependents_count, |item| PackageDependentsCursor { - package_id: Some(ObjectId::from_str(&item.package_id).unwrap()), + package_id: Some(Address::from_str(&item.package_id).unwrap()), aggregated_total_calls: Some(item.aggregated_total_calls), }, ))) @@ -99,7 +99,7 @@ impl PackageAddress { Path(package_address): Path, State(app_state): State>, ) -> Result, ApiError> { - let object_id = ObjectId::from_str(&package_address) + let object_id = Address::from_str(&package_address) .map_err(|e| ApiError::BadRequest(format!("Invalid package address: {}", e)))?; let analytics = app_state diff --git a/crates/mvr-api/src/handlers/reverse_resolution.rs b/crates/mvr-api/src/handlers/reverse_resolution.rs index 786dff9c..0c9bc000 100644 --- a/crates/mvr-api/src/handlers/reverse_resolution.rs +++ b/crates/mvr-api/src/handlers/reverse_resolution.rs @@ -5,7 +5,7 @@ use axum::{ Json, }; use serde::{Deserialize, Serialize}; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{data::reverse_resolution_loader::ReverseResolutionKey, errors::ApiError, AppState}; @@ -13,11 +13,11 @@ use super::validate_batch_size; #[derive(Serialize, Deserialize, Debug)] pub struct BulkRequest { - package_ids: Vec, + package_ids: Vec
, } #[derive(Serialize, Deserialize)] pub struct BulkResponse { - resolution: HashMap, + resolution: HashMap, } #[derive(Serialize, Deserialize, Debug, Clone)] @@ -32,7 +32,7 @@ pub struct ReverseResolution; impl ReverseResolution { pub async fn resolve( - Path(package_id): Path, + Path(package_id): Path
, State(app_state): State>, ) -> Result, ApiError> { let name = app_state diff --git a/crates/mvr-cli/src/lib.rs b/crates/mvr-cli/src/lib.rs index e716c292..e752fd95 100644 --- a/crates/mvr-cli/src/lib.rs +++ b/crates/mvr-cli/src/lib.rs @@ -17,7 +17,7 @@ use utils::api_data::search_names; use utils::api_data::{query_multiple_dependencies, query_package}; use utils::git::shallow_clone_repo; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use types::MoveRegistryDependencies; use utils::manifest::{MoveToml, ADDRESSES_KEY, DEPENDENCIES_KEY, PUBLISHED_AT_KEY}; use utils::sui_binary::get_active_network; @@ -164,7 +164,7 @@ async fn check_single_package_consistency( anyhow::anyhow!("Failed to retrieve original package address at version 1".red()) })? } else { - ObjectId::from_str(&request_data.package_address)? + Address::from_str(&request_data.package_address)? }; let git_info: SafeGitInfo = request_data.get_git_info()?.try_into()?; @@ -194,7 +194,7 @@ async fn check_single_package_consistency( let address = addresses_id .map(|id_str| { - ObjectId::from_str(&id_str).map_err(|e| { + Address::from_str(&id_str).map_err(|e| { anyhow!( "{} {}", "Failed to parse address in [addresses] section of Move.toml:".red(), @@ -205,7 +205,7 @@ async fn check_single_package_consistency( .transpose()?; let published_at = published_at_id .map(|id_str| { - ObjectId::from_str(&id_str).map_err(|e| { + Address::from_str(&id_str).map_err(|e| { anyhow!( "{} {}", "Failed to parse published-at address of Move.toml:".red(), @@ -218,7 +218,7 @@ async fn check_single_package_consistency( // The original-published-id may exist in the Move.lock let original_published_id_in_lock = original_published_id(&move_lock_content, &target_chain_id) .map(|id_str| { - ObjectId::from_str(&id_str).map_err(|e| { + Address::from_str(&id_str).map_err(|e| { anyhow!( "{} {}", "Failed to parse original-published-id in Move.lock:".red(), @@ -228,7 +228,7 @@ async fn check_single_package_consistency( }) .transpose()?; - let (original_source_id, provenance): (ObjectId, String) = match ( + let (original_source_id, provenance): (Address, String) = match ( original_published_id_in_lock, published_at, address, @@ -245,7 +245,7 @@ async fn check_single_package_consistency( ) } (None, Some(published_at_id), Some(address_id)) - if address_id == ObjectId::ZERO || published_at_id == address_id => + if address_id == Address::ZERO || published_at_id == address_id => { // The [addresses] section has a package name set to "0x0" or the same as the published_at_id. // Our best guess is that the published-id refers to the original package (it may not, but @@ -304,7 +304,7 @@ async fn check_single_package_consistency( /// used to reverse-lookup a candidate package name in the addresses section of the Move.toml. pub async fn published_ids( move_toml_content: &str, - original_address_on_chain: &ObjectId, + original_address_on_chain: &Address, ) -> MoveTomlPublishedID { let doc = match move_toml_content.parse::() { Ok(d) => d, @@ -671,7 +671,7 @@ async fn update_mvr_packages( let dep_move_toml_content = fs::read_to_string(dep_move_toml_path)?; - let placeholder_address = ObjectId::from_str(&request_data.package_address)?; + let placeholder_address = Address::from_str(&request_data.package_address)?; let MoveTomlPublishedID { internal_pkg_name: Some(name), diff --git a/crates/mvr-cli/src/utils/api_data.rs b/crates/mvr-cli/src/utils/api_data.rs index fdadfae8..08414e5b 100644 --- a/crates/mvr-cli/src/utils/api_data.rs +++ b/crates/mvr-cli/src/utils/api_data.rs @@ -4,7 +4,7 @@ use ::futures::future::try_join_all; use anyhow::{bail, Result}; use mvr_types::name::VersionedName; use reqwest::Client; -use sui_sdk_types::ObjectId; +use sui_sdk_types::Address; use crate::{ errors::CliError, @@ -45,7 +45,7 @@ pub async fn query_package(name: &str, network: &Network) -> Result<(String, Pac Ok((name.to_string(), body)) } -pub async fn resolve_name(name: &VersionedName, network: &Network) -> Result { +pub async fn resolve_name(name: &VersionedName, network: &Network) -> Result
{ let response = reqwest::get(format!( "{}/v1/resolution/{}", get_api_url(network)?, @@ -66,7 +66,7 @@ pub async fn resolve_name(name: &VersionedName, network: &Network) -> Result HashMap { @@ -314,7 +314,7 @@ published-at = "0xabcdef" [addresses] demo = "0x1234567890abcdef" "#; - let original_address_on_chain = ObjectId::from_str("0x1234567890abcdef")?; + let original_address_on_chain = Address::from_str("0x1234567890abcdef")?; let result = published_ids(move_toml_content, &original_address_on_chain).await; expect![[r#" MoveTomlPublishedID { diff --git a/crates/mvr-indexer/Cargo.toml b/crates/mvr-indexer/Cargo.toml index 60858dc4..0fc76718 100644 --- a/crates/mvr-indexer/Cargo.toml +++ b/crates/mvr-indexer/Cargo.toml @@ -15,11 +15,7 @@ move-binary-format.workspace = true fastcrypto = { git = "https://github.com/MystenLabs/fastcrypto" } reqwest = { version = "^0.12", features = ["blocking", "json"] } -move-binding-derive = { git = "https://github.com/MystenLabs/move-binding.git", rev = "99f68a28c2f19be40a09e5f1281af748df9a8d3e" } -move-types = { git = "https://github.com/MystenLabs/move-binding.git", rev = "99f68a28c2f19be40a09e5f1281af748df9a8d3e" } - -sui-sdk-types = { git = "https://github.com/mystenlabs/sui-rust-sdk", package = "sui-sdk-types", features = ["serde"], rev = "86a9e06" } -sui-transaction-builder = { git = "https://github.com/mystenlabs/sui-rust-sdk", rev = "86a9e06" } +sui-sdk-types = { git = "https://github.com/mystenlabs/sui-rust-sdk", package = "sui-sdk-types", features = ["serde"], rev = "f0c8068" } mvr-schema = { path = "../mvr-schema" } mvr-types = { path = "../mvr-types" } diff --git a/crates/mvr-indexer/src/handlers/git_info_handler.rs b/crates/mvr-indexer/src/handlers/git_info_handler.rs index c72627e7..4766c6cf 100644 --- a/crates/mvr-indexer/src/handlers/git_info_handler.rs +++ b/crates/mvr-indexer/src/handlers/git_info_handler.rs @@ -1,14 +1,17 @@ use crate::handlers::MoveObjectProcessor; use crate::handlers::{convert_struct_tag, OrderedDedup}; -use crate::models::mainnet::sui::dynamic_field::Field; -use crate::models::{mainnet, testnet}; +use crate::models::mainnet::GitInfo as MainnetGitInfoValue; +use crate::models::mainnet::GitInfoField as MainnetGitInfo; +use crate::models::testnet::GitInfo as TestnetGitInfoValue; +use crate::models::testnet::GitInfoField as TestnetGitInfo; +use crate::models::MoveStructType; + use anyhow::Error; use async_trait::async_trait; use diesel::query_dsl::methods::FilterDsl; use diesel::upsert::excluded; use diesel::ExpressionMethods; use diesel_async::RunQueryDsl; -use move_types::MoveStruct; use mvr_schema::models::GitInfo; use serde::de::DeserializeOwned; use std::marker::PhantomData; @@ -20,16 +23,13 @@ use sui_types::base_types::MoveObjectType; use sui_types::full_checkpoint_content::CheckpointData; use sui_types::object::Object; -pub type MainnetGitInfo = Field; -pub type TestnetGitInfo = Field; - pub struct GitInfoHandler { chain_id: String, type_: MoveObjectType, phantom_data: PhantomData, } -impl GitInfoHandler { +impl GitInfoHandler { pub fn new(chain_id: String) -> Self { // Indexing dynamic field object Field let struct_tag = T::struct_type(); @@ -49,7 +49,7 @@ impl MoveObjectProcessor for GitInfoHandler Result { - let mainnet::mvr_metadata::git::GitInfo { + let MainnetGitInfoValue { repository, path, tag, @@ -74,7 +74,7 @@ impl MoveObjectProcessor for GitInfoHandler Result { - let testnet::mvr_metadata::git::GitInfo { + let TestnetGitInfoValue { repository, path, tag, @@ -92,7 +92,7 @@ impl MoveObjectProcessor for GitInfoHandler Handler for GitInfoHandler +impl Handler for GitInfoHandler where Self: MoveObjectProcessor, { @@ -127,7 +127,7 @@ where } } -impl Processor for GitInfoHandler +impl Processor for GitInfoHandler where Self: MoveObjectProcessor, { diff --git a/crates/mvr-indexer/src/handlers/mod.rs b/crates/mvr-indexer/src/handlers/mod.rs index b01c13c7..67cc0053 100644 --- a/crates/mvr-indexer/src/handlers/mod.rs +++ b/crates/mvr-indexer/src/handlers/mod.rs @@ -1,7 +1,8 @@ -use std::cmp::Ordering; use std::collections::BTreeMap; use std::hash::Hash; use std::slice::Iter; +use std::{cmp::Ordering, collections::HashMap}; +use sui_types::collection_types::VecMap; use sui_types::object::Object; pub mod git_info_handler; @@ -98,3 +99,12 @@ impl Processor for NoOpsHandler { Ok(vec![]) } } + +// Convert a vec_map into a HashMap. +pub(crate) fn into_hash_map(vec_map: VecMap) -> HashMap { + vec_map + .contents + .into_iter() + .map(|entry| (entry.key, entry.value)) + .collect::>() +} diff --git a/crates/mvr-indexer/src/handlers/name_record_handler.rs b/crates/mvr-indexer/src/handlers/name_record_handler.rs index 56724dcc..a63c11a1 100644 --- a/crates/mvr-indexer/src/handlers/name_record_handler.rs +++ b/crates/mvr-indexer/src/handlers/name_record_handler.rs @@ -1,33 +1,52 @@ -use crate::handlers::{convert_struct_tag, OrderedDedup}; -use crate::models::mainnet::mvr_core::app_record::AppRecord; -use crate::models::mainnet::mvr_core::name::Name as MoveName; -use crate::models::mainnet::sui::dynamic_field::Field; +use crate::handlers::{convert_struct_tag, into_hash_map, OrderedDedup}; +use crate::models::mainnet::AppRecord; +use crate::models::MoveStructType; use crate::TESTNET_CHAIN_ID; use async_trait::async_trait; use diesel::query_dsl::methods::FilterDsl; use diesel::upsert::excluded; use diesel::ExpressionMethods; use diesel_async::RunQueryDsl; -use move_types::MoveStruct; use mvr_schema::models::NameRecord; use mvr_types::name::Name; use mvr_types::name_service::Domain; -use std::collections::HashMap; +use std::str::FromStr; use std::sync::Arc; use sui_indexer_alt_framework::pipeline::concurrent::Handler; use sui_indexer_alt_framework::pipeline::Processor; use sui_pg_db::{Connection, Db}; +use sui_sdk_types::StructTag; use sui_types::base_types::MoveObjectType; +use sui_types::dynamic_field::Field; use sui_types::full_checkpoint_content::CheckpointData; pub struct NameRecordHandler { type_: MoveObjectType, } +impl MoveStructType for Field { + fn struct_type() -> StructTag { + let name_tag = StructTag::from_str( + "0x62c1f5b1cb9e3bfc3dd1f73c95066487b662048a6358eabdbf67f6cdeca6db4b::name::Name", + ) + .expect("Failed to parse struct type"); + let app_record_tag = AppRecord::struct_type(); + StructTag::from_str( + format!( + "0x2::dynamic_field::Field<{}, {}>", + name_tag.to_string(), + app_record_tag.to_string() + ) + .as_str(), + ) + .expect("Failed to parse struct type") + } +} + impl NameRecordHandler { pub fn new() -> Self { // Indexing dynamic field object Field<[mvr_core]::name::Name, [mvr_core]::app_record::AppRecord> - let struct_tag = Field::::struct_type(); + let struct_tag = Field::::struct_type(); let type_ = MoveObjectType::from(convert_struct_tag(struct_tag)); NameRecordHandler { type_ } } @@ -77,9 +96,9 @@ impl Processor for NameRecordHandler { // TODO: do we need to check if the parent of the DF table entry is the MVR registry? if matches!(o.type_(), Some(t) if t == &self.type_) { if let Some(move_obj) = o.data.try_as_move() { - let data: Field = + let data: Field = bcs::from_bytes(move_obj.contents())?; - let MoveName { org, app } = data.name; + let Name { org, app } = data.name; let name = Name::new(Domain { labels: org.labels }, app); let AppRecord { app_info, @@ -88,18 +107,15 @@ impl Processor for NameRecordHandler { .. } = data.value; - let networks: HashMap<_, _> = networks.into(); - let metadata: HashMap<_, _> = metadata.into(); - result.push(NameRecord { name: name.to_string(), object_version: o.version().value() as i64, mainnet_id: app_info .and_then(|info| Some(info.package_info_id?.to_string())), testnet_id: networks - .get(TESTNET_CHAIN_ID) + .get(&TESTNET_CHAIN_ID.to_string()) .and_then(|info| Some(info.package_info_id?.to_string())), - metadata: serde_json::to_value(metadata)?, + metadata: serde_json::to_value(into_hash_map(metadata))?, }) } } diff --git a/crates/mvr-indexer/src/handlers/package_info_handler.rs b/crates/mvr-indexer/src/handlers/package_info_handler.rs index a006e7ed..b89b90bf 100644 --- a/crates/mvr-indexer/src/handlers/package_info_handler.rs +++ b/crates/mvr-indexer/src/handlers/package_info_handler.rs @@ -1,23 +1,22 @@ -use crate::handlers::MoveObjectProcessor; use crate::handlers::{convert_struct_tag, OrderedDedup}; -use crate::models::mainnet::mvr_metadata::package_info::PackageInfo as MainnetPkgInfo; -use crate::models::mainnet::sui::vec_map::VecMap; -use crate::models::testnet::mvr_metadata::package_info::PackageInfo as TestnetPkgInfo; +use crate::handlers::{into_hash_map, MoveObjectProcessor}; +use crate::models::mainnet::PackageInfo as MainnetPackageInfo; +use crate::models::testnet::PackageInfo as TestnetPackageInfo; +use crate::models::MoveStructType; use async_trait::async_trait; use diesel::query_dsl::methods::FilterDsl; use diesel::upsert::excluded; use diesel::ExpressionMethods; use diesel_async::RunQueryDsl; -use move_types::MoveStruct; use mvr_schema::models::PackageInfo; use serde::de::DeserializeOwned; -use std::collections::HashMap; use std::marker::PhantomData; use std::sync::Arc; use sui_indexer_alt_framework::pipeline::concurrent::Handler; use sui_indexer_alt_framework::pipeline::Processor; use sui_pg_db::{Connection, Db}; -use sui_sdk_types::{Address, ObjectId}; +use sui_sdk_types::Address; +use sui_types::collection_types::VecMap; use sui_types::full_checkpoint_content::CheckpointData; use sui_types::object::Object; @@ -37,13 +36,13 @@ impl PackageInfoHandler { } fn package_info( chain_id: String, - id: ObjectId, + id: Address, package_addr: Address, metadata: VecMap, - git_table_id: ObjectId, + git_table_id: Address, object_version: u64, ) -> Result { - let metadata: HashMap<_, _> = metadata.into(); + let metadata = into_hash_map(metadata); Ok(PackageInfo { id: id.to_string(), object_version: object_version as i64, @@ -57,14 +56,16 @@ impl PackageInfoHandler { } // impl for mainnet PackageInfo -impl MoveObjectProcessor for PackageInfoHandler { +impl MoveObjectProcessor + for PackageInfoHandler +{ const PROC_NAME: &'static str = "PackageInfo - Mainnet"; fn process_move_object( chain_id: String, - move_obj: MainnetPkgInfo, + move_obj: MainnetPackageInfo, obj: &Object, ) -> Result { - let MainnetPkgInfo { + let MainnetPackageInfo { id, package_address, metadata, @@ -76,21 +77,24 @@ impl MoveObjectProcessor for PackageInfoHandler for PackageInfoHandler { +impl MoveObjectProcessor + for PackageInfoHandler +{ const PROC_NAME: &'static str = "PackageInfo - Testnet"; fn process_move_object( chain_id: String, - move_obj: TestnetPkgInfo, + move_obj: TestnetPackageInfo, obj: &Object, ) -> Result { - let TestnetPkgInfo { + let TestnetPackageInfo { id, package_address, metadata, @@ -102,14 +106,15 @@ impl MoveObjectProcessor for PackageInfoHandler Handler for PackageInfoHandler +impl Handler for PackageInfoHandler where Self: MoveObjectProcessor, { @@ -144,7 +149,7 @@ where } } -impl Processor for PackageInfoHandler +impl Processor for PackageInfoHandler where Self: MoveObjectProcessor, { diff --git a/crates/mvr-indexer/src/main.rs b/crates/mvr-indexer/src/main.rs index 8d984f2b..89a42a55 100644 --- a/crates/mvr-indexer/src/main.rs +++ b/crates/mvr-indexer/src/main.rs @@ -1,4 +1,8 @@ -use crate::handlers::git_info_handler::{GitInfoHandler, MainnetGitInfo, TestnetGitInfo}; +use crate::handlers::git_info_handler::GitInfoHandler; +use crate::models::{ + mainnet::GitInfoField as MainnetGitInfo, testnet::GitInfoField as TestnetGitInfo, +}; + use crate::handlers::name_record_handler::NameRecordHandler; use crate::handlers::package_handler::PackageHandler; use crate::handlers::package_info_handler::PackageInfoHandler; @@ -172,7 +176,7 @@ async fn main() -> Result<(), anyhow::Error> { } async fn create_mainnet_pipelines(indexer: &mut Indexer) -> Result<(), anyhow::Error> { - use models::mainnet::mvr_metadata::package_info::PackageInfo; + use models::mainnet::PackageInfo; indexer .concurrent_pipeline(PackageHandler::, Default::default()) .await?; @@ -199,7 +203,7 @@ async fn create_mainnet_pipelines(indexer: &mut Indexer) -> Result<(), anyho } async fn create_testnet_pipelines(indexer: &mut Indexer) -> Result<(), anyhow::Error> { - use models::testnet::mvr_metadata::package_info::PackageInfo; + use models::testnet::PackageInfo; indexer .concurrent_pipeline(PackageHandler::, Default::default()) .await?; diff --git a/crates/mvr-indexer/src/models.rs b/crates/mvr-indexer/src/models.rs index 55718654..08d7c2ee 100644 --- a/crates/mvr-indexer/src/models.rs +++ b/crates/mvr-indexer/src/models.rs @@ -1,25 +1,169 @@ -use crate::models::mainnet::sui::vec_map::VecMap; -use std::collections::HashMap; -use std::hash::Hash; +use sui_sdk_types::StructTag; + +pub trait MoveStructType { + fn struct_type() -> StructTag; +} pub mod mainnet { - use move_binding_derive::move_contract; - move_contract! {alias = "sui", package = "0x2"} - move_contract! {alias = "suins", package = "0xd22b24490e0bae52676651b4f56660a5ff8022a2576e0089f79b3c88d44e08f0", deps = [crate::models::mainnet::sui]} - move_contract! {alias = "mvr_core", package = "@mvr/core", deps = [crate::models::mainnet::sui, crate::models::mainnet::suins, crate::models::mainnet::mvr_metadata]} - move_contract! {alias = "mvr_metadata", package = "@mvr/metadata", deps = [crate::models::mainnet::sui]} + use std::str::FromStr; + + use serde::{Deserialize, Serialize}; + use sui_sdk_types::{Address, StructTag}; + use sui_types::{ + collection_types::{Table, VecMap}, + dynamic_field::Field, + }; + + use crate::models::MoveStructType; + + #[derive(Deserialize, Serialize, Debug)] + pub struct PackageInfo { + pub id: Address, + pub display: PackageDisplay, + pub upgrade_cap_id: Address, + pub package_address: Address, + pub metadata: VecMap, + pub git_versioning: Table, + } + + impl MoveStructType for PackageInfo { + fn struct_type() -> StructTag { + StructTag::from_str("0x0f6b71233780a3f362137b44ac219290f4fd34eb81e0cb62ddf4bb38d1f9a3a1::package_info::PackageInfo").expect("Failed to parse struct type") + } + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct AppInfo { + pub package_info_id: Option
, + pub package_address: Option
, + pub upgrade_cap_id: Option
, + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct AppRecord { + pub app_cap_id: Address, + pub ns_nft_id: Address, + pub app_info: Option, + pub networks: VecMap, + pub metadata: VecMap, + pub storage: Address, + } + + impl MoveStructType for AppRecord { + fn struct_type() -> StructTag { + StructTag::from_str("0x62c1f5b1cb9e3bfc3dd1f73c95066487b662048a6358eabdbf67f6cdeca6db4b::app_record::AppRecord").expect("Failed to parse struct type") + } + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct GitInfo { + pub repository: String, + pub path: String, + pub tag: String, + } + + impl MoveStructType for GitInfo { + fn struct_type() -> StructTag { + StructTag::from_str( + "0x0f6b71233780a3f362137b44ac219290f4fd34eb81e0cb62ddf4bb38d1f9a3a1::git::GitInfo", + ) + .expect("Failed to parse struct type") + } + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct PackageDisplay { + pub gradient_from: String, + pub gradient_to: String, + pub text_color: String, + pub name: String, + pub uri_encoded_name: String, + } + + pub type GitInfoField = Field; + + impl MoveStructType for GitInfoField { + fn struct_type() -> StructTag { + let git_info_tag = GitInfo::struct_type(); + StructTag::from_str( + format!( + "0x2::dynamic_field::Field", + git_info_tag.to_string() + ) + .as_str(), + ) + .expect("Failed to parse struct type that is known to be valid.") + } + } } + pub mod testnet { - use move_binding_derive::move_contract; - move_contract! {alias = "mvr_metadata", package = "@mvr/metadata", network = "testnet", deps = [crate::models::mainnet::sui]} -} + use std::str::FromStr; + + use serde::{Deserialize, Serialize}; + use sui_sdk_types::{Address, StructTag}; + use sui_types::{ + collection_types::{Table, VecMap}, + dynamic_field::Field, + }; + + use crate::models::MoveStructType; + + #[derive(Deserialize, Serialize, Debug)] + pub struct PackageDisplay { + pub gradient_from: String, + pub gradient_to: String, + pub text_color: String, + pub name: String, + pub uri_encoded_name: String, + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct PackageInfo { + pub id: Address, + pub display: PackageDisplay, + pub upgrade_cap_id: Address, + pub package_address: Address, + pub metadata: VecMap, + pub git_versioning: Table, + } + + impl MoveStructType for PackageInfo { + fn struct_type() -> StructTag { + StructTag::from_str("0xb96f44d08ae214887cae08d8ae061bbf6f0908b1bfccb710eea277f45150b9f4::package_info::PackageInfo").expect("Failed to parse struct type") + } + } + + #[derive(Deserialize, Serialize, Debug)] + pub struct GitInfo { + pub repository: String, + pub path: String, + pub tag: String, + } + + impl MoveStructType for GitInfo { + fn struct_type() -> StructTag { + StructTag::from_str( + "0xb96f44d08ae214887cae08d8ae061bbf6f0908b1bfccb710eea277f45150b9f4::git::GitInfo", + ) + .expect("Failed to parse struct type") + } + } + + // The `Field; -impl From> for HashMap { - fn from(value: VecMap) -> Self { - value - .contents - .into_iter() - .map(|entry| (entry.key, entry.value)) - .collect::>() + impl MoveStructType for GitInfoField { + fn struct_type() -> StructTag { + let git_info_tag = GitInfo::struct_type(); + StructTag::from_str( + format!( + "0x2::dynamic_field::Field", + git_info_tag.to_string() + ) + .as_str(), + ) + .expect("Failed to parse struct type that is known to be valid.") + } } } diff --git a/crates/mvr-indexer/tests/mvr_data_tests.rs b/crates/mvr-indexer/tests/mvr_data_tests.rs index 7772ae84..437f37fa 100644 --- a/crates/mvr-indexer/tests/mvr_data_tests.rs +++ b/crates/mvr-indexer/tests/mvr_data_tests.rs @@ -2,11 +2,13 @@ use chrono::NaiveDateTime; use fastcrypto::hash::{HashFunction, Sha256}; use insta::assert_json_snapshot; use mvr_indexer::handlers::git_info_handler::GitInfoHandler; -use mvr_indexer::handlers::git_info_handler::MainnetGitInfo; + +use mvr_indexer::models::mainnet::GitInfoField as MainnetGitInfo; + use mvr_indexer::handlers::name_record_handler::NameRecordHandler; use mvr_indexer::handlers::package_handler::PackageHandler; use mvr_indexer::handlers::package_info_handler::PackageInfoHandler; -use mvr_indexer::models::mainnet::mvr_metadata::package_info::PackageInfo; +use mvr_indexer::models::mainnet::PackageInfo; use mvr_indexer::MAINNET_CHAIN_ID; use mvr_schema::MIGRATIONS; use serde_json::Value; diff --git a/crates/mvr-types/src/named_type.rs b/crates/mvr-types/src/named_type.rs index c1d51935..e7ba4e75 100644 --- a/crates/mvr-types/src/named_type.rs +++ b/crates/mvr-types/src/named_type.rs @@ -2,7 +2,7 @@ use std::{collections::HashMap, str::FromStr}; use anyhow::anyhow; use regex::{Captures, Regex}; -use sui_sdk_types::{ObjectId, TypeTag}; +use sui_sdk_types::{Address, TypeTag}; use crate::name::{VersionedName, VERSIONED_NAME_UNBOUND_REG}; @@ -13,7 +13,7 @@ pub struct NamedType; impl NamedType { pub fn replace_names( type_name: &str, - names: &HashMap, + names: &HashMap, ) -> Result { let struct_tag_str = replace_all_result( &VERSIONED_NAME_UNBOUND_REG, @@ -84,7 +84,7 @@ fn replace_all_result( mod tests { use std::{collections::HashMap, str::FromStr}; - use sui_sdk_types::ObjectId; + use sui_sdk_types::Address; use super::NamedType; @@ -152,7 +152,7 @@ mod tests { for (index, name) in data.expected_names.iter().enumerate() { mapping.insert( name.clone(), - ObjectId::from_str(&format!("0x{}", index)).unwrap(), + Address::from_str(&format!("0x{}", index)).unwrap(), ); } @@ -183,7 +183,7 @@ mod tests { fn format_type(address: &str, rest: &str) -> String { format!( "{}{}", - ObjectId::from_str(address).unwrap().to_string(), + Address::from_str(address).unwrap().to_string(), rest ) }