v2.1.0 - Fort Canning
Note: This version has been deprecated. A higher version has been released. Please use one of the higher versions to upgrade. The following information is purely historical.
Mandatory Upgrade
What’s Changed
This is a mandatory update for the upcoming Fort Canning chain upgrade. It contains a key fix that upgrades the protocol over the previous v2.0.0 that was originally intended node for the next network upgrade . v2.1.0
(this) now effectively replaces v2.0.0
and is the required node.
Fort Canning upgrade is set for block 1367000 (approx. ETA Monday, 15 Nov 2021) on mainnet.
Update of mainnet node to v2.1.0
before the chain upgrade block is REQUIRED.
Key Focus
v2.1.0
-
This fixes a bug due to which DUSD loans became unpayable on testnet. This was a result of a missing specialised short-circuit for DUSD, while converting interest and over bids to DFI to be burnt or added back to the vaults over the respective pools (#885).
-
Previous
getgov
API has now been restored. Inv2.0.0
,getgov
encountered a breaking change. From gathered feedback, we recognised other projects relied heavily on this API and such this change has been reverted.listgov
can be used to pull the new information with the activation heights thatgetgov
added inv2.0.0
, which led to the original change. While this unfortunately means, those who have already adopted to the newer API from v2.0.0 will have to revert these changes, we believe this restoration is the optimal choice for most projects to retain compatibility. (#871)
For Fort Canning
- Native protocol support for decentralised loans. Includes all the foundational blocks for loans, auctions, bids and to bring stock tokens on to the ecosystem. This introduces a new set of protocols and RPCs to interact with the chain. For more information, please read the wiki here.
- Composite swap. Automatically swaps across up-to 3 pool pairs. Example: Directly swap between dBTC to dETH in one atomic step (Tx) through the underlying DFI-BTC and DFI-ETH pools. (#676)
- Improved on-chain mechanics for oracle pricing and fault tolerance with dedicated support for fixed time interval pricing.
updatemasternode
RPC that currently enables updating a masternode's operator address. (#687)setforcedrewardaddress
RPC that enables providing a dedicated address for masternode rewards. (#642)
Other noteworthy improvements:
- #704:
getmasternodeblocks
RPC now correctly returns blocks minted by all subnodes. - #686:
spv_refundhtlcall
RPC - Gets all HTLC contracts stored in wallet and creates refunds transactions for all that have expired. - #722: Anchoring cost has now been reduced to BTC dust (minimum possible).
- #752: Tx fees, which were being burnt after Eunos upgrade will now be included in block rewards again from Fort Canning.
Breaking RPC Changes (from 1.8.4)
- #815:
listpoolpairs
andgetpoolpair
RPCs now include additional field:rewardLoanPct
. - #711:
listaccounthistory
RPC now only includes a record if the transaction is trusted (confirmation > 0).
Full Changelog: v1.8.4...v2.1.0
v2.1.0 Specific Info
🐛 Bug Fixes
- Revert history records @bvbfan (#890)
- Fix DUSD loan payback bug due to missing short-circuit @prasannavl (#885)
- Don't show zero rewards @bvbfan (#887)
- Fix new regression @bvbfan (#876)
- Fix pagination issue @Mixa84 (#880)
- Sync nodes before check @Bushstar (#879)
- Fix pool share rewards regression @bvbfan (#872)
- Prevent selecting auto auth outputs @bvbfan (#875)
🧰 Maintenance
- Bump protocol version to 70021 @prasannavl (#892)
- Version 2.1.0 @prasannavl (#891)
- Disable minting loan token on mainnet @bvbfan (#878)
- Fix minor auction history typo @Jouzo (#883)
- Restore previous getgov behaviour @Bushstar (#871)
- Add all new FC and Oracle DfTx to getcustomtx tests @Bushstar (#874)
- Remove obsolete compatibility @bvbfan (#868)
- Minor refactors to improve readability @bvbfan (#865)
- Fix missing rpc_vault HelpExampleRpc @Jouzo (#889)
How to run?
Download and untar the relevant version to your operating system, run bin/defid
or bin/defid.exe
to start a DeFi Blockchain daemon. The client (CLI) can be found at bin/defi-cli
or bin/defi-cli.exe
.
DeFi App (GUI) users
If you are running the desktop DeFi App, you do not have to manually update the underlying node as the app will handle it. Check https://github.com/DeFiCh/app/releases for the latest releases.
Testnet Info
The following are informational updates that apply only for development on testnet:
- No new rollback necessary for
v2.1.0
if you've already rolled back to the right hash with 2.0.0. - Testnet has been rolled back to the testnet specific Fort Canning block height (
686200
) along with thev2.0.0
- Blockhash of testnet 686200:
527ae58ed2a644e907d03a176779b5945a2682c1ef90d7563037cdf65e6a2364
Testnet rollback tips:
$ defi-cli -testnet invalidateblock $(defi-cli -testnet getblockhash 686200)
$ defi-cli -testnet reconsiderblock 527ae58ed2a644e907d03a176779b5945a2682c1ef90d7563037cdf65e6a2364
$ defi-cli -testnet clearbanned