* Bump version to 0.14.0.5 * Copy 0.14.0.4 release notes and prepare 0.14.0.5 release notes * Run gen-manpages.sh
10 KiB
Dash Core version 0.14.0.4
Release is now available from:
https://www.dash.org/downloads/#wallets
This is a new minor version release, bringing various bugfixes and improvements.
Please report bugs using the issue tracker at github:
https://github.com/dashpay/dash/issues
Upgrading and downgrading
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/Dash-Qt (on Mac) or dashd/dash-qt (on Linux). If you upgrade after DIP0003 activation and you were using version < 0.13 you will have to reindex (start with -reindex-chainstate or -reindex) to make sure your wallet has all the new data synced. Upgrading from version 0.13 should not require any additional actions.
When upgrading from a version prior to 0.14.0.3, the first startup of Dash Core will run a migration process which can take a few minutes to finish. After the migration, a downgrade to an older version is only possible with a reindex (or reindex-chainstate).
Downgrade warning
Downgrade to a version < 0.14.0.3
Downgrading to a version smaller than 0.14.0.3 is not supported anymore due to changes in the "evodb" database format. If you need to use an older version, you have to perform a reindex or re-sync the whole chain.
Notable changes
Fix respends of freshly received InstantSend transactions
A bug in Dash Core caused respends to not work before a received InstantSend transaction was confirmed in at least one block. This is fixed in this release, so that InstantSend locked mempool transactions can be respent immediately in Dash Core (other wallets were not affected).
Deprecation of SPORK_16_INSTANTSEND_AUTOLOCKS
With the activation of SPORK_20_INSTANTSEND_LLMQ_BASED a few month ago, all transactions started to be locked via InstantSend, which already partly deprecated SPORK_16_INSTANTSEND_AUTOLOCKS. This release removes the last use of SPORK_16_INSTANTSEND_AUTOLOCKS, which caused InstantSend to stop working when the mempool got too large.
Improve orphan transaction limit handling
Instead of limiting orphan transaction by number of transaction, we limit orphans by total size in bytes now. This allows to have thousands of orphan transactions before hitting the limit.
Discrepancies in orphan sets between nodes and handling of those was one of the major limiting factors in the stress tests performed by an unknown entity on mainnet.
Improve re-requesting for already known transactions
Previously, Dash would re-request old transactions even though they were already known locally. This happened when the outputs were respent very shortly after confirmation of the transaction. This lead to wrongly handling these transactions as orphans, filling up the orphan set and hitting limits very fast. This release fixes this for nodes which have txindex enabled, which is the case for all masternodes. Normal nodes (without txindex) can ignore the issue as they are not involved in active InstantSend locking.
Another issue fixed in this release is the re-requesting of transactions after an InstantSend lock invalidated a conflicting transaction.
Multiple improvements to PrivateSend
Multiple improvements to PrivateSend are introduced in this release, leading to faster mixing and more reasonable selection of UTXOs when sending PrivateSend funds.
Fix for CVE-2017-18350
Bitcoin silently implemented a hidden fix for CVE-2017-18350. in Bitcoin v0.15.1. This release of Dash Core includes a backport of this fix.
0.14.0.4 Change log
See detailed set of changes.
5f98ed7a5
[v0.14.0.x] Bump version to 0.14.0.4 and draft release notes (#3203)c0dda38fe
Circumvent BIP69 sorting in fundrawtransaction.py test (#3100)64ae6365f
Fix compile issues36473015b
Merge #11397: net: Improve and document SOCKS code66e298728
Slightly optimize ApproximateBestSubset and its usage for PS txes (#3184)16b6b6f7c
Update activemn if protx info changed (#3176)ce6687130
Actually update spent index on DisconnectBlock (#3167)9b49bfda8
Only track last seen time instead of first and last seen time (#3165)ad720eef1
Merge #17118: build: depends macOS: point --sysroot to SDK (#3161)909d6a4ba
Simulate BlockConnected/BlockDisconnected for PS cachesdb7f471c7
Few fixes related to SelectCoinsGroupedByAddresses (#3144)1acd4742c
Various fixes for mixing queues (#3138)0031d6b04
Also consider txindex for transactions in AlreadyHave() (#3126)c4be5ac4d
Ignore recent rejects filter for locked txes (#3124)f2d401aa8
Make orphan TX map limiting dependent on total TX size instead of TX count (#3121)87ff566a0
Update/modernize macOS plist (#3074)2141d5f9d
Fix bip69 vs change position issue (#3063)75fddde67
Partially revert 3061 (#3150)c74f2cd8b
Fix SelectCoinsMinConf to allow instant respends (#3061)2e7ec2369
[0.14.0.x] Remove check for mempool size in CInstantSendManager::CheckCanLock (#3119)
Credits
Thanks to everyone who directly contributed to this release:
- Alexander Block (codablock)
- Nathan Marley (nmarley)
- PastaPastaPasta
- UdjinM6
As well as everyone that submitted issues and reviewed pull requests.
Older releases
Dash was previously known as Darkcoin.
Darkcoin tree 0.8.x was a fork of Litecoin tree 0.8, original name was XCoin which was first released on Jan/18/2014.
Darkcoin tree 0.9.x was the open source implementation of masternodes based on the 0.8.x tree and was first released on Mar/13/2014.
Darkcoin tree 0.10.x used to be the closed source implementation of Darksend which was released open source on Sep/25/2014.
Dash Core tree 0.11.x was a fork of Bitcoin Core tree 0.9, Darkcoin was rebranded to Dash.
Dash Core tree 0.12.0.x was a fork of Bitcoin Core tree 0.10.
Dash Core tree 0.12.1.x was a fork of Bitcoin Core tree 0.12.
These release are considered obsolete. Old release notes can be found here:
- v0.14.0.3 released August/15/2019
- v0.14.0.2 released July/4/2019
- v0.14.0.1 released May/31/2019
- v0.14.0 released May/22/2019
- v0.13.3 released Apr/04/2019
- v0.13.2 released Mar/15/2019
- v0.13.1 released Feb/9/2019
- v0.13.0 released Jan/14/2019
- v0.12.3.4 released Dec/14/2018
- v0.12.3.3 released Sep/19/2018
- v0.12.3.2 released Jul/09/2018
- v0.12.3.1 released Jul/03/2018
- v0.12.2.3 released Jan/12/2018
- v0.12.2.2 released Dec/17/2017
- v0.12.2 released Nov/08/2017
- v0.12.1 released Feb/06/2017
- v0.12.0 released Aug/15/2015
- v0.11.2 released Mar/04/2015
- v0.11.1 released Feb/10/2015
- v0.11.0 released Jan/15/2015
- v0.10.x released Sep/25/2014
- v0.9.x released Mar/13/2014