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 134185.
Here is a summary of the changes since the last release:
Release Notes for release-2024-11-14_03-07-base (cb3cb61009d904bcb726781ad379de10e1b745ff)
This release is based on changes since release-2024-11-07_03-07-base (f88938214b16584075196e13d0af7c50f671131a).
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:
675edd43b
Consensus,Interface: Reduce acceptable finalization-certification gap to one (#2565)c8cfedb4e
Execution,Interface: Measure block maker to induction / execution latency (#2498)9c2d3939f
Execution,Interface: EXC: Enable Wasm64 (#2562)72cf10cba
Execution,Interface: Measure per-canister mean ingress queue latency (#2511)5d68669c9
Execution,Interface: Make subnet replica version available to canisters via management API (#2202)44ab9f36f
Execution,Interface(fuzzing): Add a new fuzzer to fuzz system API calls via StateMachine tests (#1649)123cf77ac
Execution,Interface: Enable Canister Backtraces (#2403)f96077d44
Interface: rework ic-boundary CLI, bump ic-gateway (#2451)ed45bab1d
Interface,Message Routing: Lazy pagemaps (#1137)4e83be165
Interface,Node: refine config tool and add config versioning (#2299)b477d5932
Node: Move bootloader off dockerhub (#2593)32d152815
Node: Remove retries from docker build (#2500)01d3b177a
Node: install dante-server in base image (#2231)c582bfe2c
Node: Move bootloader off dockerhub (#2475)
Bugfixes:
bda7e8c90
Interface,Networking: drop the recv_stream before any calls to the send_stream on the receive side, also format correctly log statements so we can see the causes of the errors (#2591)e500f911f
Interface,Networking: reset send streams the futures get aborted and improve error reporting on the receive side of the quic transport (#2566)c578a156b
Interface,Networking: don’t add the peer id in the extensions for the rpc method (#2504)e5faeaaf7
Interface,Node(icos): Several testing and performance improvements to SetupOS (#2077)9c1e7fe78
Node: Depend on .git/index in commit_timestamp_txt (#2516)47a2a110a
Node: fix permissions for nftables and systemd-journald (#2488)fc375b15a
Node: revert “feat: Move bootloader off dockerhub (#2475)” (#2506)
Chores:
896cafb19
Consensus,Interface(idkg): Replace pseudo-random and pre-signature IDs in RequestId with single CallbackId (#2054)6034537f7
Execution,Interface: Guard node_metrics_history against ingress (#2549)3f7fcb995
Execution,Interface: EXC: Minor change to instruction benchmarks (#1546)7452471b7
Execution,Interface(fuzzing): enable canister sandboxing for fuzzers (#2513)8b01b687e
Interface: upgrade core crates (#2507)b1c0f8ccc
Interface: upgrade rust_decimal and rust_decimal_macros (#2508)073f73166
Interface,Message Routing: Remove old TODOs in the payload builder (#2538)2d68a2e31
Interface,Networking: improve error tracking in transport (#2552)3f1716678
Interface,Networking: another readability pass over quic transport (#2540)4bd76d3bc
Interface,Networking: add more documentation to the quic transport code and make some errors infallible (#2515)8b2932783
Node: Add logging to insert_hsm_if_necessary (#2577)7990ce66d
Node: Update Base Image Refs [2024-11-07-0808] (#2477)
Refactoring:
d7cac1965
Execution,Interface: Do not clone in ReplicatedState::get_ingress_status() (#2505)3c3d9cd36
Interface(crypto): move MasterPublicKeyId protobuf from registry/crypto to types (#2406)da0106cac
Node: create generate-ic-config.service (#2343)
Tests:
ae957017c
Consensus,Interface: Prepare cup_compatibility_test for removal of pb::TaggedNiDkgTranscript (#2537)3e0cf89b2
Execution,Interface(IDX): depend on the universal canister at run-time instead of at build-time (#2502)3ad26ca77
Interface(IDX): inline more NNS system-tests (#2574)
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/cb3cb61009d904bcb726781ad379de10e1b745ff/ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c cb3cb61009d904bcb726781ad379de10e1b745ff --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
.