diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel index af1a4a161e3..9ff3af23086 100644 --- a/WORKSPACE.bazel +++ b/WORKSPACE.bazel @@ -19,6 +19,7 @@ canisters( "ledger": "ledger-canister_notify-method.wasm.gz", "ledger_v1": "ledger-canister_notify-method.wasm.gz", "ledger_v2": "ledger-canister_notify-method.wasm.gz", + "ledger_v3": "ledger-canister_notify-method.wasm.gz", "archive": "ledger-archive-node-canister.wasm.gz", "index": "ic-icp-index-canister.wasm.gz", "root": "root-canister.wasm.gz", @@ -55,6 +56,7 @@ canisters( "ledger": "mainnet_icp_ledger_canister", "ledger_v1": "mainnet_icp_ledger_canister-v1", "ledger_v2": "mainnet_icp_ledger_canister-v2", + "ledger_v3": "mainnet_icp_ledger_canister-v3", "archive": "mainnet_icp_ledger-archive-node-canister", "index": "mainnet_icp_index_canister", "root": "mainnet_nns_root-canister", diff --git a/mainnet-canister-revisions.json b/mainnet-canister-revisions.json index 97762a62a50..99030805ea8 100644 --- a/mainnet-canister-revisions.json +++ b/mainnet-canister-revisions.json @@ -68,16 +68,16 @@ "sha256": "fd25a4e2e283b498c3be1aaf63cc9b2726264d78a12b12f43ad453ceeb575e7c" }, "governance": { - "rev": "03393bc817da78cdc27190eaa388b8f6f8990365", - "sha256": "542cb59d9ba2b4ba43b0690a839cf1d51dd49582a53e55fbf535eb08a23a14c4" + "rev": "c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800", + "sha256": "bd821399f16d4bdac8cef06b81d8ac72cf8e36a7ab766efccb2a0925be6f388f" }, "index": { "rev": "7c6309cb5bec7ab28ed657ac7672af08a59fc1ba", "sha256": "7b884231f230f5fc66ad18e0baaec0c14921bd5da742db5dbaf51f824b8dfc63" }, "ledger": { - "rev": "7c6309cb5bec7ab28ed657ac7672af08a59fc1ba", - "sha256": "a9ed1cb9dda555e0fc1038825eb7b3a6b366f17aa4b88575184c7537e864e551" + "rev": "6bc1943fc5bcff846959025c5f3f2f7f510489cf", + "sha256": "6dae518b33ef5814462ff921e81d13acd5e7a8f4e383ab849d87a33b0a608b08" }, "ledger_v1": { "rev": "6dcfafb491092704d374317d9a72a7ad2475d7c9", @@ -87,6 +87,10 @@ "rev": "dac2f36f96d7549d82fa8e3c714979255ce57afd", "sha256": "50c05fd687883fe788c0bb91996de358d8f856ba56088c6ff47767ea853001d7" }, + "ledger_v3": { + "rev": "7c6309cb5bec7ab28ed657ac7672af08a59fc1ba", + "sha256": "a9ed1cb9dda555e0fc1038825eb7b3a6b366f17aa4b88575184c7537e864e551" + }, "lifeline": { "rev": "b5192581ccd35b67fe5a1f795ead9cbcd25956d6", "sha256": "8c8eb285de53ca5609abd7dc41ba3ec8eeb67708b81469311fd670e6738d7d0a" @@ -96,20 +100,20 @@ "sha256": "f0fb8fa545b2cc68f030b040e1182a8d004c4d4f4bb4341c9f1b432642c85bef" }, "root": { - "rev": "b5192581ccd35b67fe5a1f795ead9cbcd25956d6", - "sha256": "d3c702648ca4fb232f349bad7533c400c474a528abf62c05d4b100b4cdb91ce2" + "rev": "c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800", + "sha256": "304af3d8d330397d53eed7e8580810fb3ab303930bdf6fd3969c9109dd11b80e" }, "sns-wasm": { - "rev": "25c1bb0227d9970f5673b908817d7c4962b29911", - "sha256": "68f9fb37341d14a35735e10a0eb2471721b4cd75b6552ac11124aac559b05736" + "rev": "c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800", + "sha256": "6308fdd2d8bafb6a54ae995f0ff07118976dd75f6e2775fdf50349084a59b4b7" }, "sns_archive": { "rev": "c741e349451edf0c9792149ad439bb32a0161371", "sha256": "2b0970a84976bc2eb9591b68d44501566937994fa5594972f8aac9c8b058672f" }, "sns_governance": { - "rev": "03393bc817da78cdc27190eaa388b8f6f8990365", - "sha256": "5c43913c77f922a21f54b3422abf7cb43d369677e7668b7c8f91a429acd5c864" + "rev": "c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800", + "sha256": "487940ab827c929471dbd128fcb1c7d5dfe2f3f56d9e489e0f3b68122b56a94f" }, "sns_index": { "rev": "c741e349451edf0c9792149ad439bb32a0161371", @@ -124,11 +128,11 @@ "sha256": "3d808fa63a3d8ebd4510c0400aa078e99a31afaa0515f0b68778f929ce4b2a46" }, "sns_root": { - "rev": "a5878586e47536d4cd47f0aadb66b73df8131d2b", - "sha256": "dc243135057d13c48f71d2f0a4b8f5fc43ed525d579d97dde23e052dca15bf96" + "rev": "c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800", + "sha256": "9c129437f868e54a2dc3c72438cd7977925d089f9982c35d0370eaa71d5e3a6d" }, "swap": { "rev": "a5878586e47536d4cd47f0aadb66b73df8131d2b", "sha256": "45408ed654561dfb17c84b86948dda9498aa0ba8ee669ae774e5faca830c4c24" } -} \ No newline at end of file +} diff --git a/rs/ledger_suite/icp/ledger/BUILD.bazel b/rs/ledger_suite/icp/ledger/BUILD.bazel index a813c56783c..082b02f1bce 100644 --- a/rs/ledger_suite/icp/ledger/BUILD.bazel +++ b/rs/ledger_suite/icp/ledger/BUILD.bazel @@ -120,6 +120,7 @@ rust_ic_test( ":ledger-canister-wasm-next-version", "@mainnet_icp_ledger_canister-v1//file", "@mainnet_icp_ledger_canister-v2//file", + "@mainnet_icp_ledger_canister-v3//file", "@mainnet_icp_ledger_canister//file", ], env = { @@ -128,6 +129,7 @@ rust_ic_test( "ICP_LEDGER_DEPLOYED_VERSION_WASM_PATH": "$(rootpath @mainnet_icp_ledger_canister//file)", "ICP_LEDGER_DEPLOYED_VERSION_V1_WASM_PATH": "$(rootpath @mainnet_icp_ledger_canister-v1//file)", "ICP_LEDGER_DEPLOYED_VERSION_V2_WASM_PATH": "$(rootpath @mainnet_icp_ledger_canister-v2//file)", + "ICP_LEDGER_DEPLOYED_VERSION_V3_WASM_PATH": "$(rootpath @mainnet_icp_ledger_canister-v3//file)", "LEDGER_CANISTER_WASM_PATH": "$(rootpath :ledger-canister-wasm)", "LEDGER_CANISTER_ALLOWANCE_GETTER_WASM_PATH": "$(rootpath :ledger-canister-wasm-allowance-getter)", "LEDGER_CANISTER_NEXT_VERSION_WASM_PATH": "$(rootpath :ledger-canister-wasm-next-version)", diff --git a/rs/ledger_suite/icp/ledger/tests/tests.rs b/rs/ledger_suite/icp/ledger/tests/tests.rs index 5880d38248d..cd5e8253f67 100644 --- a/rs/ledger_suite/icp/ledger/tests/tests.rs +++ b/rs/ledger_suite/icp/ledger/tests/tests.rs @@ -67,6 +67,10 @@ fn ledger_wasm_mainnet_v2() -> Vec { std::fs::read(std::env::var("ICP_LEDGER_DEPLOYED_VERSION_V2_WASM_PATH").unwrap()).unwrap() } +fn ledger_wasm_mainnet_v3() -> Vec { + std::fs::read(std::env::var("ICP_LEDGER_DEPLOYED_VERSION_V3_WASM_PATH").unwrap()).unwrap() +} + fn ledger_wasm_allowance_getter() -> Vec { ic_test_utilities_load_wasm::load_wasm( std::env::var("CARGO_MANIFEST_DIR").unwrap(), @@ -1231,8 +1235,8 @@ fn test_block_transformation() { } #[test] -fn test_upgrade_serialization_from_mainnet() { - test_upgrade_serialization(ledger_wasm_mainnet()); +fn test_upgrade_serialization_from_v3() { + test_upgrade_serialization(ledger_wasm_mainnet_v3()); } #[test] @@ -1267,9 +1271,9 @@ fn test_upgrade_serialization(ledger_wasm_mainnet: Vec) { } #[test] -fn test_multi_step_migration_from_mainnet() { +fn test_multi_step_migration_from_v3() { ic_ledger_suite_state_machine_tests::icrc1_test_multi_step_migration( - ledger_wasm_mainnet(), + ledger_wasm_mainnet_v3(), ledger_wasm_low_instruction_limits(), encode_init_args, ); @@ -1291,13 +1295,13 @@ fn test_downgrade_from_incompatible_version() { ledger_wasm_next_version(), ledger_wasm(), encode_init_args, - false, + true, ); } #[test] -fn test_stable_migration_endpoints_disabled_from_mainnet() { - test_stable_migration_endpoints_disabled(ledger_wasm_mainnet()); +fn test_stable_migration_endpoints_disabled_from_v3() { + test_stable_migration_endpoints_disabled(ledger_wasm_mainnet_v3()); } #[test] @@ -1342,9 +1346,9 @@ fn test_stable_migration_endpoints_disabled(ledger_wasm_mainnet: Vec) { } #[test] -fn test_incomplete_migration_from_mainnet() { +fn test_incomplete_migration_from_v3() { ic_ledger_suite_state_machine_tests::test_incomplete_migration( - ledger_wasm_mainnet(), + ledger_wasm_mainnet_v3(), ledger_wasm_low_instruction_limits(), encode_init_args, ); @@ -1360,9 +1364,9 @@ fn test_incomplete_migration_from_v2() { } #[test] -fn test_incomplete_migration_to_current_from_mainnet() { +fn test_incomplete_migration_to_current_from_v3() { ic_ledger_suite_state_machine_tests::test_incomplete_migration_to_current( - ledger_wasm_mainnet(), + ledger_wasm_mainnet_v3(), ledger_wasm_low_instruction_limits(), encode_init_args, ); @@ -1378,9 +1382,9 @@ fn test_incomplete_migration_to_current_from_v2() { } #[test] -fn test_metrics_while_migrating_from_mainnet() { +fn test_metrics_while_migrating_from_v3() { ic_ledger_suite_state_machine_tests::test_metrics_while_migrating( - ledger_wasm_mainnet(), + ledger_wasm_mainnet_v3(), ledger_wasm_low_instruction_limits(), encode_init_args, ); diff --git a/rs/ledger_suite/icp/tests/upgrade_downgrade.rs b/rs/ledger_suite/icp/tests/upgrade_downgrade.rs index 6d082add5cf..107c838d405 100644 --- a/rs/ledger_suite/icp/tests/upgrade_downgrade.rs +++ b/rs/ledger_suite/icp/tests/upgrade_downgrade.rs @@ -447,7 +447,7 @@ fn should_upgrade_and_downgrade_canister_suite() { setup.assert_index_ledger_parity(true); setup.upgrade_index_canister(UpgradeToVersion::MainNet); - setup.upgrade_ledger_canister(UpgradeToVersion::MainNet, false); + setup.upgrade_ledger_canister(UpgradeToVersion::MainNet, true); setup.upgrade_archive_canisters(UpgradeToVersion::MainNet); setup.assert_index_ledger_parity(true);