SNS Updates: April 19

The NNS Team will be submitting the following proposals to publish new versions of SNS canisters to SNS-WASM this Friday, 2024-04-19. DFINITY plans to vote on these proposals the following Monday.

Additional Notes / Breaking Changes

This release contains a bug fix for Treasury Transfers in SNSes that have old swaps.

Proposals to be Submitted

Archive

## Proposal to Publish the SNS Archive Canister WASM to SNS-W
### Proposer: DFINITY Foundation
### Canister Type: archive
### Git Hash: 28acff64b0ddafa9cb71f6c8004619927efb101b
### New Wasm Hash: d298941debad43a590a808c02c2e582a68fa8400619d6ca9c78b81ba2f321eeb
---
## Features
- Add ICRC-3 support
## Release Notes
```
$ git log --format="%C(auto) %h %s" c70bc267dfdc1143d8af70b32a4b51619aa71b80..28acff64b0ddafa9cb71f6c8004619927efb101b --  ./rs/rosetta-api.rc1
 e3deff9075 Merge branch 'tim/rules-rust-up' into 'master'
 7957dab20c chore: rules_rust 0.33.0 -> 0.42.1
 a17194d698 test(rosetta): FI-1279: Change Rosetta tests to use pocket IC instead of ic-starter
 e9475596c3 Merge branch 'FI-1194' into 'master'
 97282de220 feat(icrc-index-ng): support ICRC-3
 00e10d3452 feat(ledger): Enable ICRC1 ledger to change archive options upon upgrades
 be2ab73ba3 chore(icrc-index-ng): test against ledger wo ICRC-3
 aa1cf77704 Merge branch 'maciej-crypto-lib' into 'master'
 9ad87c3ce2 chore(ICRC-Rosetta): replacing ic_canister_client_sender with ic_crypto_ed25519
 bf6691aa82 Merge branch 'rumenov/fxrewer' into 'master'
 bdef6e0e44 chore: Don't use the deprecated ReqwestHttpReplicaV2Transport and upgrade more crates to the newer reqwest version
 671c0fbb5c Merge branch 'mp_add_icrc3_to_icrc_ledger_supported_standards' into 'master'
 f4ec28ce08 chore(icrc-ledger): add icrc3 to supported standards
 e536a72af2 Merge branch 'FI-1273' into 'master'
 75b477a1eb fix: ICRC Archive icrc3_get_block should return at most 100 blocks
 7eb74e652e Merge branch 'rumenov/upgradereqwest' into 'master'
 d80c7a6359 chore: upgrade reqwest to the newest version where easily possible
 cd9a2faeb0 feat(icrc-ledger): add icrc3_get_blocks
 478571dfc5 fix: make time in StateMachine tests strictly monotone
 cb9f32fd6a fix(ICRC-Rosetta): disable flaky cli construction test
 c2c47c413b Merge branch 'dsharifi/async-trait-workspace-dep' into 'master'
 66b0b363cb chore: Move async-trait dependency to workspace
 856cc09fe7 Merge branch 'FI-1261' into 'master'
 294584d7af feat(icrc-ledger): partial ICRC-3 support in the ICRC Ledger
 52ff1f9010 Merge branch 'rumenov/axdep' into 'master'
 23eb0ca6f7 chore: strip the suffix of the newer axum package
 f7fd44a23a Merge branch 'maciej-cli-version' into 'master'
 4b9870933c chore(Rosetta): update rosetta cli to the latest version
 f539c05458 chore: Bump rust version to 1.77.1
 11a917017f Merge branch 'FI-1245' into 'master'
 d39f28fbdf feat(icrc-archive): support ICRC-3 in the ICRC Archive
 667f273c6c Merge branch 'FI-1132-use-axum-0-7-for-rs-rosetta-api-icrc-1-rosetta' into 'master'
 0db339f62c chore(FI-1132): bump axum and tower for rosetta
 58e1e9300f feat(ICRC-Rosetta): add rosetta CLI construction tests for icrc rosetta
 9021ced8dd chore(ICRC-Rosetta): CI Job for ICRC-Rosetta
 119f717a82 fix(ICRC-Rosetta): 0-based indexes of operations ids, remove related_operations
 27ae70a857 Merge branch 'maciej-cli-us' into 'master'
 997c8098bf fix(ICRC-Rosetta): use BigInt.to_string(), instead of format!() to create the Amount
 5b82fdc9ba Merge branch 'dimitris/remove-query-allocation' into 'master'
 86f4154583 (EXC-294) Remove remaining traces of unused query_allocation
 2ebeecf76b chore: Move assert_matches dependency to workspace
 5c141138cf Merge branch 'nhaimerl-check-block-indices' into 'master'
 b5a8b457a1 fix(ICRC-Rosetta): check fetched indcies
 c6cac84afd Merge branch 'nhaimerl-check-archive-ledger-id' into 'master'
 476033af31 fix(ICRC-Rosetta): check archive ledger
 7c6032cf38 Merge branch 'nhaimerl-changelog-icrc-rosetta' into 'master'
 ef4c5b24a9 chore(ICRC-Rosetta) add changelog file
 b412b79311 chore: Move `hex` dependency to workspace
 038340f611 chore: upgrade strum and use mockall version from workspace
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout 28acff64b0ddafa9cb71f6c8004619927efb101b
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/ic-icrc1-archive.wasm.gz
```

Governance

## Proposal to Publish the SNS Governance Canister WASM to SNS-W
### Proposer: DFINITY Foundation
### Canister Type: governance
### Git Hash: 28acff64b0ddafa9cb71f6c8004619927efb101b
### New Wasm Hash: 718068f22d7635a133b4398327210a9ff64675fc16599139df6931544472d653
---
## Features
- Bug fix for treasury transfers
## Release Notes
```
$ git log --format="%C(auto) %h %s" d7ddd2969837fc6c9c0b86d331f7bc61e9e78bd1..28acff64b0ddafa9cb71f6c8004619927efb101b --  ./rs/sns/governance
 7957dab20c chore: rules_rust 0.33.0 -> 0.42.1
 06bd506cbc refactor(EXC-1589): Convert directly from protobuf enum for CanisterInstallMode
 54893953c3 docs(sns): Improved comments per post-merge feedback on !18752
 1e8c07bae6 fix(sns): Make SNS governance use the sns_tokens_per_icp field when assessing SNS tokens (in the treasury).
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout 28acff64b0ddafa9cb71f6c8004619927efb101b
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/sns-governance-canister.wasm.gz
```

Index

## Proposal to Publish the SNS Index Canister WASM to SNS-W
### Proposer: DFINITY Foundation
### Canister Type: index
### Git Hash: 28acff64b0ddafa9cb71f6c8004619927efb101b
### New Wasm Hash: 42b151e5fff6ec07be1a04ccb01f38fedbda48e5ca092d6e4b6b66506393e2e9
---
## Features
- Add ICRC-3 support
## Release Notes
```
$ git log --format="%C(auto) %h %s" c70bc267dfdc1143d8af70b32a4b51619aa71b80..28acff64b0ddafa9cb71f6c8004619927efb101b --  ./rs/rosetta-api.rc1
 e3deff9075 Merge branch 'tim/rules-rust-up' into 'master'
 7957dab20c chore: rules_rust 0.33.0 -> 0.42.1
 a17194d698 test(rosetta): FI-1279: Change Rosetta tests to use pocket IC instead of ic-starter
 e9475596c3 Merge branch 'FI-1194' into 'master'
 97282de220 feat(icrc-index-ng): support ICRC-3
 00e10d3452 feat(ledger): Enable ICRC1 ledger to change archive options upon upgrades
 be2ab73ba3 chore(icrc-index-ng): test against ledger wo ICRC-3
 aa1cf77704 Merge branch 'maciej-crypto-lib' into 'master'
 9ad87c3ce2 chore(ICRC-Rosetta): replacing ic_canister_client_sender with ic_crypto_ed25519
 bf6691aa82 Merge branch 'rumenov/fxrewer' into 'master'
 bdef6e0e44 chore: Don't use the deprecated ReqwestHttpReplicaV2Transport and upgrade more crates to the newer reqwest version
 671c0fbb5c Merge branch 'mp_add_icrc3_to_icrc_ledger_supported_standards' into 'master'
 f4ec28ce08 chore(icrc-ledger): add icrc3 to supported standards
 e536a72af2 Merge branch 'FI-1273' into 'master'
 75b477a1eb fix: ICRC Archive icrc3_get_block should return at most 100 blocks
 7eb74e652e Merge branch 'rumenov/upgradereqwest' into 'master'
 d80c7a6359 chore: upgrade reqwest to the newest version where easily possible
 cd9a2faeb0 feat(icrc-ledger): add icrc3_get_blocks
 478571dfc5 fix: make time in StateMachine tests strictly monotone
 cb9f32fd6a fix(ICRC-Rosetta): disable flaky cli construction test
 c2c47c413b Merge branch 'dsharifi/async-trait-workspace-dep' into 'master'
 66b0b363cb chore: Move async-trait dependency to workspace
 856cc09fe7 Merge branch 'FI-1261' into 'master'
 294584d7af feat(icrc-ledger): partial ICRC-3 support in the ICRC Ledger
 52ff1f9010 Merge branch 'rumenov/axdep' into 'master'
 23eb0ca6f7 chore: strip the suffix of the newer axum package
 f7fd44a23a Merge branch 'maciej-cli-version' into 'master'
 4b9870933c chore(Rosetta): update rosetta cli to the latest version
 f539c05458 chore: Bump rust version to 1.77.1
 11a917017f Merge branch 'FI-1245' into 'master'
 d39f28fbdf feat(icrc-archive): support ICRC-3 in the ICRC Archive
 667f273c6c Merge branch 'FI-1132-use-axum-0-7-for-rs-rosetta-api-icrc-1-rosetta' into 'master'
 0db339f62c chore(FI-1132): bump axum and tower for rosetta
 58e1e9300f feat(ICRC-Rosetta): add rosetta CLI construction tests for icrc rosetta
 9021ced8dd chore(ICRC-Rosetta): CI Job for ICRC-Rosetta
 119f717a82 fix(ICRC-Rosetta): 0-based indexes of operations ids, remove related_operations
 27ae70a857 Merge branch 'maciej-cli-us' into 'master'
 997c8098bf fix(ICRC-Rosetta): use BigInt.to_string(), instead of format!() to create the Amount
 5b82fdc9ba Merge branch 'dimitris/remove-query-allocation' into 'master'
 86f4154583 (EXC-294) Remove remaining traces of unused query_allocation
 2ebeecf76b chore: Move assert_matches dependency to workspace
 5c141138cf Merge branch 'nhaimerl-check-block-indices' into 'master'
 b5a8b457a1 fix(ICRC-Rosetta): check fetched indcies
 c6cac84afd Merge branch 'nhaimerl-check-archive-ledger-id' into 'master'
 476033af31 fix(ICRC-Rosetta): check archive ledger
 7c6032cf38 Merge branch 'nhaimerl-changelog-icrc-rosetta' into 'master'
 ef4c5b24a9 chore(ICRC-Rosetta) add changelog file
 b412b79311 chore: Move `hex` dependency to workspace
 038340f611 chore: upgrade strum and use mockall version from workspace
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout 28acff64b0ddafa9cb71f6c8004619927efb101b
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/ic-icrc1-index-ng.wasm.gz
```

Ledger

## Proposal to Publish the SNS Ledger Canister WASM to SNS-W
### Proposer: DFINITY Foundation
### Canister Type: ledger
### Git Hash: 28acff64b0ddafa9cb71f6c8004619927efb101b
### New Wasm Hash: 68e1d5dc52b2e825941f61019912946f605f9601dcdd4e483cd7ee791935ec50
---
## Features
- Add ICRC-3 support
## Release Notes
```
$ git log --format="%C(auto) %h %s" 300dc603a92b5f70dae79229793c902f346af3cc..28acff64b0ddafa9cb71f6c8004619927efb101b --  ./rs/rosetta-api.rc1 ./rs/rosetta-api/ledger_core ./rs/rosetta-api/ledger_canister_core
 e3deff9075 Merge branch 'tim/rules-rust-up' into 'master'
 7957dab20c chore: rules_rust 0.33.0 -> 0.42.1
 a17194d698 test(rosetta): FI-1279: Change Rosetta tests to use pocket IC instead of ic-starter
 e9475596c3 Merge branch 'FI-1194' into 'master'
 97282de220 feat(icrc-index-ng): support ICRC-3
 00e10d3452 feat(ledger): Enable ICRC1 ledger to change archive options upon upgrades
 be2ab73ba3 chore(icrc-index-ng): test against ledger wo ICRC-3
 aa1cf77704 Merge branch 'maciej-crypto-lib' into 'master'
 9ad87c3ce2 chore(ICRC-Rosetta): replacing ic_canister_client_sender with ic_crypto_ed25519
 bf6691aa82 Merge branch 'rumenov/fxrewer' into 'master'
 bdef6e0e44 chore: Don't use the deprecated ReqwestHttpReplicaV2Transport and upgrade more crates to the newer reqwest version
 671c0fbb5c Merge branch 'mp_add_icrc3_to_icrc_ledger_supported_standards' into 'master'
 f4ec28ce08 chore(icrc-ledger): add icrc3 to supported standards
 e536a72af2 Merge branch 'FI-1273' into 'master'
 75b477a1eb fix: ICRC Archive icrc3_get_block should return at most 100 blocks
 7eb74e652e Merge branch 'rumenov/upgradereqwest' into 'master'
 d80c7a6359 chore: upgrade reqwest to the newest version where easily possible
 cd9a2faeb0 feat(icrc-ledger): add icrc3_get_blocks
 478571dfc5 fix: make time in StateMachine tests strictly monotone
 cb9f32fd6a fix(ICRC-Rosetta): disable flaky cli construction test
 c2c47c413b Merge branch 'dsharifi/async-trait-workspace-dep' into 'master'
 66b0b363cb chore: Move async-trait dependency to workspace
 856cc09fe7 Merge branch 'FI-1261' into 'master'
 294584d7af feat(icrc-ledger): partial ICRC-3 support in the ICRC Ledger
 52ff1f9010 Merge branch 'rumenov/axdep' into 'master'
 23eb0ca6f7 chore: strip the suffix of the newer axum package
 f7fd44a23a Merge branch 'maciej-cli-version' into 'master'
 4b9870933c chore(Rosetta): update rosetta cli to the latest version
 f539c05458 chore: Bump rust version to 1.77.1
 11a917017f Merge branch 'FI-1245' into 'master'
 d39f28fbdf feat(icrc-archive): support ICRC-3 in the ICRC Archive
 667f273c6c Merge branch 'FI-1132-use-axum-0-7-for-rs-rosetta-api-icrc-1-rosetta' into 'master'
 0db339f62c chore(FI-1132): bump axum and tower for rosetta
 58e1e9300f feat(ICRC-Rosetta): add rosetta CLI construction tests for icrc rosetta
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout 28acff64b0ddafa9cb71f6c8004619927efb101b
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/ic-icrc1-ledger.wasm.gz
```

can you explain in laymans words what bugs to fix and why it matters

@dao1 Thanks for catching, I had intended to add this link to the above description.

1 Like