Splice 0.8.0
Scan App will no longer return featured app rights as part of the choice context for CC transfers and allocations. The vote to make this configuration effective will happen after the release. We expect the SVs will vote…
- A newer release in the 0.8 line: Splice 0.8.4
- Newest Splice: Splice 0.9.4
Runs on Canton 3.5.16
Open the release notes (opens in a new tab)docs.canton.network
-
Summary of Breaking Changes:
Details:
-
Breaking API Changes:
- Scan App will no longer return featured app rights as part of the choice context for CC transfers and allocations. The vote to make this configuration effective will happen after the release. We expect the SVs will vote on this configuration change as part of the breaking config changes event associated with this release. Validators must upgrade to this version before this change takes effect.
-
The deprecated
TransferCommandfunctionality enabled bycanton.validator-apps.validator_backend.enable-deprecated-transfer-command-support=truehas been fully removed.
-
Protocol Changes:
- (*) The protocol version remains 35, but the ordering layer has been prepared for a switch from CometBFT to CantonBFT. This switch will require an LSU. The LSU to implement this switch on DevNet has already taken place, which has allowed early testing. Final confirmation that this switch will be rolled out to TestNet and MainNet as part of this release will be announced soon.
-
Daml Model Changes:
-
Add Daml support for delaying minting of development fund coupons and for blacklisting development fund managers.
The vote to make this configuration effective will happen after the release. We expect the SVs to vote on this configuration change as part of the breaking config changes event associated with this release.
Applications that statically depend on
splice-amuletmust recompile against the new version before this change takes effect. - Add Daml support for SVs to coordinate switchover of configurations by voting on precise switchover times. We anticipate that the SVs and the Foundation may use this feature to vote on the delayed minting described above. Validators must upgrade to this version before this feature is used for the first time.
-
These changes require a Daml upgrade to the following versions:
-
Add Daml support for delaying minting of development fund coupons and for blacklisting development fund managers.
The vote to make this configuration effective will happen after the release. We expect the SVs to vote on this configuration change as part of the breaking config changes event associated with this release.
Applications that statically depend on
-
Breaking API Changes:
-
Upgrade Canton to
3.5.16. -
Postgres image in Compose, LocalNet & splice-postgres Helm chart
-
The default
imageNameof the postgres insplice-postgreshas changed fromimageName: "postgres:14"toimageName: "postgres:14.24-trixie". The image for Postgres 14 has been based on Debian Trixie since 14.18, released on 2025-05-08. If you were somehow using an older or non-trixie version of the postgres image, you might encounterlocale issues <https://wiki.postgresql.org/wiki/Locale_data_changes>_. In that case you should use a compatible version of the image you’re using. Two related reminders:- Postgres 14 is reaching end-of-life in November 2026, so you should plan to upgrade to Postgres 18.
-
The
splice-postgreschart is deprecated since Splice 0.6.13, so you should use something else.
-
The default
-
SV App
-
The public
/v0/dsoendpoint is deprecated and will be removed in 0.9.0 (see also the release notes for 0.5.5 for the original deprecation notice). Use the public/v0/dsoendpoint in the scan app if you need to fetch DSO info without SV operator credentials. A new/v1/dsoendpoint has been added that returns the same response as/v0/dsobut requires authorization as SV operator. -
Joining SVs now fetch DSO info during onboarding from a scan instance
(typically the sponsor’s) instead of the sponsor SV app’s deprecated public
/v0/dsoendpoint. The scan is configured via the new.joinWithKeyOnboarding.sponsorScanUrlHelm value. SVs who set the.joinWithKeyOnboardingkey config must set it before upgrading.
-
The public
-
Scan App
-
Breaking Scan will no longer return featured app rights as part of the choice context for CC transfers and allocations
once
no-featured-app-choice-contexthas been set insvOperationsSwitchOverTimesand the switchover time has been reached. This change was made to avoid apps accidentally not complying with the marker guidance set by the Canton foundation which requires precise control over the markers issued. If you really do intend to feature a CC transfer, you can query for the contract through/api/scan/v0/featured-apps/{provider_party_id}on Scan and add it to the choice context under thefeatured-app-rightchoice context key. Validators must upgrade to 0.8.0 before the SVs vote on setting thesvOperationsSwitchOverTimesfield or risk breakage as theDsoRulescontract cannot be downgraded once the field is set.
-
Breaking Scan will no longer return featured app rights as part of the choice context for CC transfers and allocations
once
-
CometBFT
- Increased default resources of watchdog and made it only query for metrics it needs.
- Daml
-
Add an optional
mintAfterfield toDevelopmentFundCoupon. AddminDevelopmentFundMintingDelayanddevelopmentFundManagerBlacklisttoAmuletConfig. The SVs need to set a minimum delay between coupon allocation and minting by the beneficiary. They can also block minting of coupons from blacklisted fund managers. This change addresses suggestion QS2 from Quantstamp in theCanton Coin 2026 audit <https://certificate.quantstamp.com/full/canton-coin-2026-audit/7719ab33-0012-4bb6-bf6c-ce3c0335a93d/index.html#suggestions-qs2>_. This release does not change existing behavior. Both config fields default to unset. The SVs enforce the minting delay when they setminDevelopmentFundMintingDelayto a non-zero value. They block minting of the coupons of a development fund manager when they add that manager todevelopmentFundManagerBlacklist. WhileminDevelopmentFundMintingDelaystays unset, callers can allocate coupons withoutmintAfterand mint them immediately, as before. Callers ofAmuletRules_AllocateDevelopmentFundCouponmust change their call sites before the SVs set a non-zero delay. After that, the choice rejects allocations that omitmintAfter. Coupons allocated before that vote have nomintAfter. A beneficiary can mint those coupons with no delay. -
Wallet UI
-
The development fund allocation form now has a
Mint Afterfield, which sets the earliest time at which the beneficiary can mint the coupon. While theminDevelopmentFundMintingDelaystays unset in theAmuletConfig, the field is optional and the coupons are allocated without a mint-after constraint. -
The development fund coupon list now shows a
Mint Aftercolumn.
-
The development fund allocation form now has a
-
Validator
-
breaking: The deprecated
TransferCommandfunctionality enabled bycanton.validator-apps.validator_backend.enable-deprecated-transfer-command-support=truehas been fully removed. Migrate to token standard transfers and remove the flag. -
The wallet endpoint
/v0/wallet/development-fund-coupons/allocateaccepts an optionalmintAfterfield, in epoch microseconds. Callers must set it once the SVs configure a non-zerominDevelopmentFundMintingDelay, otherwise the allocations will be rejected.
-
breaking: The deprecated
-
Helm
-
The node pods of the operator charts now accept a
priorityClassName, so operators can protect a node from eviction under resource pressure. It is unset by default, which leaves scheduling behaviour unchanged. -
The Postgres role and bootstrap database used by the validator and participant charts are
no longer hardcoded.
persistence.userandpersistence.bootstrapDatabaseNameare now honoured by thepg-initand wait containers, by the Postgres exporter sidecar, and — for the participant — by the Canton node itself, which previously always connected ascnadminregardless of the configured value. They default tocnadminandcantonnet, so rendered output is unchanged unless you set them. This matters for operators moving offsplice-postgresto a self-provisioned or managed Postgres, where acnadminsuperuser and acantonnetdatabase may not be available to create. The SV charts are not covered yet and still use the hardcoded values. -
All Splice Helm charts now set
automountServiceAccountToken: falseon the pods they deploy. Splice components do not use the Kubernetes API, so pods no longer receive an API-server credential by default; this reduces the impact of a compromised pod in clusters where permissions are bound to the namespace’sdefaultservice account. If your deployment relies on the mounted token, for example through a custom service account set viaserviceAccountName, you can restore the previous behavior by setting the newautomountServiceAccountTokenHelm value totrue. -
The (long unused)
splice-domainHelm chart is deprecated and will be removed in 0.9.0.
-
The node pods of the operator charts now accept a
-
SV UI
- The
AmuletRules_SetConfigproposal form can now setminDevelopmentFundMintingDelayanddevelopmentFundManagerBlacklist.
- The