Skip to content

Client v0.10.36: Centrifuge 1025 & Altair 1034

Compare
Choose a tag to compare
@wischli wischli released this 07 Mar 09:16
· 114 commits to main since this release
544ce02

Centrifuge 1025 - Release Notes Highlights

This release is packed with new features and a few breaking changes. Most notably, the definition of the NAV has changed. So far, the NAV represented the so called assets under management (abbreviated by AUM) which are represented by the evaluation of existing loans:

- NAV := NAV(Loans)

With the introduction of Pool Fees, the definition of the NAV needs to be extended due to the reducing effect which the sum of pending pool fees have on the pool valuation, i.e. they represent the negative part. Please note that the Pool Fees NAV does not include disbursement amounts which can be paid during epoch execution because these already reduce the reserve.

+ NAV := min(PoolReserve + NAV(Loans) - NAV(PoolFees), 0)

Please replace any existing reserve and NAV query with the new runtime API added in #1703:

let { navAum, navFees, reserve, total: navTotal } =
    await api.call.poolsApi.nav(poolId)

Please note that runtime API metadata is not included in the v14 metadata such that you need to add type and runtime API call decorations manually.

Features and breaking changes

  • Add Pool Fees (#1633, #1706, #1718)
  • Replace external oracle implementation with internal one called Oracles V2 (#1629, #1661, #1670, #1671, #1672)
  • Loans
    • Integrate Oracles V2 (#1658)
    • Add increase_debt (#1691)
    • Expand TransferDebt event info (#1653)
    • Add linear accrual on settlement price (#1739)
  • Orderbook
    • [BREAKING] Add market prices via Oracles V2 (#1674)
    • [BREAKING] Remove TradingPairs storage (#1741)
  • Liquidity Pools:
    • Add token multiplexing: Add Local USDC and connect with ETH, Axelar, Arbitrum, Base and Celo USDC (#1713)
    • [BREAKING] Foreign Investments V2 with lower storage footprint (#1698)
    • Enable non-identical swaps (#1746)
    • Add queue for outgoing LP messages (#1696)
  • Add remarks pallet: Enables attaching remarks to transactions (#1659)
  • [BREAKING] Block Rewards: Replace absolute treasury inflation with relative one (#1740)
  • Transfer Allowlist:
    • Enable checks for nested transfer calls (#1702)
    • [BREAKING] Switch from blacklist to whitelist (#1693)
  • Add ERC-20 precompile for CFG balance to enable CFG bridging with Axelar ITS (#1731)

Runtime API

We have both extended existing as well as added new runtime API:

  • Pool Fees: Emulate epoch closing and pool fees update (#1728)
  • Pool Nav: Emulate epoch closing and return Loans NAV (assets under management), Pool Fees NAV, altered reserve as well as total NAV (#1703)
  • Loans API: Emulate portfolio update with custom prices (#1748)

WASM

✨ Your Substrate WASM Runtime is ready! ✨
Summary generated with srtool:1.75.0-0.14.0:
 Package     : centrifuge-runtime v0.10.25
 GIT commit  : 544ce02
 GIT tag     : v0.10.36
 GIT branch  : main
 Rustc       : 1.75.0 (82e1608df 2023-12-21)
 Time        : 2024-03-07T08:33:20Z

== Compressed
🏋️  Runtime size:             1.819 MB (1,906,886 bytes)
🗜  Compressed:               Yes, 78.50%
✨ Reserved meta:            OK - [6D, 65, 74, 61]
🎁 Metadata version:         V14
🔥 Core version:             centrifuge-1025 (centrifuge-1.tx2.au1)
🗳️  system.setCode hash:      0x210cdf71ee5c5fbea3dc5090c596a992b148030474121b481a856433eb5720f3
🗳️  Blake2-256 hash:          0xb7f74401c52ee8634ad28fe91e8a6b1debb802d4d2058fdda184a6f2746477f6
📦 IPFS:                     https://www.ipfs.io/ipfs/QmS3GDmbGKvcmSd7ca1AN9B34BW3DuDEDQ1iSLXgkjktpG

Altair 1034 - Release Notes Highlights

The Altair system has not received an update for an extended period, and we apologize for any inconvenience this may have caused. This recent update aligns Altair's runtime environment with that of the Centrifuge runtime, ensuring that all modifications mentioned previously, as well as those introduced in subsequent releases, are now incorporated into Altair:

❗️It's crucial to acknowledge that version 0.10.35 of the Centrifuge Client, which was not previously activated for Altair, introduced several breaking changes that could potentially disrupt existing workflows for node operators ❗️

WASM

✨ Your Substrate WASM Runtime is ready! ✨
Summary generated with srtool:1.75.0-0.14.0:
 Package     : altair-runtime v0.10.34
 GIT commit  : 544ce02
 GIT tag     : v0.10.36
 GIT branch  : main
 Rustc       : 1.75.0 (82e1608df 2023-12-21)
 Time        : 2024-03-07T08:29:48Z

== Compressed
🏋️  Runtime size:             1.803 MB (1,890,899 bytes)
🗜  Compressed:               Yes, 78.53%
✨ Reserved meta:            OK - [6D, 65, 74, 61]
🎁 Metadata version:         V14
🔥 Core version:             altair-1034 (altair-1.tx2.au1)
🗳️  system.setCode hash:      0xe8d9302f2f7b632f0a4a69e2e0e86a873a868720179386d22ea34def5ed4a05a
🗳️  Blake2-256 hash:          0xbdc0f7db3f0a8e3c3a55e34108383461b06930409d0f135db1983aeb70265150
📦 IPFS:                     https://www.ipfs.io/ipfs/QmW6n8h2Fii3QDHMBmbKY51eny5M5PrcLqsnbWDshWgAup

Mutual

Exhaustive list of all changes

Docker Image: docker pull centrifugeio/centrifuge-chain:main-544ce02-2024-03-07

Full Changelog: v0.10.35...v0.10.36