We are happy to announce that voting is now open for a new IC release and the retirement of old replica version d73659a2baf78302b88e29e5c2bc891cde1e3e0b.
The NNS proposal is here: IC NNS Proposal 126365 .
Here is a summary of the changes since the last release:
Features:
[0b7705c] Execution: enable node metrics API endpoint
[eb283ab] Node: Check subnet registry for sev_status feature
[1131bd8] Node: Add ipv4 DNS configuration hard-coding
Bugfixes:
[d619681] Consensus(ecdsa): Do not purge quadruples and xnet reshares after unsuccessful key transcript reshares
[3a29469] Execution,Message Routing: Make BlockmakerMetricsTimeSeries::metrics_since() not include the running stats.
[2697ffd] Networking(consensus_manger): Use lowercase uri paths in consensus manager
[bfdb038] Networking(consensus_manger): Stop downloading artifacts that transitioned to stash
[44dccfc] Networking(p2p-consensus): Remove expectation for sender when removing adverts on receive side
[948d57c] Networking(state_sync_manger): fix potential underflow when counting active downloads.
Performance improvements:
[aa4acb9] Crypto: implement faster deserialization of ExtendedDerivationPath
Chores:
[8914ae4] Consensus: Add a comment on the use of consensus_time
[f1e393d] Crypto: Avoid panicking when computing KeyId from CspPublicCoefficients
[afccaa5] Crypto: use strong types in previously aliased ByteBuf’s
[8f489b3] Execution(fuzzing): Switch to interface spec source of truth
[b08561c] Message Routing: Write only two overlay files per checkpoint
[d845f5a] Message Routing: Remove more unused p2p-statesync code
[5c0d5ec] Message Routing,Runtime: Fix typos flagged by CodeGov
[f8cf757] Networking: add option to enable to new consensus p2p per client
[9717951] Networking(p2p-consensus): Tune exponential backoff policy for P2P
[65c322c] Networking(p2p-consensus): Add error log on termination of send-side event loop
[717e423] Networking(https_outcalls): fix typo in user agent constant
[d8a0c1d] Runtime: Update comment for global section validation
Refactoring:
[be9898f] Consensus(http_utils): Switch FileDownloader from hyper to reqwest
[783818a] Networking: remove the usage of ArtifactChunk from the statesync/p2p interface
[c823397] Networking: delete more unused code related to chunkable artifacts
Tests:
[80136cf] Crypto: make CertBuilder test utility’s RNG configurable
[0a13ff3] Crypto: Make PRNG tests immune to changes to ReplicaVersion
[8e79d77] Networking(consensus_manger): add load test with random event order
[713b82c] Networking(1503): bitcoin adapter test with testnet data
[991a2c0] Node,Networking(sev): Fix reassignment test
Other changes:
[d17a4eb] Execution,Runtime: Test that install_chunked_code is recorded in history
[811466c] Execution,Runtime: Refactor JSON generation in fees_and_limits
[f48069c] Networking: chore(p2p-consensus): Improve function names and error logs of the send side slot table
[0790de6] Networking: update slog to the newest version and use workspace version
[b49b8ff] Node: Updating container base images refs [2023-11-30-0812]
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.
It checks out. Got a question, looking at the repo-check script we can see it uses a temp directory that is only kept if we specify the debug mode. But there is around 44 GB kept in cache as you can see in the attached print screen. Any reason for that ? Like if you run the second time I saw it checks for cache and it takes only a few minutes, but other than that I could see an issue over time if not removed manually. Thanks
At the time of this comment on the forum there are still 2 days left in the voting period, which means there is still plenty of time for others to review the proposal and vote independently.
We had several very good reviews of the Release Notes on these proposals by @Zane, @cyberowl, @ZackDS, @massimoalbarello, and @ilbert. The IC-OS Verification was also performed by @Gekctek and @tiago89. I recommend folks talk a look and see the excellent work that was performed on these reviews by the entire CodeGov team. Feel free to comment here if you have any questions or suggestions.
RECRUITING NOTE:
The CodeGov Project is offering attractive bounty payments to experienced Rust developers who are interested in spending a few hours each week reviewing Replica Version Management proposals, which are code changes that are submitted to the Internet Computer Protocol (ICP) governance system for adoption or rejection. We do this through IC-OS Verification and by performing a sanity check on the Release Notes. Our votes are cast according to the findings of our reviewers. Proposals are usually submitted on a Friday and we complete our reviews within 48 hours. Each reviewer posts a summary of their findings in the CodeGov portal on DSCVR.one and the bounty payment is made using the tipping feature of DSCVR with ckBTC equivalent to USD. The bounty is always announced in this bounty payment post on the portal and the deliverables for each review can be found on the codegov.org website. It is a requirement to Apply on the codegov.org website and to complete either Form W-9 or Form W-8BEN in order to get paid the bounty. Please send me a DM or an email at codegov.org@gmail.com if you would like to discuss this opportunity further.
Is there something different about the IC-OS Verification script this week? I had build failures on each proposal (126365 and 126366) that were related to insufficient storage. I haven’t had those kinds of errors since we switched from Docker on a virtual machine to Podman on wsl many months ago. I had to clear my /tmp folder and my ~/.cache/bazel/_bazel_ubuntu folders in order for the build to complete successfully. It seems odd because several others reported build failures due to cache or storage issues. Once these folder were cleared and I rebooted, I was finally able to successfully build and verify.
There usually is but mainly on important stuff that Wenzel summarizes from the reviews. For now just delete the cache manually will create a script with Tiago for next release and share it in the CodeGov OC.
The change adds an unsafe_drop_stable_memory argument to install_code that frees the stable memory of a canister after execution of an install/upgrade.
The motivation behind the change is to help Hot or Not (@saikatdas0790) to free the stable memory of their canisters after a misconfiguration in the dapp that unintentionally increased stable memory its canisters.
At the time of this comment on the forum there are still 2 days left in the voting period, which means there is still plenty of time for others to review the proposal and vote independently.