Skip to content

Releases: DeFiCh/ain

v2.9.4

03 Aug 16:20
e4ee211
Compare
Choose a tag to compare

Optional Upgrade

  • Fixes heavy CPU usage on 2.9.3 due to unnecessary socket wake-ups.

What’s Changed

🐛 Bug Fixes

  • Revert back to BR socket code instead of poll based BTC socket @prasannavl (#1408)

🧰 Maintenance

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.

v2.9.3

03 Aug 07:49
4cd2cda
Compare
Choose a tag to compare

Recommended Upgrade

Optional, yet recommended upgrade which includes a number of small fixes including long-standing stability and memory issues that were caused by the SPV. In particular, this fixes many occasional crashes that may appear as IO errors which were caused by the SPV code closing incorrect file descriptors, resulting in the corruption of the blockchain database.

Upgrade Notes

  • For nodes >= 2.9.1, this is a drop in upgrade. No reindex required.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent snapshot.

What’s Changed

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

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.

v2.9.2

19 Jul 17:27
54003db
Compare
Choose a tag to compare

Recommended Upgrade

This is a recommended upgrade that adds two fixes:

  • Fixes composite swap path selection, so that direct paths of disabled pools aren't chosen (esp. relevant after the addition of USDC-DUSD and USDT-DUSD pools that won't be active until liquidity targets are achieved).
  • Fixes the ordering of getmasternodeblocks to get accurate output.

Upgrade Notes

  • From 2.9.1, this is a drop in upgrade. No reindex required.
  • If already upgrading from 2.9.0, this requires either a reindex, resync from a 2.8.x or 2.9.1 snapshots or any core team provided snapshots.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent snapshot.

Recent Snapshot

🐛 Bug Fixes

🧰 Maintenance

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.

Issues

Please report any issues to [email protected], or reach out to is via Telegram or Reddit.

v2.9.1

05 Jul 15:34
4a69fd5
Compare
Choose a tag to compare

Recommended Upgrade

This is a highly recommended upgrade, esp. for miners. This fixes a bug in the commissions in 2.9.0. For miners, it is important to upgrade to this release, preferably before the Fort Canning Spring, upgrade block.

If you are currently on 2.9.0, it is recommended that you delete the current datadir and fall back to the latest snapshot before you upgrade to 2.9.1.

If you are not-mining and are currently on 2.9.0, upgrade is optional but recommended (on 2.9.0, you may see sporadic excess commissions, but will not be spendable on the network).

Upgrade Notes

  • If upgrading from 2.8.x or 2.8.x snapshots, this is a drop in upgrade. No reindex required.
  • If already upgaded to 2.9.0, this requires either a reindex, or a resync from a 2.8.x based snapshot. (All DeFiChain core team provided snapshots are valid).
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent backup from 2.8.x or latest snapshot.

Snapshots

🐛 Bug Fixes

🧰 Maintenance

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.

v2.9.0 - Fort Canning Spring

27 Jun 12:53
1a61692
Compare
Choose a tag to compare

Mandatory Upgrade

This is a mandatory update for the upcoming Fort Canning Spring chain upgrade. It contains key upgrades for the protocol.
Fort Canning Spring upgrade is set for block 2033000 (approx. ETA July 6, 2022 UTC) on mainnet.

Update of mainnet node to v2.9.0 before the chain upgrade block is REQUIRED.

Upgrade Notes

  • For nodes that are running >= v2.8.0, this is a drop in upgrade. Fresh sync or reindex is not required, however optionally reindex adds an extra feature-set -dexstats, which provide detailed statistical information on swaps. No reindex needed, if the feature is not necessary.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync or latest snapshot.

What’s Changed

Key Focus

  • Implementation of the technical capability in DeFiCh/dfips#170:
  • DEX stats (-dexstats flag allows statistical break up of pool swap information. This requires a reindex.
  • Adds token split records into account history (reindex / revalidation from token split block needed), and also enables a format flag for listaccounthistory.

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

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.

v2.8.1

06 Jun 07:59
27e9965
Compare
Choose a tag to compare

Optional Upgrade

This is an optional upgrade that includes performance and RPC side improvements.

Key focus

  • In-node per RPC cache, enabled by default (can be disabled with -rpccache=0), to speed up same list and get queries on the same block heights. Caches skip the global lock path entirely - so cache hits should reduce the overall load on the node.
  • Performance improvements to getloaninfo (scales out) and getburninfo (minor).
  • Token split block will be expensive (takes a few seconds to mins - see #1291 and #1313 for more info.

Important

This version also introduced -consolidaterewards as follows, but is known to have an issue resulting in corrupt data and please do not use this flag, or result in a chain split.

From the previous release notes - purely for historical purposes only:

  • Introduces -consolidaterewards=<token/pool-symbol> start-up flag that can pre-optimize the rewards calculations of each address associated with a token or pool, or every address in the index when blank. This helps speed-up validation on multiple fronts, but especially targeted towards smooth token split blocks which would otherwise be expensive.

🚀 Features

  • Add in-node RPC cache, optimize getloaninfo, refactor getburninfo @prasannavl (#1327)
  • Support of consolidating rewards on start @prasannavl (#1313)
  • Interest per block value and amounts on getvault @hidiego (#1314)
  • Verbose flag to getvault to get nextCollateralRatio @hidiego (#1312)
  • Reenable the option to disable checkpoints @prasannavl (#1309)
  • Disable building benchmarks on CI dev builds temporarily @Jouzo (#1308)

🐛 Bug Fixes

  • Revert "Test add missing tests + fix index filtering listauctionhistory" @prasannavl (#1329)
  • Fix interest rate string on logs, minor refactor @prasannavl (#1325)
  • Change stop-block behavior to invalidate to ensure full validation cycle @prasannavl (#1318)
  • Test add missing tests + fix index filtering listauctionhistory @hidiego (#1215)
  • Add revert for PaybackV2 @Mixa84 (#1316)
  • Return -1 value on getvault when tokens are locked @hidiego (#1311)
  • Uses sysctl -n hw.logicalcpu instead of nproc on macOS @Jouzo (#1307)
  • Test vault usd value split @hidiego (#1302)

🧰 Maintenance

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.

v2.8.0 - Fort Canning Crunch

27 May 10:39
7c431fe
Compare
Choose a tag to compare

Mandatory Upgrade

This is a mandatory update for the upcoming Fort Canning Crunch chain upgrade. It contains a key new features that upgrades the protocol.
Fort Canning Crunch upgrade is set for block 1936000 (approx. ETA June 2, 2022) on mainnet.

Update of mainnet node to v2.8.0 before the chain upgrade block is REQUIRED.

Upgrade Notes

  • For nodes that are running >= v2.6.1 and <= v2.6.2, this is a drop in upgrade. No reindex or fresh sync needed.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent backup from 2.6.x or latest snapshot.
  • Note: For nodes on 2.7.0, please see the release notes of 2.7.1 for details on the statistics being reset. If you have updated as a drop-in replacement and depend on the statistics, please ensure to resync the chain from the given blocks.

What’s Changed

Key Focus

  • Full support for token splits. The major highlight of this upgrade is to introduce token splits, auto rebalancing of the pool, vaults, auctions and user accounts. This is fully automatic and no user action is needed.
    • On token split-block:
      • Tokens in wallet: Will auto split
      • Tokens in vaults: Will auto split
      • Tokens in auctions and bids: Will auto split
      • Tokens in future swap: Will be refunded back to the wallets and auto split. DUSD will just be refunded
      • Tokens in pool pairs: Will auto migrate to new pool and be issued newer tokens.
        • Note: These number of LP tokens issued will be based on the newer pool ratio, but will retain the same values.

Notables

  • Internal token system has been partially moved to attributes, as the first part of a multi-release journey.
  • The token split block will be an computation heavy block and could take anywhere between a few seconds to minutes based on the hardware of the system. Currently, it's yet to be optimised for speed, but scales out linearly based on the number of cores. Further optimisations are expected over time to improve this.

API Changes

  • listgovs: Now takes one of the additional parameters: all/live/attrs/govs/<attribute-prefix> to filter easily.
  • [Deprecated] setloantoken - Usage will be superseded by attributes system.
  • [Deprecated] setcollateraltoken - Usage will be superseded by attributes system.
  • listcollateraltokens:
    • [Deprecated field] activateAfterBlock - Usage has been superseded by attributes system.

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

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.

v2.7.1

20 May 16:00
5de8a22
Compare
Choose a tag to compare

Recommended Upgrade

This is an optional, but recommended upgrade. Due to a bug on getgovheight TX, there was an accidental deletion of attributes from the node index on block 1896000. This resulted in statistical information being reset entirely. This update fixes the stats again.

Impact on the older nodes:

  • The consensus is still correct, and old nodes can continue to function, as is - if statistical info is not a concern.
  • getburninfo information that's based on attributes will be reset. Eg: DFI payback
  • listgovs => All of v0/live/economy/ information will reset and appear to have started from 0 from block 1896000.

Upgrade Notes

  • If node is above block 1896000, an invalidation to a block before this and reconsideration back to the tip is required to fix the stats again. Otherwise, it will still continue to display incorrect information.
  • Eg: After upgrade:
    • defi-cli invalidateblock c72d93b9897bbbebed505d8b23293fbcae5be5a767c6fbc4d67d25510d1b4066 followed by
    • defi-cli reconsiderblock c72d93b9897bbbebed505d8b23293fbcae5be5a767c6fbc4d67d25510d1b4066
      Will fix the stats information again.
  • Fresh sync or any snapshots below 1896000 should work as expected without any intervention.

Key highlights

🚀 Features

🐛 Bug Fixes

  • test: Prevent wallet resubmitting TX after rollback @Bushstar (#1239)
  • Test/payback v2 multiple error @hidiego (#1183)
  • Add -isysroot to macOS native compile flags @Jouzo (#1203)
  • Update test cases to remove deprecatedHeight usage. @shohamc1 (#1204)
  • Fix typos @hidiego (#1212)
  • Revert "Fix dex loan token burns" @prasannavl (#1193)

🧰 Maintenance

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.

v2.7.0 - Fort Canning Road

01 Apr 14:13
3f7f6ec
Compare
Choose a tag to compare

Mandatory Upgrade

This is a mandatory update for the upcoming Fort Canning Road chain upgrade. It contains a key fixes that upgrades the protocol.
Fort Canning Road upgrade is set for block 1786000 (approx. ETA April 11, 2022 UTC) on mainnet.

Update of mainnet node to v2.7.0 before the chain upgrade block is REQUIRED.

Upgrade Notes

  • For nodes that are running >= v2.6.1 and <= v2.6.2, this is a drop in upgrade. No reindex or fresh sync needed.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent backup from 2.6.x or latest snapshot.

What’s Changed

Key Focus

  • Implementation of DFIP2203: DeFiCh/dfips#127
  • Generic loan payback. The blockchain now has the capability for enabling any loans in a vault to be payed back with any other token through DFI. The mechanism will use oracles to determine token prices if enabled and relying on dToken->DUSD->DFI swaps for interest paybacks. Note this is not enabled, and may or may not be enabled per token or globally. This is dependent on the governance direction taken and voted on by the community as seen fit.

Notables

  • Expanding the DEX fee capability to be applied per pool, as well as per token to apply to all pools with a token.
  • New account change logging category: accountchange
  • Changes to logging to reduce noise of masternode staking logs. Please see #648. (Thanks @chrizog).

Internals:

  • LevelDB upstream update.
  • Boost upstream update allowing successful builds on newer platforms.

RPC Changes

Beyond, new additions, changes are expected to be backward compatible.

  • Existing:

    • getpoolpair / listpoolpairs:
      • New fields: dexFeeInPctTokenA, dexFeeOutPctTokenA, dexFeeInPctTokenB, dexFeeOutPctTokenB
    • paybackloan
      • loans field introduced which is an array of structured objects that specify the loan that is payed back and the token amounts used for payback. See help for more info.
    • listaccounthistory
      • Now supports txn
    • getburninfo
      • New fields: paybackfees, paybacktokens similar to dfipaybackfee and dfipaybacktokens but for non DFI payback.
  • New:

    • futureswap
    • withdrawfutureswap
    • getfutureswapblock
    • listpendingfutureswaps
    • getpendingfutureswaps

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

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:

  • Testnet has been rolled back to 893700 prior to this release.
  • Reference blockhash of testnet 893700: ea1733c8b127c80b37236bbe6244670428228e5592d08ff307893425852dc113
  • Note: Same upgrade notes as mainnet apply to testnet. Please reindex / restore as necessary.

Note: Certain test related infrastructure components (like defiscan.live) could take a while to reflect this change, due to the re-indexing constraints on the specific applications.

Testnet rollback tips (if needed):

$ defi-cli -testnet invalidateblock $(defi-cli -testnet getblockhash 893700)
$ defi-cli -testnet clearbanned
$ defi-cli -testnet reconsiderblock ea1733c8b127c80b37236bbe6244670428228e5592d08ff307893425852dc113

v2.6.2

10 Mar 14:29
aaf88f5
Compare
Choose a tag to compare

Recommended Upgrade

This is a minor update, that primarily focuses on fixing nodes that result in crashes due a segfault in SPV under certain specific conditions, when it's turned on. Contains a few other minor additional fixes and features.

Upgrade Notes

  • For nodes that are running >= v2.6.1, this is a drop in upgrade. No reindex or fresh sync needed.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

What’s Changed

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

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:

  • Testnet has been rolled back to 835530 prior to this release.
  • Reference blockhash of testnet 835531: 542cc9c5490b46a228aa8c0878deba3b2c3f5a3e70b6d90bfab1171b153b8d66
  • Note: Same upgrade notes as mainnet apply to testnet. Please reindex / restore as necessary.

Note: Certain test related infrastructure components (like defiscan.live) could take a while to reflect this change, due to the re-indexing constraints on the specific applications.

Testnet rollback tips (if needed):

$ defi-cli -testnet invalidateblock $(defi-cli -testnet getblockhash 835530)
$ defi-cli -testnet clearbanned
$ defi-cli -testnet reconsiderblock 542cc9c5490b46a228aa8c0878deba3b2c3f5a3e70b6d90bfab1171b153b8d66