Skip to content

Commit 7720a10

Browse files
sh-chabeer-1
andauthored
feat(aptos): bump to aptos node v1.27.2 (#176)
* bump aptos core * fmt clippy * add charge_heap_memory into gas meter * fmt * use serde_json preserve_order and format and clippy * remove preserve order * fix test --------- Co-authored-by: beer-1 <[email protected]>
1 parent 9db2e65 commit 7720a10

File tree

125 files changed

+491
-308
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+491
-308
lines changed

Cargo.toml

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,10 @@ serde = { version = "1.0.188", default-features = false, features = [
9292
"rc",
9393
] }
9494
serde_bytes = "0.11.9"
95-
serde_json = { version = "1.0.94" }
95+
serde_json = { version = "1.0.81", features = [
96+
"preserve_order",
97+
"arbitrary_precision",
98+
] } # Note: arbitrary_precision is required to parse u256 in JSON
9699
serde-generate = { git = "https://github.com/aptos-labs/serde-reflection", rev = "73b6bbf748334b71ff6d7d09d06a29e3062ca075" }
97100
serde-reflection = { git = "https://github.com/aptos-labs/serde-reflection", rev = "73b6bbf748334b71ff6d7d09d06a29e3062ca075" }
98101
sha2 = "0.10.8"
@@ -116,28 +119,28 @@ tiny-keccak = { version = "2.0.2", features = ["keccak", "sha3"] }
116119
# Note: the BEGIN and END comments below are required for external tooling. Do not remove.
117120
# BEGIN MOVE DEPENDENCIES
118121

119-
move-binary-format = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
120-
move-bytecode-verifier = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
121-
move-bytecode-utils = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
122-
move-cli = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
123-
move-command-line-common = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
124-
move-compiler = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
125-
move-coverage = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
126-
move-core-types = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
127-
move-docgen = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
128-
move-model = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
129-
move-package = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
130-
move-prover = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
131-
move-prover-boogie-backend = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
132-
move-prover-bytecode-pipeline = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
133-
move-resource-viewer = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
134-
move-stackless-bytecode = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
135-
move-stdlib = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
136-
move-symbol-pool = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
137-
move-unit-test = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
138-
move-vm-runtime = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
139-
move-vm-test-utils = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
140-
move-vm-types = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "751c9a34969e54dd18452d41f3c996fc2e971eb7" }
122+
move-binary-format = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
123+
move-bytecode-verifier = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
124+
move-bytecode-utils = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
125+
move-cli = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
126+
move-command-line-common = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
127+
move-compiler = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
128+
move-coverage = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
129+
move-core-types = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
130+
move-docgen = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
131+
move-model = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
132+
move-package = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
133+
move-prover = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
134+
move-prover-boogie-backend = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
135+
move-prover-bytecode-pipeline = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
136+
move-resource-viewer = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
137+
move-stackless-bytecode = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
138+
move-stdlib = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
139+
move-symbol-pool = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
140+
move-unit-test = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
141+
move-vm-runtime = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
142+
move-vm-test-utils = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
143+
move-vm-types = { git = "https://github.com/aptos-labs/aptos-core.git", rev = "4ace64edcc41878fe348c07238cfe497a5cb6714" }
141144

142145
# END MOVE DEPENDENCIES
143146

Makefile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.PHONY: all build build-rust build-go test precompile
1+
.PHONY: all build build-rust build-go test precompile contracts-gen bcs-go-gen
22

33
# Builds the Rust library libmovevm
44
BUILDERS_PREFIX := initia/go-ext-builder:0001
@@ -80,9 +80,11 @@ build: precompile build-rust build-go
8080

8181
build-rust: build-rust-release
8282

83+
contracts-gen: precompile
8384
precompile:
8485
cargo run -p precompile
8586

87+
bcs-go-gen: prebuild-go
8688
prebuild-go:
8789
cargo run -p generate-bcs-go
8890

crates/compiler/src/built_package.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ impl BuiltPackage {
6565
}
6666

6767
let (mut package, model_opt) =
68-
new_config.compile_package_no_exit(&package_path, &mut stderr())?;
68+
new_config.compile_package_no_exit(&package_path, vec![], &mut stderr())?;
6969

7070
// Run extended checks as well as derive runtime metadata
7171
let model = &model_opt.expect("move model");

crates/compiler/src/unit_test_factory.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ impl InitiaUnitTestFactory {
2525
table_context: NativeTableContext,
2626
) -> VMResult<()> {
2727
let table_change_set = table_context
28-
.into_change_set()
28+
.into_change_set(None)
2929
.map_err(|e| e.finish(Location::Undefined))?;
3030
let write_set =
3131
WriteSet::new_with_change_set(changes.clone(), table_change_set).map_err(|e| {

crates/e2e-move-tests/src/tests/cosmos.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ fn test_cosmos_delegate() {
115115
&delegator_address.into_bytes(),
116116
)
117117
.unwrap();
118-
let expected_data = format!("{{\"@type\":\"/initia.mstaking.v1.MsgDelegate\",\"amount\":[{{\"amount\":\"{amount}\",\"denom\":\"{staking_denom}\"}}],\"delegator_address\":\"{delegator_cosmos_addr}\",\"validator_address\":\"{validator_address}\"}}");
118+
let expected_data = format!("{{\"@type\":\"/initia.mstaking.v1.MsgDelegate\",\"delegator_address\":\"{delegator_cosmos_addr}\",\"validator_address\":\"{validator_address}\",\"amount\":[{{\"denom\":\"{staking_denom}\",\"amount\":\"{amount}\"}}]}}");
119119
let test_delegate = (
120120
delegator_address,
121121
"0x1::cosmos::delegate",
@@ -169,7 +169,7 @@ fn test_cosmos_fund_community_pool() {
169169
let depositor_cosmos_addr =
170170
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender_address.into_bytes())
171171
.unwrap();
172-
let expected_data = format!("{{\"@type\":\"/cosmos.distribution.v1beta1.MsgFundCommunityPool\",\"amount\":[{{\"amount\":\"{amount}\",\"denom\":\"{denom}\"}}],\"depositor\":\"{depositor_cosmos_addr}\"}}");
172+
let expected_data = format!("{{\"@type\":\"/cosmos.distribution.v1beta1.MsgFundCommunityPool\",\"depositor\":\"{depositor_cosmos_addr}\",\"amount\":[{{\"denom\":\"{denom}\",\"amount\":\"{amount}\"}}]}}");
173173

174174
let test_fund_community_pool = (
175175
sender_address,
@@ -226,7 +226,7 @@ fn test_cosmos_transfer() {
226226
let denom = str::from_utf8(STAKING_SYMBOL).unwrap();
227227
let sender_cosmos_addr =
228228
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
229-
let expected_data = format!("{{\"@type\":\"/ibc.applications.transfer.v1.MsgTransfer\",\"memo\":\"{memo}\",\"receiver\":\"{receiver}\",\"sender\":\"{sender_cosmos_addr}\",\"source_channel\":\"{source_channel}\",\"source_port\":\"{source_port}\",\"timeout_height\":{{\"revision_height\":\"{revision_height}\",\"revision_number\":\"{revision_number}\"}},\"timeout_timestamp\":\"{timeout_timestamp}\",\"token\":{{\"amount\":\"{amount}\",\"denom\":\"{denom}\"}}}}");
229+
let expected_data = format!("{{\"@type\":\"/ibc.applications.transfer.v1.MsgTransfer\",\"source_port\":\"{source_port}\",\"source_channel\":\"{source_channel}\",\"sender\":\"{sender_cosmos_addr}\",\"receiver\":\"{receiver}\",\"token\":{{\"denom\":\"{denom}\",\"amount\":\"{amount}\"}},\"timeout_height\":{{\"revision_number\":\"{revision_number}\",\"revision_height\":\"{revision_height}\"}},\"timeout_timestamp\":\"{timeout_timestamp}\",\"memo\":\"{memo}\"}}");
230230

231231
let test_transfer = (
232232
sender,
@@ -298,7 +298,7 @@ fn test_cosmos_nft_transfer() {
298298
let class_id = str::from_utf8(COLLECTION_NAME).unwrap();
299299
let sender_cosmos_addr =
300300
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
301-
let expected_data = format!("{{\"@type\":\"/ibc.applications.nft_transfer.v1.MsgTransfer\",\"class_id\":\"{class_id}\",\"memo\":\"{memo}\",\"receiver\":\"{receiver}\",\"sender\":\"{sender_cosmos_addr}\",\"source_channel\":\"{source_channel}\",\"source_port\":\"{source_port}\",\"timeout_height\":{{\"revision_height\":\"{revision_height}\",\"revision_number\":\"{revision_number}\"}},\"timeout_timestamp\":\"{timeout_timestamp}\",\"token_ids\":[\"id1\",\"id2\"]}}");
301+
let expected_data = format!("{{\"@type\":\"/ibc.applications.nft_transfer.v1.MsgTransfer\",\"sender\":\"{sender_cosmos_addr}\",\"receiver\":\"{receiver}\",\"class_id\":\"{class_id}\",\"token_ids\":[\"id1\",\"id2\"],\"source_port\":\"{source_port}\",\"source_channel\":\"{source_channel}\",\"timeout_height\":{{\"revision_number\":\"{revision_number}\",\"revision_height\":\"{revision_height}\"}},\"timeout_timestamp\":\"{timeout_timestamp}\",\"memo\":\"{memo}\"}}");
302302

303303
let test_nft_transfer = (
304304
sender,
@@ -398,7 +398,7 @@ fn test_cosmos_pay_fee() {
398398
let timeout_fee_denom = str::from_utf8(FEE_B_SYMBOL).unwrap();
399399
let sender_cosmos_addr =
400400
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
401-
let expected_data = format!("{{\"@type\":\"/ibc.applications.fee.v1.MsgPayPacketFee\",\"fee\":{{\"ack_fee\":[{{\"amount\":\"{ack_fee_amount}\",\"denom\":\"{ack_fee_denom}\"}}],\"recv_fee\":[{{\"amount\":\"{recv_fee_amount}\",\"denom\":\"{recv_fee_denom}\"}}],\"timeout_fee\":[{{\"amount\":\"{timeout_fee_amount}\",\"denom\":\"{timeout_fee_denom}\"}}]}},\"relayers\":[],\"signer\":\"{sender_cosmos_addr}\",\"source_channel_id\":\"{source_channel}\",\"source_port_id\":\"{source_port}\"}}");
401+
let expected_data = format!("{{\"@type\":\"/ibc.applications.fee.v1.MsgPayPacketFee\",\"signer\":\"{sender_cosmos_addr}\",\"source_port_id\":\"{source_port}\",\"source_channel_id\":\"{source_channel}\",\"fee\":{{\"recv_fee\":[{{\"denom\":\"{recv_fee_denom}\",\"amount\":\"{recv_fee_amount}\"}}],\"ack_fee\":[{{\"denom\":\"{ack_fee_denom}\",\"amount\":\"{ack_fee_amount}\"}}],\"timeout_fee\":[{{\"denom\":\"{timeout_fee_denom}\",\"amount\":\"{timeout_fee_amount}\"}}]}},\"relayers\":[]}}");
402402

403403
let test_pay_fee = (
404404
sender,
@@ -449,7 +449,7 @@ fn test_cosmos_move_execute() {
449449
let module_addr_hex = module_address.to_hex_literal();
450450
let sender_cosmos_addr =
451451
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
452-
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgExecute\",\"args\":[\"{arg1_base64}\",\"{arg2_base64}\"],\"function_name\":\"{function_name}\",\"module_address\":\"{module_addr_hex}\",\"module_name\":\"{module_name}\",\"sender\":\"{sender_cosmos_addr}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"]}}");
452+
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgExecute\",\"sender\":\"{sender_cosmos_addr}\",\"module_address\":\"{module_addr_hex}\",\"module_name\":\"{module_name}\",\"function_name\":\"{function_name}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"],\"args\":[\"{arg1_base64}\",\"{arg2_base64}\"]}}");
453453

454454
let test_move_execute = (
455455
sender,
@@ -494,7 +494,7 @@ fn test_cosmos_move_execute_with_json() {
494494
let sender_cosmos_addr =
495495
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
496496
let module_addr_hex = module_address.to_hex_literal();
497-
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgExecuteJSON\",\"args\":[\"\\\"hello\\\"\",\"\\\"world\\\"\"],\"function_name\":\"{function_name}\",\"module_address\":\"{module_addr_hex}\",\"module_name\":\"{module_name}\",\"sender\":\"{sender_cosmos_addr}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"]}}");
497+
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgExecuteJSON\",\"sender\":\"{sender_cosmos_addr}\",\"module_address\":\"{module_addr_hex}\",\"module_name\":\"{module_name}\",\"function_name\":\"{function_name}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"],\"args\":[\"\\\"hello\\\"\",\"\\\"world\\\"\"]}}");
498498

499499
let test_move_execute = (
500500
sender,
@@ -540,7 +540,7 @@ fn test_cosmos_move_script() {
540540
let arg2_base64 = base64.encode(arg2.clone());
541541
let sender_cosmos_addr =
542542
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
543-
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgScript\",\"args\":[\"{arg1_base64}\",\"{arg2_base64}\"],\"code_bytes\":\"{code_bytes_base64}\",\"sender\":\"{sender_cosmos_addr}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"]}}");
543+
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgScript\",\"sender\":\"{sender_cosmos_addr}\",\"code_bytes\":\"{code_bytes_base64}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"],\"args\":[\"{arg1_base64}\",\"{arg2_base64}\"]}}");
544544

545545
let test_move_script = (
546546
sender,
@@ -582,7 +582,7 @@ fn test_cosmos_move_script_with_json() {
582582
let code_bytes_base64 = base64.encode(code_bytes.clone());
583583
let sender_cosmos_addr =
584584
bech32::encode::<Bech32>(Hrp::parse_unchecked("init"), &sender.into_bytes()).unwrap();
585-
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgScriptJSON\",\"args\":[\"\\\"hello\\\"\",\"\\\"world\\\"\"],\"code_bytes\":\"{code_bytes_base64}\",\"sender\":\"{sender_cosmos_addr}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"]}}");
585+
let expected_data = format!("{{\"@type\":\"/initia.move.v1.MsgScriptJSON\",\"sender\":\"{sender_cosmos_addr}\",\"code_bytes\":\"{code_bytes_base64}\",\"type_args\":[\"{type_arg1}\",\"{type_arg2}\"],\"args\":[\"\\\"hello\\\"\",\"\\\"world\\\"\"]}}");
586586

587587
let test_move_script = (
588588
sender,

crates/e2e-move-tests/src/tests/staking.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ fn test_simple_staking() {
183183
ExpectedOutput::new(
184184
VMStatus::Executed,
185185
Some(
186-
format!("{{\"metadata\":\"0x{}\",\"share\":\"500000\",\"unclaimed_reward\":\"0\",\"validator\":\"validator\"}}", staking_metadata.short_str_lossless())
186+
format!("{{\"metadata\":\"0x{}\",\"validator\":\"validator\",\"share\":\"500000\",\"unclaimed_reward\":\"0\"}}", staking_metadata.short_str_lossless())
187187
.to_string(),
188188
),
189189
None,

crates/e2e-move-tests/src/tests/view_output.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ fn test_view_output() {
4949
type_args: vec![]
5050
}))
5151
.to_string(),
52-
"{\"arg\":\"hello world\",\"type_arg\":\"u256\"}".to_string()
52+
"{\"type_arg\":\"u256\",\"arg\":\"hello world\"}".to_string()
5353
)])
5454
.into_inner(),
5555
);

crates/gas/src/meter.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -765,6 +765,11 @@ impl GasMeter for InitiaGasMeter {
765765

766766
Ok(())
767767
}
768+
769+
#[inline]
770+
fn charge_heap_memory(&mut self, _amount: u64) -> PartialVMResult<()> {
771+
Ok(())
772+
}
768773
}
769774

770775
impl InitiaGasMeter {

0 commit comments

Comments
 (0)