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 134250.
Here is a summary of the changes since the last release:
Release Notes for release-2024-11-21_03-11-base (a3478d571670053ebd09b9771bec489ef69425fa)
This release is based on changes since release-2024-11-14_03-07-base (cb3cb61009d904bcb726781ad379de10e1b745ff).
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.
This release diverges from the latest release. Merge base is 13c0601e09de77b2011f5282b175d569c4a2bb6a. Changes were removed from this release.
Features:
f3bb40251
Consensus,Interface: Instrument payload size and batch delivery interval (#2669)e44d2bc85
Crypto,Interface(crypto): create VetKdProtocol trait (#2569)be026d014
Crypto,Interface(crypto): Use NiDkg-specific MasterPublicKeyId in NiDkgTag (#2620)af542cdad
Crypto,Interface(crypto): Extend NiDkgTag with HighThresholdForKey variant (#2445)a3478d571
Execution,Interface: Evict sandboxes based on the available memory (#2651)caca44da3
Execution,Interface: Add vetKeys related management canister endpoints (#2633)a1e516f92
Execution,Interface: Evict sandboxed based on scheduler priorities (#2590)826d9a503
Execution,Interface: Restrict legacy ICQC code to one subnet (#2647)77164cdf7
Execution,Interface: Penalize canisters at the end of the round (#2601)e391f4cdf
Execution,Interface: Define and enforce callback limits (#1838)1ee1fe368
Execution,Interface: Don’t apply priority credit on abort (#2597)f8c4eb15e
Interface,Node(node): add node_reward_type to config tool (#2641)1cebd7342
Node: Update GuestOS base images with 6.11 kernel (#2667)4e46b92fc
Node: Add node_reward_type to config.ini (#1787)
Bugfixes:
338b77f6c
Consensus,Interface(consensus): Don’t increase the notary delay during upgrades (#2677)545f2fad6
Consensus,Interface: Handle ChainKeyInitializations conversion errors (#2635)9870f1ea8
Execution,Interface: Correctly observe block maker to induction latency (#2663)a078ed82b
Interface: stop doing u32 subtraction in bitcoin headers validation (#2634)2902a2a37
Interface,Networking: increase the keep alive probes. (#2713)b679ad3a3
Interface,Networking: Remove the async lock in the AdapterMetricsRegistry (#2613)1c2346cab
Node: HSM onboarding (#2636)
Benchmarking:
Chores:
9732c2c26
Consensus,Interface(consensus): Remove a no longer needed metric (#2679)85c272c78
Consensus,Interface(consensus): Remove some clones from ingress selector (#2627)5a5e0be15
Consensus,Interface(node): Add HostOS console message clarifying onboarding success (#2640)87270d904
Consensus,Interface: Avoid handling VetKdKeyIds in the IDKG component (#2388)659d9b143
Execution,Interface: Fix default scheduler priority in evict (#2719)5813a429f
Execution,Interface: Rename and test routing function for vetKD (#2680)2f00d6815
Execution,Interface: Optimize evict_sandbox_processes (#2653)a10fbc291
Execution,Interface(fuzzing): Reconstruct system API imports using Wasmtime::Linker (#2575)0d14c11bd
Execution,Interface,Message Routing: fixing typos and cleanups (#2682)0eedbb674
Interface,Message Routing: Always use request metadata in backward compatibility test (#2690)aacbed376
Interface,Message Routing: Trim canonical state framework (#2539)7dd4dfe62
Interface,Networking: add a jaeger exporter package/crate (#2691)8b94d60b6
Interface,Networking: upgrade opentelemetry and num_cpus crates (#2656)45dca07dd
Interface,Networking: Do not shutdown the joinset when the event loop exists in the request handler (#2649)72ec446d6
Interface,Networking: Add additional logging in the case when the version message is not valid (#2596)f96dec1db
Interface,Node(node): Remove setupos/hostos network bonding and clean up docs (#2579)c43bd9b0c
Owners: Bump ic-cdk-timers (#2654)7dd4fd0f8
Node: Update Base Image Refs [2024-11-20-2036] (#2727)c00695e45
Node: Update Base Image Refs [2024-11-20-0147] (#2705)0d127b8fd
Node: Add log_and_halt_installation_on_error sleep (#2605)4c6c5dae2
Node: Update Base Image Refs [2024-11-14-0808] (#2606)
Refactoring:
81686f56f
Crypto,Interface(crypto): Move ExtendedDerivationPath to ic_types::crypto (#2676)3397eb8bf
Crypto,Interface(crypto): Inline ThresholdSigDataStoreImpl::new_with_max_size (#2625)dab484292
Interface,Node(node): rename use_nns_public_key and use_node_operator_private_key (#2700)03f3debdf
Node: move node_index to ic.json (#1947)
Tests:
d0acab2b2
Interface: Inline SNS system-tests (#2646)
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/a3478d571670053ebd09b9771bec489ef69425fa/ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c a3478d571670053ebd09b9771bec489ef69425fa --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
.