NNS Updates 2024-09-20

Proposal 133088

Vote: REJECT

Build successful but there’s issues with the args that will prevent it from upgrading.

[ebb4dc57d9]: Adds a new query method get_default_subnets that returns a list of default subnets ids.

[df1dbfc8a2]: Changes the globs used to select source files to be more specific by adding file extensions ( .rs for Rust or .proto for protocol files), ensuring only relevant files are included. This solves an issue where when building the compiler would complain about Vim .swp files.

[bbb8a51524]: Adds two new tests test_get_icp_xdr_conversion_rate_certification and test_get_average_icp_xdr_conversion_rate_certification. It solves the problem of using the wrong certification for the get_average_icp_xdr_conversion_rate endpoint which now uses the correct lable LABEL_AVERAGE_ICP_XDR_CONVERSION_RATE. Lastly it standardizes the version of the crates ic-certificate-verification, ic-certification and ic-http-certification to 2.6.0.

[3aa43520c4]: Removes no longer needed migrate function since the migration was performed a long time ago. Also replaces functionality in old state function warning users to perform the migration

[c2b4a0aaf4]: Merges CMC hotfix back to master, refactors code, adds a new validation ensuring that deposit memos don’t exceed 32 characters with const MAX_MEMO_LENGTH

[137faea9ee]: Simplifies the function get_next_multiply_of and adds comments

[4d09678d23]: Sorts Rust #[derive(...)] traits to maintain a consistent style

Proposal 133089

Vote: ADOPT

Build successful and hashes match.

[96814ec4af]: Removes the uncessary //rs/nns/constants:constants--test_feature library

[d399ee7f6f]: Removes uncecessary mut from the parameter self on the call_canister_method method

[df1dbfc8a2]: Changes the globs used to select source files to be more specific by adding file extensions ( .rs for Rust or .proto for protocol files), ensuring only relevant files are included. This solves an issue where when building the compiler would complain about Vim .swp files.

[4e8565c624]: Re-applies the changes from d123a2a except the changes on rs/nns/governance/src/governance.rs that made tests fail.

[ad9e529296]: Increases the probability of deprecated methods panicking from 0.3 to 0.7

[fbde007ff4]: Reverts commit d123a2a.

[41f6ce3a7c]: Removes the nns governance crate as a dependency of the sns cli and ic-admin

[a4b9ab2ec1]: Replaces the const DEFAULT_SNS_FRAMEWORK_CANISTER_WASM_MEMORY_LIMIT (4GB) with two new consts DEFAULT_SNS_GOVERNANCE_CANISTER_WASM_MEMORY_LIMIT (4GB) and DEFAULT_SNS_NON_GOVERNANCE_CANISTER_WASM_MEMORY_LIMIT (3GB). This are important values used to limit the usage of memory in a canister so that pre_upgrade calls can be made.

[bfc9da0790]: Replaces the dfn_core with the Runtime trait in the ledger canister client. Using the Runtime dependency in the IcpLedgerCanister struct and it’s methods and replacing the use of dfn_core::call with Runtime::call_without_cleanup.

[d123a2a015]: Disabled proposal creation for NnsCanisterUpgrade and NnsRootUpgrade and updates tests to use InstallCode

[2e85a2e961]: Changes from the polling for archives from every heartbeat to once per day. The heartbeat function and the latest_ledger_archive_poll_timestamp_seconds field are removed as they are no longer needed and instead a new const POLL_FOR_NEW_ARCHIVES_INTERVAL is used to define the interval and the function init_timers is used to start the timer that triggers the polling.

Proposal 133090

Vote: ADOPT

Build successful and hashes match.

[29f688afe9]: Uses ic_nervous_system_string::clamp_debug_len to limit the size of logs from the registry canister.

[df1dbfc8a2]: Changes the globs used to select source files to be more specific by adding file extensions ( .rs for Rust or .proto for protocol files), ensuring only relevant files are included. This solves an issue where when building the compiler would complain about Vim .swp files.

[b14c152f3a]: Creates a local main function in get_changes_since which handles the core functionality and error handling. Everything else that applies to all scenarios (either error or success) is handled in the body of the function.

[c3a180c94c]: Moves the CMCCanister and IcpLedgerCanister implementations from rs/nervous_system/common/ to rs/nervous_system/canisters/

2 Likes