Proposal to elect new release rc--2024-08-21_15-36

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 132148.

Here is a summary of the changes since the last release:

Release Notes for release-2024-08-21_15-36-base (b0ade55f7e8999e2842fe3f49df163ba224b71a2)

This release is based on changes since release-2024-08-15_01-30-base (6968299131311c836917f0d16d0b1b963526c9b1).

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:

  • 0d99d0d81 Consensus,Interface(consensus): Implement artifact pool bounds for equivocation proofs (#974)
  • faacac310 Consensus,Interface(consensus): Purge equivocation proofs below and at finalized height (#927)
  • 20e19f491 Crypto: remove ic-signature-verification’s dependency on rand (#994)
  • 4897fd255 Interface(PocketIC): subnet read state requests (#968)
  • 2d220277b Interface: ValidateEq derivation and annotation (#808)

Bugfixes:

  • 2998e00de Consensus,Interface: remove the attribute concept (#392)
  • f04c0ce20 Execution,Interface,Message Routing: Fix bug in StreamsTesting fixture (#1014)
  • dada69e8f Interface: method not supported error message (#921)

Performance improvements:

  • 6ec7a4977 Interface,Node: Optimize the inject_files tool (#957)
  • 8e149ef62 Interface,Node: Optimize the implementation of dflate and add a test (#954)

Chores:

  • 510fcac2f Consensus,Interface: Introduce the ArtifactMutation type (#929)
  • 43c59b2ff Consensus,Interface: Make Cannot report master public key changed metric warning less noisy (#986)
  • 87b72bec4 Consensus,Interface(IDX): remove custom lmdb-rkv build (#905)
  • 435bdcc9f Consensus,Interface,Networking: purge before shares creation (#882)
  • 68586671c Consensus,Interface,Networking(consensus): [Con-1229] stash more shares (#902)
  • db118af8a Execution,Interface(consensus): [Con-1228] bound http outcalls (#859)
  • 234ca3809 Interface(PocketIC): do not use no_op_logger and MetricsRegistry::default in PocketIC (#965)
  • b0aef30f1 Interface: upgrade deps (#907)
  • 7e53880dd Interface,Message Routing(crypto): Extend state_machine_tests to support Schnorr signatures (#912)
  • 71b025f32 Interface,Networking: remove DummySocket from quic transport (#973)
  • c9e692e3d Owners(ic): Bump ic-cdk to v0.13.5 (#998)
  • fe29bbcca Node: Fix a typo in SetupOS (#1016)
  • 11a4f14d8 Node: Update Base Image Refs [2024-08-15-0808] (#948)

Refactoring:

  • dcbfc2217 Interface: don’t pull the registry canister as part of the GuestOS (#494)
  • 16b8ecb3f Interface,Message Routing: Remove PageMapType::get_mut (#925)

Tests:

  • 84d011ca5 Execution,Interface(EXE): Add more tests for Wasm memory limit (#995)
  • 3fa04ed34 Execution,Interface,Message Routing: Clean up CanisterQueues proptests (#969)

Other changes (either not directly modifying GuestOS or not relevant)
  • 366404d06 Interface(nns): Add date filtering to list_node_provider_rewards (#979) [AUTO-EXCLUDED:filtered out by package filters]
  • af6561dc3 Interface(nns): Add endpoint to get historical node provider rewards (#941) [AUTO-EXCLUDED:filtered out by package filters]
  • b4ccc86f8 Interface(nns): Change InstallCode proposal to always return wasm_module_hash and arg_hash (#937) [AUTO-EXCLUDED:filtered out by package filters]
  • 4039ea27e Consensus,Interface,Node: add a per-boundary-node rate-limit of 1000 update calls per second (#922) [AUTO-EXCLUDED:filtered out by package filters]
  • 528e08c1f Execution,Interface,Message Routing: Convert proptests to test strategy (#978) [AUTO-EXCLUDED:filtered out by package filters]
  • 2251ac411 Interface(nns): Make the comments on the topics and proposals consistent with NNS Dapp and ICP Dashboard (#1003) [AUTO-EXCLUDED:filtered out by package filters]
  • 1fd18580d Interface(ICP-Ledger): remove maximum number of accounts (#972) [AUTO-EXCLUDED:filtered out by package filters]
  • 8e4ffb731 Interface(nns): Cleanup NNS Governance API type definitions (#961) [AUTO-EXCLUDED:filtered out by package filters]
  • 9edfbdc4b Interface,Message Routing: Add snapshots to subnet split manifest test (#975) [AUTO-EXCLUDED:filtered out by package filters]
  • 56551ce78 Consensus,Interface(ic-backup): Purge snapshots from the hot storage more aggresively (#1008) [AUTO-EXCLUDED:not a GuestOS change]
  • 63345d6a4 Interface(PocketIC): specify replica log level of PocketIC instances (#971) [AUTO-EXCLUDED:not a GuestOS change]
  • c16696f93 Interface(ckerc20): NNS proposal to add ckEURC (#946) [AUTO-EXCLUDED:not a GuestOS change]
  • 268967ec9 Interface(PocketIC): VerifiedApplication subnets (#963) [AUTO-EXCLUDED:not a GuestOS change]
  • 96cf599a6 Interface(ICP-Rosetta): add symbol check (#884) [AUTO-EXCLUDED:not a GuestOS change]
  • 6621525c0 Interface(nns): Flag for SetVisibility Proposals. (#887) [AUTO-EXCLUDED:not a GuestOS change]
  • 52a3d3659 Interface(PocketIC): artificial delay in auto progress mode of PocketIC (#970) [AUTO-EXCLUDED:not a GuestOS change]
  • b92f83285 Owners: slack failover data store (#697) [AUTO-EXCLUDED:not a GuestOS change]
  • 1ad0ad696 Owners: add ic-gateway to dependency scanning (#964) [AUTO-EXCLUDED:not a GuestOS change]
  • 449066c40 Consensus,Interface(IDX): Fix nix MacOs build for rocksdb dependency (#993) [AUTO-EXCLUDED:not a GuestOS change]
  • 74dae345f Crypto,Interface: fix crypto cargo build (#934) [AUTO-EXCLUDED:not a GuestOS change]
  • c7b8d3d8b Interface(PocketIC): HTTP gateway crash (#1029) [AUTO-EXCLUDED:not a GuestOS change]
  • 688137852 Interface(PocketIC): HTTP gateway can handle requests with IP address hosts (#1025) [AUTO-EXCLUDED:not a GuestOS change]
  • d5f514da6 Interface: adjust metric names in p2p dashboard (#933) [AUTO-EXCLUDED:not a GuestOS change]
  • 12d1e6e9d Interface,Networking: simulated network didn't correctly apply all tc filters (#928) [AUTO-EXCLUDED:not a GuestOS change]
  • b0ade55f7 Owners(PSEC): check environment in periodic job before running [AUTO-EXCLUDED:not a GuestOS change]
  • f72e44ad0 Owners: check first block if text field doesn't contain prefix (#1034) [AUTO-EXCLUDED:not a GuestOS change]
  • b0c612da4 Owners(IDX): syntax error workflow daily (#1018) [AUTO-EXCLUDED:not a GuestOS change]
  • dc960ac1b Owners(IDX): update darwin trigger logic (#1013) [AUTO-EXCLUDED:not a GuestOS change]
  • 6392b8eae Owners(IDX): add cache permissions [RUN_ALL_BAZEL_TARGETS] (#984) [AUTO-EXCLUDED:not a GuestOS change]
  • 9bd0a407b Owners(ci): Use .zst instead of .gz disk images in more places (#958) [AUTO-EXCLUDED:not a GuestOS change]
  • 975199acb Owners(IDX): remove darwin container check (#950) [AUTO-EXCLUDED:not a GuestOS change]
  • b3ee4e736 Node: Remove dead boundary-guestos files (#962) [AUTO-EXCLUDED:not a GuestOS change]
  • df4aca5dd Consensus,Node: Update Mainnet IC revisions file (#1010) [AUTO-EXCLUDED:not a GuestOS change]
  • 3340b3656 Crypto: bump ic-signature-verification version to 0.2 (#1006) [AUTO-EXCLUDED:not a GuestOS change]
  • dbf9b25d1 Interface(PocketIC): block in instance deletion until PocketIC is dropped (#1030) [AUTO-EXCLUDED:not a GuestOS change]
  • f19e510e5 Interface(ICP-Rosetta): icp rosetta database table consolidation (#872) [AUTO-EXCLUDED:not a GuestOS change]
  • 3c7b7f2ca Interface: Remove obsolete and unused deployment in NNS canister_ids.json (#931) [AUTO-EXCLUDED:not a GuestOS change]
  • 1e5a4012d Interface: optimize NNS canister builds again (#952) [AUTO-EXCLUDED:not a GuestOS change]
  • 7b3981ca0 Owners(IDX): remove channel alerts (#1033) [AUTO-EXCLUDED:not a GuestOS change]
  • 545a018dc Owners: Bump governance-canister / governance-canister_test compressed WASM size limit from 1.3 to 1.4 MB (#1012) [AUTO-EXCLUDED:not a GuestOS change]
  • 830d1b9f3 Owners(ic): bump ic-cdk v0.12 \& v0.14 (#1009) [AUTO-EXCLUDED:not a GuestOS change]
  • baeef4d7b Owners(IDX): update namespace jobs to trigger on pull_request (#996) [AUTO-EXCLUDED:not a GuestOS change]
  • 6b6c8477c Owners(IDX): bazel --profile\=profile.json (#901) [AUTO-EXCLUDED:not a GuestOS change]
  • 6f444bdf4 Owners(IDX): Add languages team channel (#989) [AUTO-EXCLUDED:not a GuestOS change]
  • bf0c93467 Owners(dependency-mgmt): Check node version compatibility before performing the scan (#793) [AUTO-EXCLUDED:not a GuestOS change]
  • ecf68e296 Owners: set networking team as codeowner for network simulation module (#945) [AUTO-EXCLUDED:not a GuestOS change]
  • 24d732eb1 Interface(ckerc20): Simplify return type of eth_rpc::call (#853) [AUTO-EXCLUDED:not a GuestOS change]
  • 9a68c3bcf Interface,Message Routing: Use Testing Constants as Subnet IDs in Messaging Integration Tests (#936) [AUTO-EXCLUDED:not a GuestOS change]
  • 676c5448f Interface(ICRC_ledger): Add downgrade to mainnet version for SNS ledgers (#967) [AUTO-EXCLUDED:not a GuestOS change]
  • 039322fe3 Interface(consensus): Use the synchronous call-v3 agent for consensus performance test (#910) [AUTO-EXCLUDED:not a GuestOS change]
  • b388425da Interface(icrc_ledger): Add ledger state verification for golden state upgrade test of SNS ledger (#720) [AUTO-EXCLUDED:not a GuestOS change]
  • a2f7d24f4 Interface,Networking(network-simulation): Increase transmission control buffers (#908) [AUTO-EXCLUDED:not a GuestOS change]

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/b0ade55f7e8999e2842fe3f49df163ba224b71a2/ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c b0ade55f7e8999e2842fe3f49df163ba224b71a2

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.

5 Likes

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 132149.

Here is a summary of the changes since the last release:

Release Notes for release-2024-08-21_15-36-canister-snapshots (3d6a76efba59d6f03026d6b7c1c9a1dfce96ee93)

This release is based on changes since release-2024-08-21_15-36-base (b0ade55f7e8999e2842fe3f49df163ba224b71a2).

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:

  • 3d6a76efb Execution,Interface,Networking: Enable canister snapshots

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/3d6a76efba59d6f03026d6b7c1c9a1dfce96ee93/ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c 3d6a76efba59d6f03026d6b7c1c9a1dfce96ee93

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.

2 Likes

Thanks for this release @DRE-Team!

Presumably these were picked up as GuestOS changes due to the changes to rs/http_endpoints/public/src/lib.rs and other dependencies? This is the same situation as mentioned last week, where it was strongly agreed that this is a problem.

I’m still not clear on what the plan is for solving this:

This is one of the reasons I think that IC engineers should be asked to label their commits with the affected deployment targets (making them mindful of the change logs their commit will show up in, and then consider whether that would be appropriate).

I think there must be a misunderstanding, I’m not talking about taking anything away (I can’t see how it would be ‘worse than what we have now’). If they don’t do this having been asked, that’s a separate issue. Anticipation that they won’t do this despite being asked isn’t a good reason not to just ask… :neutral_face: (they may not be aware that this is an issue - one that you strongly agree with).

For anyone interested @Luka was kind enough to share this with me on slack the other day:

I think it’s really useful to easily see a list of ‘Other changes (either not directly modifying GuestOS or not relevant)’, and a justification for why each commit is not regarded as relevant. Thanks a lot for working on this @Luka!


The boundary node GuestOS commit is interesting, which as I understand it, it regarded as a separate deployment target that is not elected nor deployed via NNS proposal. This commit does stand to affect replica GuestOS indirectly though (by throttling update calls). I’ve posted a question about this here for anyone who’s interested.

1 Like