Hello there!
We are happy to announce that voting is now open for a new IC release.
The NNS proposal is here: [IC NNS Proposal Proposal for version 7147f471c7ac27f518e6c0eeb2015952b5e93e1b submitted with ID 135421](https://dashboard.internetcomputer.org/proposal/Proposal for version 7147f471c7ac27f518e6c0eeb2015952b5e93e1b submitted with ID 135421).
Here is a summary of the changes since the last release:
Release Notes for release-2025-02-20_10-16-base (7147f471c7ac27f518e6c0eeb2015952b5e93e1b)
This release is based on changes since release-2025-02-13_03-06-base (2008d47a169c4984631c87f2efaa88798e6f14dc).
Please note that some commits may be excluded from this release if they’re not relevant, or not modifying the GuestOS image. Additionally, descriptions of some changes might have been slightly modified to fit the release notes format.
To see a full list of commits added since last release, compare the revisions on GitHub.
Features:
49d6101af
Consensus,Interface: Call crypto in vetKD payload builder (#3905)7dda5ff7f
Consensus,Interface: Don’t use rsync to copy the state during recoveries (#3853)3deb76dff
Consensus,Interface: Bitcoin serialize blocks first (#3919)5d0fcce40
Execution,Interface: Bump allowed code section size (#4012)20b0caf9e
Execution,Interface: Add a metric tracking Wasm code section sizes (#3983)396b461cd
Interface,Message Routing: Add size limits as fields to the stream builder (#3885)
Bugfixes:
4eec0b4b3
Consensus,Interface: Don’t panic in make_registry_cup (#3980)20b675c6e
Consensus,Interface: Don’t panic in get_dkg_summary_from_cup_contents (#3974)9d6eea446
Consensus,Interface: Use correct registry version to validate dealings inside of block payloads (#3944)0923aa8f3
Execution,Interface: Hook condition should be checked after every mgmt canister call (#3988)a286970c5
Owners: bump cloudflare-rs crate (#3927)
Chores:
7147f471c
Consensus,Interface: Allow any order of change actions in purging_non_finalized_blocks_test (#4033)43add58cb
Consensus,Interface: add some unit tests and a metric for how long it takes to fetch NNS delegations + how big they are (#4017)9ef5605e1
Consensus,Interface: Inline make_genesis_summary test function (#3970)d054caa61
Crypto: Update version of ic-ed25519 to 0.2 (#3946)882e7af8e
Crypto,Interface(crypto): Move getrandom wasm32-unknown-unknown workaround to packages (#3926)2fd87b60a
Crypto,Interface(crypto): Change key derivation used in VetKD to BLS12-381 hash_to_scalar (#3736)f577fe349
Execution,Interface: Upgrade Wasm crates to wasmtime 29 (#3929)59abceebc
Interface(Ledger): Update some comments (#3847)810eeb14c
Interface: use cdk::api::in_replicated_execution (#3949)6612119c3
Interface: Bump ic_cdk version (#3939)4d9768af1
Interface,Message Routing: Update debug assertions of Tip thread; flush PageMaps in make_unvalidated_checkpoint (#3950)711b78eb0
Owners: bump ic-http-gateway lib (#3995)4e132abd8
Node(IDX): Simplify versioning (#3984)483f05324
Node: Processes robust against restarts (#3693)1e014f09f
Node: Update Base Image Refs [2025-02-13-0813] (#3931)
Refactoring:
069dc97d0
Consensus,Interface: Extract common functionality of verifying NiDKG dealings (#3951)7d99df628
Execution,Interface: Remove install_code from production code and move it to the tests that use it (#4015)075a36404
Execution,Interface: Use two instances of the query service for queries and https outcall transform functions (#3992)b368e3de3
Execution,Interface: Take cycles from call context when a refund is to be returned (#3985)4627f3307
Execution,Interface: Move log_dirty_pages to the module where it’s used (#3957)57464b9ab
Execution,Interface: Simplify logic to get a CallOrigin from a Query (#3953)9747838c6
Execution,Interface: Rename reached to instructions_reached (#3952)125db7f4f
Execution,Interface: Check wasm execution output only in sandbox (#3728)cba557d53
Node: check-hardware.sh (#3679)
Tests:
Full list of changes (including the ones that are not relevant to GuestOS) can be found on GitHub.
IC-OS Verification
To build and verify the IC-OS disk image, run:
# From https://github.com/dfinity/ic#verifying-releases
sudo apt-get install -y curl && curl --proto '=https' --tlsv1.2 -sSLO https://raw.githubusercontent.com/dfinity/ic/7147f471c7ac27f518e6c0eeb2015952b5e93e1b/ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c 7147f471c7ac27f518e6c0eeb2015952b5e93e1b --guestos
The two SHA256 sums printed above from a) the downloaded CDN image and b) the locally built image, must be identical, and must match the SHA256 from the payload of the NNS proposal.
While not required for this NNS proposal, as we are only electing a new GuestOS version here, you have the option to verify the build reproducibility of the HostOS by passing --hostos
to the script above instead of --guestos
, or the SetupOS by passing --setupos
.