Releases: DeFiCh/ain
v2.0.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 Update
What’s Changed
This is a mandatory update for the upcoming Fort Canning chain upgrade. It contains key features and fixes.
Fort Canning upgrade is set for block 1367000 (approx. ETA Monday, 15 Nov 2021) on mainnet.
Update of mainnet node before the chain upgrade block is REQUIRED.
Key Focus
- 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:
getgov
now returns an array instead of an object to account for multiple values with activation heights. - #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.0.0
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 the testnet specific Fort Canning block height (
686200
) along with the release. - Blockhash of testnet 686200:
527ae58ed2a644e907d03a176779b5945a2682c1ef90d7563037cdf65e6a2364
Testnet rollback tips:
$ defi-cli -testnet invalidateblock $(defi-cli getblockhash 686200)
$ defi-cli -testnet reconsiderblock 527ae58ed2a644e907d03a176779b5945a2682c1ef90d7563037cdf65e6a2364
$ defi-cli -testnet clearbanned
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.8.4
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.
Optional Update
What’s Changed
- Resolve two issue,
getmasternodeblocks
not reporting blocks after the EunosPaya hard fork and the fee being too small on some accounttoutxos transactions.
🐛 Bug Fixes
- Make dummy data specific to TX @Bushstar (#730)
- Fix getmasternodeblocks to retrieve all blocks from all subnodes @prasannavl (#717)
🧰 Maintenance
- v1.8.4 @Bushstar (#729)
- Update minor version @prasannavl (#708)
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.
Issues
Public: Github Issues
Private: engineering [at] defichain.com
Security: security [at] defichain.com
Community Help: Telegram or Reddit.
v1.8.3
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.
Optional Update
What’s Changed
- Contains usage related fixes:
getmasternodeblocks
andgetblockchaininfo
- Addresses a self resolvable condition for pre-Eunos Paya masternodes, where target multipliers of both subnode 0 and subnode 1 reset when one of them mines (Note: This probabilistically resolves itself, even without this update over time, but this update unblocks this condition more deterministically. Less than 5% of the masternodes are affected by this, at the time of this release). For more info: #693.
🐛 Bug Fixes
- Add post EP workaround to force one subnode0 stake before subnode1 @prasannavl (#696)
- Fix getmasternodeblocks @HiDiego (#704)
- Add masternode
timelock
toCCustomTxRpcVisitor
, now can be retrieved via relevant RPCs. @surangap (#679) - Make sure wallet is unlocked before dumping SPV key @Bushstar (#689)
- Add EunosPaya height to blockchaininfo @prasannavl (#685)
🧰 Maintenance
- Update minor version @prasannavl (#708)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.8.2
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.
Optional Update
What’s Changed
- This is a minor performance update that includes a key fix that optimizes out excessive validation of blocks that causes the block syncing to be slower on 1.8.x (more info: #670) along with a few other minor improvements.
🐛 Bug Fixes
- Discard accounts changes on clearing mempool @bvbfan (#678)
- Fix multiple pool rewards history @bvbfan (#674)
- Only check previous anchor when SPV enabled @Bushstar (#677)
- Update previous checkpoint height @bvbfan (#672)
🧰 Maintenance
- Update version @prasannavl (#681)
- Updated the code to generate blocks for the given address. @surangap (#646)
- Enable parallel builds on docker containers @prasannavl (#659)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.8.1
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.
Optional Update
What’s Changed
- This is an optional stability update to 1.8.0.
- This is a minor update that fixes an edge-case due to an issue in the internal Bitcoin SPV, which causes the whole node to become unresponsive right after upgrade before achieving full sync.
- If you've already upgraded to 1.8.0 with the official snapshots and/or the node is stable, this update should have no effect.
🐛 Bug Fixes
- Fix random unit test fail @bvbfan (#649)
- Fix spv help message typo @ShengguangXiao (#651)
- Move CheckPendingAnchors out of cs_main lock @Bushstar (#653)
- Cap regtest blocktime to median time + 1 to avoid errors @Bushstar (#618)
🧰 Maintenance
- v1.8.1 @Bushstar (#657)
- Enable parallel make for builds @prasannavl (#658)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.8.0 - Eunos Paya
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 Update
What’s Changed
This is a mandatory update for the upcoming Eunos Paya chain upgrade. It contains key features and fixes.
Eunos Paya upgrade is set for block 1072000 (approx. ETA Thursday, 05 Aug 2021) on mainnet.
Update of mainnet node before the chain upgrade block is REQUIRED.
Key changes
-
Added: Masternodes now optionally support 5 year and 10 year timelocks for increased staking power of 1.5x or 2x respectively.
- This can be used after Eunos Paya upgrade with an additional parameter to
createmasternode
RPC that takes inFIVEYEARTIMELOCK
orTENYEARTIMELOCK
argument. Please note that this means the masternode once created cannot be resigned for the given period, and the collateral is locked. - Use
defi-cli help createmasternode
for more info.
- This can be used after Eunos Paya upgrade with an additional parameter to
-
Changed: Improved InterChain Exchange (atomic swap) consistency. Atomic swap users should find swaps are smoother and successful after Eunos Paya upgrade than before.
-
Changed: RPC
getmintinginfo
is now deprecated. Please switch togetmininginfo
instead.
Bootstrap snapshots (optional)
You can use one of the following snapshots to help speed-up bootstrapping of fresh nodes:
Bootstrap block-height: 1052243
🚀 Features
- Add support for subnode staking @Bushstar (#628)
- v1.8.0 @Bushstar (#530)
- Introduce pool reward type @bvbfan (#469)
- Feature/getmintinginfo to getmininginfo @HiDiego (#579)
- Feature/pagination lists rpc @HiDiego (#568)
- Set anchor DB version and wipe it and SPV DB on version change @Bushstar (#561)
🐛 Bug Fixes
- Update mempool reorg on high hash error @bvbfan (#643)
- Fix delay for masternode activation/resign delay @Mixa84 (#639)
- Keep last undo prune height @bvbfan (#637)
- Fix intermittent poolswap test failure by wiping mempool after chain revert @Bushstar (#630)
- Fix intermittent DIP1 test failure by allowing time to reindex @Bushstar (#631)
- Only accept fixed lockin times for MN collateral @Bushstar (#620)
- Add timelock to metadata check post-EP @Bushstar (#615)
- Don't allow blockchain reverting prior last checkpoint in any case @bvbfan (#597)
- Apply token filter to rewards in history @bvbfan (#557)
- Fix/setoracledata timestamp validation @HiDiego (#587)
- Send from UTXOs, do not subtract fee from amount @Bushstar (#559)
- Specify oracle weight age between 0 and 255 @bvbfan (#574)
- Fix status in icx_getorder rpc @Mixa84 (#571)
- Fix connection issues on Windows @Bushstar (#570)
- Show addresses not script hex in getcustomtx @Bushstar (#558)
- Use actual blocktime when storing TX. @Bushstar (#560)
- On HTLC creation get last weeks filtered blocks @Bushstar (#556)
- Show the amount value if amount not match @ShengguangXiao (#553)
- getmasternodeblocks add single quote to help text @Bushstar (#547)
- Do db compacting after undo pruning @bvbfan (#543)
- Keep minter pubkey in cache @bvbfan (#542)
🧰 Maintenance
- Eunos Paya revised height @prasannavl (#641)
- Remove EunosSims @Bushstar (#632)
- Update seeds @prasannavl (#622)
- Increment EunosPaya fork height @Bushstar (#624)
- Set mainnet EunosPaya height @Bushstar (#616)
- Reduce output from getblocktemplate @Bushstar (#548)
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 Wallet App (GUI) users
If you are running the desktop DeFi Wallet 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 the testnet specific Eunos Paya block height (
463300
) along with the release. - Blockhash of testnet 463300:
9699e126d2d41099a4ba913e3e2ef7fa76acf473130b858a85edce730b690621
Issues
Please report any issues to [email protected], or reach out to us via Reddit or Telegram.
v1.7.11
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.
Optional update
What’s Changed
This is an optional upgrade that fixes an issue where the blockchain node would get stuck on a clean sync or reindex.
Anchors have been updated to pay rewards by lowest Bitcoin height first and a RPC level solution to not to use anchors that might fall foul of the "Anchor too new" rule when validating anchors, a fuller fix for this will be in the next hard fork where anchors will be selected an hour deeper into the chain.
Bootstrap snapshots
You can use one of the following snapshots bootstrap your node:
- Europe: https://defi-snapshots-europe.s3.eu-central-1.amazonaws.com/snapshot-mainnet-913128.zip
- Asia: https://defi-snapshots.s3-ap-southeast-1.amazonaws.com/snapshot-mainnet-913128.zip
- North America: https://defi-snapshots-us.s3.amazonaws.com/snapshot-mainnet-913128.zip
🐛 Bug Fixes
- If anchor plus time depth more than current time then skip it @Bushstar (#540)
- Remove unused and obsolete system @Bushstar (#539)
- Pay anchor with lowest BTC TX height first @Bushstar (#535)
- Fix regression in staker block time calculation @bvbfan (#537)
- Convert PKH to UInt160 only when it is valid @Bushstar (#533)
- Fix to add txid in logging for expiration of ICX order/offer/dfchtlc. @Mixa84 (#532)
🧰 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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.7.10
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.
Recommended Update
What’s Changed
This is an optional update, but recommended for masternode operators. It includes stability updates addressing several post-Eunos issues and targets especially masternode operators.
- Since Eunos, mining performance has dropped due to changes in the account layer calculations during block creation, performance has been restored by separating the hash generation from block creation.
- Increased mining efficiency, in that they will try to find a block using every second in the available valid time range.
🚀 Features
🐛 Bug Fixes
- Solve pos puzzle before create and propagate a block @bvbfan (#505)
- Fix if else using same condition @ShengguangXiao (#466)
- Fix accounts performance issue @bvbfan (#498)
- Limit max tip age to reasonable value @bvbfan (#499)
- Do not keep failed tx coins in miner cache @bvbfan (#517)
- Fix passing inputs for ICX RPCs @Mixa84 (#516)
- Update version tag to 1.7.5 @ShengguangXiao (#475)
🧰 Maintenance
- v1.7.10 @Bushstar (#522)
- Added continue on error to jellyfish test @monstrobishi (#520)
- Remove unneeded declarations @bvbfan (#519)
- Faster calculation of anchoring teams @Bushstar (#467)
- v1.7.9 @Bushstar (#515)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.7.9
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.
Recommended Update
What’s Changed
This release is a stability update addressing several post-Eunos issues that can cause the node to stop syncing or shutdown unexpectedly. There is still an outstanding multi-miner performance issue that is not addresses in this release, another release for this will follow soon.
🚀 Features
- Change staking to single threaded and precompute merkle root @monstrobishi (#487)
🐛 Bug Fixes
- Break out of high-hash loop @Bushstar (#503)
- Rollback testnet further @Bushstar (#509)
- Allow coin override while minter packages txs @bvbfan (#502)
- Re-enable Python test @monstrobishi (#455)
- Do not allow checkpoint height to be reverted @bvbfan (#369)
- Check error msg after catch. Provide failing buyer pubkey case. @Bushstar (#471)
- Correct display latest account history @bvbfan (#478)
- Better handle skipped txs @bvbfan (#476)
🧰 Maintenance
- Combine incentive fund into burn. Show emission burn on burn info. @Bushstar (#495)
- Remove lock from CheckKernelHash @monstrobishi (#508)
- Set Kampung on testnet @Bushstar (#504)
- Add jellyfish tests to CI @monstrobishi (#496)
- Surangap/regtest chainparams jellyfish @surangap (#486)
- Only change daily reward when subsidy differs @Bushstar (#477)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.
v1.7.8
Recommended Update
What’s Changed
This release fixes an issue where the blockchain node would get stuck in a loop when a block with an invalid kernel hash is found. Upgrade however is non-mandatory if you are on >= 1.7.7
🐛 Bug Fixes
- Do not mark fInvalidFound true on high-hash block @Mixa84 (#494)
- Fix the loop when block with high-hash comes @Mixa84 (#493)
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.
Issues
Please report any issues to [email protected], or reach out to is via Telegram or Reddit.