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 136223.
Here is a summary of the changes since the last release:
Release Notes for release-2025-04-11_13-20-base (579b8ba3a31341f354f4ddb3d60ac44548a91bc2)
This release is based on changes since release-2025-04-03_03-15-base (68fc31a141b25f842f078c600168d8211339f422).
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:
2439d8896
Consensus,Execution,Interface(MR): Enable best-effort calls everywhere (#4742)91398734c
Consensus,Interface: Remove the timeout of computing the state hash in ic-replay (#4572)d5d8d47cd
Execution,Interface: Disable canister backtrace when name section is missing (#4690)42466a65b
Execution,Interface: Read canister snapshot data (#4505)5d40b0f42
Execution,Interface: Prefetch pages backward (#4552)32082e416
Interface(ICRC_Ledger): Always return compliant certificate from ICRC ledger (#4504)412c839a0
Interface(node_reward): Add the basic calculation to the Node Reward Canister (#4628)
Bugfixes:
bb17ec5b9
Consensus,Interface: rename the orchestrator binary crate from ic_state_tool to orchestrator (#4659)ce2680374
Execution,Interface: Speed up wasm64 check (#4640)7a3acf623
Node: make danted restart when systemd-networkd is restarted (#4658)
Chores:
6845d8a7b
Consensus,Interface(orchestrator): add registry replicator task to the TaskTracker (#4710)28445da96
Consensus,Interface(orchestrator): Introduce a metric which keeps count of how many times an orchestrator task has panicked (#4656)139f7fa88
Consensus,Interface: log requests with invalid ingress expiry (#4518)2e4ded9e6
Crypto,Interface(crypto): Use ic-vetkd-utils for VetKD key derivation (#4692)aa3de32d8
Execution,Interface: Revert “feat: Introduce low bound for canister’s freezing threshold (#4401)” (#4783)3c5f07170
Execution,Interface: Fix a typo in call_or_task.rs (#4738)eecacca6c
Execution,Interface: Add metrics for reading wasm files in execution (#4627)f58a8dbc8
Execution,Interface: Fix typos in the scheduler (#4675)6903a663a
Execution,Interface: Remove in-memory compilation cache (#4522)9a69f7ef9
Execution,Interface,Message Routing: Track outgoing responses in streams (#4561)c3be0cb3f
Interface: Fix some typos in the comments on HypervisorError (#4631)47c52251c
Interface(crypto): Add VetKD to the state machine tests (#4625)76a8f390b
Interface,Node(node): fix config_types vm_nr_of_vcpus default (#4730)1eb5c2361
Interface,Node: support configuring number of vCPUs for GuestOS VM (#4622)2fbdb88dc
Owners: bump crossbeam-channel to 0.5.15 (#4767)47dce406c
Node: Update Base Image Refs [2025-04-10-0807] (#4756)0b43b5f69
Node: Update Base Image Refs [2025-04-09-0150] (#4735)6f712d318
Node: Update Base Image Refs [2025-04-08-0151] (#4702)bbc5097fc
Node: Update Base Image Refs [2025-04-04-0149] (#4648)0624a206e
Node: Update Base Image Refs [2025-04-03-0807] (#4637)
Tests:
29485b69f
Execution,Interface: Resurrect system_api tests (#4762)bd366ae95
Interface: ic-prep Add the data center records to the registry (#4694)
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, after installing curl if necessary (sudo apt install curl
), run:
# From https://github.com/dfinity/ic#verifying-releases
curl -fsSL https://raw.githubusercontent.com/dfinity/ic/master/ci/tools/repro-check | python3 - -c 579b8ba3a31341f354f4ddb3d60ac44548a91bc2 --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
.