Skip to content
Open

Move v2 #3181

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
0ee008a
merge the v2 instuctions and binary format
steelgeek091 Nov 29, 2024
de69e83
fix import path and return types
steelgeek091 Dec 22, 2024
86f1f38
implement CodeStorage and ModuleStorage
steelgeek091 Dec 24, 2024
65df5c9
fix exception in moveos_vm
steelgeek091 Dec 25, 2024
379106e
implement the trait CompiledModuleView
steelgeek091 Dec 26, 2024
1856a96
add the lifetime indicator
steelgeek091 Dec 26, 2024
0eb09db
fix code errors in the moveos verifier
steelgeek091 Dec 31, 2024
b6525d3
fix model build
steelgeek091 Jan 2, 2025
ce3e582
fix move instruction integrity
steelgeek091 Jan 3, 2025
f883404
fix gas meter and script cache
steelgeek091 Jan 6, 2025
e83804c
fix error in native functions
steelgeek091 Jan 7, 2025
31b6862
fix the module cache and the script cache
steelgeek091 Jan 8, 2025
f408db7
fix some struct filed issue
steelgeek091 Jan 9, 2025
e0889e8
implement the ModuleCache for MoveOSCache
steelgeek091 Jan 9, 2025
2ceafc1
fix global_module_cache, client_resolver
steelgeek091 Jan 10, 2025
101be20
fix new_session_with_cache_and_extensions
steelgeek091 Jan 13, 2025
52d9710
fix the model buiding
steelgeek091 Jan 13, 2025
f0d6e1f
pass the TransactionCache and MoveOSCodeCache to Loader
steelgeek091 Jan 15, 2025
03184de
pass the MoveOSCodeCache
steelgeek091 Jan 15, 2025
5ddb16f
pass the right one
steelgeek091 Jan 15, 2025
bcbd1e6
fix the TransactionCache trait
steelgeek091 Jan 16, 2025
d61b7ff
handle the gas table and moveos_vm
steelgeek091 Jan 20, 2025
afa22dc
fix the error for runtime environment and global module cache
steelgeek091 Jan 21, 2025
eb9eb59
fix error in move cli
steelgeek091 Jan 23, 2025
ac9d017
fix the move test framework
steelgeek091 Jan 24, 2025
5c52b13
enable the global cache
steelgeek091 Feb 7, 2025
7fea34a
fix the access of global module cache
steelgeek091 Feb 11, 2025
a127a25
the function call to disable the V1 Loader must be disabled
steelgeek091 Feb 11, 2025
ccfb8e5
fix the initiation of the runtime environment
steelgeek091 Feb 11, 2025
d8fec32
fix the infinite recursive error
steelgeek091 Feb 12, 2025
d1ac4bd
enable the cache in module publish function
steelgeek091 Feb 20, 2025
b1940e2
cargo fmt
steelgeek091 Feb 21, 2025
10b6d17
cargo clippy
steelgeek091 Feb 21, 2025
e9a917a
set the compiler version for the move test
steelgeek091 Feb 24, 2025
04a82d2
cargo clippy
steelgeek091 Feb 24, 2025
8b5a46e
fix cargo clippy and disable the LoaderV1 calling
steelgeek091 Feb 24, 2025
11527c1
fix rust testing code
steelgeek091 Feb 24, 2025
29d2a98
add the Move V2 exmaple code
steelgeek091 Feb 24, 2025
1d93b6b
fix some missed repos
steelgeek091 Feb 25, 2025
45c5a4d
add missed license info
steelgeek091 Feb 25, 2025
255693c
add missed license info
steelgeek091 Feb 25, 2025
54c0da3
rename the field name of the struct
steelgeek091 Feb 25, 2025
0afc7bb
Merge branch 'main' into move_v2
steelgeek091 Feb 25, 2025
bcd7767
add some move v2 examples and ues the new move v2 bytes
steelgeek091 Feb 26, 2025
9b53afd
update Cargo.lock
steelgeek091 Feb 26, 2025
d29f71d
fix some error of testing
steelgeek091 Mar 3, 2025
729fdfb
fix errors in framework testing
steelgeek091 Mar 6, 2025
94617ac
cargo clippy:
steelgeek091 Mar 6, 2025
eeae135
Merge branch 'main' into move_v2
steelgeek091 Mar 6, 2025
cf6a248
fix the struct field name in dynamic_field.rs
steelgeek091 Mar 6, 2025
4038f24
add complex enum example and fix metadata error
steelgeek091 Mar 11, 2025
ff04351
Merge branch 'main' into move_v2
steelgeek091 Mar 11, 2025
227cc84
update Cargo.lock
steelgeek091 Mar 11, 2025
8af8a6c
add the checking for enum type in verifier
steelgeek091 Mar 12, 2025
a3a463a
Merge branch 'main' into move_v2
steelgeek091 Mar 12, 2025
69dc9f0
fix the compability checking and Loader V1 error
steelgeek091 Mar 13, 2025
f726208
Merge branch 'main' into move_v2
steelgeek091 Mar 13, 2025
e6553ee
refine crates
steelgeek091 Mar 14, 2025
295e1e6
update Cargo.lock
steelgeek091 Mar 14, 2025
0721a0d
Merge branch 'main' into move_v2
steelgeek091 Mar 14, 2025
e8c5318
add the move_v2 testsuite
steelgeek091 Mar 15, 2025
97980cb
Temporarily using pre-generated binary data.
steelgeek091 Mar 17, 2025
a4c3aea
Merge branch 'main' into move_v2
steelgeek091 Mar 17, 2025
d403d92
resolve the gas config testing error
steelgeek091 Mar 23, 2025
ecb1dff
Merge branch 'main' into move_v2
steelgeek091 Mar 23, 2025
065651e
Merge branch 'main' into move_v2
steelgeek091 Mar 23, 2025
cfc17e8
Temporarily disable the compatibility check when deploying modules us…
steelgeek091 Mar 23, 2025
f085cc9
fix the argument in Struct
steelgeek091 Mar 23, 2025
4119279
remove unused import
steelgeek091 Mar 23, 2025
173a10f
Fix issues with unbound modules and move_v2 test cases.
steelgeek091 Mar 24, 2025
6268853
fix the entry function testing
steelgeek091 Mar 25, 2025
39159db
Merge branch 'main' of github.com:rooch-network/rooch into move_v2
steelgeek091 Mar 25, 2025
c2f4603
cargo fmt
steelgeek091 Mar 25, 2025
b134043
fix the move module_template testing
steelgeek091 Mar 28, 2025
5aa7bc6
Merge branch 'main' of github.com:rooch-network/rooch into move_v2
steelgeek091 Mar 28, 2025
27d25ea
merge main and fix some errors
steelgeek091 Mar 28, 2025
dcdab06
fix some struct fields errors
steelgeek091 Mar 28, 2025
4a3e2eb
Merge branch 'main' of github.com:rooch-network/rooch into move_v2
steelgeek091 Mar 28, 2025
51f400c
Merge branch 'main' into move_v2
steelgeek091 Mar 28, 2025
f5e755b
Merge branch 'main' into move_v2
steelgeek091 Mar 31, 2025
c04386b
update Cargo.lock
steelgeek091 Mar 31, 2025
5db4d3b
enable the move verifier when publishing modules
steelgeek091 Apr 1, 2025
1f8e13c
Merge branch 'main' into move_v2
steelgeek091 Apr 1, 2025
23a9d0f
remove debug infomation from move v2 compiler
steelgeek091 Apr 1, 2025
4025aa4
enable all verification methods in module publishing
steelgeek091 Apr 1, 2025
06b17e2
Merge branch 'main' into move_v2
steelgeek091 Apr 6, 2025
581c93e
Merge branch 'main' into move_v2
steelgeek091 Apr 7, 2025
5b1d473
upate Cargo.lock
steelgeek091 Apr 7, 2025
9a5c285
fix the version of module serialization
steelgeek091 Apr 8, 2025
a8fe671
Merge branch 'main' into move_v2
steelgeek091 Apr 8, 2025
d3656e8
Merge branch 'main' into move_v2
steelgeek091 Apr 11, 2025
8bc40fe
Merge branch 'main' into move_v2
steelgeek091 Apr 11, 2025
a9f2c63
Merge branch 'main' into move_v2
steelgeek091 Apr 11, 2025
1f6e933
Merge branch 'main' into move_v2
steelgeek091 Apr 24, 2025
ab44a5a
upate Cargo.lock
steelgeek091 Apr 24, 2025
2ef3886
fix the vector gas parameters
steelgeek091 Apr 25, 2025
6eacf2b
fix the issue of module cache
steelgeek091 Jun 12, 2025
3226b84
add the tx dump_state and import state command
steelgeek091 Jul 22, 2025
038e939
use smt.dump()
steelgeek091 Aug 26, 2025
af42296
refine code
steelgeek091 Aug 27, 2025
c91d477
recursivelly dump state tree
steelgeek091 Aug 27, 2025
a9677d1
update Cargo.toml
steelgeek091 Aug 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,105 changes: 674 additions & 1,431 deletions Cargo.lock

Large diffs are not rendered by default.

123 changes: 85 additions & 38 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ members = [
"frameworks/moveos-stdlib",
"frameworks/rooch-framework",
"frameworks/rooch-nursery", "crates/bitcoin-client",
"third_party/move/language/move-compiler-v2"
#"third_party/move/language/move-compiler-v2"
]

default-members = [
Expand Down Expand Up @@ -158,6 +158,7 @@ rooch-nursery = { path = "frameworks/rooch-nursery" }

# External crate dependencies.
# Please do not add any test features here: they should be declared by the individual crate.
again = "0.1.2"
anyhow = "1.0.76"
async-trait = "0"
backtrace = "0.3"
Expand All @@ -177,9 +178,11 @@ brotli = "3.4.0"
chrono = "0.4.40"
coerce = "0.8"
datatest-stable = "0.1.3"
derive_builder = "0.20"
derive_more = { version = "1.0.0", features = ["as_ref", "from"] }
dirs = "5.0.1"
enum_dispatch = "^0.3"
ethereum-types = "0.14.1"
ethers = { version = "2.0.7", features = ["legacy"] }
eyre = "0.6.8"
fastcrypto = { git = "https://github.com/rooch-network/fastcrypto.git", rev = "863a6b9194787ad366f2d980ebe9c26b1649e25e" }
Expand All @@ -190,32 +193,40 @@ futures-core = "0.3.21"
hdrhistogram = "7.5.4"
hex = "0.4.3"
heed = "0.21.0"
rustc-hex = "2.1"
itertools = "0.13.0"
#jsonrpsee = { version = "0.23.2", features = ["full"] }
jsonrpsee = { version = "0.24.7", features = ["server", "macros", "ws-client", "http-client", "jsonrpsee-core"] }
jpst = "0.1.1"
lazy_static = "1.5.0"
linked-hash-map = "0.5.6"
more-asserts = "0.3.0"
num-derive = "0.3.3"
num-traits = "0.2.15"
once_cell = "1.21.3"
ordinals = "0.0.9"
parking_lot = "0.12.3"
pathdiff = "0.2.1"
petgraph = "0.6.5"
primitive-types = { version = "0.12.1", features = ["serde", "arbitrary"] }
proptest = "1.6.0"
prost = "0.12"
prost-types = "0.11"
proptest = "1.5.0"
proptest-derive = "0.3.0"
rayon = "1.5.2"
rand = "0.8.5"
rand_core = { version = "0.9.3", default-features = false }
rand_core = { version = "0.6.3", default-features = false }
reqwest = { version = "0.12", features = ["json", "stream"] }
schemars = { version = "0.8.22", features = ["either"] }
serde_bytes = "0.11.17"
serde = { version = "1.0.219", features = ["derive", "rc"] }
serde_json = { version = "1.0.140", features = ["preserve_order"] }
serde_yaml = "0.9"
serde_repr = "0.1"
serde-name = "0.2"
serde_with = { version = "2.1.0", features = ["hex", "base64"] }
signature = "2.2.0"
slip10_ed25519 = "0.1.3"
strum = "^0.26"
strum_macros = "^0.26"
sha2 = "0.10.2"
Expand All @@ -224,11 +235,15 @@ smallvec = "1.15.0"
thiserror = "1.0.69"
tiny-keccak = { version = "2", features = ["keccak", "sha3"] }
tiny-bip39 = "2.0.0"
tokio-util = "0.7.13"
tokio = { version = "1.44.2", features = ["full"] }
tokio-tungstenite = { version = "0.24.0", features = ["native-tls"] }
tokio-stream = "0.1.17"
tonic = { version = "0.8", features = ["gzip"] }
tracing = "0.1.41"
tracing-appender = "0.2.2"
tracing-subscriber = { version = "0.3.19" }
tungstenite = "0.24.0"
codespan-reporting = "0.11.1"
codespan = "0.11.1"
termcolor = "1.1.2"
Expand All @@ -243,10 +258,17 @@ tempfile = "3.19.1"
regex = "1.11.1"
walkdir = "2.3.3"
prometheus = "0.13.3"
prometheus-http-query = { version = "0.6.6", default_features = false, features = [
"rustls-tls",
] }
prometheus-parse = { git = "https://github.com/asonnino/prometheus-parser.git", rev = "75334db" }
coarsetime = "0.1.22"
hyper = { version = "1.0.0", features = ["full"] }
num_enum = "0.7.3"
libc = "^0.2"
include_dir = { version = "0.6.2" }
serde-reflection = "0.3.6"
serde-generate = "0.25.1"
bcs-ext = { path = "moveos/moveos-commons/bcs_ext" }
http = "1.0.0"
tower = { version = "0.5.2", features = ["full", "log", "util", "timeout", "load-shed", "limit"] }
Expand All @@ -258,18 +280,24 @@ lru = "0.11.0"
quick_cache = "0.6.13"
bs58 = "0.5.1"
dirs-next = "2.0.0"
anstream = { version = "0.3" }
bigdecimal = { version = "0.3.0", features = ["serde"] }
chacha20poly1305 = "0.10.1"
argon2 = "0.5.2"
rpassword = "7.2.0"
fixed-hash = "0.8.0"
uint = "0.9.5"
rlp = "0.5.2"
const-hex = "1.14.0"
cached = "0.43.0"
diesel = { version = "2.2.9", features = [
"chrono",
"sqlite",
"r2d2",
"serde_json",
"64-column-tables",
] }
diesel-derive-enum = { version = "2.1.0", features = ["sqlite"] }
diesel_migrations = { version = "2.2.0" }
axum = { version = "0.7.9", default-features = false, features = [
"tokio",
Expand All @@ -282,6 +310,7 @@ axum = { version = "0.7.9", default-features = false, features = [
"query",
"ws",
] }
axum-extra = "0.9.3"
axum-server = { version = "0.6.0", default-features = false, features = [
"tls-rustls",
] }
Expand All @@ -293,14 +322,17 @@ serenity = { version = "0.12.4", default-features = false, features = [
"model",
] }
tap = "1.0.1"
dotenvy = "0.15"
sized-chunks = { version = "0.6" }
dashmap = "6.0.1"
criterion = { version = "0.5.1", features = [
"async",
"async_tokio",
"html_reports",
] }
xxhash-rust = { version = "0.8.15", features = ["std", "xxh3"] }
xxhash-rust = { version = "0.8.11", features = ["std", "xxh3"] }
base64 = "0.22.1"
#criterion-cpu-time = "0.1.0"
wasmer = "4.2.5"
wasmer-types = "4.2.5"
wasmer-compiler-singlepass = "4.2.2"
Expand All @@ -311,60 +343,75 @@ pprof = { version = "0.13.0", features = ["flamegraph", "criterion", "cpp", "fra
celestia-rpc = { git = "https://github.com/eigerco/celestia-node-rs.git", rev = "129272e8d926b4c7badf27a26dea915323dd6489" }
celestia-types = { git = "https://github.com/eigerco/celestia-node-rs.git", rev = "129272e8d926b4c7badf27a26dea915323dd6489" }
opendal = { version = "0.50.2", features = ["services-fs", "services-gcs"] }
toml = "0.8.20"
toml = "0.8.19"
tabled = "0.16.0"
csv = "1.3.1"
ord = "0.18.5"
sled = { version = "0.34.7" }
revm-precompile = "16.2.0"
revm-primitives = "15.2.0"
scopeguard = "1.1"
uuid = { version = "1.16.0", features = ["v4", "fast-rng"] }
protobuf = { version = "2.28", features = ["with-bytes"] }
redb = { version = "2.1.1" }
rocksdb = { version = "0.23.0", features = ["lz4", "mt_static", "jemalloc"] }
lz4 = { version = "1.28.1" }
lz4 = { version = "1.28.0" }
ripemd = { version = "0.1.3" }
function_name = { version = "0.3.0" }
rustc-hash = { version = "2.1.1" }
rustc-hash = { version = "2.1.0" }
xorf = { version = "0.11.0" }
vergen-git2 = { version = "1.0.0", features = ["build", "cargo", "rustc"] }
vergen-pretty = "0.3.9"
crossbeam-channel = "0.5.15"
inferno = "0.11.21"
handlebars = "4.2.2"
ambassador = "0.4.1"
triomphe = "0.1.14"
hashbrown = "0.15.2"
indexmap = "2.9.0"
tikv-jemallocator = { version = "0.6.0", features = ["unprefixed_malloc_on_supported_platforms", "profiling"] }
mimalloc = { version = "0.1.46" }

# Note: the BEGIN and END comments below are required for external tooling. Do not remove.
# BEGIN MOVE DEPENDENCIES
move-abigen = { path = "third_party/move/language/move-prover/move-abigen" }
move-binary-format = { path = "third_party/move/language/move-binary-format" }
move-bytecode-verifier = { path = "third_party/move/language/move-bytecode-verifier" }
move-bytecode-utils = { path = "third_party/move/language/tools/move-bytecode-utils" }
move-cli = { path = "third_party/move/language/tools/move-cli" }
move-command-line-common = { path = "third_party/move/language/move-command-line-common" }
move-compiler = { path = "third_party/move/language/move-compiler" }
move-core-types = { path = "third_party/move/language/move-core/types" }
move-coverage = { path = "third_party/move/language/tools/move-coverage" }
move-disassembler = { path = "third_party/move/language/tools/move-disassembler" }
move-docgen = { path = "third_party/move/language/move-prover/move-docgen" }
move-errmapgen = { path = "third_party/move/language/move-prover/move-errmapgen" }
move-ir-compiler = { path = "third_party/move/language/move-ir-compiler" }
move-model = { path = "third_party/move/language/move-model" }
move-package = { path = "third_party/move/language/tools/move-package" }
move-prover = { path = "third_party/move/language/move-prover" }
move-prover-boogie-backend = { path = "third_party/move/language/move-prover/boogie-backend" }
move-stackless-bytecode = { path = "third_party/move/language/move-prover/bytecode" }
move-prover-test-utils = { path = "third_party/move/language/move-prover/test-utils" }
move-resource-viewer = { path = "third_party/move/language/tools/move-resource-viewer" }
move-stdlib = { path = "third_party/move/language/move-stdlib", features = ["testing"] }
move-symbol-pool = { path = "third_party/move/language/move-symbol-pool" }
move-transactional-test-runner = { path = "third_party/move/language/testing-infra/transactional-test-runner" }
move-unit-test = { path = "third_party/move/language/tools/move-unit-test", features = ["table-extension"] }
move-vm-runtime = { path = "third_party/move/language/move-vm/runtime", features = ["stacktrace", "debugging", "testing"] }
move-vm-test-utils = { path = "third_party/move/language/move-vm/test-utils", features = ["table-extension"] }
move-vm-types = { path = "third_party/move/language/move-vm/types" }
move-bytecode-source-map = { path = "third_party/move/language/move-ir-compiler/move-bytecode-source-map" }
move-ir-types = { path = "third_party/move/language/move-ir/types" }# END MOVE DEPENDENCIES
# keep this for convenient debug Move in local repo
# [patch.'https://github.com/rooch-network/move']
# keep this for convenient debug Move in local repo
# [patch.'https://github.com/rooch-network/move']
move-abigen = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-binary-format = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-bytecode-verifier = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-bytecode-utils = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-cli = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-command-line-common = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-compiler = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-compiler-v2 = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-core-types = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-coverage = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-disassembler = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-docgen = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-errmapgen = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-ir-compiler = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-model = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-package = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-prover = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-prover-boogie-backend = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-stackless-bytecode = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-prover-test-utils = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-resource-viewer = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-stackless-bytecode-interpreter = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-stdlib = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3", features = ["testing"] }
move-symbol-pool = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-table-extension = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-transactional-test-runner = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-unit-test = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3", features = ["table-extension"] }
move-vm-runtime = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3", features = ["stacktrace", "debugging", "testing"] }
move-vm-test-utils = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3", features = ["table-extension"] }
move-vm-types = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
read-write-set = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
read-write-set-dynamic = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-bytecode-source-map = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }
move-ir-types = { git = "https://github.com/rooch-network/move", rev = "0368c630c51b0045d716d7a08d283f2cf0961fd3" }# END MOVE DEPENDENCIES

# keep this for convenient debug Move in local repo
# [patch.'https://github.com/rooch-network/move']
Expand Down Expand Up @@ -405,11 +452,11 @@ move-ir-types = { path = "third_party/move/language/move-ir/types" }# END MOVE D
[profile.release]
# enable overflow checks won't affect performance much, branch prediction will handle it well
overflow-checks = true
# enable link-time optimization, which can significantly improve perf but won't increase compile time much
# enable link-time optimization, which can significantly improve perf but donesn't cost much extra in compile time
# thin LTO is enough for us:
# (https://blog.llvm.org/2016/06/thinlto-scalable-and-incremental-lto.html)
lto = "thin"
codegen-units = 1 # Help to achieve a better result with lto
codegen-units = 1 # Help to achieve better result with lto

[profile.bench]
inherits = "release"
Expand Down
1 change: 1 addition & 0 deletions apps/minter_manager/test/deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# Copyright (c) RoochNetwork
# SPDX-License-Identifier: Apache-2.0


# Export your address here
export PACKAGE_ADDRESS="0x701c21bf1c8cd5af8c42983890d8ca55e7a820171b8e744c13f2d9998bf76cc3"

Expand Down
2 changes: 2 additions & 0 deletions crates/rooch-cosmwasm-vm/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ rust-version = { workspace = true }
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
triomphe = { workspace = true }

cosmwasm-vm = { workspace = true }
cosmwasm-std = { workspace = true }

Expand Down
9 changes: 5 additions & 4 deletions crates/rooch-cosmwasm-vm/src/backend.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ use moveos_types::h256;
use moveos_types::state::FieldKey;
use moveos_types::state::MoveState;
use moveos_types::state_resolver::StatelessResolver;
use triomphe::Arc as TriompheArc;

type IteratorItem = (FieldKey, Vec<u8>);
type IteratorState = (Vec<IteratorItem>, usize);
Expand Down Expand Up @@ -82,7 +83,7 @@ impl<'a> Storage for MoveStorage<'a> {
let hash = h256::sha3_256_of(key);
let field_key = FieldKey::new(hash.into());
let move_layout = Vec::<u8>::type_layout();
let move_type = Type::Vector(Box::new(Type::U8));
let move_type = Type::Vector(TriompheArc::new(Type::U8));

match self
.object
Expand All @@ -109,7 +110,7 @@ impl<'a> Storage for MoveStorage<'a> {
let hash = h256::sha3_256_of(key);
let field_key = FieldKey::new(hash.into());
let move_layout = Vec::<u8>::type_layout();
let move_type = Type::Vector(Box::new(Type::U8));
let move_type = Type::Vector(TriompheArc::new(Type::U8));

let deserialized_value = match self.deserialize_value(&move_layout, value) {
Ok(v) => v,
Expand All @@ -134,7 +135,7 @@ impl<'a> Storage for MoveStorage<'a> {
fn remove(&mut self, key: &[u8]) -> BackendResult<()> {
let hash = h256::sha3_256_of(key);
let field_key = FieldKey::new(hash.into());
let move_type = Type::Vector(Box::new(Type::U8));
let move_type = Type::Vector(TriompheArc::new(Type::U8));

match self
.object
Expand Down Expand Up @@ -167,7 +168,7 @@ impl<'a> Storage for MoveStorage<'a> {
self.resolver,
cursor,
usize::MAX,
&Type::Vector(Box::new(Type::U8)), // Assuming values are Vec<u8>
&Type::Vector(TriompheArc::new(Type::U8)), // Assuming values are Vec<u8>
) {
Ok((values, bytes_len_opt)) => {
let move_layout = Vec::<u8>::type_layout();
Expand Down
1 change: 0 additions & 1 deletion crates/rooch-executor/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,5 @@ moveos-eventbus = { workspace = true }
metrics = { workspace = true }

rooch-types = { workspace = true }
rooch-genesis = { workspace = true }
rooch-notify = { workspace = true }
rooch-store = { workspace = true }
Loading